(57)【要約】【課題】  システムの制約となるボトルネックをより早く認識することができるとともに、当該ボトルネックを解消してシステムの活動を改善する。【解決手段】  制約条件入力受付部３０１は必須制約条件と緩和可能制約条件との設定を受け付け、制約条件緩和部１０７は緩和可能制約条件を緩和した緩和制約条件を作成し、エージェント分類部１０２は必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類し、制約エージェント認識部１０３は第３グループに分類されたエージェントの中からシステム全体の制約となる制約エージェントを抽出し、制約条件緩和部１０７は制約エージェントを第１及び第２グループのいずれかに分類できるように緩和制約条件を緩和する。【選択図】      図２
2005209025.tif 000002
【特許請求の範囲】
【請求項１】
自身に割り当てられた構成要素を用いて自身に課されるタスクを自律的に実行する個体をモデル化したエージェントを複数組み合わせて構成されるマルチエージェントシステムを管理する管理装置であって、
前記エージェントが実行するタスクに課される制約条件として、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件との設定を受け付ける受付手段と、
前記緩和可能制約条件を緩和した緩和制約条件を作成する緩和手段と、
前記必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、前記必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、前記必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類する分類手段と、
前記分類手段によって第３グループに分類されたエージェントの中からシステム全体の制約となる制約エージェントを抽出する抽出手段とを備え、
前記緩和手段は、前記抽出手段によって抽出された制約エージェントを前記第１及び第２グループのいずれかに分類できるように緩和制約条件をさらに緩和することを特徴とする管理装置。
【請求項２】
前記抽出手段は、前記第３グループに分類されたエージェントに対して当該エージェントが達成すべき目標の達成度合いを評価する評価関数を基に前記制約エージェントを抽出することを特徴とする請求項１記載の管理装置。
【請求項３】
前記緩和手段は、前記制約エージェントと他のエージェントとの間で前記制約エージェントが前記必須制約条件及び緩和制約条件を満たすための交渉を実行させ、すべてのエージェントが前記必須制約条件及び緩和制約条件を満たすとともにシステム全体の状況が悪化しない場合に交渉を成立させ、
前記分類手段は、前記交渉後の各エージェントを前記第１乃至第３グループに再び分類し、
前記緩和手段は、再分類後に前記第３グループに属するエージェントが存在する場合、前記緩和制約条件をさらに緩和することを特徴とする請求項２記載の管理装置。
【請求項４】
前記抽出手段は、前記交渉が成立しなかった場合、前記第３グループのエージェントの中から前記交渉が成立しなかった制約エージェント以外の他のエージェントを新たな制約エージェントとして抽出し、
前記緩和手段は、前記新たな制約エージェントと他のエージェントとの間で前記新たな制約エージェントが前記必須制約条件及び緩和制約条件を満たすための交渉を再度実行させることを特徴とする請求項３記載の管理装置。
【請求項５】
前記マルチエージェントシステムは、前記構成要素、前記制約条件及び前記タスクが同じ同質エージェントから構成され、
前記緩和手段は、ドラム・バッファ・ロープを用いて前記制約エージェントと他のエージェントとの間で前記制約エージェントが前記制約条件を満たすための交渉を実行させることを特徴とする請求項１〜４のいずれかに記載の管理装置。
【請求項６】
前記マルチエージェントシステムの少なくとも一部は、前記構成要素、前記制約条件及び前記タスクのうちの少なくとも１つが異なる異質エージェントから構成され、
前記緩和手段は、隣接する異質エージェント間の依存関係を維持しながらドラム・バッファ・ロープを用いて前記制約エージェントと他のエージェントとの間で前記制約エージェントが前記制約条件を満たすための交渉を実行させることを特徴とする請求項１〜５のいずれかに記載の管理装置。
【請求項７】
自身に割り当てられた構成要素を用いて自身に課されるタスクを自律的に実行する個体をモデル化したエージェントを複数組み合わせて構成されるマルチエージェントシステムを管理するための管理方法であって、
コンピュータが、前記エージェントが実行するタスクに課される制約条件として、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件との設定を受け付ける受付ステップと、
前記コンピュータが、前記緩和可能制約条件を緩和した緩和制約条件を作成する緩和ステップと、
前記コンピュータが、前記必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、前記必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、前記必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類する分類ステップと、
前記コンピュータが、前記分類ステップにおいて第３グループに分類されたエージェントの中からシステム全体の制約となる制約エージェントを抽出する抽出ステップとを含み、
前記緩和ステップは、前記コンピュータが、前記抽出ステップにおいて抽出された制約エージェントを前記第１及び第２グループのいずれかに分類できるように緩和制約条件をさらに緩和するステップを含むことを特徴とする管理方法。
【請求項８】
自身に割り当てられた構成要素を用いて自身に課されるタスクを自律的に実行する個体をモデル化したエージェントを複数組み合わせて構成されるマルチエージェントシステムを管理するための管理プログラムであって、
前記エージェントが実行するタスクに課される制約条件として、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件との設定を受け付ける受付手段と、
前記緩和可能制約条件を緩和した緩和制約条件を作成する緩和手段と、
前記必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、前記必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、前記必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類する分類手段と、
前記分類手段によって第３グループに分類されたエージェントの中からシステム全体の制約となる制約エージェントを抽出する抽出手段としてコンピュータを機能させ、
前記緩和手段は、前記抽出手段によって抽出された制約エージェントを前記第１及び第２グループのいずれかに分類できるように緩和制約条件をさらに緩和することを特徴とする管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自身に割り当てられた構成要素を用いて自身に課されるタスクを自律的に実行する個体をモデル化したエージェントを複数組み合わせて構成されるマルチエージェントシステムを管理する管理装置、管理方法及び管理プログラムに関するものである。
【背景技術】
【０００２】
従来、生産環境におけるスケジューリング問題を解決するＴＯＣ（制約理論）の手法としてＤＢＲ（ドラム・バッファ・ロープ）が知られている（例えば、非特許文献１乃至非特許文献３参照）。ＤＢＲは、例えば、隊列の進行を例に説明すると、歩みが一番速い人と一番遅い人とがロープで繋がれ、一番遅い人はドラムを持って隊列のリズムを設定し、他の人はこのリズムに従う。一番早い人と一番遅い人との距離は、ロープの長さを超えることはない。他の人は一番遅い人よりも早く歩くことができるので、いつでも距離を詰めることができる。ロープは、突然発生するデッドロックを防ぐため、余裕を持っている。結果的に、隊列の全ての人は、一番遅い人のリズムに従属し、平均的に歩き、一番遅い人よりも早くなることはない。
【０００３】
ここで、上述のＤＢＲを生産システムで用いた場合、ドラムは、システムの制約となる工程をモデル化したエージェントが設定するリズムを表し、例えば、生産システムの最も遅い工程で設定される生産ペース等である。また、ロープは、システムの制約となるエージェントとの間で緩和可能な時間を表し、例えば、制約となる工程からシステムの最上流の工程へ繋がるプロセス等である。ロープの長さが生産にかかる時間や仕掛け在庫量に相当する。バッファは、システムの不確定性に対応するために設定される時間的余裕を表し、例えば、制約となる工程前の仕掛品の在庫や運送前の在庫等である。バッファの大きさは、例えば、倉庫の大きさ等を表している。
【非特許文献１】Ｅ．Ｍ．Ｇｏｌｄｒａｔｔ  ａｎｄ  Ｊ．Ｃｏｘ；Ｔｈｅ  Ｇｏａｌ：Ａ  Ｐｒｏｃｅｓｓ  ｏｆ  Ｏｎｇｏｉｎｇ  Ｉｍｐｒｏｖｅｍｅｎｔ，Ｔｈｅ  Ｎｏｒｔｈ  Ｒｉｖｅｒ  Ｐｒｅｓｓ（１９８４）
【非特許文献２】Ｅ．Ｎｏｒｅｅｎ，Ｄ．Ｓｍｉｔｈ  ａｎｄ  Ｊ．Ｔ．Ｍａｃｋｅｙ；Ｔｈｅ  Ｔｈｅｏｒｙ  ｏｆ  Ｃｏｎｓｔｒａｉｎｔｓ  ａｎｄ  Ｉｔｓ  Ｉｍｐｌｉｃａｔｉｏｎｓ  ｆｏｒ  Ｍａｎａｇｅｍｅｎｔ  Ａｃｃｏｕｎｔｉｎｇ，Ｔｈｅ  Ｎｏｒｔｈ  Ｒｉｖｅｒ  Ｐｒｅｓｓ（１９９５）
【非特許文献３】Ｄ．Ｓｍｉｔｈ；Ｔｈｅ  Ｍｅａｓｕｒｅｍｅｎｔ  Ｎｉｇｈｔｍａｒｅ；Ｈｏｗ  ｔｈｅ  Ｔｈｅｏｒｙ  ｏｆ  Ｃｏｎｓｔｒａｉｎｔｓ  Ｃａｎ  Ｒｅｓｏｌｖｅ  Ｃｏｎｆｌｉｃｔｉｎｇ  Ｓｔｒａｔｅｇｉｅｓ，Ｐｏｌｉｃｉｅｓ  ａｎｄ  Ｍｅａｓｕｒｅ，Ｓｔ．Ｌｕｃｉｅ  Ｐｒｅｓｓ（２０００）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記のように、ＤＢＲに基づく生産管理手法では、制約条件を設けて制約となる工程を認識し、解消する必要がある。この制約条件を厳しくし過ぎると、制約となるエージェントが増え、生産システムが止まってしまう。一方、制約条件を緩和し過ぎると、制約となるエージェントが減り、生産システムは動くが、生産システムのスループットが減少することになる。
【０００５】
このように、従来のＤＢＲに基づく生産管理手法では、どれくらい制約を緩和すればよいかの見極めが困難であり、システムの制約となるボトルネックを認識し、かつ当該ボトルネックを解消することが困難であった。
【０００６】
本発明の目的は、システムの制約となるボトルネックをより早く認識することができるとともに、当該ボトルネックを解消してシステムの活動を改善することができる管理装置、管理方法及び管理プログラムを提供することである。
【課題を解決するための手段】
【０００７】
本発明に係る管理装置は、自身に割り当てられた構成要素を用いて自身に課されるタスクを自律的に実行する個体をモデル化したエージェントを複数組み合わせて構成されるマルチエージェントシステムを管理する管理装置であって、前記エージェントが実行するタスクに課される制約条件として、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件との設定を受け付ける受付手段と、前記緩和可能制約条件を緩和した緩和制約条件を作成する緩和手段と、前記必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、前記必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、前記必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類する分類手段と、前記分類手段によって第３グループに分類されたエージェントの中からシステム全体の制約となる制約エージェントを抽出する抽出手段とを備え、前記緩和手段は、前記抽出手段によって抽出された制約エージェントを前記第１及び第２グループのいずれかに分類できるように緩和制約条件をさらに緩和するものである。
【０００８】
本発明に係る管理装置においては、必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類し、第３グループに分類されたエージェントの中からシステム全体の制約となる制約エージェントを抽出しているので、システムの制約となるエージェントをより早く認識することができる。また、抽出された制約エージェントを第１及び第２グループのいずれかに分類できるように緩和制約条件を緩和しているので、当該エージェントの状態をアクティブな状態に改善することができる。この結果、システムの制約となるボトルネックをより早く認識することができるとともに、当該ボトルネックを解消してシステムの活動を改善することができる。
【０００９】
また、上記の管理装置において、前記抽出手段は、前記第３グループに分類されたエージェントに対して当該エージェントが達成すべき目標の達成度合いを評価する評価関数を基に前記制約エージェントを抽出するものである。この場合、評価関数の値から制約エージェントを的確且つ迅速に抽出することができる。
【００１０】
また、上記の管理装置において、前記緩和手段は、前記制約エージェントと他のエージェントとの間で前記制約エージェントが前記必須制約条件及び緩和制約条件を満たすための交渉を実行させ、すべてのエージェントが前記必須制約条件及び緩和制約条件を満たすとともにシステム全体の状況が悪化しない場合に交渉を成立させ、前記分類手段は、前記交渉後の各エージェントを前記第１乃至第３グループに再び分類し、前記緩和手段は、再分類後に前記第３グループに属するエージェントが存在する場合、前記緩和制約条件をさらに緩和するものである。この場合、制約エージェントの状態をアクティブな状態に改善してシステムの活動を改善することができる。
【００１１】
また、上記の管理装置において、前記抽出手段は、前記交渉が成立しなかった場合、前記第３グループのエージェントの中から前記交渉が成立しなかった制約エージェント以外の他のエージェントを新たな制約エージェントとして抽出し、前記緩和手段は、前記新たな制約エージェントと他のエージェントとの間で前記新たな制約エージェントが前記必須制約条件及び緩和制約条件を満たすための交渉を再度実行させるものである。
【００１２】
この場合、交渉が成立しなかった制約エージェントは協力者として交渉に参加することができるが、交渉の主役になることがないので、交渉のデッドロックを防止することができる。
【００１３】
また、上記の管理装置において、前記マルチエージェントシステムは、前記構成要素、前記制約条件及び前記タスクが同じ同質エージェントから構成され、前記緩和手段は、ドラム・バッファ・ロープを用いて前記制約エージェントと他のエージェントとの間で前記制約エージェントが前記制約条件を満たすための交渉を実行させるものである。
【００１４】
この場合、同質エージェントから構成されるマルチエージェントシステムの制約となるボトルネックをより早く認識することができるとともに、当該ボトルネックを解消してシステムの活動を改善することができる。
【００１５】
また、上記の管理装置において、前記マルチエージェントシステムの少なくとも一部は、前記構成要素、前記制約条件及び前記タスクのうちの少なくとも１つが異なる異質エージェントから構成され、前記緩和手段は、隣接する異質エージェント間の依存関係を維持しながらドラム・バッファ・ロープを用いて前記制約エージェントと他のエージェントとの間で前記制約エージェントが前記制約条件を満たすための交渉を実行させるものである。
【００１６】
この場合、異質エージェントから構成されるマルチエージェントシステムの部分において制約となるボトルネックをより早く認識することができるとともに、当該ボトルネックを解消してシステムの活動を改善することができる。
【００１７】
本発明に係る管理方法は、自身に割り当てられた構成要素を用いて自身に課されるタスクを自律的に実行する個体をモデル化したエージェントを複数組み合わせて構成されるマルチエージェントシステムを管理するための管理方法であって、コンピュータが、前記エージェントが実行するタスクに課される制約条件として、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件との設定を受け付ける受付ステップと、コンピュータが、前記緩和可能制約条件を緩和した緩和制約条件を作成する緩和ステップと、コンピュータが、前記必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、前記必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、前記必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類する分類ステップと、コンピュータが、前記分類ステップにおいて第３グループに分類されたエージェントの中からシステム全体の制約となる制約エージェントを抽出する抽出ステップとを含み、前記緩和ステップは、前記抽出ステップにおいて抽出された制約エージェントを前記第１及び第２グループのいずれかに分類できるように緩和制約条件をさらに緩和するものである。
【００１８】
本発明に係る管理プログラムは、自身に割り当てられた構成要素を用いて自身に課されるタスクを自律的に実行する個体をモデル化したエージェントを複数組み合わせて構成されるマルチエージェントシステムを管理するための管理プログラムであって、前記エージェントが実行するタスクに課される制約条件として、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件との設定を受け付ける受付手段と、前記緩和可能制約条件を緩和した緩和制約条件を作成する緩和手段と、前記必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、前記必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、前記必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類する分類手段と、前記分類手段によって第３グループに分類されたエージェントの中からシステム全体の制約となる制約エージェントを抽出する抽出手段としてコンピュータを機能させ、前記緩和手段は、前記抽出手段によって抽出された制約エージェントを前記第１及び第２グループのいずれかに分類できるように緩和制約条件を緩和するものである。
【発明の効果】
【００１９】
本発明によれば、システムの制約となるボトルネックをより早く認識することができるとともに、当該ボトルネックを解消してシステムの活動を改善することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の一実施の形態による生産管理装置を用いた生産管理システムについて図面を参照しながら説明する。
【００２１】
図１は、ＭＡＳ（マルチエージェントシステム）について説明するための図である。ＭＡＳとは、自身に割り当てられた構成要素を用いて自身に課されるタスクを自律的に実行する個体をモデル化したエージェントを複数組み合わせて構成されるシステムである。なお、本実施の形態では、製造、物流及び販売の一連の生産システムにおけるＭＡＳについて説明するが、本発明は特にこれに限定されず、他のシステムにも同様に適用することができる。また、本実施形態において、製造工場、運送会社、販売拠点、パレット及びトラックなどが、自身に割り当てられた構成要素を用いて自身に課されるタスクを自律的に実行する個体に相当する。
【００２２】
図１に示す生産システムは、製造エージェント、物流エージェント及び販売エージェントの上位エージェントシステムに分けることができ、製造エージェントは複数の製造工場で構成され、物流エージェントは複数の運送会社で構成され、販売エージェントは複数の販売拠点で構成される下位エージェントシステムとに分けることができる。ここで、構成要素、制約条件及びタスクが共に同じエージェントを同質エージェントとする。例えば、図１の製造エージェントでは、工場Ａ、工場Ｂ及び工場Ｃは加工原材料、加工機械及び操作者から構成され、それぞれ原材料を加工するので同質エージェントとすることができる。また、構成要素、制約条件及びタスクのうちの少なくとも１つが異なるエージェントを異質エージェントとする。例えば、上位エージェントシステムにおける製造エージェント、物流エージェント及び販売エージェントは、それぞれ構成要素、制約条件及びタスクが異なるため、異質エージェントとすることができる。
【００２３】
同質エージェントと異質エージェントとは、エージェント同士間の競争、協調の形式が異なる。すなわち、例えば、異質エージェント同士の場合、同じ資源を競合することはほとんどないが、相互依存するため、ムカデ競争のようにエージェント同士の同期行動が重要となる。また、同質エージェント同士の場合、競合する資源がほとんど同じであり、資源に対する競争力が強く、依存性が弱いので、資源が有限な場合はエージェント間の協調性が重要となる。そこで、以下の説明では、同質エージェント同士と異質エージェント同士の２つの実施形態について説明する。
【００２４】
まず、同質エージェント同士における生産管理システムについて説明する。図２は、本発明の一実施の形態による生産管理装置のハードウエア構成の一例を示す図である。図２に示す生産管理装置１０は、パーソナルコンピュータ等から構成され、入力装置１、ＲＯＭ（リードオンリメモリ）２、ＣＰＵ（中央演算処理装置）３、ＲＡＭ（ランダムアクセスメモリ）４、外部記憶装置５、表示装置６及び記録媒体駆動装置７を備えて構成される。各ブロックは内部のバスに接続され、このバスを介して種々のデータ等が各ブロック間で入出力され、ＣＰＵ３の制御の下、種々の処理が実行される。
【００２５】
入力装置１は、キーボード、マウス等から構成され、ユーザが制約条件等を入力するために用いられる。ＲＯＭ２には、システムプログラム等が予め記憶される。外部記憶装置５は、ハードディスクドライブ等から構成され、後述する生産管理プログラム等を記憶している。ＣＰＵ３は、外部記憶装置５から生産管理プログラム等を読み出し、後述する生産管理処理等を実行して各ブロックの動作を制御する。ＲＡＭ４は、ＣＰＵ３の作業領域等として用いられる。表示装置６は、ＣＲＴ（陰極線管）又は液晶表示装置等から構成され、ＣＰＵ３の制御の下、種々の画面を表示する。
【００２６】
なお、生産管理プログラム等は、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ及びフレキシブルディスク等から構成されるコンピュータ読み出し可能な記録媒体８に記録するようにしてもよい。この場合、ＣＤ−ＲＯＭドライブ、ＤＶＤ−ＲＯＭドライブ及びフレキシブルディスクドライブ等から構成される記録媒体駆動装置７を用いて記録媒体８から読み出された生産管理プログラム等が外部記憶装置５にインストールされる。また、生産管理プログラム等がネットワークを介して接続されている他のコンピュータ等に記憶されている場合、当該コンピュータ等からネットワークを介して生産管理プログラム等をダウンロードするようにしてもよい。
【００２７】
次に、上記のように構成された生産管理装置の主要な機能について説明する。図３は、図２に示す生産管理装置の主要機能の一例を示すブロック図である。
【００２８】
図３に示す生産管理装置１０は、機能的には、制御部１００、記憶部２００及び入力部３００を備えて構成される。制御部１００は、ＣＰＵ３等から構成され、ＣＰＵ３等が外部記憶装置５に記憶されている生産管理プログラム等を実行することによって、制約条件設定部１０１、エージェント分類部１０２、制約エージェント認識部１０３、制約エージェント改善部１０４、エージェント従属部１０５、判別部１０６及び制約条件緩和部１０７として機能する。記憶部２００は、外部記憶装置５等から構成され、ＣＰＵ３等が外部記憶装置５に記憶されている生産管理プログラム等を実行することによって、制約条件記憶部２０１及びエージェント分類情報記憶部２０２として機能する。入力部３００は、入力装置１等から構成され、ＣＰＵ３等が外部記憶装置５に記憶されている生産管理プログラム等を実行することによって、制約条件入力受付部３０１として機能する。
【００２９】
制約条件入力受付部３０１は、ユーザによる制約条件の入力を受け付ける。具体的に、制約条件入力受付部３０１は、予め提示される制約条件の中からユーザが所望する制約条件を受け付ける。制約条件記憶部２０１は、制約条件入力受付部３０１によって受け付けられた制約条件を記憶する。
【００３０】
制約条件設定部１０１は、予め記憶している分類ルールに基づき、制約条件記憶部２０１に記憶されている制約条件を、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件とに設定する。現実のシステムには多くの複雑な制約条件が存在し、全ての制約条件を同時に満たすことは困難であり、これらの制約条件には、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件とが存在する。そこで、制約条件設定部１０１は、システムのボトルネックを解消するために、制約条件記憶部２０１に記憶されている制約条件を、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件とに分類し、緩和可能制約条件に緩和パラメータを設け、ボトルネックの状況に応じて緩和パラメータを変化させることで制約条件を一定の程度まで緩和させる。例えば、運輸費の削減のためにはコンテナの効率に注目する。各製品には、配送納期及び現地納期の２つの納期がある。一般的には現地納期単位で製品をコンテナに積載するが、効率が悪い場合、現地納期に関する緩和可能制約条件を緩和し、配送納期で積載することによって、コンテナの効率をよくすることができる。なお、制約条件設定部１０１を設けることなく、ユーザが制約条件入力受付部３０１を用いて、必須制約条件及び緩和可能制約条件を設定してもよい。
【００３１】
システムの複雑性を簡略化するために、各システムは幾つかのサブシステム（エージェント）から構成されるとし、システムの目標もサブシステム毎に割り付ける。システムの目標を達成するには、各サブシステムの目標を達成しなければならない。この目標を達成するために、各サブシステムは互いに交渉を行う。制約条件設定部１０１は、各サブシステムによる交渉を評価する評価関数及び成立規則を目標及び緩和可能制約条件により定義する。評価関数は、その値が大きくなるに従って、制約違反の状況、あるいは目標を達成することができない状況が厳しいことを表している。
【００３２】
システムは幾つかのエージェントで構成され、各エージェントは自らの目標を達成するために、ヒューリスティック手法を用いて自らが置かれた条件下で要素（資源）を競合して利用する。エージェントの能力や外部環境が異なるので、エージェント同士の競争の結果、各エージェントの状況が変わり、制約条件を満たすエージェントと制約条件を満たさないエージェントとが同時に発生する。
【００３３】
この状況をより認識し易くするために、エージェント分類部１０２は、制約条件設定部１０１によって設定された制約条件に基づいて、全ての制約条件すなわち必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、必須制約条件及び緩和制約条件の少なくとも一つを満たさない、制約違反やシステムのボトルネックとなるエージェントを第３グループに分類する。エージェント分類部１０２は、各エージェントが第１〜第３グループのうちのどのグループに分類されたかをエージェント分類情報としてエージェント分類情報記憶部２０２に記憶する。なお、緩和制約条件は、後述する制約条件緩和部１０７により緩和可能制約条件を緩和したものである。
【００３４】
エージェント分類情報記憶部２０２は、エージェントと、第１グループ、第２グループ及び第３グループのうちの当該エージェントが属するグループとを対応付けてエージェント分類情報として記憶する。
【００３５】
制約エージェント認識部１０３は、エージェント分類部１０２によって第３グループに分類された各エージェントのうち、システム全体の制約となる制約エージェントを認識する。例えば、エージェント分類部１０２によって、制約違反となるエージェントは第３グループに分類されているので、制約エージェント認識部１０３は、第３グループに分類されたエージェントに対して当該エージェントが達成すべき目標の達成度合いを評価する評価関数の値を求め、評価関数の値が最も大きいエージェントをシステムがゴールに達することを妨げる制約エージェントとして認識する。また、制約エージェント認識部１０３は、後述する制約エージェント改善部１０４によって交渉が成立しなかった場合、第３グループのエージェントの中から交渉が成立しなかった制約エージェント以外の他のエージェントを新たな制約エージェントとして抽出する。
【００３６】
制約エージェント改善部１０４は、制約エージェントと他のエージェントとの間で制約エージェントが必須制約条件及び緩和制約条件を満たすための交渉を実行させ、すべてのエージェントが必須制約条件及び緩和制約条件を満たすとともにシステム全体の状況が悪化しない場合に交渉を成立させる。このとき、制約エージェント改善部１０４は、制約エージェント認識部１０３によって認識された制約エージェントに利用可能な資源を優先的に最大限活用させ、制約状況を改善する。例えば、加工工程が制約エージェントになっている場合、機械や人員の稼働時間を増やすことで、加工する速度を向上させる。
【００３７】
エージェント従属部１０５は、制約エージェント認識部１０３によって認識された制約エージェント以外の他のエージェントを制約エージェントに従属させる。ここで、同質エージェントと異質エージェントとは行動が異なる。同質エージェントは、同じ資源を競争するので、一定の協調・譲歩行動が必要となる。一方、異質エージェントは、同じ資源を競争しないが、行動の同期化が必要となる。制約になる工程が改善されないと、前工程がいくら進んでいてもその結果は在庫となるので、全体のスループットを向上させることはできない。また、無条件下で協調・譲歩及び同期化を図れば、システム全体の進行スピードが遅くなり、結果的にスループットを向上させることはできない。したがって、エージェント同士間の協調・譲歩及び同期化に条件をつける必要がある。
【００３８】
判別部１０６は、エージェント分類情報記憶部２０２に記憶されているエージェント分類情報を参照し、第３グループに属するエージェントが存在するか否かを判別する。また、判別部１０６は、エージェント分類部１０２によってエージェントを分類する処理、制約エージェント認識部１０３によって制約エージェントを認識する処理、制約エージェント改善部１０４によって制約エージェントを改善する処理、エージェント従属部１０５によって制約エージェント以外のエージェントを制約エージェントに従属させる処理、及び制約条件緩和部１０７によって制約条件を緩和させる処理が所定の回数だけ繰り返されたか否かを判別する。なお、この所定の回数としては、制約違反を解消することができない回数が予め設定されている。さらに、判別部１０６は、緩和パラメータの値が最大値になったか否かを判別する。
【００３９】
制約条件緩和部１０７は、判別部１０６によって第３グループに属するエージェントが存在すると判別された場合、制約条件記憶部２０１に記憶されている制約条件のうちの緩和可能な緩和可能制約条件をさらに緩和させて緩和制約条件を作成する。制約条件の厳しさや資源の有限性によって、条件をつけて従属させた場合、制約エージェントが改善されない可能性がある。そのため、システムに充分な柔軟性を持たせる必要があり、デッドロックとなる制約条件を緩和させ、他のエージェントと協調して再びアクティブな状況に変化させる。
【００４０】
例えば、配車エージェントは、制約条件によって部分的に納期の異なる荷物を積むことができない。船便の空間は有限なのでコンテナを増やすことはできない。このような場合、緩和可能制約条件を緩和させてコンテナの充填率が高くなるよう積載する。この緩和によって、同じ条件の荷物が分割されて積載され、卸エージェントは作業しにくくなるが、デッドロックを解消することができる。なお、どの緩和可能制約条件を緩和させ、あるいはどの緩和可能制約条件を緩和させないかは、第３グループに属するエージェントの状況によって定める。また、緩和可能制約条件をどの程度緩和させるかは、システム全体の状況及び第２グループの緩和状況によって定める。
【００４１】
なお、本実施形態において、制約条件入力受付部３０１及び制約条件設定部１０１が受付手段の一例に相当し、エージェント分類部１０２が分類手段の一例に相当し、制約エージェント認識部１０３が抽出手段の一例に相当し、制約エージェント改善部１０４、エージェント従属部１０５及び制約条件緩和部１０７が緩和手段の一例に相当する。
【００４２】
次に、上記のように構成された生産管理システムの生産管理装置１０による生産管理処理について説明する。図４は、図２に示す生産管理装置１０の生産管理処理を説明するためのフローチャートである。なお、図４に示す生産管理処理は、ＣＰＵ３が予め記憶されている生産管理プログラムを実行することにより行われる処理である。
【００４３】
まず、ステップＳ１において、制約条件設定部１０１は、制約条件入力受付部３０１によって受け付けられて制約条件記憶部２０１に記憶されている制約条件を、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件とに分類して設定する。
【００４４】
次に、ステップＳ２において、エージェント分類部１０２は、制約条件設定部１０１によって設定された制約条件に基づいて、必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類する。このとき、エージェント分類部１０２は、各エージェントが第１グループ、第２グループ及び第３グループのうちのどのグループに属するかをエージェント分類情報としてエージェント分類情報記憶部２０２に記憶する。
【００４５】
なお、初回は、緩和可能制約条件を緩和した緩和制約条件が作成されておらず、必須制約条件及び緩和可能制約条件を満たすエージェントと、必須制約条件及び緩和可能制約条件の少なくとも一つを満たさないエージェントしか存在しないため、各エージェントは第１グループと第３グループとに分類される。
【００４６】
次に、ステップＳ３において、制約エージェント認識部１０３は、エージェント分類情報記憶部２０２に記憶されているエージェント分類情報を読み出し、エージェント分類部１０２によって第３グループに分類された各エージェントのうち、システム全体の制約となる制約エージェントを認識する。
【００４７】
次に、ステップＳ４において、制約エージェント改善部１０４は、制約エージェント認識部１０３によって認識された制約エージェントの制約状況を改善する。制約エージェント改善部１０４は、制約エージェントと他のエージェントとの間で制約エージェントが必須制約条件及び緩和制約条件を満たすための交渉を実行させ、すべてのエージェントが必須制約条件及び緩和制約条件を満たすとともにシステム全体の状況が悪化しない場合に交渉を成立させる。
【００４８】
例えば、第３グループに分類される制約エージェントと第１又は第２グループに分類される非制約エージェントとの２つのエージェントによる交渉が実行され、非制約エージェントのシステム全体における状況が悪化したとしても、相手の制約エージェントより状況が悪化しなければ、交渉が成立したとする。交渉が成立した場合、エージェント分類部１０２は、交渉後の各エージェントを第１乃至第３グループに再び分類する。
【００４９】
次に、ステップＳ５において、エージェント従属部１０５は、制約エージェント認識部１０３によって認識された制約エージェント以外の他のエージェントを制約エージェントに従属させる。
【００５０】
次に、ステップＳ６において、判別部１０６は、制約エージェント改善部１０４によって交渉が成立したか否かを判別する。ここで、交渉が成立したと判別されると（ステップＳ６でＹＥＳ）、ステップＳ７に移行し、交渉が成立しなかったと判別されると（ステップＳ６でＮＯ）、ステップ８に移行する。
【００５１】
交渉が成立した場合、ステップＳ７において、エージェント分類部１０２は、交渉後の各エージェントを、制約条件設定部１０１によって設定された制約条件に基づいて、第１乃至第３グループに再び分類する。
【００５２】
一方、交渉が成立しなかった場合、ステップＳ８において、判別部１０６は、交渉が成立しなかった制約エージェントをチェック・バッファに分類する。本実施形態では、交渉のデッドロックを防ぐため、チェック・バッファという集合を用意している。現時点で制約エージェントにある全ての資源を交渉の要素としても、交渉が成立しなければ、この制約エージェントは現時点では改善することはできないと判断し、チェック・バッファに分類する。チェック・バッファに分類されたエージェントは、インアクティブエージェントとし、交渉の主役になれないが、協力者として交渉に参加する。このように、全ての交渉に失敗した制約エージェントをチェック・バッファに分類することによって、重複探索を防止することができる。
【００５３】
次に、ステップＳ９において、判別部１０６は、第２グループ又は第３グループに属するエージェントが存在するか否かを判別する。ここで、第２グループ又は第３グループに属するエージェントが存在すると判別されると（ステップＳ９でＹＥＳ）、ステップＳ３に戻り、再び制約エージェント認識部１０３によって制約エージェントが認識される。第２グループ又は第３グループに属するエージェントが存在しないと判別されると（ステップＳ９でＮＯ）、制約違反が解消されたか、第１グループに分類されるエージェント以外のエージェントがチェック・バッファに分類されているので、これ以上交渉することができず、ステップＳ１０に移行する。
【００５４】
第２グループ又は第３グループに属するエージェントが存在しない場合、ステップＳ１０において、判別部１０６は、ステップＳ２からステップＳ１３までの処理を、予め設定された所定回数だけ繰り返したか否かを判別する。ここで、予め設定された所定回数だけ繰り返したと判別されると（ステップＳ１０でＹＥＳ）、処理を終了し、予め設定された所定回数だけ繰り返していないと判別されると（ステップＳ１０でＮＯ）、ステップＳ１１に移行する。
【００５５】
所定回数だけ繰り返していない場合、ステップＳ１１において、判別部１０６は、緩和パラメータの値が最大値になったか否かを判別する。ここで、緩和パラメータの値が最大値になったと判別されると（ステップＳ１１でＹＥＳ）、処理を終了し、緩和パラメータの値が最大値になっていないと判別されると（ステップＳ１１でＮＯ）、ステップＳ１２に移行する。
【００５６】
緩和パラメータの値が最大値になっていない場合、ステップＳ１２において、判別部１０６は、エージェント分類情報記憶部２０２に記憶されているエージェント分類情報を参照し、第３グループ又はチェック・バッファに属する制約エージェントが存在するか否かを判別する。ここで、第３グループ又はチェック・バッファに属する制約エージェントが存在すると判別された場合（ステップＳ１２でＹＥＳ）、ステップＳ１３に移行し、第３グループ又はチェック・バッファに属する制約エージェントが存在しないと判別された場合（ステップＳ１２でＮＯ）、システムのボトルネックは解消されたとして処理を終了する。
【００５７】
制約エージェントが存在すると判別された場合、ステップＳ１３において、制約条件緩和部１０７は、制約条件記憶部２０１に記憶されている制約条件のうちの緩和可能な緩和可能制約条件を緩和させ、制約条件記憶部２０１に記憶されている制約条件を再設定する。そして、ステップＳ２において、エージェント分類部１０２は、制約条件緩和部１０７によって緩和された制約条件に基づいて、システムを構成する各エージェントを、必須制約条件及び緩和可能制約条件を満たす第１グループと、必須制約条件及び緩和制約条件を満たす第２グループと、必須制約条件及び緩和制約条件の少なくとも一つを満たさない第３グループとに分類する。このステップＳ２からステップＳ１３までの処理が、ステップＳ１０で所定回数繰り返した、ステップＳ１１で緩和パラメータの値が最大値になった、又はステップＳ１２で第３グループに属するエージェントが存在しないと判別されるまで繰り返し行われる。
【００５８】
このように、必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類し、第３グループに分類されたエージェントの中からシステム全体の制約となる制約エージェントを抽出しているので、システムの制約となるエージェントをより早く認識することができる。また、抽出された制約エージェントを第１及び第２グループのいずれかに分類できるように緩和制約条件を緩和しているので、当該エージェントの状態をアクティブな状態に改善することができる。この結果、システムの制約となるボトルネックをより早く認識することができるとともに、当該ボトルネックを解消してシステムの活動を改善することができる。
【００５９】
また、制約エージェント認識部１０３は、第３グループに分類されたエージェントに対して当該エージェントが達成すべき目標の達成度合いを評価する評価関数を基に制約エージェントを抽出するので、評価関数の値から制約エージェントを的確且つ迅速に抽出することができる。
【００６０】
さらに、制約エージェント改善部１０４は、制約エージェントと他のエージェントとの間で制約エージェントが必須制約条件及び緩和制約条件を満たすための交渉を実行させ、すべてのエージェントが必須制約条件及び緩和制約条件を満たすとともにシステム全体の状況が悪化しない場合に交渉を成立させ、エージェント分類部１０２は、交渉後の各エージェントを第１乃至第３グループに再び分類し、制約条件緩和部１０７は、再分類後に第３グループに属するエージェントが存在する場合、緩和制約条件をさらに緩和するので、制約エージェントの状態をアクティブな状態に改善してシステムの活動を改善することができる。
【００６１】
さらにまた、制約エージェント認識部１０３は、交渉が成立しなかった場合、第３グループのエージェントの中から交渉が成立しなかった制約エージェント以外の他のエージェントを新たな制約エージェントとして抽出し、制約エージェント改善部１０４は、新たな制約エージェントと他のエージェントとの間で新たな制約エージェントが必須制約条件及び緩和制約条件を満たすための交渉を再度実行させる。したがって、交渉が成立しなかった制約エージェントは協力者として交渉に参加することができるが、交渉の主役になることがないので、交渉のデッドロックを防止することができる。
【００６２】
次に、同質エージェントによる荷物のパレットへの積付を例にして、生産管理処理を具体的に説明する。図５は、同質エージェントによる荷物のパレットへの積付を例にして、生産管理処理を具体的に説明するための図である。なお、以下の説明では、荷物をパレットに積み付ける作業員をエージェントとする。図５に示す作業員Ｈ１は、荷物をパレットに積み付ける作業に熟練した熟練者であり、作業員Ｈ２及び作業員Ｈ３は、作業員Ｈ１より遅く、作業員Ｈ４より早く積み付けることができ、作業員Ｈ４は、初心者である。
【００６３】
各製品（荷物）には納期があり、各作業員が一定量の製品をパレットに積み付ける。最後の人の完了時刻が集荷作業の完了時刻である。そして、次のステップである出荷作業、すなわちトラックの配車がスタートする。したがって、パレットに荷物を積み付ける作業員は、限られた時間内でパレット積付作業を完了すること、すなわち作業の同期化が求められる。しかしながら、図５に示すように、作業員Ｈ１は熟練者であるので、作業のスピードは速く、限られた時間より早く完了することができる。そのため、熟練者である作業員Ｈ１によって積み付けられるパレットは、必須制約条件及び緩和可能制約条件を満たすことができ、第１グループＢ１に分類される。一方、作業員Ｈ４は初心者であり、作業のスピードが遅いので、限られた時間内に完了することができない。そのため、初心者である作業員Ｈ４によって積み付けられるパレットは、必須制約条件及び緩和制約条件の少なくとも一つを満たすことができないため、第３グループＢ３に分類される。作業員Ｈ２及び作業員Ｈ３は、作業員Ｈ１より遅く、作業員Ｈ４より早く積み付けることができ、全体へは影響しないので、作業員Ｈ１と作業員Ｈ４との間の自由なスピードで作業することができる。そのため、作業員Ｈ２によって積み付けられるパレット及び作業員Ｈ３によって積み付けられるパレットは、必須制約条件及び緩和制約条件を満たすことができ、第２グループＢ２に分類される。
【００６４】
図６は、製品を集荷する際に作成される柱について説明するための図であり、図６（ａ）は、積み付ける前の製品の一例を示す図であり、図６（ｂ）は、図６（ａ）の製品を用いた柱の一例を示す図である。製品が大きい場合、一定の高さと一定の重量とを有する柱を作成し、その柱をトラック又はコンテナに配置する。柱の構成要素は製品であり、目的は制約条件を満たすと共に限られた空間及び重量を最大限に利用することであり、タスクはその目的を達成するためによい製品を探して積み付けることである。したがって、各柱は自律したエージェントであると考えられる。例えば、図６（ａ）に示す製品を積み付けた場合、図６（ｂ）に示す４つの柱を作成することができる。
【００６５】
制約条件入力受付部３０１は、ユーザによる制約条件の入力を受け付け、制約条件記憶部２０１に記憶する。ここで、制約条件入力受付部３０１によって受け付けられた制約条件が下記の（Ａ）〜（Ｈ）であったとする。
（Ａ）柱の高さがトラックの高さを越えないように積み付ける。
（Ｂ）柱の重量が最大搬送重量を超えないように積み付ける。
（Ｃ）同じ仕向地の荷物を同じ柱に積み付ける。
（Ｄ）同じ納期の荷物を同じ柱に積み付ける。
（Ｅ）重い荷物が下に、軽い荷物が上になるよう積み付ける。
（Ｆ）大きい荷物が下に、小さい荷物が上になるよう積み付ける。
（Ｇ）柱の高さをできるだけ揃えて積み付ける。
（Ｈ）同じ製品ができるだけ同じ柱になるように積み付ける。
【００６６】
次に、制約条件設定部１０１は、制約条件入力受付部３０１によって受け付けられ、制約条件記憶部２０１に記憶されている上記の（Ａ）〜（Ｈ）の制約条件を、必ず満たさなければならない必須制約条件と、緩和可能な緩和可能制約条件とに設定する。ここで、制約条件設定部１０１は、上記の制約条件（Ａ）、（Ｂ）、（Ｃ）及び（Ｄ）を必須制約条件に設定し、上記の制約条件（Ｅ）、（Ｆ）、（Ｇ）及び（Ｈ）を緩和可能制約条件に設定する。そして、制約条件設定部１０１は、緩和可能制約条件である制約条件（Ｅ）、（Ｆ）及び（Ｇ）に緩和パラメータを定義し、制約条件を緩和する程度を制限する。さらに、制約条件設定部１０１は、制約条件及び目的を定式化し、定式化した制約条件及び目的に基づいて評価関数を定義する。
【００６７】
ここで、上記制約条件（Ａ）〜（Ｈ）を定式化する例について説明する。必須制約条件である制約条件（Ａ）は下記の（１）式で表され、制約条件（Ｂ）は下記の（２）式で表され、制約条件（Ｃ）は下記の（３）式で表され、制約条件（Ｄ）は下記の（４）式で表される。
∀ｍk，ｍｈk≦ｍｈmax・・・・（１）
∀ｍk，ｍｇk≦ｍｇmax・・・・（２）
∀Ｐki，Ｐkj∈ｍk，ｉ≠ｊ，ｔｈｅｎ  Ｐki，Ｐkj∈ｓａｍｅ  ｔａｒｇｅｔ・・・・（３）
∀Ｐki，Ｐkj∈ｍk，ｉ≠ｊ，ｔｈｅｎ  Ｐki  ａｎｄ  Ｐkj  ｈａｖｅ  ｔｈｅ  ｓａｍｅ  ｄｕｅ  ｄａｔｅ・・・・（４）
【００６８】
なお、上記（１）式において、ｍkは第ｋ個の柱を表し、ｍｈkは柱の高さを表し、ｍｈmaxは緩和することができる柱の最大の高さを表している。上記（２）式において、ｍkは柱を表し、ｍｇkは柱の重量を表し、ｍｇmaxは緩和することができる柱の最大の重量を表している。上記（３）式及び（４）式において、Ｐki及びＰkjは第ｋ個の柱ｍkに従属する第ｉ，ｊ個の製品を表し、ＰkiとＰkjとは異なる製品であることを表している。
【００６９】
また、柱ｍkの長さｍｌk、幅ｍｗk、高さｍｈk及び重量ｍｇkは、下記の（５）式〜（８）式の条件を満たす。
【００７０】
【数１】
2005209025.tif 000003
【００７１】
また、緩和可能制約条件である制約条件（Ｅ）は下記の（９）式で表され、制約条件（Ｆ）は下記の（１０）及び（１１）式で表され、制約条件（Ｇ）は下記の（１２）式で表される。制約条件（Ｈ）は、初期解を作成するとき、必須制約条件を満たした上で考慮する。
ｇki+1≦（１−εg）ｍｉｎ｛ｇki，ｇk1｝・・・・（９）
｛１−（４／３）εl｝ｍａｘ｛ｌki，ｌk1｝≦ｌki+1≦｛１＋εl｝ｍｉｎ｛ｌki，ｌk1｝・・・・（１０）
｛１−（４／３）εw｝ｍａｘ｛ｗki，ｗk1｝≦ｗki+1≦｛１＋εw｝ｍｉｎ｛ｗki，ｗk1｝・・・・（１１）
（１−εh）ｍｈmax＜ｍｈk≦ｍｈmax・・・・（１２）
【００７２】
なお、上記（９）〜（１２）式において、ｌki、ｗki及びｇkiは、製品Ｐkiの長さ、幅及び重量を表し、εl、εw、εg及びεhは、上下に配置される製品の長さ、幅、重量及び隣接する柱の高さに関する緩和パラメータを表している。
【００７３】
緩和パラメータεl，εw，εg，εhは、それぞれ０≦εl≦εlmax、０≦εw≦εwmax、０≦εg≦εgmax及びε0≦εh≦εhmaxである。なお、εcmaxは、製品の緩和可能な最大の長さを表し、εwmaxは、製品の緩和可能な最大の幅を表し、εgmaxは、製品の緩和可能な最大の重量を表し、εhmaxは、柱の緩和可能な最大の高さを表している。緩和パラメータは、初期値が緩和されていない状態を示し、制約違反の状況に応じて徐々に緩和させる。緩和パラメータの最大値はユーザの要求に応じて決定される。
【００７４】
次に、評価関数について説明する。製品Ｐkiの容積率Ｅkνは、下記の（１３）式で表される。
【００７５】
【数２】
2005209025.tif 000004
【００７６】
なお、上記（１３）式において、Ｅkνは容積率を表し、νkiは製品Ｐkiの容積を表し、ｍｌkは柱ｍkの長さを表し、ｍｗkは柱ｍkの幅を表し、ｍｈmaxは緩和することができる柱ｍkの最大の高さを表している。また、容積率Ｅkνは、その値が小さければ小さいほど容積が高く、Ｅkν＝０が最適解である。
【００７７】
システム全体の評価関数Ｅkは、下記の（１４）式で表される。
Ｅk＝μ1×Ｅkl＋μ2×Ｅkw＋μ3×Ｅkg＋μ4×Ｅkh＋μ5×Ｅkν・・・・（１４）
【００７８】
なお、上記（１４）式において、Ｅkはシステム全体の評価関数を表し、Ｅklは柱の長さに関する評価関数を表し、Ｅkwは柱の幅に関する評価関数を表し、Ｅkgは柱の重量に関する評価関数を表し、Ｅkhは柱の高さに関する評価関数を表し、μ1、μ2、μ3、μ4及びμ5はそれぞれの評価関数の重み付け係数を表している。また、上記（１４）式におけるＥkl、Ｅkw、Ｅkg及びＥkhは、下記の（１５）式〜（１８）式で表される。
【００７９】
【数３】
2005209025.tif 000005
【００８０】
なお、上記（１５）式におけるＥkliは下記の（１９）式で表され、上記（１６）式におけるＥkwiは下記の（２０）式で表され、上記（１７）式におけるＥkgiは下記の（２１）式で表される。
【００８１】
【数４】
2005209025.tif 000006
【００８２】
エージェント分類部１０２は、エージェントである各作業員Ｈ１〜Ｈ４を、制約条件入力受付部３０１によって受け付けられた制約条件に基づいて、必ず満たさなければならない必須制約条件及び緩和可能な緩和可能制約条件を満たす第１グループＢ１と、必須制約条件及び緩和制約条件を満たす第２グループＢ２と、必須制約条件及び緩和制約条件の少なくとも一つを満たさない第３グループＢ３とに分ける。すなわち、エージェント分類部１０２は、必須制約条件を満たし、かつ緩和可能制約条件を全て満たす作業員を第１グループＢ１に分類する。また、エージェント分類部１０２は、必須制約条件を満たし、かつ緩和可能制約条件を１つでも満たす作業員を第２グループＢ２に分類する。さらに、エージェント分類部１０２は、１つでも必須制約条件を満たさない、又は緩和可能制約条件を全て満たさない作業員を第３グループＢ３に分類する。この結果、図５の例では、作業員Ｈ１が第１グループＢ１に分類され、作業員Ｈ２及び作業員Ｈ３が第２グループＢ２に分類され、作業員Ｈ４が第３グループＢ２に分類されることとなる。
【００８３】
続いて、制約エージェント認識部１０３は、制約となるエージェントを認識し、制約エージェント改善部１０４は、制約エージェント認識部１０３によって認識された制約となるエージェントを改善する。
【００８４】
図７は、同質エージェントによる荷物のパレットへの積付を例にして、制約エージェントの改善について説明するための図であり、図７（ａ）は、エージェント分類部１０２によって分類される前の各エージェントを示す図であり、図７（ｂ）は、エージェント分類部１０２によって分類された各エージェントを示す図であり、図７（ｃ）は、重量とサイズに関する制約条件を緩和させた後の各エージェントを示す図であり、図７（ｄ）は、さらに重量とサイズに関する制約条件を緩和させた後の各エージェントを示す図である。
【００８５】
図７（ａ）に示すように、エージェントａ１は、同じ大きさの５０ｋｇの荷物が２つ積み付けられ、さらにその上に５０ｋｇの荷物よりサイズが小さい３８ｋｇの荷物が積み付けられている。エージェントａ２は、同じ大きさの３８ｋｇの荷物が３つ積み付けられている。エージェントａ３は、同じ大きさの５５ｋｇの荷物が３つ積み付けられている。エージェントａ４は、同じ大きさの８５ｋｇの荷物が２つ積み付けられ、さらにその上に８５ｋｇの荷物よりサイズが大きい２０ｋｇの荷物が積み付けられている。エージェントａ５は、６０ｋｇの荷物の上に、サイズの小さい６５ｋｇの荷物が２つ積み付けられている。エージェントａ６は、６５ｋｇの荷物の上に、サイズの小さい４８ｋｇの荷物が積み付けられ、さらにその上にサイズの小さい６０ｋｇの荷物が積み付けられている。エージェントａ７は、８５ｋｇの荷物の上にサイズの大きい６０ｋｇの荷物が積み付けられ、さらにその上にサイズの小さい３８ｇの荷物が積み付けられている。
【００８６】
図７（ａ）の状態の各エージェントを第１グループ、第２グループ及び第３グループに分けた場合、図７（ｂ）のように分けられる。図７（ｂ）における緩和パラメータεl，εw，εg，εhは、それぞれ初期値であるεl0，εw0，εg0，εh0に設定されている。図７（ｂ）では、制約条件が厳しいため、エージェントａ１，ａ２，ａ３が第１グループＢ１に分類され、エージェントａ３，ａ４，ａ５，ａ６，ａ７が第３グループＢ３に分類されている。そこで、制約条件緩和部１０７は、重量とサイズに関する制約条件を緩和することによって、図７（ｃ）のように分類する。すなわち、緩和パラメータεl，εw，εg，εhをそれぞれεlt，εwt，εgt，εhtに設定することによって、上述の（Ｅ）及び（Ｆ）の制約条件を緩和し、図７（ｃ）に示すように、エージェントａ４，ａ５が第２グループＢ２に分類される。しかしながら、まだ制約条件が厳しいため、デッドロック状態に落ち込み、図７（ｃ）に示すように、エージェントａ６，ａ７は第３グループＢ３に分類されている。この場合、現場の解決手法を用いて制約条件の緩和を行う。制約条件緩和部１０７は、上記（Ｅ）及び（Ｆ）の制約条件の緩和を行い、例えば、上の荷物の重量が下の荷物の重量より１０ｋｇまで重くてもよく、かつ下の荷物の長さと幅が上の荷物の長さと幅の１／１０のサイズになってもよいとする。このように、緩和パラメータεl，εw，εg，εhをそれぞれεlt，εwt，εgt，εhtより大きくなるように設定することによって、重量とサイズに関する制約条件をさらに緩和し、制約違反であるエージェントａ７の荷物ｎ１と、エージェントａ１の荷物ｎ２とを交換することが可能になる。
【００８７】
エージェント分類部１０２は、緩和された制約条件に基づいて、エージェントを分類する。この結果、図７（ｄ）に示すように、制約違反であったエージェントａ７は、第３グループＢ３から第２グループＢ２に移動し、利得を得ることとなる。エージェントａ１は、制約条件を全て満たさなくなるので、第１グループＢ１から第２グループＢ２に移動するが、システム全体としては、制約違反のエージェントが少なくなっているので改善されたことになる。図７（ｄ）の状態で、判別部１０６によって第３グループＢ３に属するエージェントが存在するか否かが判別されると、エージェントａ６が第３グループＢ３に属しているため、第３グループＢ３に属するエージェントが存在すると判別される。そこで、制約条件緩和部１０７は、エージェントａ６が第３グループＢ３から第２グループＢ２に移動するように制約条件を緩和する。
【００８８】
図８は、第１乃至第３グループに属するエージェントの数の変化の一例を示す図であり、縦軸は、第１乃至第３グループに分類されたエージェントの数を表し、横軸は、シミュレーションの繰り返し回数を表している。
【００８９】
図８に示すように、エージェント同士の交渉及び制約緩和により、必ず満たさなければならない必須制約条件及び緩和された緩和制約条件の少なくとも一つを満たさない制約違反の第３グループに分類されたエージェントＣ３の数は、シミュレーションを繰り返す回数が多くなるにつれて徐々に減少している。また、必須制約条件及び緩和制約条件を満たす第２グループに分類されたエージェントＣ２の数は、シミュレーションを繰り返す回数が多くなるにつれて徐々に増加し、必須制約条件を満たす第１グループに分類されたエージェントＣ１に分類されたエージェントＣ１の数も徐々に増加している。
【００９０】
図８に示す結果より、自動的に制約違反を改善することができ、第３グループに分類されたエージェントの数を減らすとともに、第１及び第２グループに分類されるエージェントの数を増やすことができる。したがって、本実施形態における制約緩和の手法は、単に制約違反を緩和するだけでなく、緩和により探索の環境が変化してデッドロック状態を回避又は脱出する機会を増やすことができる。また、エージェント間の競争と譲歩は各曲線の振動状況からも分かる。
【００９１】
図９は、チェック・バッファに分類されたエージェントの数の一例を示す図であり、縦軸は、チェック・バッファに分類されたエージェントの数を表し、横軸は、シミュレーションの繰り返し回数を表している。
【００９２】
図９に示すチェック・バッファに分類されたエージェントの数は、制約条件の緩和を行った回数である。チェック・バッファに分類されるエージェントが第２グループ又は第３グループに分類される場合、探索の状況が変化しない限りエージェント同士の交渉は成立しない。その原因は、制約条件が厳しすぎるためであり、制約条件を緩和する必要がある。制約条件の緩和により、各エージェントは交渉条件が変わり、再びエージェント同士間で交渉を成立させることができるようになる。また、チェック・バッファと緩和パラメータの値とによって、無駄な探索を回避する事ができ、予め設定された繰り返し回数に達しなくても自動的に終了することができる。これは、現実問題から与えられた厳しい探索時間にも本手法が適用可能であることを意味している。
【００９３】
このように、マルチエージェントシステムは、構成要素、制約条件及びタスクが同じ同質エージェントから構成され、制約エージェント改善部１０４は、ドラム・バッファ・ロープを用いて制約エージェントと他のエージェントとの間で制約エージェントが制約条件を満たすための交渉を実行させる。したがって、同質エージェントから構成されるマルチエージェントシステムの制約となるボトルネックをより早く認識することができるとともに、当該ボトルネックを解消してシステムの活動を改善することができる。
【００９４】
次に、異質エージェント同士における生産管理システムについて説明する。図１０は、物流システムの異質エージェント同士における生産管理システムについて説明するための図である。図１０に示す物流システム４００は、梱包・集荷プロセス４１０、出荷プロセス４２０及び配送プロセス４３０等で構成され、各プロセスは、構成要素（資源）、制約条件、目標及び評価基準が異なり、異質エージェントである。受注情報受付４４０によって出荷又は輸出指示に関する受注情報が受け付けられ、自動シミュレーション４５０によって梱包、パレット、車両積付及び経路計算の全部又は一部がシミュレーションされる。
【００９５】
梱包・集荷プロセス４１０には、指定された製品を在庫から取り出すピッキング作業４１１及び製品をパレットに積み付けるパレット積付作業４１２があり、制約条件を満たす製品を組み合わせて積み付け、目標を達成するパレットを作成する。出荷プロセス４２０には、パレットを積み付ける車両（トラック）を選択する実車マッチング４２１及びパレットを車両に積み付ける車両積付作業４２２があり、梱包・集荷プロセス４１０において作成されたパレットを、制約条件を満たし、かつ容積と重量積が高くてコストが安いトラックに積み付ける。配送プロセス４３０には、配送する車両の積載量等の車両情報を登録する車両情報登録４３１及び配送する車両と配送する経路と配送する時間を決定する車両・経路・時間決定４３２があり、パレットを積み付けた車両が納期、稼働時間及びリードタイムを考慮しながら最適なコスト及び経路を決定して目的地４９０に配送する。
【００９６】
なお、受注情報受付４４０において受注や経路等に変更があった場合、及び実車マッチング４２１において車両状況や天気等に変更があった場合、変更された情報は、計画変更４６０において変更され、変更された受注情報が自動シミュレーション４５０及びピッキング作業４１１に反映される。また、パレット積付作業４１２が終了した後、パレット積付実績修正４７０においてパレット積付実績が修正され、車両積付作業４２２が終了した後、車両積付実績が修正され、それぞれの実績は自動シミュレーション４０２に反映される。
【００９７】
異質エージェントは、構成要素が異なり、同じ資源を競争しないが、ＭＡＳの一つのチェーンとして相互に依存しあっている。システム全体の目標達成のためには、各エージェントが目標を達成しなければならない。したがって、各エージェントは、自らの利益のみを考えるのではなく、協調しなければならない。そのため、稼働時間、リードタイム、納期及び経路等に従う配車配送作業の完了時刻によって、必ず満たさなければならない必須制約条件及び緩和可能な緩和可能制約条件を満たすエージェントを第１グループに、必須制約条件及び緩和された緩和制約条件を満たすエージェントを第２グループに、必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類し、制約違反であるエージェントが属する第３グループの状況を追跡しながらバッファとなる第２グループを管理する。
【００９８】
異質エージェント同士における生産管理装置の構成は、図３に示す同質エージェント同士における生産管理装置１０の構成と同じであるので説明を省略する。
【００９９】
まず、制約条件入力受付部３０１は、ユーザによる制約条件の入力を受け付け、制約条件記憶部２０１に記憶する。ここで、制約条件入力受付部３０１によって受け付けられた制約条件を下記の（Ａ）〜（Ｆ）であったとする。
（Ａ）各作業の締め時間と納期（到着時間）とを必ず守る。
（Ｂ）各倉庫及び物流センターの稼働時間を必ず守る。
（Ｃ）外部要素が変化しても計画した各作業の開始時刻と完了時刻とをできるだけ確保する。
（Ｄ）できるだけトラックの容積率を高くする。
（Ｅ）できるだけコストの安いトラックを選択する。
（Ｆ）できるだけ配送時間と待ち時間とを短くする。
【０１００】
次に、制約条件設定部１０１は、上記の制約条件（Ａ）及び（Ｂ）を、必ず満たさなければならない必須制約条件に設定し、上記の制約条件（Ｃ）、（Ｄ）、（Ｅ）及び（Ｆ）を、緩和可能な緩和可能制約条件に設定する。そして、制約条件設定部１０１は、各作業の開始時刻と完了時刻とに関する緩和パラメータ、トラックの容積率に関する緩和パラメータ、トラックのコストに関する緩和パラメータ及び配送時間に関する緩和パラメータを設定する。
【０１０１】
各作業の開始時刻と完了時刻とに関する緩和パラメータの初期値は、各作業における最も早く開始可能な開始時刻と、最も早く完了可能な完了時刻とである。各作業の開始時刻と完了時刻とに関する緩和パラメータの最大値は、各作業における最も遅く開始可能な開始時刻と、最も遅く完了可能な完了時刻とである。すなわち、各作業の開始時刻と完了時刻とは、必須制約条件（Ａ）及び（Ｂ）を違反しない時刻まで緩和することができる。
【０１０２】
トラックの容積率に関する緩和パラメータの最大値は、予め指定される最小の容積率に応じて設定するが、初期値（最小値）は、例えば、配送する荷物の量等に応じて設定する。
【０１０３】
トラックのコストに関する緩和パラメータの最大値は、熟練者の経験により決定され、最低限許可することができるコストである。また、トラックのコストに関する緩和パラメータの最小値は、制約条件（Ａ）及び（Ｂ）と、制約違反の状況を考慮して決定する。
【０１０４】
配送時間は、納期とコストとに関係があり、長ければ長いほどコストが高くなり、納期を満たすことが困難となる。配送時間に関する緩和パラメータの最大値（最大許す時間）は、熟練者の経験により決定されるが、最適な時間は、制約条件（Ａ）及び（Ｂ）と、制約違反の状況を考慮して決定する。
【０１０５】
制約条件設定部１０１は、上記の制約条件（Ｃ）〜（Ｆ）と目標とに重みを付けて、各エージェント間による交渉を評価する評価関数Ｅtを下記の式（２２）のように定義する。
Ｅt＝ＥＣt＋ＥＳt＋ＥＤt＋ＥＰt・・・・（２２）
【０１０６】
なお、上記（２２）式において、Ｅtは、システム全体を評価する評価関数であり、ＥＣtは、緩和パラメータを含む集荷プロセスを評価する評価関数であり、ＥＳtは、緩和パラメータを含む出荷プロセスを評価する評価関数であり、ＥＤtは、緩和パラメータを含む配送プロセスを評価する評価関数であり、ＥＰtは、緩和パラメータを含む計画変更を評価する評価関数である。
【０１０７】
これらの評価関数ＥＣt，ＥＳt，ＥＤt，ＥＰtの値は、データの性質、限られる作業時間、制約条件の緩和及びエージェント同士の交渉によって変化する。制約条件が厳しくなく、かつ時間に余裕のあるデータであれば、あまり制約条件を緩和しなくてもよいシミュレーション結果を得ることができる。また、必須制約条件を満たし易く、より高い容積率のパレット及びトラックが得られると、トラックの数を少なくすることができ、システム全体のコストを低くすることができる。容積率、コスト及び時間の３つの要素はそれぞれ互いに依存している。納期の余裕があれば、よい解（容積率が高く、かつ全体のコストが安くなるトラック）を得ることができ、配送プロセスに要するコストも安くすることができる。
【０１０８】
図１０に示す物流システムでは、各プロセスの順番が固定されている。そこで、各プロセスに一定の大きさのバッファを設け、バッファの大きさは緩和パラメータで調整する。バッファの大きさは、該当するプロセスの開始時刻と完了時刻とに関係する。システムの中で一番遅いプロセスが、制約となるプロセスであると認識し、当該プロセスがシステム全体のペースを設定する。他のプロセスは制約となるプロセスが設定するペースに従って開始時刻と完了時刻とを調整する。例えば、図１０の出荷プロセス（車両積付作業）を開始することができる前提条件としては、梱包・集荷プロセス（ピッキング作業及びパレット積付作業）が完了していることである。この条件を満たさなければ、車両積付作業を行うことはできない。この場合、梱包・集荷プロセスに問題があると考えられる。しかしながら、車両が遅く到着した、稼働時間を延長した、作業員が足りない、あるいは作業員の作業レベルが低いなどの理由によって、完了時刻が守れない場合は、当該出荷プロセスの問題であると考えられる。したがって、エージェント分類部１０２は、緩和パラメータを含む開始時刻と完了時刻とに従って、必須制約条件及び緩和可能制約条件を満たすエージェントを第１グループに、必須制約条件及び緩和制約条件を満たすエージェントを第２グループに、必須制約条件及び緩和制約条件の少なくとも一つを満たさないエージェントを第３グループに分類する。
【０１０９】
図１１は、配送ルート（経路）の決定に関して説明するための図である。図１１では、倉庫Ａ、倉庫Ｂ及び倉庫Ｃから拠点Ａまで荷物を配送する例を示している。なお、各倉庫での集荷作業は２時間であり、出荷作業は２時間である。また、複数の倉庫を経由する追い積みの場合、２番目に通過する倉庫からは集荷時間を考慮せず、前の倉庫での出荷及び運送時間の間で集荷作業を行う。さらに、最大積載重量が４トンのトラックは、１時間に０．７万円かかり、最大積載重量が１０トンのトラックは、１時間に１万円かかり、最大積載重量が１３トンのトラックは、１時間に１．３万円かかるものとする。各倉庫から出荷される荷物の量は４トンのトラック１台分であるとする。
【０１１０】
各倉庫から拠点Ａまで配送する場合、複数のルートが考えられる。例えば、倉庫Ａ、倉庫Ｂ及び倉庫Ｃからそれぞれ直接拠点Ａに配送する第１のルート、倉庫Ｃから拠点Ａまで直接配送し、倉庫Ｂから倉庫Ａを経由して拠点Ａまで配送する第２のルート、倉庫Ａから拠点Ａまで直接配送し、倉庫Ｂから倉庫Ｃを経由して拠点Ａまで配送する第３のルート、及び倉庫Ｃから倉庫Ｂと倉庫Ａとを経由して拠点Ａまで配送する第４のルートなどが考えられる。
【０１１１】
第１のルートを用いる場合、倉庫Ａから拠点Ａまで直接配送するルート５０１は、リードタイムが８時間であり、集荷時間及び出荷時間を合わせて総合１２時間で配送される。倉庫Ｂから拠点Ａまで直接配送するルート５０２は、リードタイムが１０時間であり、集荷時間及び出荷時間を合わせて総合１４時間で配送される。倉庫Ｃから拠点Ａまで直接配送するルート５０３は、リードタイムが９時間であり、集荷時間及び出荷時間を合わせて総合１３時間で配送される。各倉庫から拠点Ａまで４トンのトラックを用いて配送した場合、１４時間で全ての倉庫からの配送を完了し、運賃の合計は１８．９万円となる。
【０１１２】
第２のルートを用いる場合、倉庫Ｃから拠点Ａまで直接配送するルート５０３は、リードタイムが９時間であり、集荷時間及び出荷時間を合わせて総合１３時間で配送される。倉庫Ｂから倉庫Ａまで配送するルート５０４は、リードタイムが１時間であり、倉庫Ｂから倉庫Ａで追い積みをして拠点Ａまで総合１５時間で配送される。倉庫Ｃから拠点Ａまで４トンのトラックを用いて配送した場合、運賃は６．３万円であり、倉庫Ｂから倉庫Ａで追い積みをして拠点Ａまで１０トンのトラックを用いて配送した場合、運賃は９万円である。第２のルートを用いた場合、１５時間で全ての倉庫からの配送を完了し、運賃の合計は１５．３万円となる。
【０１１３】
第３のルートを用いる場合、倉庫Ａから拠点Ａまで直接配送するルート５０１は、リードタイムが８時間であり、集荷時間及び出荷時間を合わせて総合１２時間で配送される。倉庫Ｂから倉庫Ｃまで配送するルート５０５は、リードタイムが２時間であり、倉庫Ｂから倉庫Ｃで追い積みをして拠点Ａまで総合１７時間で配送される。倉庫Ａから拠点Ａまで４トンのトラックを用いて配送した場合、運賃は５．６万円であり、倉庫Ｂから倉庫Ｃで追い積みをして拠点Ａまで１０トンのトラックを用いて配送した場合、運賃は１１万円である。第３のルートを用いた場合、１７時間で全ての倉庫からの配送を完了し、運賃の合計は１６．６万円となる。
【０１１４】
第４のルートを用いる場合、倉庫Ｃから倉庫Ｂまで配送するルート５０６は、リードタイムが２時間であり、倉庫Ｃから倉庫Ｂ及び倉庫Ａで追い積みをして拠点Ａまで総合１９時間で配送される。倉庫Ｃから倉庫Ｂ及び倉庫Ａで追い積みをして拠点Ａまで１３トンのトラックを用いて配送した場合、運賃は１４．３万円である。第４のルートを用いた場合、１９時間で全ての倉庫からの配送を完了し、運賃は１４．３万円となる。
【０１１５】
各倉庫や拠点等で予定のオーダー、締め時間、リードタイム、稼働時間及び納期に従って、各プロセスはその上位プロセスで得た解の上に、下位プロセスの初期緩和されていない制約条件に基づいて、自らの制約条件を緩和し、エージェント間の交渉をしながら制約違反しない解を作成するシミュレーションを行う。このシミュレーション結果をシステムの初期解とする。但し、本プロセスの制約緩和は上位プロセスに影響を与えるので、上位プロセスの解を再び改善する必要がある。例えば、出荷プロセスでは、集荷プロセスで得た解の上に、配送プロセスの緩和されていない制約条件に基づいて、自らの制約条件を緩和し、トラック間の交渉をしながら制約違反しないトラックを選択する。しかし、容積率の低いトラックが存在する場合、拠点ごとに配車していた制約条件を配送する方面（複数の拠点に配送する）によって配車するように緩和させる。トラックの容積率の制約条件を満たさない原因がパレットの容積率の低さにある場合、パレットを拠点ごとに積み付けていた制約条件を配送する方面（複数の拠点に配送する）によって積み付けるように緩和させる。但し、この場合、容積率の高いパレットを積み付けるように再シミュレーションする必要はない。実際の作業では、システムが自動的に判断して最小の範囲で変更する。なお、ユーザがシミュレーションする範囲を指定してもよい。
【０１１６】
各倉庫はシミュレーションの結果に基づいて作業員の数を決定する。しかしながら、作業員の経験が異なる場合、予測できない問題が発生する可能性があるので、計画される各プロセスの開始時刻と完了時刻とを満たさない可能性がある。そこで、各プロセス間は、一定時間の余裕（時間バッファ）を設定する。エージェント分類部１０２は、カレント作業の完了時刻前に到着したジョブの集合を必須制約条件及び緩和可能制約条件を満たす第１グループに、カレント作業の完了時刻から次の作業の開始時刻までに到着したジョブの集合を必須制約条件及び緩和制約条件を満たす第２グループに、次の作業開始時刻に到着したジョブの集合を必須制約条件及び緩和制約条件の少なくとも一つを満たさない第３グループに分類する。
【０１１７】
制約エージェント認識部１０３は、現在のプロセスの開始時刻になっても上位プロセスの作業が完了されない場合、上位プロセスにボトルネックが発生したと認識し、当該上位プロセスを制約エージェント（制約プロセス）として認識する。例えば、制約エージェント認識部１０３は、配送プロセスの開始時刻になっても出荷プロセスの作業が完了されない場合、出荷プロセスにボトルネックが発生したと認識し、出荷プロセスを制約エージェントとして認識する。
【０１１８】
制約となったプロセスは、システム全体のスループットの向上に影響を与えるので、改善しなければならない。そこで、制約エージェント改善部１０４は、制約プロセスに優先的に利用可能な資源を最大限活用させ、制約状況を改善する。エージェント従属部１０５は、制約プロセス以外の非制約プロセスの作業スピードを制約プロセスの作業スピードに従属させる。例えば、配送プロセスの開始時刻になってもトラックの配車がまだ終わっていなければ、出荷プロセスは残業や作業員の追加を行うことによって、作業のスピードをアップさせる。他のプロセスは、制約プロセスの状況に応じて作業計画を変更する。
【０１１９】
続いて、プロセス間の協調、譲歩及び同期化の交渉基準を決める。この交渉基準には、緩和された制約条件を満たすこと、制約プロセスは改善されること、及びシステム全体の状況が悪くならないことの３点が考えられる。例えば、出荷プロセスの完了時刻を１時間オーバーした場合、配送プロセスの開始時間に１時間の余裕があれば、この時間を出荷プロセスに譲ることで、出荷プロセスの制約違反をなくすことができる。また、出荷プロセスにおける作業員の数が足りないため、配送プロセスの開始時刻までに作業が終わらないと予測できる場合、上位の集荷プロセスのバッファを出荷プロセスに譲ることで制約違反を解消する。ただし、集荷プロセスも第３グループに存在する場合、この譲歩行動を行うことはできない。
【０１２０】
そして、制約条件緩和部１０７は、各プロセスの協調及び譲歩による交渉を行っても制約違反を解消することができず、各緩和可能制約条件の緩和パラメータが最大値にならなければ、制約条件を緩和する。例えば、パレットやトラックの容積率に関する緩和パラメータを低く設定することで作業しやすくなる。また、開始時刻と完了時刻に関する緩和パラメータを変更し、各プロセスの時間バッファの大きさを調整する。すなわち、制約となったプロセスの時間バッファを長く設定し、最も作業が早く完了するプロセスの時間バッファを短く設定することで、制約違反の状況を解消することができる。さらに、トラックの容積率に関するパラメータを緩和し、他の倉庫で追い積みする予定のトラックを直送に変更することによって、制約違反の状況を解消することができる。
【０１２１】
このように、マルチエージェントシステムの少なくとも一部は、構成要素、制約条件及びタスクのうちの少なくとも１つが異なる異質エージェントから構成され、制約エージェント改善部１０４は、隣接する異質エージェント間の依存関係を維持しながらドラム・バッファ・ロープを用いて制約エージェントと他のエージェントとの間で制約エージェントが制約条件を満たすための交渉を実行させる。したがって、異質エージェントから構成されるマルチエージェントシステムの部分において制約となるボトルネックをより早く認識することができるとともに、当該ボトルネックを解消してシステムの活動を改善することができる。
【０１２２】
なお、本実施形態において、ユーザが入力装置１を用いてシステムのシミュレーション時間及び範囲を指定してもよい。判別部１０６は、この指定された時間及び範囲に応じてシミュレーションを繰り返す回数を設定する。また、ユーザが入力装置１を用いて緩和パラメータの最大値と最小値とを設定してもよい。なお、ユーザによって設定された緩和パラメータの最大値と最小値とが、予め設定されている閾値を越える場合、表示装置６によりユーザに対してミスや危険性を提示してもよい。また、入力装置１によって、作業員の作業スピードの入力を受け付けることで、実作業の開始可能時刻と完了可能時刻とを予測し、予測結果に応じて各プロセスを第１乃至第３グループに分類してもよい。さらに、各プロセスにおける実際の開始時刻と完了時刻との入力を受け付けることによって、制約違反が発生した場合、表示装置６により作業員に提示してもよい。
【０１２３】
この場合、複数の緩和パラメータが設定され、作業員は実際の作業の状況に応じて緩和パラメータを調整することができるので、この従業員による緩和パラメータの修正に従って、自動的にシミュレーションし、作業員に対してシミュレーション結果を提示することができる。
【図面の簡単な説明】
【０１２４】
【図１】ＭＡＳ（マルチエージェントシステム）について説明するための図である。
【図２】本発明の一実施の形態による生産管理装置のハードウエア構成の一例を示す図である。
【図３】図２に示す生産管理装置の主要機能の一例を示すブロック図である。
【図４】図２に示す生産管理装置の生産管理処理を説明するためのフローチャートである。
【図５】同質エージェントによる荷物のパレットへの積付を例にして、生産管理処理を具体的に説明するための図である。
【図６】製品を集荷する際に作成される柱について説明するための図である。
【図７】同質エージェントによる荷物のパレットへの積付を例にして、制約エージェントの改善について説明するための図である。
【図８】第１乃至第３グループに属するエージェントの数の変化の一例を示す図である。
【図９】チェック・バッファに分類されたエージェントの数の一例を示す図である。
【図１０】物流システムの異質エージェント同士における生産管理システムについて説明するための図である。
【図１１】配送ルート（経路）の決定に関して説明するための図である。
【符号の説明】
【０１２５】
１００    制御部
１０１    制約条件設定部
１０２    エージェント分類部
１０３    制約エージェント認識部
１０４    制約エージェント改善部
１０５    エージェント従属部
１０６    判別部
１０７    制約条件緩和部
２００    記憶部
２０１    制約条件記憶部
２０２    エージェント分類情報記憶部
３００    入力部
３０１    制約条件入力受付部
【図１】
2005209025.tif 000007
【図２】
2005209025.tif 000008
【図３】
2005209025.tif 000009
【図４】
2005209025.tif 000010
【図５】
2005209025.tif 000011
【図６】
2005209025.tif 000012
【図７】
2005209025.tif 000013
【図８】
2005209025.tif 000014
【図９】
2005209025.tif 000015
【図１０】
2005209025.tif 000016
【図１１】
2005209025.tif 000017