Knowledge Atlas Nursing A project by Knowledge Atlas

ICU/病房護理排班系統(三班四週工時用)

Public Beta 2.2
公開測試版|人員資料可透過 Google 表單、Google 試算表或 CSV 匯入,自行建立各單位專屬排班資料。
零、排班前人力健檢

人力健檢模組載入中……

使用指引|工作流程

1. 先做人力健檢先輸入床數、每班需求與可用人力,確認四週工時、床護比與病安風險。紅燈時建議先調整人力或床數,再開始排班。
2. 建立人員資料可使用 Google 表單、Google 試算表或 CSV 匯入。系統只需要顯示名與簡碼,不需要真實姓名與完整員編。
3. 設定剛性條件只保留會影響演算法的設定:週期開始日、最大連上、最低休假、D/E/N需求與上限、D.I/E.I/N.I需求、總人力。
排班順序
  • 讀取前一期月底狀態
  • 鎖定 V/S/員旅/A/支援班
  • 計算 I 公平目標值
  • 先排 N.I → E.I → D.I
  • 再處理預約上班與必須休
  • 建立一例一休骨架
  • 補足 N → E → D 一般人力
  • Hard Constraint = 0 後才嘗試希望休最佳化
硬性規則
  • Hard Constraint 必須為 0,否則排班失敗
  • 連上不可超過設定上限
  • 依 11 小時休息矩陣禁止 E→D、N→E、N→D
  • 禁止 N-O-D,需至少 N-O-O-D
  • 禁止 O-D-O/O-E-O/O-N-O
  • V、S、員旅、A、支援班不可被覆蓋
人工微調
  • 超編
  • 週末休過多或不足
  • 休假公平性
  • I 次數偏多
  • 希望休未達成(合法班表後最佳化,不參與主排班)
一、排班條件
遇國定假日較多的週期可提高

這裡只保留會直接影響演算法的剛性設定。11小時班別轉換、碎班、N-O-D、連休過長、一例一休、I公平、必須休已內建於主排班;希望休改為合法班表完成後再最佳化,不參與主排班限制,不再提供無效勾選。

人力配置預設值
尚未測速

排班核心:先做逐日可行性檢查,必要時回收部分必須休;再鎖定最高順位假別與非臨床上班,排 I 人力,補一般 N→E→D 人力。班別轉換使用 11 小時休息矩陣,且 N-O-D 仍為絕對禁止。Hard Constraint 必須為 0,否則視為排班失敗。若重排次數拉高,可先按「測速 8 次」估算本機耗時;長時間重排會分批執行,並分開顯示「目前懲罰分」與「最佳懲罰分」。懲罰分越低越好,系統會保留最低分班表。

二、護理師資料

護理師資料填寫引導

人員屬性怎麼選? 行政班(A) 護理長、上課、行政支援;算上班,但不算 D/E/N 臨床人力。
固定D/E/N 幾乎只排該班。
輪班(DE/EN/DN) 只在這兩種班之間輪。
輪班(DEN) 預設不建議,除非單位真的有人可大花班。
PT-D/E/N 兼職支援,只排指定班別,預約上班順位較高。
12D/12N 12 小時班,預設二上二休。
休假欄位優先順序
  1. 特休、員福旅遊假:最高順位,鎖定 O,不可覆蓋。
  2. 行政/上課 A:最高順位,鎖定 A,不算臨床人力。
  3. 必須休:第一順位休假需求,系統盡量給;系統會盡量保留;若條件衝突會列入人工處理。
預約上班是什麼? 當天一定要上到班,例如指定要跟某班、教學需求、支援任務。系統會避免排成 O,但仍會遵守連上 ≤ 5、班別屬性與反向換班禁止。若和特休/員福假衝突,會在報告中提醒。
可當 I 是什麼? I = in-charge/資深帶班。若勾選「可當I」,系統會檢查每天 D.I、E.I、N.I 是否達到需求;預設每班 2 位。這不會把人變成行政班,仍然是臨床 D/E/N 人力。

建議流程:先用人力配置重建名單 → 修改每個人的人員屬性 → 勾特休/員福旅遊假/行政班 → 再填必須休與預約上班 → 最後產生班表並看檢查報告。

三層壓力測試假資料

A 正常複雜版48人,含四段特休、三日員旅、A班、SI、S國定假、必須休、預約上班與月底接續。用來測「正常但複雜」能不能排到硬性問題 0。
B 硬性衝突版刻意放入 V撞預約、S撞預約、A/SI撞預約、I偏少、月底5N等。用來測報告能不能清楚指出「排不出來不是演算法爛,是條件衝突」。
C 極限壓力版同週多人特休/員旅/SI、I嚴重不足、多人同日預約。用來測系統在接近崩潰時,能不能分類顯示硬性問題與人工調整。
命名原則每個假員工名字都寫出測試目的,例如「A_四段V_每週五」、「B_V撞預約_最高衝突」,排出來一眼就知道哪條規則出問題。

日期可用 2026-07-03,也可用第幾天 3、5、12。多日期用逗號、分號或空白分隔。

V1 表單欄位建議:
員工編號、顯示名、人員屬性、是否可當I、開始前已連上幾天、個人連上偏好、必須休、希望休(最多2天;合法班表後最佳化,可被犧牲)、特休、員福旅遊假、行政班/上課日期、預約上班日。人員屬性包含:行政班(A)、固定D、固定E、固定N、輪班(DE)、輪班(DN)、輪班(EN)、輪班(DEN)。
特休、S國定假與員福旅遊假是最高順位鎖定休;必須休會鎖定為休假,不再限制 4 天,若條件過多導致缺人或 I 不足,會在硬性問題中呈現。

Google Sheet/Google Form 建立排班問卷教學

1. 建立排班後台在瀏覽器網址列輸入 sheets.new,建立一個全新的 Google 試算表。
2. 開啟 Apps Script點擊上方選單「擴充功能」→「Apps Script」,刪除原本程式碼。
3. 貼上程式碼把下面的 Apps Script 貼上並儲存。回到試算表重新整理後,會出現「🏥 護理排班工具」。
4. 收完表單後匯入從回覆試算表整理出 CSV 欄位:簡碼、顯示名、人員屬性、資深I、月底接續、必須休、V特休、S國定假、員福旅遊假、A行政班、支援班、預約上班,再貼到本頁匯入。

提醒:Google 表單的 Checkbox Grid 匯出格式會依每個日期產生欄位;匯入本排班器前,請先整理成「每個假別一欄、日期用分號分隔」的 CSV 格式。建議先用本頁內建 A/B/C 假資料熟悉格式。

三、逐日可行性檢查|扣除 A/支援後的 D/E/N 與 I 回收建議
先比對每天 V/S/員旅/A/支援班與必須休。若剩餘人力不足以支撐 D/E/N 需求,系統會列出同日必須休人員,並在排班時優先回收部分必須休。
尚未檢查。匯入人員資料後可先按「重新檢查可行性」。
四、班表
D 白班E 小夜N 大夜A 行政/上課支援班V 特休/員旅S 國定假BK 例假OFF 休假紅框 必須休 查看每日三班人力名單
五、每日三班人力名單
排完班後請看這裡:列出每天 D/E/N 臨床人力、A 行政/上課、O 休假。A 算上班日,但不算 D/E/N 臨床照護人力。
六、檢查報告|硬性問題必須為 0|必須休/希望休達成率

🚨 病安風險警示