1. HOME
    2. ソリューション
    3. スケジューリング

    スケジューリング

    シフトスケジューリングとは、シフト勤務を採用している現場における、ある一定の期間 (例えば 1 ヶ月) のシフトを作成する問題のことです。 數理計畫の視點から見ると、シフト表の各マス目にシフトを割り當てる問題ということで、割當問題の一種と言うことができます。

    シフト作成の際、法令の順守や必要人數の充足は當然考慮しなければなりません。しかし、それだけでは満足度の低いシフトとなってしまう可能性が高いです。 満足度の高いシフトを作成するためには、以下のような各企業?現場に固有の制約を考慮することになります。

    • 「夜勤」の取り扱い (病院の看護師のシフト作成 (ナーススケジューリング問題) においては非常に重要)
    • 就業開始?終了時間や休憩のタイミング
    • 時間帯ごとに業務を割り當てる (午前と午後という分け方が多いですが、細かい場合は 15 分単位)

    數理計畫法パッケージ Numerical Optimizer では、上記のような制約は問題構造に応じた數理モデルを構築することで考慮することができます。 また、Numerical Optimizer を利用したシフト作成は、次のように様々な場面で実際に活用されています。

    生産スケジューリング

    生産スケジューリングとは、工場など現場における作業計畫を決定する問題のことです (もう少し広い意味で用いられる場合もありますがここでは省略します)。 具體的には、資源制約 (機械の性能等) の範囲內で在庫の具合を気にしながら、納期遅れを最小にする機械の稼働計畫を決定する問題等が挙げられます。 また、少し特殊な例としては 資材切り出し問題 が挙げられ、Numerical Optimizer を利用したアプローチをしたこともあります。

    この問題もシフトスケジューリングと同様、現場毎に様々な制約條件が存在します。 Numerical Optimizer を用いたアプローチでは、解きたい問題を數理モデルとして構築し、數理モデルから得られた解を利用することで課題を解決します。

    問題解決までのプロセス

    數理計畫問題としての一般的なアプローチ方法は こちら にありますので、併せてご覧ください。

    以下は問題解決のための一般的な流れになります。

    1. 現実の課題の整理
    2. 數理モデルの構築
    3. プロトタイプ作成 (數理モデルの検証)
    4. システム化

    ここではシフトスケジューリングを例にもう少し具體的にご紹介します。 なお、株式會社NTTデータ數理システムはこちらのプロセスのどの部分からでもお手伝いさせて頂きますのでご相談ください。

    (1) 現実の課題の整理

    シフト作成の擔當者にヒアリングしながら、現狀考慮しているルール (制約條件) の洗い出しを行います。 例えば、以下の様なルールを洗い出します。

    • ある時間帯はリーダーが必ずいなければいけない
    • ある作業の後は 45 分以上空けなければいけない
    • 一週間で○○時間以上△△時間以下の勤務時間でなければいけない

    (2) 數理モデルの構築

    (1) で洗い出したルールを數理モデルの形で表現します。

    Numerical Optimizer を用いる場合は、モデリング言語 SIMPLE を用いて數理モデルを表現します。 「表現した數理モデルから最適解を求めるためにどのような (數學的な) 処理をするのか」というアルゴリズムの部分はユーザーの方は意識する必要はありません。

    ここは特に數理計畫のノウハウを必要としますので、不安な方は株式會社NTTデータ數理システムにお任せください。

    (3) プロトタイプ作成 (數理モデルの検証)

    (1) の作業のみではたいていの場合全てのルールを洗い出すことは不可能です。 そもそも人間の頭は非常によくできていて、特に熟練のシフト作成者は、自分でも意識していない様々なルールを考慮しながらシフト作成をしているものです。 このため、シフト作成者が最初にプロトタイプで得られたシフトを見た際に、無意識の內に考慮している要素が反映されていないため「何かおかしい」と感じられるケースが多いようです。

    ここでは、ヒアリング等を通して「何かおかしい」と感じた理由から無意識に考慮していたルールを洗い出すことになります。 そして、新たに洗い出されたルールを數理モデルに反映させ、より現実に近いシフトの作成を目指します。

    (4) システム化

    Numerical Optimizer は構築した數理モデルを簡単に実行形式のロードモジュール ( exe ファイルや DLL ファイル) にすることができます。

    このロードモジュールは Excel からの呼び出しや現在ご利用のシステムへの組み込み等が可能です。 例えば現在擔當者の方が利用している Excel があれば、そこに「シフト自動作成ボタン」を 1 個追加することで、これまでの運用とほぼ変わらない狀態で自動化することができます。

    JiZzJiZZ国产免费A片