図面 (/)
課題
解決手段
概要
背景
所定条件下で所望のパラメータを最大または最小とする解を探索する、いわゆる組合せ最適化問題の概念は、交通渋滞解消、グローバルサプライチェーンにおける物流コスト低減、など実社会における複雑な問題にも適用されうる。
一方、そうした問題においては解候補が爆発的に多くなるため、スーパーコンピュータや量子コンピュータなど相応の計算能力を有した計算機でなければ、当該問題を実用的な時間内に解くことが難しい。
例えば、量子コンピュータに関連する従来技術としては、全数探索を必要とするような逆問題や組み合わせ最適化問題に対して高速演算を可能にする計算機に関し、スピンを演算における変数とし、解こうとする問題をスピン間相互作用とスピンごとに作用する局所場で設定し、また、時刻t=0において外部磁場により全スピンを一方向に向かせ、時刻t=τで外部磁場がゼロになるように外部磁場を徐々に小さくし、また、各スピンは時刻tにおける各サイトの外部磁場及びスピン間相互作用のすべての作用で決まる有効磁場に従い向きが定まるとして時間発展させ、その際、スピンの向きが有効磁場に完全に揃うのではなく、量子力学的に補正された向きとすることにより、系が基底状態をほぼ維持するようにする技術(特許文献1参照)などが提案されている。
概要
協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成を効率的に行う。スケジュール作成支援装置100において、所定業務で協働する各人員の所定期間における総勤務長、前記期間における各タイミングでの必要人数、および前記業務に前記各人員を割り当てる際の制約条件、の各情報を格納した記憶部と、前記期間における総勤務長、必要人数、および制約条件が満たされる際に最小となる制約条件用関数、を項として含む目的関数に関して、各人員の出勤有無をスピンとし、制約条件用関数における変数間の感応度をスピンの間の相互作用の強度として設定したイジングモデルを演算し、その結果に基づき、所定期間の各タイミングにおける各人員の出勤有無を規定したスケジュールを出力する演算部104を含む構成とする。
目的
本発明の目的は、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成を効率的に行う技術を提供する
効果
実績
- 技術文献被引用数
- 0件
- 牽制数
- 0件
この技術が所属する分野
請求項1
所定業務で協働する各人員の所定期間における総勤務長、前記期間における各タイミングでの必要人数、および前記業務に前記各人員を割り当てる際の制約条件、の各情報を格納した記憶部と、前記期間における前記総勤務長、前記必要人数、および前記制約条件が満たされる際に最小となる制約条件用関数、を項として含む目的関数に関して、前記各人員の出勤有無をスピンとし、前記制約条件用関数における変数間の感応度を前記スピンの間の相互作用の強度として設定したイジングモデルを演算する演算部とを有し、前記演算部は前記演算の結果に基づき、前記所定期間の前記各タイミングにおける前記各人員の出勤有無を規定したスケジュールを所定装置に出力することを特徴とするスケジュール作成支援装置。
請求項2
前記演算部は、連続勤務に関する前記制約条件である、連続勤務長の上限または下限、連続勤務の追求、および連続勤務の抑制、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、ことを特徴とする請求項1に記載のスケジュール作成支援装置。
請求項3
前記演算部は、不連続勤務に関する前記制約条件である、勤務タイミングの間隔の上限または下限、休日連続化の追求、および休日連続化の抑制、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、ことを特徴とする請求項1に記載のスケジュール作成支援装置。
請求項4
前記演算部は、禁止パターンに関する前記制約条件である、特定時間帯での勤務の連続禁止、および前記特定時間帯での勤務直後の所定時間帯での勤務の禁止、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、ことを特徴とする請求項1に記載のスケジュール作成支援装置。
請求項5
前記演算部は、人員間の相性に関する前記制約条件である、所定属性の人員の同時勤務の追求または抑制の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、ことを特徴とする請求項1に記載のスケジュール作成支援装置。
請求項6
前記演算部は、人員の希望に関する前記制約条件である、所定パターンでの勤務の追求について、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、ことを特徴とする請求項1に記載のスケジュール作成支援装置。
請求項7
前記演算部は、人員間の平等に関する前記制約条件である、勤務パターンごとの出勤長に関する前記各人員の間での均等化について、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、ことを特徴とする請求項1に記載のスケジュール作成支援装置。
請求項8
請求項9
所定業務で協働する各人員の所定期間における総勤務長、前記期間における各タイミングでの必要人数、および前記業務に前記各人員を割り当てる際の制約条件、の各情報を格納した記憶部を備える情報処理装置が、前記期間における前記総勤務長、前記必要人数、および前記制約条件が満たされる際に最小となる制約条件用関数、を項として含む目的関数に関して、前記各人員の出勤有無をスピンとし、前記制約条件用関数における変数間の感応度を前記スピンの間の相互作用の強度として設定したイジングモデルを演算し、前記演算の結果に基づき、前記所定期間の前記各タイミングにおける前記各人員の出勤有無を規定したスケジュールを所定装置に出力する、ことを特徴とするスケジュール作成支援方法。
請求項10
前記情報処理装置が、連続勤務に関する前記制約条件である、連続勤務長の上限または下限、連続勤務の追求、および連続勤務の抑制、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、ことを特徴とする請求項9に記載のスケジュール作成支援方法。
請求項11
前記情報処理装置が、不連続勤務に関する前記制約条件である、勤務タイミングの間隔の上限または下限、休日連続化の追求、および休日連続化の抑制、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、ことを特徴とする請求項9に記載のスケジュール作成支援方法。
請求項12
前記情報処理装置が、禁止パターンに関する前記制約条件である、特定時間帯での勤務の連続禁止、および前記特定時間帯での勤務直後の所定時間帯での勤務の禁止、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、ことを特徴とする請求項9に記載のスケジュール作成支援方法。
請求項13
前記情報処理装置が、人員間の相性に関する前記制約条件である、所定属性の人員の同時勤務の追求または抑制の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、ことを特徴とする請求項9に記載のスケジュール作成支援方法。
請求項14
前記情報処理装置が、人員の希望に関する前記制約条件である、所定パターンでの勤務の追求について、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、ことを特徴とする請求項9に記載のスケジュール作成支援方法。
請求項15
前記情報処理装置が、人員間の平等に関する前記制約条件である、勤務パターンごとの出勤長に関する前記各人員の間での均等化について、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、ことを特徴とする請求項9に記載のスケジュール作成支援方法。
請求項16
前記情報処理装置が、前記イジングモデルに関して組合せ最適化問題を解くCMOSアニーリングマシンであることを特徴とする請求項9に記載のスケジュール作成支援方法。
技術分野
0001
本発明は、スケジュール作成支援装置およびスケジュール作成支援方法に関する。
背景技術
0002
所定条件下で所望のパラメータを最大または最小とする解を探索する、いわゆる組合せ最適化問題の概念は、交通渋滞解消、グローバルサプライチェーンにおける物流コスト低減、など実社会における複雑な問題にも適用されうる。
0004
例えば、量子コンピュータに関連する従来技術としては、全数探索を必要とするような逆問題や組み合わせ最適化問題に対して高速演算を可能にする計算機に関し、スピンを演算における変数とし、解こうとする問題をスピン間相互作用とスピンごとに作用する局所場で設定し、また、時刻t=0において外部磁場により全スピンを一方向に向かせ、時刻t=τで外部磁場がゼロになるように外部磁場を徐々に小さくし、また、各スピンは時刻tにおける各サイトの外部磁場及びスピン間相互作用のすべての作用で決まる有効磁場に従い向きが定まるとして時間発展させ、その際、スピンの向きが有効磁場に完全に揃うのではなく、量子力学的に補正された向きとすることにより、系が基底状態をほぼ維持するようにする技術(特許文献1参照)などが提案されている。
先行技術
0005
WO2016/157333
発明が解決しようとする課題
0007
例えば、コールセンタにおけるスケジュール作成業務では、数百人規模のオペレータに関して週間、月間のシフトスケジュールを作成する必要がある。一方、現状では、経験のある担当者が、予め決まったルール(例:早番、遅番といったシフトパターンを、該当期間に関して固定的な順序、頻度で組合せて配置する)の下、人力でスケジュール作成を行っていた。
0008
こうしたスケジュール作成は、一般的なPCで表計算ソフトウェアにおける関数を用いて相応に効率化することも可能である。ところが、人員数が一定規模を超えてくる場合、或いは、複数条件が影響し合う非線形な制約条件が存在する場合、現実的な時間で解を得ることができない。よって、ごく小規模な組織で線形の制約条件しか存在しない状況にしか対応できていない。
0009
多くの人員が協働する場合のスケジュール作成は、各人員の勤務日数規定、各日の必要人員数といった基本的な要因の他にも、各人員の都合や曖昧な希望、勤務体系、各種規則など様々な要因によって大きな影響を受ける。また、その要因自体も人員や所属組織、業務需要によって大きく変動し、かつ要因同士も競合し影響しあうケースがある。
0010
しかも、業務需要の急増/急減、人員の急な欠勤など、要因の急変動が生じるケースもある。こうした状況に一般的なPCを採用して従来どおりスケジュール作成を行うとしても、上述の要因数や非線形な制約条件などに応じて計算量が指数関数的に増加し、膨大な時間を要するかオーバーフローに至ることとなる。つまり、必要なタイミングでスケジュール作成を行うことが期待できない。
0011
そこで本発明の目的は、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成を効率的に行う技術を提供することにある。
課題を解決するための手段
0012
上記課題を解決する本発明のスケジュール作成支援装置は、所定業務で協働する各人員の所定期間における総勤務長、前記期間における各タイミングでの必要人数、および前記業務に前記各人員を割り当てる際の制約条件、の各情報を格納した記憶部と、前記期間における前記総勤務長、前記必要人数、および前記制約条件が満たされる際に最小となる制約条件用関数、を項として含む目的関数に関して、前記各人員の出勤有無をスピンとし、前記制約条件用関数における変数間の感応度を前記スピンの間の相互作用の強度として設定したイジングモデルを演算する演算部とを有し、前記演算部は前記演算の結果に基づき、前記所定期間の前記各タイミングにおける前記各人員の出勤有無を規定したスケジュールを所定装置に出力することを特徴とする。
0013
また、本発明のスケジュール作成支援方法は、所定業務で協働する各人員の所定期間における総勤務長、前記期間における各タイミングでの必要人数、および前記業務に前記各人員を割り当てる際の制約条件、の各情報を格納した記憶部を備える情報処理装置が、前記期間における前記総勤務長、前記必要人数、および前記制約条件が満たされる際に最小となる制約条件用関数、を項として含む目的関数に関して、前記各人員の出勤有無をスピンとし、前記制約条件用関数における変数間の感応度を前記スピンの間の相互作用の強度として設定したイジングモデルを演算し、前記演算の結果に基づき、前記所定期間の前記各タイミングにおける前記各人員の出勤有無を規定したスケジュールを所定装置に出力する、ことを特徴とする。
発明の効果
0014
本発明によれば、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成を効率的に行うことが可能となる。
図面の簡単な説明
0015
本実施形態のスケジュール作成支援装置を含むネットワーク構成図である。
本実施形態におけるスケジュール作成支援装置のハードウェア構成例を示す図である。
本実施形態におけるタイミングチャート例を示す図である。
本実施形態におけるフロー例1を示す図である。
本実施形態における基本情報テーブルの構成例を示す図である。
本実施形態における制約条件テーブルの構成例を示す図である。
本実施形態における制約条件テーブルの構成例を示す図である。
本実施形態におけるスケジュール作成支援方法を示すフロー図である。
本実施形態における画面例を示す図である。
実施例
0016
−−−アニーリングマシンについて−−−
上述の特許文献1にも示すように、本出願人は量子コンピューティング技術を開発し、
例えば、ビッグデータに基づく全数探索問題(組合せ最適化問題の概念含む)における諸問題の解決を図ってきた。
0017
こうした全数探索問題に対して、一般的には量子コンピュータヘの期待が大きい。量子コンピュータは、量子ビットと呼ばれる基本素子からなり“0”と“1”を同時に実現する。そのためすべての解候補を初期値として同時に計算可能であり、全数探索を実現しうる可能性を持っている。しかし、量子コンピュータは全計算時間に亘って量子コヒーレンスを維持する必要がある。
0018
こういった中で注目されるようになってきたのが断熱量子計算と呼ばれる手法である(参考文献:E. Farhi, et al., ”A quantum adiabatic evolution al gor ithm applied to random instances of an NP−complete problem,” Science292, 472 (2001).)。この方法は、ある物理系の基底状態が解になるように問題を変換し、基底状態を見つけることを通して解を得ようとするものである。
0019
問題を設定した物理系のハミルトニアンをH^pとする。但し、演算開始時点ではハミルトニアンをH^pとするのではなく、それとは別に基底状態が明確で準備しやすい別のハミルトニアンH^0とする。次に十分に時間を掛けてハミルトニアンをH^0からH^pに移行させる。十分に時間を掛ければ系は基底状態に居続け、ハミルトニアンH^pの基底状態が得られる。これが断熱量子計算の原理である。計算時間をτとすればハミルトニアンは式(1)となり、
[式1]
式(2)のシュレディンガー方程式に基づいて時間発展させて解を得る。
0020
[式2]
断熱量子計算は全数探索を必要とする問題に対しても適用可能で、一方向性の過程で解に到達する。しかし、計算過程が式(2)のシュレディンガー方程式に従う必要があるならば、量子コンピュータと同様に量子コヒーレンスの維持が必要になる。
0021
但し、量子コンピュータが1量子ビットあるいは2量子ビット間に対するゲート操作を繰り返すものであるのに対して、断熱量子計算は量子ビット系全体に亘って一斉に相互作用させるものであり、コヒーレンスの考え方が異なる。
0022
例えば、ある量子ビットヘのゲート動作を考えてみる。この時、もしその量子ビットと他の量子ビットとで相互作用があれば、それはディコヒーレンスの原因になるが、断熱量子計算ではすべての量子ビットを同時に相互作用させるので、この例のような場合にはデ
ィコヒーレンスにならない。この違いを反映して断熱量子計算は量子コンピュータに比べてディコヒーレンスに対して頑強であると考えられている。
0023
以上述べたように、断熱量子計算は全数探索を必要とするような難問に対して有効である。そして、スピンを演算における変数とし、解こうとする問題をスピン間相互作用とスピンごとに作用する局所場で設定する。
0024
時刻t=0において外部磁場により全スピンを一方向に向かせ、時刻t=τで外部磁場がゼロになるように外部磁場を徐々に小さくする。
0025
各スピンは、時刻tにおける各サイトの外部磁場及びスピン間相互作用のすべての作用で決まる有効磁場に従い、向きが定まるとして時間発展させる。
0026
その際、スピンの向きが有効磁場に完全に揃うのではなく、量子力学的に補正された向きとすることにより、系が基底状態をほぼ維持するようにする。
0028
本実施形態におけるスケジュール作成支援装置としては、上述の断熱量子計算を行うアニーリングマシンを想定するが、勿論これに限定するものではなく、組合せ最適化問題を本発明のスケジュール作成支援方法に沿って適宜に解くことが可能なものであればいずれも適用可能である。
0029
具体的には、アニーリング方式において電子回路(デジタル回路など)で実装するハードウェアだけでなく、超伝導回路などで実装する方式も含む。また、アニーリング方式以外にてイジングモデルを実現するハードウェアでもよい。例えばレーザーネットワーク方式(光パラメトリック発振)・量子ニューラルネットワークなども含む。また、前述した通り一部の考え方が異なるものの、イジングモデルで行う計算をアダマールゲート、回転ゲート、制御NOTゲートといったゲートで置き換えた量子ゲート方式においても、本発明を
実現することができる。
0031
図1に示すスケジュール作成支援装置100は、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成を効率的に行うコンピュータ装置であり、具体的には、一例としてアニーリングマシンを想定する。
0032
ただし、アニーリングマシンの概要は特許文献1に基づき既に述べたとおりであり、その具体的な構成や動作等の詳細については適宜省略する(以下同様)。
0034
上述のユーザ端末200は、スケジュール作成支援装置100からスケジュールの提案を受ける端末である。
0035
このユーザ端末200のユーザとしては、具体的には、多くのオペレータを抱えてコー
ルセンタ業務を遂行する事業者で、金融機関や保険会社、或いは大手メーカーといった組織を想定できる。或いは、多くの看護士や介護スタッフを抱えて患者等の看護業務や介護業務を遂行する、医療機関や介護事業者も想定できる。
0036
いずれにしても、相応規模の人員を日付や時間帯ごとに必要数だけ割り当てて、全体として業務を遂行する事業者であれば、上述のユーザに該当しうる。つまり、そうした事業者の業務に関しては、本発明が適用可能であると言える。
0037
具体例として想定できる、例えば銀行のコールセンタにおけるスケジュール作成に際しては、所定の経験を持った担当者が、数百人規模の全オペレータの月間シフトスケジュールを人力で作成しているのが現実であった。つまり当該業務は属人化しがちであり、また人力での作業である。
0039
一方、表計算ソフトウェアにおける関数等を利用した場合、「休日設定は土日固定」、「一度に計算できる人員数は100人まで」、などといった現実的な障壁から離れてスケジュール作成を行うことは難しい。
0040
上記の障壁は、数学的な困難さおよびその数学的困難さを解決する技術不在(厳密には未成熟)に起因する。表計算ソフトウェアは、線形の制約条件であれば数学的に高速に解けるものであるが、非線形の制約条件を解くには膨大な時間がかかるという性質を持つ。
0041
このように従来であれば、スケジュール作成に際し、要素すなわち各人員などに関する非線形の制約条件の増加に対して計算量が指数関数的に増加し、計算完了までに長時間を要するが、アニーリングマシンを使用したスケジュール作成支援装置100を採用することで、要素の増加にさほど依存せず計算を行うことが可能となる。
0042
−−−ハードウェア構成−−−
また、本実施形態のスケジュール作成支援装置100のハードウェア構成は、図2に以下の如くとなる。
0044
このうち記憶部101は、SSD(Solid State Drive)やハードディスクドライブなど適宜な不揮発性記憶素子で構成される。
0045
また、メモリ103は、RAMなど揮発性記憶素子で構成される。
0047
また、通信部105は、ネットワーク10と接続してユーザ端末200との通信処理を担うネットワークインターフェイスカード等を想定する。
0048
なお、スケジュール作成支援装置100がスタンドアロンマシンである場合、ユーザか
らのキー入力や音声入力を受け付ける入力装置、処理データの表示を行うディスプレイ等の出力装置、を更に備えるとすれば好適である。
0049
また、記憶部101内には、本実施形態のスケジュール作成支援装置として必要な機能を実装する為のプログラム102に加えて、基本情報テーブル125および制約条件テーブル126が少なくとも記憶されている。ただし、これらテーブルについての詳細は後述する。
0050
また、プログラム102、すなわちアニーリングマシンとしての動作を実装するアルゴリズムは、解くべき課題であるイジングモデル1021の情報を保持する。このイジングモデル1021は、情報提供の対象となる業務や人員、およびそれらに影響を与える他の各種情報に基づき管理者等が予め設定しておくものとなる。
0051
なお、アニーリングマシンの概要にて述べた断熱量子計算は、別名で量子アニールとも呼ばれ、古典的な焼きなましの概念を量子力学に発展させたものである。即ち、断熱量子計算は本来古典的動作が可能で、高速性や解の正解率に関しで性能を向上させるために量子力学的効果が付加されたものとも解釈できる。そこで本発明では、演算部そのものは古典的とし、演算過程に量子力学的に定まるパラメータを導入することにより、古典的であるが量子力学的な効果を含んだ演算方法・装置を実現する。ただし、演算部を量子コンピュータで構成する形態についても勿論採用しうる。
0052
以上の概念に基づき、以下の例では断熱量子計算との関連性を説明しながら解としての基底状態を得る古典的アルゴリズムと、それを実現するための装置に関して述べる。
0053
こうした前提でのスケジュール作成支援装置100は、N個の変数sj z(j=1,2,…,N)が−1≦sj z≦1の値域を取り、局所場gjと変数間相互作用Jij(i,j=1,2,…,N)によって課題の設定がなされる。
0054
また演算部104では、時刻をm分割して離散的にt=t。(t。=0)からtm(tm =τ)まで演算するものとし、各時刻tkにおける変数SjZ(tk)を求めるに当たり、前時刻tk−1の変数Sjz(tk−1)(i=1,2,..,N)の値と緩和項の係数9pinaあるいは9pinbを用いてBjz(tk)={ΣiJijSiz(tk−1)+gj+sgn(sjz(tk−1))・9pina}・tk/τあるいはBjz(tk)={ΣiJiJSjz(tk−1)+gj+9pinb .SjZ(tk−1)}・tk/τを求め、上述の変数Sjz(tk)の値域が−1≦sjz(tk)≦1になるように関数fを定めてSjz(tk)=f(Bjz(tk),tk)とし、時刻ステップをt=t0からt=tmに進めるにつれて上述の変数Sjzを−1あるいは1に近づけ、最終的にsjz<0ならば、Sjzd=−1、Sjz>0ならば、Sjzd=1として解を定める。
0055
係数gpinbは、例えば|Jij|の平均値の50%から200%の値である。また、課題設定の局所場gjに関して、あるサイトj’に対してのみ補正項δgj’をgj’に加え、該サイトj’に対してのみgj’の大きさを大きくすることもできる。また、補正項δgj’は、例えば|Jij|の平均値の10%から100%の値である。
0057
式(3)で与えられるイジングスピン・ハミルトニアンの基底状態探索問題はNP困難と呼ばれる分類の問題を含み、有用な問題であることが知られている(文献:F. Ba
rahona, ”On the computational comp lex ity of Isingspin glass models,” J. Phys. A: Math. Gen. 15, 3241 (1982).)。
0058
[式3]
Jij及びgjが課題設定パラメータであり、σ^Zはパウリのスピン行列のz成分で±1の固有値を取る。i,jはスピンのサイトを表す。イジングスピンとは値として±1だけを取りうる変数のことで、式(3)ではσ^zの固有値が±1であることによりイジングスピン系となっている。
0060
例えば、各人員の出勤有無を±1に対応付けることや、ロジック回路のhighとlowを±1に対応付けることも可能であるし、光の縦偏波と横偏波を±1に対応付けることや0,πの位相を±1に対応付けることも可能である。
0061
ここで例示する方法では、断熱量子計算と同様に、時刻t=0において式(4)で与えられるハミルトニアンの基底状態に演算系を準備する。
0063
式(4)は、横磁場を印加したことに相当し、すべてのスピンがx方向を向いた場合(γ>0)が基底状態である。問題設定のハミルトニアンはz成分のみのイジングスピン系として定義されたが、式(4)にはスピンのx成分が登場している。従って、演算過程でのスピンはイジングではなくベクトル的(ブロッホベクトル)である。t=0では式(4)のハミルトニアンでスタートしたが、時刻tの進行と共に徐々にハミルトニアンを変化させ、最終的には式(3)で記述されるハミルトニアンにしてその基底状態を解として得る。
0064
[式5]
ここでσ^はパウリのスピン行列の3成分をベクトルとして表示している。基底状態はスピンが磁場方向を向いた場合で、<・>を量子力学的期待値として<σ^>=B/|B|と書ける。断熱過程では常に基底状態を維持しようとするので、スピンの向きは常に磁場の向きに追従する。
0065
以上の議論は多スピン系にも拡張できる。t=0ではハミルトニアンが式(4)で与えられる。これは全スピンに対して一様に磁場BjX =γが印加されたことを意味する。t>0では、磁場のx成分が徐々に弱まりBjX =γ(1−t/τ)である。z成分に関してはスピン間相互作用があるために有効磁場としては式(6)になる。
0066
[式6]
スピンの向きは<σ^z>/<σ^X>で規定できるので、スピンの向きが有効磁場に追従するならば式(7)によりスピンの向きが定まる。
0067
[式7]
式(7)は量子力学的記述であるが期待値を取っているので、式(1)〜(6)とは異なり古典量に関する関係式である。
0068
古典系では量子力学の非局所相関(量子縫れ)がないので、スピンの向きはサイトごとの局所場により完全に決まるはずであり、式(7)が古典的スピン系の振る舞いを決定する。量子系では非局所相関があるために式(7)は変形されることになるが、それに関しては後述することとし、ここでは発明の基本形態を述べるために式(7)で定まる古典系について記述する。
0069
図3にスピン系の基底状態を得るためのタイミングチャート(1)を示す。図3の記述は古典量に関するものなので、サイトjのスピンをσ^jではなくsjにより表した。またそれに伴い、図3の有効磁場Bjは古典量である。t=0において全サイトで右向きの有効磁場Bjが印加され、全スピンSjが右向きに初期化される。
0070
時間tの経過に従い、徐々にz軸方向の磁場とスピン間相互作用が加えられ、最終的にスピンは+z方向あるいは−z方向となって、スピンSjのz成分がsjz=+1あるいは−1となる。時間tは連続的であることが理想であるが、実際の演算過程では離散的にして利便性を向上させることもできる。以下では離散的な場合を述べる。
0071
ここで例示するスピンはz成分だけでなくx成分が加わっているためにベクトル的なスピンになっている。図3からもベクトルとしての振る舞いが理解できる。ここまでy成分が登場してこなかったが、それは外場方向をxz面に取ったために外場のy成分が存在せず、従って<σ^Y>=0となるためである。
0072
演算系のスピンとしては大きさ1の3次元ベクトル(これをブロッホベクトルと呼び、球面上の点で状態を記述できる)を想定しているが、図に示す例における軸の取り方では2次元のみを考慮すればよい(円上の点で状態を記述できる)。
0073
またγは一定なのでBjx(t)>0(γ>0)あるいはBjx(t)<0(γ<0)が成り立つ。この場合、2次元スピンベクトルは半円のみで記述できることになり、[−1,1]でSjzを指定すればSjzの1変数で2次元スピンベクトルが定まる。従って、ここでの例では、スピンは2次元ベクトルであるが、値域を[−1,1]とする1次元連続変数として表記することもできる。
0074
図3のタイミングチャートでは時刻t=tkにおいてサイトごとに有効磁場を求め、その値を用いて式(8)によりt=tkにおけるスピンの向きを求める。
0075
[式8]
式(8)は式(7)を古典量に関する表記に書き改めたものなので<・>の記号が付いていない。次に、t=tk+lの有効磁場をt=tkにおけるスピンの値を用いて求める。各時刻の有効磁場を具体的に書けば式(9)及び(10)となる。
0076
[式9]
[式10]
以下、図3のタイミングチャートで模式的に示した手順に従い、スピンと有効磁場を交互に求めていく。
0077
古典系ではスピンベクトルの大きさは1である。この場合スピンベクトルの各成分は、tanθ=Bjz(tk)/Bjx(tk)で定義される媒介変数θを用いてSjz(tk)=sinθ、Sjx(tk)=COSθと記述される。
0078
これを書き直せば、Sjz(tk)=sin(arctan(Bjz(tk)/Bjx(tk)))、Sjx(tk)=cos(arctan(Bjz(tk)/Bjx(tk)))である。
0079
式(9)から明らかなようにBjx(tk)の変数は、tkのみであり、τとγは定数である。 従って、Sjz(tk)=sin(arctan(Bjz(tk)/Bjx(tk)))及びSjx(tk)=cos(arctan(Bjz(tk)/Bjx(tk)))はBjz(tk)とtkを変数とする関数としてSjz(tk)=f1(Bjz(tk),tk)及びSjx(tk)=f2( Bjz(tk),tk)のような一般化した表現もできる。
0080
スピンを2次元ベクトルとして記述しているので、Sjz(tk)とsjx(tk)の2成分が登場しているが、Bjz(tk)を式(10)に基づき決定するならばSjx(tK)は必要ない。
0081
これは、[−1,1]を値域とするSjz(tk)のみでスピン状態を記述できることに対応している。最終的な解Sjzdは、Sjzd=−1or1になる必要があり、Sjz(τ)>0ならばSjzd=1、Sjz(τ)<0ならばSjzd=−1とする。
0082
図4に、上述のアルゴリズムをフローチャートにまとめたものを示す。ここでtm=τである。図4のフローチャートの各ステップs1〜s9は、時間t=0からt=τに到る図3のタイミングチャートの、ある時刻での処理に対応している。すなわち、フローチャートのステップs2、s4、s6がそれぞれ、t=t1,tk+l,tmにおける上記の式(9)及び(10)に対応している。最終的な解はステップs8において、sjz<0ならばSjzd=−1、Sjz>0ならば、Sjzd=1とすることにより定める(s9) 。
0083
ここまでは課題が式(3)で表現された場合に如何に解かれるかを示した。次に具体的課題が如何に局所場gjと変数間相互作用Jij(i,j=1,2,…,N)を含む式(3)で表現されるかに関して具体例を挙げて説明する。
0084
ここでの具体的課題すなわちイジングモデル1021は、例えば、コールセンタ業務に携わるオペレータ各々の所定月における総勤務日数、当該月における各日での必要人数、およびコールセンタ業務に各オペレータを割り当てる際の制約条件、の各情報をベースに、当該月における総勤務日数、当該月における各日の必要人数、および上述の制約条件が満たされる際に最小となる制約条件用関数、を項として含む目的関数に関して、各オペレータの出勤有無をスピンとし、制約条件用関数における変数間の感応度をスピンの間の相互作用の強度として設定したイジングモデルを想定する。
0085
この場合、局所場gjは、上述の当該月における総勤務日数、当該月における各日の必要人数、および上述の制約条件が満たされる際に最小となる制約条件用関数、における変数の値が目的関数へ与える影響度として設定されることを想定する。
0086
以上のような考察を通して、(上述の目的関数の各項の間に関する)変数間相互作用Jijと局所場gjを具体的に設定し、式(3)で表されるイジングモデル1021の基底状態探索、すなわち上述の当該月における総勤務日数、当該月における各日の必要人数、および上述の制約条件が満たされる際に最小となる制約条件用関数、からなる目的関数が最小となる基底状態の探索を通して、各オペレータの勤務シフトすなわち、コールセンタ業務における当該月の全体スケジュールを特定する。
0087
なお、イジングモデルとアニーリング法で計算するのは、「目的関数を最小化する」ことだけである。そのため、目的関数を最小化する際に満たされる必要がある制約条件がある場合、それらを何らかの形で目的関数に足し込む必要がある。
0088
例えば、
[式11]
という制約条件を考えてみる。この制約条件を「制約条件が満たされる時に最小となる関数」に変換するとすれば、以下の式になる。
0089
[式12]
二乗となっている部分は必ず正の値となるため、この式が最小値となるのは二乗の中身が0となる時だけである。中身が0となるのはΣXi−A=0、の時だけであるので、この関数が最小となる最適化問題を解けば、ΣXi=Aが満たされている解が自動的に得られることになる。
0091
例えば、以下のような最適化問題があったとする。
0092
[式13]
これをアニーリング用の定式化に変更すると、以下のようになる。
0093
[式14]
ここでPとQは定数であり、どの項を優先的に最小化するかを決めるファクタとなる。例えば、3つの項すべてを平等に最小化する(つまり、制約条件の強さに偏りをつけないで問題を解く)場合、PとQを同等にするなど、項間でバランスをとるよう値の設定を行
う。
0094
一方、「第2項の制約条件は厳密に守るが、第3項の制約条件はあまり重視しない」という問題設定であれば、重視する項の係数であるPの値を、Qの値より大きくすることで望みの解が得られることになる。
0095
このようにアニーリング法によれば、制約条件に優先度を付し、あまり重視しない制約条件については「なるべく満たす」といった設定が可能になる。
0096
なお、イジングモデルに関する各種設定は、本実施形態のスケジュール生成の各条件、情報に応じ、既存の一般的概念に沿った形で適宜に行うものとする。
0097
−−−スピン(変数)設定の具体例−−−
<タイムテーブルにおけるスピン>
ある人員iが、ある時間帯jに、勤務種類kを実施する場合に1、実施しない場合に0とな
る変数x_(i,j,k)を考える(図5参照)。基本的にはこの変数x_(i,j,k)の1つ1つがCMOSアニーリングマシンにおけるスピン1つ1つに割り振られる。
0098
「勤務種類」を考えない場合、この変数は単純に、「ある人員iが、ある時間帯jに業務をするかしないか」を与える変数となる。つまり、下記の表1で1が入ったセルでは業務
を実施し、0が入ったセルでは業務を実施しない、ということになる。
0099
[表1]
[表2]
0100
「勤務種類」を考える場合、上記の表2において、勤務種類「インバウンド」をk=1に
対応させ、勤務種類「アウトバウンド」をk=2に対応させ、2つの変数の組合せによってタイムテーブル上の1セルを表現する。つまり、あるセルに属する2つの変数(x_(i,j,1)とx_(i,j,2))がともに0なら「休憩」、x_(i,j,1)が1でx_(i,j,2)が0なら「インバウンド」
、x_(i,j,1)が0でx_(i,j,2)が1なら「アウトバウンド」を表すことになる。ここで、x_(i,j,1)もx_(i,j,2)も1となった場合は「同一人物が同一時間帯に2つの異なる業務を実施する」ことになってしまうため、これは制約条件として除外する必要がある。
0101
<月間シフトにおけるスピン>
ここでは、ある人員iが、ある日付jに、勤務種類kを実施する場合に1、実施しない場合に0となる変数x_(i,j,k)を考える。ただし、人員iの勤務日数の下限をL_i、上限をU_i、
日付jに必要な人員の数をN_jとしている。基本的にはこの変数x_(i,j,k)の1つ1つがCMOS
アニーリングマシンにおけるスピン1つ1つに割り振られる(表3参照)。
0102
[表3]
「勤務種類」を考えない場合、この変数は単純に、「ある人員iが、ある日付jに業務をするかしないか」を与える変数となる。つまり、表3で1が入ったセルは出勤し、0が入ったセルは休日となる、ということになる。
0103
一方、「勤務種類」を考える場合、例えば、「早番」をk=1、「遅番」をk=2、「深夜番」をk=3に対応させるようなことが考えられる。このとき、図7における表の一番左上の
セルに対応する変数は3つ存在する(x_1,1,1、x_1,1,2、およびx_1,1,3)ことになる。この3つの変数がそれぞれ0か1の値を取るので、考えられる組合せは、下記の表4における8つとなる。
0104
[表4]
このように、「3つの変数(x_1,1,1、x_1,1,2、およびx_1,1,3)のうち、1を取るのは1つまで」という制約条件を課して、上表の下4行分の結果が出てしまうことを禁止する必
要がある。
0107
この例では、時間間隔を10分として、横の行で指定している必要人数を、各時間帯で満たし、オペレータごとの勤務時間数(勤務コマ数)を守る組み合わせ最適化問題となる。区切る時間間隔が細かいほど、計算に必要なセル(本テーブルにおけるセル=要因)の数は増加し、より計算力が必要となる問題である。またセルの数が多いため、禁止パターンや最低連続コマ数(連続勤務コマ数の最低基準)、上限連続コマ数(連続勤務コマ数の上限基準)等の制約を入れる際、制約条件に応じた制約条件用関数の数が膨大となる。ところがCMOSアニーリング法を採用すれば、現実的な時間内に好適な結果すなわちスケジュールが特定可能である。
0109
また、図6および図7に本実施形態における制約条件テーブル126の一例を示す。本実施形態の制約条件テーブル126は、上述のコールセンタ業務に各オペレータを割り当てる際の制約条件それぞれの情報を格納したテーブルである。
0110
そのデータ構造は、各制約条件の識別情報(図中では“#”)をキーとして、当該制約条件の内容、最適化ソルバでの実装例、およびアニーリングマシンでの実装例(制約条件用関数)。といったデータから成るレコードの集合体である。
0111
本実施形態では、アニーリングマシンでの実装例すなわち制約条件用関数に加えて、従来技術との比較のため、最適化ソルバで当該制約条件を実装する際の関数例も対照表示している。
0112
−−−フロー例−−−
以下、本実施形態におけるスケジュール作成支援方法の実際手順について図に基づき説明する。以下で説明するスケジュール作成支援方法に対応する各種動作は、スケジュール作成支援装置100がメモリ等に読み出して実行するプログラムによって実現される。そして、このプログラムは、以下に説明される各種の動作を行うためのコードから構成されている。
0113
図8は、本実施形態におけるスケジュール作成支援方法のフロー例を示す図である。この場合、スケジュール作成支援装置100は、処理対象とするイジングモデル1021として、或る月における各オペレータの総勤務コマ数、必要人数、および制約条件用関数、を項として含む目的関数に関して、各オペレータの出勤有無をスピンとし、制約条件用関数における変数間の感応度をスピン間の相互作用の強度として設定したイジングモデル1021を演算するものとする。
0114
そこで、スケジュール作成支援装置100は、各オペレータの希望条件をユーザ端末200から取得し、これを制約条件として制約条件テーブル126に格納する(s10)。或いは、この際、各オペレータから制約条件テーブル126中から、所望の制約条件に合致する制約条件の指定を受け付けるとしてもよい。
0115
また、スケジュール作成支援装置100は、s10で得た制約条件を、既に述べたように制約条件用関数に変換する(s11)。この制約条件用関数は、当該制約条件が満たされる際に最小となる関数である。なお、上述のs10で制約条件の指定を受けた場合、当該制約条件に対して規定済みの制約条件用関数を制約条件テーブル126から抽出することとなる。
0116
また、スケジュール作成支援装置100は、アニーリングマシンとして、上述の3つの項目(総勤務コマ数、必要人数、および制約条件用関数)に関する設定がなされたイジングモデル1021を課題とし、当該目的関数が最小となる基底状態を算定する(s12)。こうした基底状態の探索自体は、既存技術における処理と同様である。
0117
つまり、各オペレータに関する制約条件と、上述の総勤務コマ数および必要人数といった基本情報の規定を満たしつつ、時間経過とともに(感応度に基づく理論上の)各時間帯の割り当て有無の最終状態に向け遷移し、各オペレータの割り当て結果が落ち着く状態を、基底状態として探索することとなる。
0118
また、スケジュール作成支援装置100は、s12で特定した各時間帯における各オペレータの割り当て有無の情報(図9の画面900)を、スケジュールとしてユーザ端末200に送信し(s13)、処理を終了する。
0120
ユーザ端末200の操作者は、このスケジュール画面900を閲覧し、例えば、来月や明日、或いは直近1時間先のタイムテーブルについて認識し、コールセンタ業務の運営について適宜な確認、検討行うこととなる。
0121
なお、制約条件の種類に応じて生成されるスケジュールの例は、以下のとおりとなる。ここでは、こうした連続勤務に関する制約条件(式15:勤務コマをなるべく連続させる)が無い前提でスケジュール生成した結果(表5)と、当該制約条件を解いた場合のスケジュール(表6)を対比のためそれぞれ示す。
0122
[式15]
[表5]
[表6]
上記のように、制約がない場合は勤務コマがコマ切れになり、10分おきに「勤務→休憩→勤務→休憩」となっている箇所が多く出現し、現実的なタイムテーブルとなっていない。
0123
一方、制約がある場合は、基本的に勤務コマが連続しており、まとまった時間、同じ勤務ができる現実的なタイムテーブルとなっている。
0124
続いて、不連続勤務に関する制約条件(式16:休日コマを連続させすぎない)が無い前提でスケジュール生成した結果(表7)と、当該制約条件を解いた場合のスケジュール
(表8)をそれぞれ示す。なお、ここでは、月間シフトにおける不連続勤務に関する制約条件の結果例を示す。今回考える制約条件の式の例を、以下に示す。ただし、今回は「勤務種類」については言及しないため、勤務種類に関する添え字(k)を省略した変数x_(i,j)について考える。また、Aは調整された任意の整数である。
0125
[式16]
[表7]
[表8]
上記のように、制約がない場合は出勤コマや休日が必要以上に連続となってしまい、「10連勤」や「4連休」といった、法律面・就業規則面・各オペレータの負担面から見ても、非現実的な月間シフトとなっている。一方、制約がある場合は、程よく連勤と連休が散らばっており、現実的な月間シフトとなっている。
0126
続いて、禁止パターンに関する制約条件(式17:遅番翌日の早番禁止)が無い前提で
スケジュール生成した結果(表9)と、当該制約条件を解いた場合のスケジュール(表10)をそれぞれ示す。ここでは、月間シフトにおける禁止パターンに関する制約条件の結果例を示す。今回考える制約条件の式の例を、以下に示す。ただし、今回は「勤務種類」のうち、早番(k=1)と遅番(k=2)についてのみ言及するため、勤務種類に関する添え字(k)は2までを考える。
0127
[式17]
この制約条件は「遅番の翌日に早番が入らないようにする」という意味となる。
0128
[表9]
[表10]
なお、上述の各表において、視認性向上のため、遅番の前に▲マークを付している。上
記のように、制約がない場合は遅番の翌日に早番となってしまう箇所が存在し、十分な休息が取られないまま翌日の勤務を実施しなければならない、非現実的な月間シフトとなっている。一方、制約がある場合は、遅番の翌日は遅番か休日かのどちらかとなっており、現実的な月間シフトとなっている。
0129
続いて、人員間相性に関する制約条件(式18:新人の同時出勤を避ける&指導員をセ
ットにする)が無い前提でスケジュール生成した結果(表11)と、当該制約条件を解いた場合のスケジュール(表12)をそれぞれ示す。ここでは、月間シフトにおける人員間相性に関する制約条件の結果例を示す。
0130
ただし、今回は「勤務種類」については言及しないため、勤務種類に関する添え字(k
)を省略した変数x_(i,j)について考える。また、A、Bは調整された任意の整数である
。
0131
[式18]
[表11]
[表12]
上記のように、制約がない場合は「新人2人が同時に出勤する日」「新人Aが出勤しているのに、新人Aの指導員であるオペレータ1が出勤していない日」「新人Bが出勤しているのに、新人Bの指導員であるオペレータ2が出勤していない日」が存在し、現実的な月間シフトとなっていない。一方、制約がある場合は、すべての日で新人は1人のみの出
勤となっており、新人が出勤する際はその指導員が必ず出勤するという、現実的な月間シフトとなっている。
0132
続いて、人員希望反映に関する制約条件(式19:オペレータ2は1〜7日に休日希望&オペレータ3は早番希望&オペレータ4は遅番希望)が無い前提でスケジュール生成した結果(表13)と、当該制約条件を解いた場合のスケジュール(表14)をそれぞれ示す。
0133
[式19]
この制約条件は、「オペレータ2は期間の前半(1日〜7日)に休日を希望する」および「オペレータ3はできるだけ早番を希望する」および「オペレータ4はできるだけ遅番を希望する」という意味となる。
0134
[表13]
[表14]
なお、上述の各表において、視認性向上のため、遅番の前に▲マークを付している。
0135
上記のように、制約がない場合は「期間の後半にもオペレータ2に休日」「オペレータ3に遅番」「オペレータ4に早番」といった、オペレータの希望から外れた月間シフトとなっている。一方、制約がある場合は、各オペレータの希望が叶えられた月間シフトとなっている。
0136
続いて、人員間平等勤務に関する制約条件(式20:勤務時間を人員間で平等とする)が無い前提でスケジュール生成した結果(表15)と、当該制約条件を解いた場合のスケジュール(表16)をそれぞれ示す。
0137
[式20]
この制約条件は、「各オペレータの勤務コマ数を、目安であるDになるべく近づける」という意味となる。
0138
[表15]
[表16]
上記のように、制約がない場合は人員間で勤務時間に偏りがあり、休憩時間がない人員と休憩時間ばかりの人員が混在している、非現実的なタイムテーブルとなっている。一方、制約がある場合は、各人員間でほぼ同じ勤務時間となっており、平等で現実的なタイムテーブルとなっている。
0139
なお、例えば、突発的な需要急増に伴うオペレータ不足、或いはオペレータの突然の欠勤、といった緊急時に際し、スケジュール作成支援装置100は、当該事象に対応する制約条件をユーザ端末200から取得し、上述のフローを実行するとすれば好適である。
0140
こうした状況での制約条件は、例えば、直近までに作成していたスケジュールでは、同日同時間帯に別の業務に割り当てられているオペレータを、「出勤」の前提とする制約条件等が想定できる。
0141
その場合のスケジュール作成支援装置100は、当該制約条件に応じてs11を実行して制約条件用関数を生成し、対応する目的関数に関するイジングモデルを解くものとする
。
0142
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
0143
こうした本実施形態によれば、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成を効率的に行うことが可能となる。
0144
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、本実施形態のスケジュール作成支援装置において、前記演算部は、連続勤務に関する前記制約条件である、連続勤務長の上限または下限、連続勤務の追求、および連続勤務の抑制、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、としてもよい。
0145
これによれば、人員各々における連続勤務に関する条件(例:本人の希望や所属組織の規定。以下同様)を可能なかぎり踏まえつつ、人員コスト最小となるスケジュールを効率良く作成可能となる。ひいては、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成をより効率的に行うことが可能となる。
0146
また、本実施形態のスケジュール作成支援装置において、前記演算部は、不連続勤務に関する前記制約条件である、勤務タイミングの間隔の上限または下限、休日連続化の追求、および休日連続化の抑制、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、としてもよい。
0147
これによれば、人員各々における不連続勤務に関する条件を可能なかぎり踏まえつつ、人員コスト最小となるスケジュールを効率良く作成可能となる。ひいては、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成をより効率的に行うことが可能となる。
0148
また、本実施形態のスケジュール作成支援装置において、前記演算部は、禁止パターンに関する前記制約条件である、特定時間帯での勤務の連続禁止、および前記特定時間帯での勤務直後の所定時間帯での勤務の禁止、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、としてもよい。
0149
これによれば、人員各々における勤務に関する禁止パターン(例:深夜勤務の直後に日勤は禁止)を可能なかぎり踏まえつつ、人員コスト最小となるスケジュールを効率良く作成可能となる。ひいては、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成をより効率的に行うことが可能となる。
0150
また、本実施形態のスケジュール作成支援装置において、前記演算部は、人員間の相性に関する前記制約条件である、所定属性の人員の同時勤務の追求または抑制の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、としてもよい。
0151
これによれば、人員各々における他人員との相性に関する条件(例:新人に対して指導可能な人員が同時出勤する。或る人員と或る人員とは同時出勤しない。)を可能なかぎり踏まえつつ、人員コスト最小となるスケジュールを効率良く作成可能となる。ひいては、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成をより効率的に行うことが可能となる。
0152
また、本実施形態のスケジュール作成支援装置において、前記演算部は、人員の希望に関する前記制約条件である、所定パターンでの勤務の追求について、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、としてもよい。
0153
これによれば、人員各々における希望に関する条件(例:所定日にできれば特定のシフトを割り当てる)を可能なかぎり踏まえつつ、人員コスト最小となるスケジュールを効率良く作成可能となる。ひいては、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成をより効率的に行うことが可能となる。
0154
また、本実施形態のスケジュール作成支援装置において、前記演算部は、人員間の平等に関する前記制約条件である、勤務パターンごとの出勤長に関する前記各人員の間での均等化について、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するものである、としてもよい。
0155
これによれば、人員間の平等に関する条件を可能なかぎり踏まえつつ、人員コスト最小となるスケジュールを効率良く作成可能となる。ひいては、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成をより効率的に行うことが可能となる。
0156
また、本実施形態のスケジュール作成支援装置は、前記イジングモデルに関して組合せ最適化問題を解くCMOSアニーリングマシンであるとしてもよい。
0157
これによれば、イジングモデルの動作を半導体のCMOS(Complementary Metal Oxide Semiconductor)などの素子を用いた回路で擬似的に再現し、互いに影響しあっている制約条件すなわち非線形な制約条件を踏まえた組合せ最適化問題の実用解を、室温下で効率良く求めることが可能となる。ひいては、協働する多くの人員に関して非線形な制約条件を踏まえたスケジュール作成を、さらに効率的に行うことが可能となる。
0158
また、本実施形態のスケジュール作成支援方法において、前記情報処理装置が、連続勤務に関する前記制約条件である、連続勤務長の上限または下限、連続勤務の追求、および連続勤務の抑制、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、としてもよい。
0159
また、本実施形態のスケジュール作成支援方法において、前記情報処理装置が、不連続勤務に関する前記制約条件である、勤務タイミングの間隔の上限または下限、休日連続化の追求、および休日連続化の抑制、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、としてもよい。
0160
また、本実施形態のスケジュール作成支援方法において、前記情報処理装置が、禁止パターンに関する前記制約条件である、特定時間帯での勤務の連続禁止、および前記特定時間帯での勤務直後の所定時間帯での勤務の禁止、の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、としてもよい。
0161
また、本実施形態のスケジュール作成支援方法において、前記情報処理装置が、人員間の相性に関する前記制約条件である、所定属性の人員の同時勤務の追求または抑制の少なくともいずれかについて、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、としてもよい。
0162
また、本実施形態のスケジュール作成支援方法において、前記情報処理装置が、人員の希望に関する前記制約条件である、所定パターンでの勤務の追求について、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算するとしてもよい。
0163
また、本実施形態のスケジュール作成支援方法において、前記情報処理装置が、人員間の平等に関する前記制約条件である、勤務パターンごとの出勤長に関する前記各人員の間での均等化について、前記制約条件用関数を前記目的関数の項に含め、前記イジングモデルを演算する、としてもよい。
0164
また、本実施形態のスケジュール作成支援方法において、前記情報処理装置が、前記イジングモデルに関して組合せ最適化問題を解くCMOSアニーリングマシンであるとしてもよい。
0165
10ネットワーク
100スケジュール作成支援装置(アニーリングマシン)
101 記憶部
102プログラム
1021イジングモデル
103メモリ
104演算部
105通信部
125基本情報テーブル
126制約条件テーブル
200 ユーザ端末