(57)【要約】      （修正有）【課題】模範となる生産計画者の選好に沿ったスケジュールを生成するスケジューリングシステムを提供する。【解決手段】スケジューリングシステム１は、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成する。スケジューリングシステム１は、模範となる模範スケジュールと類似するスケジュールを生成する複数の工程の割り当てに関する選好の度合を示す模範選好値を、予め設定されている選好項目ごとに演算する選好値計算装置２０と、複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれの選ばれやすさを、選好項目ごとの模範選好値に沿った確率モデルとして表現し、確率モデルに基づいて候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成装置１０とを備える。【選択図】図１
2020119061.tif 000002
【特許請求の範囲】
【請求項１】
事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジューリングシステムであって、
模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、予め設定されている選好項目ごとに演算する選好値計算装置と、
前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれの選ばれやすさを、前記選好項目ごとの前記模範選好値に沿った確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成装置と
を備えることを特徴とするスケジューリングシステム。
【請求項２】
請求項１に記載のスケジューリングシステムであって、
前記選好値計算装置は、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する予め設定されている選好項目ごとの各選好値を前記模範選好値として推定し、
前記スケジュール生成装置は、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、前記スケジュールを生成する
ことを特徴とするスケジューリングシステム。
【請求項３】
事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジュール生成装置であって、
予め設定されている選好項目ごとに、模範とする模範スケジュールから演算された前記複数の工程の割り当てに関する選好の度合を示す模範選好値を記憶する記憶部と、
前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成する演算処理部と
を備えることを特徴とするスケジュール生成装置。
【請求項４】
事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てた模範スケジュールから、予め設定された選好項目ごとに模範選好値を演算する選好値計算装置であって、
前記模範選好値は、予め設定されている前記選好項目ごとに前記複数の工程の割り当てに関する選好の度合を示す値からなり、
複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとを記憶する記憶部と、
前記複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する各選好値を前記模範選好値として推定する演算処理部と
を備えることを特徴とする選好値計算装置。
【請求項５】
事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジューリングシステムのコンピュータに以下のステップを実行させるプログラムであって、
模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、予め設定されている選好項目ごとに演算する選好値計算ステップと、
前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれの選ばれやすさを、前記選好項目ごとの前記模範選好値に沿った確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成ステップと
を備えることを特徴とするプログラム。
【請求項６】
請求項５に記載のプログラムであって、
前記選好値計算ステップは、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する予め設定されている選好項目ごとの各選好値を前記模範選好値として推定するステップを含み、
前記スケジュール生成ステップは、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、前記スケジュールを生成するステップを含む
ことを特徴とするプログラム。
【請求項７】
事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジュール生成装置のコンピュータに以下のステップを実行させるプログラムであって、
予め設定されている選好項目ごとに、模範とする模範スケジュールから演算された前記複数の工程の割り当てに関する選好の度合を示す模範選好値を予め記憶する記憶ステップと、
前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成ステップと
を備えることを特徴とするプログラム。
【請求項８】
事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てた模範スケジュールから予め設定された選好項目ごとに模範選好値を演算する選好値計算装置のコンピュータに以下のステップを実行させるプログラムであって、
前記模範選好値は、予め設定されている前記選好項目ごとに前記複数の工程の割り当てに関する選好の度合を示す値からなり、
複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとを予め記憶する記憶ステップと、
前記複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する各選好値を前記模範選好値として推定する模範選好値計算ステップと
を備えることを特徴とするプログラム。
【請求項９】
計算機システムが、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジューリング方法であって、
前記計算機システムが、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、予め設定されている選好項目ごとに演算する選好値計算ステップと、
前記計算機システムが、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれの選ばれやすさを、前記選好項目ごとの前記模範選好値に沿った確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成ステップと
を備えることを特徴とするスケジューリング方法。
【請求項１０】
請求項９に記載のスケジューリング方法であって、
前記選好値計算ステップは、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する予め設定されている選好項目ごとの各選好値を前記模範選好値として推定するステップを含み、
前記スケジュール生成ステップは、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、前記スケジュールを生成するステップを含む
ことを特徴とするスケジューリング方法。
【請求項１１】
計算機システムが、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジュール生成方法であって、
前記計算機システムが、予め設定されている選好項目ごとに、模範とする模範スケジュールから演算された前記複数の工程の割り当てに関する選好の度合を示す模範選好値を予め記憶する記憶ステップと、
前記計算機システムが、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成ステップと
を備えることを特徴とするスケジュール生成方法。
【請求項１２】
計算機システムが、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てた模範スケジュールから、予め設定された選好項目ごとに模範選好値を演算する選好値計算方法であって、
前記模範選好値は、予め設定されている前記選好項目ごとに前記複数の工程の割り当てに関する選好の度合を示す値からなり、
前記計算機システムが、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとを予め記憶する記憶ステップと、
前記計算機システムが、前記複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する各選好値を前記模範選好値として推定する模範選好値計算ステップと
を備えることを特徴とする選好値計算方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スケジューリングシステム、スケジュール生成装置、および選好値計算装置、並びにこれらの方法に関し、より具体的には、複数の工程を含むプロセスに関するスケジュールを生成するスケジューリング技術に関する。
【背景技術】
【０００２】
生産現場では、限られた設備で指定された要求期間内に指定された製品を生産するために、製品の生産プロセスに含まれる複数の工程を、任意の設定期間に設けられた複数の区間のいずれかに割り当てるスケジューリングが行われている。
生産計画者によるスケジューリングでは、人力で全区間に対して割り当てる工程を一度に決定するのが難しい。このため、特定の区間ごとに生産計画者の選好にしたがって工程を仮配置したあとで、全区間のスケジュールが納期などの要求を満たすか評価を行い、最終的なスケジュールを決定する手法が多くの場面で使われてきた。しかし、人力によるスケジューリングでは、スケジュール完成までに工数がかかるためアルゴリズムによる自動化が進められてきた。
【０００３】
従来、スケジューリングの自動化に関する技術として、全体の制約式を満たした上でスケジュール全体の評価値が良くなるように生成を繰り返す手法（例えば、特許文献１など参照）や、工程間の製品優先度などの狭義のルールを積み重ねて生成する手法（例えば、特許文献２など参照）が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−１４３９３８号公報
【特許文献２】特開２０１１−１５９２３０号公報
【特許文献３】特開２０１１−２２１７１４号公報
【非特許文献】
【０００５】
【非特許文献１】藤井聡、「『選好形成』について−ハイデガーの現象学的存在論に基づく考察−」、感性工学 9巻 4号: PP. 217-225 2010、日本感性工学会
【非特許文献２】佐藤浩ほか、「遺伝的アルゴリズムにおける世代交代モデルの提案と評価」、人工知能学会誌 Vol. 12 No. 5 PP. 734-744 Sept. 1997、人工知能学会
【発明の概要】
【発明が解決しようとする課題】
【０００６】
このような従来技術によるスケジューリングの自動化に関する技術は、スケジュールの自動生成を可能とするが、そのためにはスケジュールが満たすべき制約やルールを事前に定式化する必要がある。実際にスケジュールが実行される生産現場の状況は多岐にわたるため、それぞれの生産現場の状況に合わせて定式化するのは専門的で難しく、運用可能となるまで多くの時間を要するという問題点があった。
【０００７】
また、一般的には、生産計画者が生成したスケジュールと、アルゴリズムが生成したスケジュールの差異が小さい方が、アルゴリズムの導入が容易になるため、定式化時には従来の模範とする生産計画者の選好を取り入れることが好ましい。選好とは、複数の選択肢における好みを表すものであり、例えば非特許文献１には選好が形成される過程について述べられている。選好は、例えばマーケティング分野であれば、「新商品」と「ロングセラー商品」のどちらかのモノを好むか、また経営分野であれば、「既存事業投資」と「事業開拓投資」のどの戦略を好むかなど、幅広い分野で使われる一般的な表現である。スケジューリングにおいて、選好は、区間に対する工程の割り当て時の重要にファクタとなる。なお、本発明でいう模範とは、優れているという意味に限定されるものではなく、単に手本、見本、モデルという意味を指している。
【０００８】
従来、生産計画者の選好を「段取り時間」など別の項目に変換して、スケジュール全体の評価値へ組み込んで考慮する、という手法が提案されている（例えば、特許文献３など参照）。しかしながら、生産現場のような状況が動的に変化する場所において、別項目に変換された生産計画者の選好に関する実データを正確に収集することは容易ではないため、このような手法では模範とする生産計画者の選好を模範として十分に取り入れることが難しいという問題点があった。
【０００９】
本発明はこのような課題を解決するためのものであり、模範となる生産計画者の選好に沿ったスケジュールを自動生成できるスケジューリング技術を提供することを目的としている。
【課題を解決するための手段】
【００１０】
このような目的を達成するために、本発明にかかるスケジューリングシステムは、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジューリングシステムであって、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、予め設定されている選好項目ごとに演算する選好値計算装置と、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれの選ばれやすさを、前記選好項目ごとの前記模範選好値に沿った確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成装置とを備えている。
【００１１】
また、本発明にかかる上記スケジューリングシステムの一構成例は、前記選好値計算装置が、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する予め設定されている選好項目ごとの各選好値を前記模範選好値として推定し、前記スケジュール生成装置は、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、前記スケジュールを生成するようにしたものである。
【００１２】
また、本発明にかかるスケジュール生成装置は、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジュール生成装置であって、予め設定されている選好項目ごとに、模範とする模範スケジュールから演算された前記複数の工程の割り当てに関する選好の度合を示す模範選好値を記憶する記憶部と、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成する演算処理部とを備えている。
【００１３】
また、本発明にかかる選好値計算装置は、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てた模範スケジュールから、予め設定された選好項目ごとに模範選好値を演算する選好値計算装置であって、前記模範選好値は、予め設定されている前記選好項目ごとに前記複数の工程の割り当てに関する選好の度合を示す値からなり、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとを記憶する記憶部と、前記複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する各選好値を前記模範選好値として推定する演算処理部とを備えている。
【００１４】
また、本発明にかかるプログラムは、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジューリングシステムのコンピュータに以下のステップを実行させるプログラムであって、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、予め設定されている選好項目ごとに演算する選好値計算ステップと、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれの選ばれやすさを、前記選好項目ごとの前記模範選好値に沿った確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成ステップとを備えている。
【００１５】
また、本発明にかかる上記プログラムの一構成例は、前記選好値計算ステップが、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する予め設定されている選好項目ごとの各選好値を前記模範選好値として推定するステップを含み、前記スケジュール生成ステップは、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、前記スケジュールを生成するステップを含んでいる。
【００１６】
また、本発明にかかる他のプログラムは、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジュール生成装置のコンピュータに以下のステップを実行させるプログラムであって、予め設定されている選好項目ごとに、模範とする模範スケジュールから演算された前記複数の工程の割り当てに関する選好の度合を示す模範選好値を予め記憶する記憶ステップと、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成ステップと備えている。
【００１７】
また、本発明にかかる他のプログラムは、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てた模範スケジュールから予め設定された選好項目ごとに模範選好値を演算する選好値計算装置のコンピュータに以下のステップを実行させるプログラムであって、前記模範選好値は、予め設定されている前記選好項目ごとに前記複数の工程の割り当てに関する選好の度合を示す値からなり、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとを予め記憶する記憶ステップと、前記複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する各選好値を前記模範選好値として推定する模範選好値計算ステップとを備えている。
【００１８】
また、本発明にかかるスケジューリング方法は、計算機システムが、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジューリング方法であって、前記計算機システムが、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、予め設定されている選好項目ごとに演算する選好値計算ステップと、前記計算機システムが、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれの選ばれやすさを、前記選好項目ごとの前記模範選好値に沿った確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成ステップとを備えている。
【００１９】
また、本発明にかかる上記スケジューリング方法の一構成例は、前記選好値計算ステップが、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する予め設定されている選好項目ごとの各選好値を前記模範選好値として推定するステップを含み、前記スケジュール生成ステップは、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、前記スケジュールを生成するステップを含んでいる。
【００２０】
また、本発明にかかるスケジュール生成方法は、計算機システムが、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てたスケジュールを生成するスケジュール生成方法であって、前記計算機システムが、予め設定されている選好項目ごとに、模範とする模範スケジュールから演算された前記複数の工程の割り当てに関する選好の度合を示す模範選好値を予め記憶する記憶ステップと、前記計算機システムが、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するスケジュール生成ステップとを備えている。
【００２１】
また、本発明にかかる選好値計算方法は、計算機システムが、事前に定義された順序にしたがって複数の工程をそれぞれ複数の区間のいずれかに割り当てた模範スケジュールから、予め設定された選好項目ごとに模範選好値を演算する選好値計算方法であって、前記模範選好値は、予め設定されている前記選好項目ごとに前記複数の工程の割り当てに関する選好の度合を示す値からなり、前記計算機システムが、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとを予め記憶する記憶ステップと、前記計算機システムが、前記複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する各選好値を前記模範選好値として推定する模範選好値計算ステップとを備えている。
【発明の効果】
【００２２】
本発明によれば、模範となる生産計画者の選好が選好項目ごとに模範選好値として数値化され、この模範選好値が与えられた確率モデルに基づいて、各区間で実行する工程が順次選択されて、一連のスケジュールが生成されることになる。したがって、スケジュールが満たすべき制約やルールを予め人が定式化することなく、模範となる生産計画者の選好に沿ったスケジュールを自動生成することが可能となる。
【図面の簡単な説明】
【００２３】
【図１】図１は、第１の実施の形態にかかるスケジューリングシステムの構成を示すブロック図である。
【図２】図２は、生産プロセスに関するオーダーと設備に関する規定例を示す説明図である。
【図３】図３は、生産プロセスに関する工程を規定する工程データの構成例を示す説明図である。
【図４】図４は、生産プロセスに関する模範選好値の構成例を示す説明図である。
【図５】図５は、生産プロセスに関する対象スケジュールの構成例を示す説明図である。
【図６】図６は、生産プロセスに関する模範スケジュールの構成例を示す説明図である。
【図７】図７は、スケジュール生成処理を示すフローチャートである。
【図８】図８は、スケジュール生成処理を示す説明図である。
【図９】図９は、確率モデル作成処理を示す説明図である。
【図１０】図１０は、選好値計算処理を示すフローチャートである。
【図１１】図１１は、模範出現回数の検出例を示す説明図である。
【図１２】図１２は、基準選好値の設定例を示す説明図である。
【図１３】図１３は、基準スケジュールの生成例を示す説明図である。
【図１４】図１４は、模範出現回数の検出例を示す説明図である。
【図１５】図１５は、選好比率の計算例を示す説明図である。
【図１６】図１６は、確率分布の生成例を示す説明図である。
【図１７】図１７は、仮選好値セットの選択例を示す説明図である。
【図１８】図１８は、第２の実施の形態にかかる運搬システムを示す説明図である。
【図１９】図１９は、運搬プロセスに関するオーダーと設備に関する規定例を示す説明図である。
【図２０】図２０は、積み降ろし工程を規定する工程データの構成例を示す説明図である。
【図２１】図２１は、運搬プロセスに関する模範選好値の構成例を示す説明図である。
【図２２】図２２は、運搬プロセスに関する模範スケジュールの構成例を示す説明図である。
【図２３】図２３は、運搬プロセスに関する基準スケジュールの構成例を示す説明図である。
【図２４】図２４は、運搬プロセスに関する対象スケジュールの構成例を示す説明図である。
【図２５】図２５は、第３の実施の形態にかかるスケジューリングシステムの構成を示すブロック図である。
【発明を実施するための形態】
【００２４】
［本発明の原理］
まず、本発明の原理について説明する。実際に作業を実行する生産現場は、オーダー内容、設備数、作業者数など、プロセスに係わる状況が動的に変化するため、このような動的変化をスケジューリングに反映させることが重要となる。状況が動的に変化して予測が難しい環境下で最適な意志決定を行う場合、固定的なアルゴリズムで対応することは極めて難しく、確率分布を用いたより柔軟な確率モデルが必要となる。一方、指定されたオーダーを要求期間内に完了するというような各種制約を充足し、かつ、スケジュールに対する一定の評価基準を満足するためには、模範となる生産計画者の選好をスケジューリングに反映させることが重要となる。
【００２５】
一般に、スケジュールは、事前に定義された順序にしたがって、複数の工程を、それぞれ複数の区間のいずれかに割り当てたものである。このようなスケジューリングの処理内容を具体的に考察すると、生産計画者の選好とは、任意の設定期間を分割して設けた各区間（時間区間）に、オーダーのプロセスを構成する各工程を割り当てる際、複数の選択肢の中から生産計画者の好みに応じた工程を割り当てることであり、具体的には選好の偏りとして捉えられることがわかった。
【００２６】
また、選好の偏りをより具体的に考察すると、選好の偏りには、生産計画者のスケジューリングにおける観点に応じて複数の選好項目が存在しており、生産計画者が重要視する度合もこれら選好項目ごとに異なることがわかった。
本発明は、このような生産計画者の選好の偏りと確率モデルとに着目し、模範となる生産計画者が予め生成した模範スケジュールに基づいて、模範となる生産計画者の選好を選好項目ごとに数値化した模範選好値を予め推定しておき、得られた模範選好値を考慮した確率モデルに基づいて各区間で実行する工程を順次選択することにより、一連のスケジュールを生成するようにしたものである。
【００２７】
次に、本発明の実施の形態について図面を参照して説明する。
［第１の実施の形態］
まず、図１を参照して、本発明の第１の実施の形態にかかるスケジューリングシステム１について説明する。図１は、第１の実施の形態にかかるスケジューリングシステムの構成を示すブロック図である。
このスケジューリングシステム１は、Ｎ（Ｎは２以上の整数）個のオーダーについて、それぞれ対応するＮ個のプロセスを構成するそれぞれの工程を、区間ごとにM（ＭはＮ以下の整数）個以下で並列的に実行することにより、Ｎ個のプロセスを要求期間内に完了するためのスケジュールとして、指定された実行順序にしたがって各工程を各区間に割り当てたスケジュールを生成するシステムである。
【００２８】
図１に示すように、スケジューリングシステム１は、通信回線Ｌを介して接続された、スケジュール生成装置１０と選好値計算装置２０とから構成されている。本実施の形態では、通信回線Ｌを介して１つの選好値計算装置２０に１つのスケジュール生成装置１０を接続した構成を例として説明するが、これに限定されるものではない。通信回線Ｌを介して１つの選好値計算装置２０に複数のスケジュール生成装置１０を接続した構成であってもよい。これにより、１つの選好値計算装置２０により、複数のスケジュール生成装置１０で用いる候補選好値をそれぞれ推定でき、複数の独立したスケジューリングシステムを別個に構築する場合と比較してシステム全体の構成を大幅に簡素化できる。
【００２９】
スケジュール生成装置１０は、全体としてサーバ装置などの情報処理装置からなり、通信回線Ｌを介して選好値計算装置２０から取得した模範選好値に基づいて、予め対象状況データで指定されたオーダーを要求期間内で完了するための対象スケジュールを生成する装置である。
【００３０】
選好値計算装置２０は、全体としてサーバ装置などの情報処理装置からなり、予め与えられた模範となる模範スケジュールから、模範スケジュールの生成時に用いられた、各区間に対する各工程の割り当てに関する選好の度合を示す模範選好値を、予め設定された選好項目ごとに推定する装置である。
【００３１】
［スケジュール生成装置］
次に、図１を参照して、本実施の形態にかかるスケジュール生成装置１０の構成について詳細に説明する。
スケジュール生成装置１０は、主な構成として、通信Ｉ／Ｆ部１１、操作入力部１２、画面表示部１３、記憶部１４、および演算処理部１５を備えており、内部バスＢ１を介して相互にデータやり取り可能に接続されている。
【００３２】
通信Ｉ／Ｆ部１１は、通信回線Ｌを介して選好値計算装置２０や外部装置（図示せず）との間でデータ通信を行う回路部である。
操作入力部１２は、キーボード、マウス、タッチパネルなどの操作入力装置からなり、オペレータの操作を検出する装置である。
画面表示部１３は、ＬＣＤなどの画面表示装置からなり、メニュー画面、設定画面、対象状況データ入力画面、対象スケジュール表示画面など、各種の処理画面を画面表示する装置である。
【００３３】
記憶部１４は、ハードディスクや半導体メモリなどの記憶装置からなり、スケジュール生成装置１０で実行するスケジュール生成処理で用いるプログラム１４Ｐや各種の処理データを記憶する回路部である。
プログラム１４Ｐは、演算処理部１５のＣＰＵと協働することにより各種の処理部を実現するプログラムであり、スケジュール生成装置１０に接続された外部装置や記録媒体から読み出されて記憶部１４へ予め格納される。なお、プログラム１４Ｐについては、処理を実行する時点で、通信回線Ｌを介して外部装置や記録媒体から取得して記憶部１４へ格納するようにしてもよい。
【００３４】
記憶部１４で記憶する主な処理データとして、対象状況データ１４Ａ、模範選好値１４Ｂ、および対象スケジュール１４Ｃがある。
対象状況データ１４Ａは、対象スケジュール１４Ｃの生成に適用されるべき、対象となるプロセスに係わる状況、例えばオーダー内容、設備数、作業者数など、スケジュールが満たすべき制約やルールなどのスケジュール生成条件を規定したデータであり、操作入力部１２や通信回線Ｌに接続された外部装置から予め入力される。
【００３５】
図２は、生産プロセスに関するオーダーと設備に関する規定例を示す説明図である。対象状況データ１４Ａには、図２に示すようなオーダーと設備を規定するオーダーデータが含まれている。このオーダーデータでは、生産する製品とオーダー数（生産個数）、および生産を完了すべき要求期間（納期）が規定されている。
【００３６】
図２の例では、２種類の製品Ｖ１，Ｖ２のオーダー数がそれぞれ４個と６個で、全部で１０個（Ｎ＝１０）の製品を要求期間２０日間内に生産する必要があること、および、設備（作業者）が３つ（Ｍ＝３）で並列的に独立して作業可能であることが規定されている。なお、理解を容易とするため、全設備（全作業者）がすべての工程を実施可能であり、すべての区間において稼働可能であるものとする。
【００３７】
図３は、生産プロセスに関する工程を規定する工程データの構成例を示す説明図である。対象状況データ１４Ａには、図３に示すようなプロセスを構成する工程を規定する工程データが含まれている。工程データは、プロセスで生成する製品種別ごとに、各区間で実行すべき工程を実行順でリスト化したものである。ここでは、理解を容易とするため、１つの区間長が１日に相当する場合を例として示されているが、これに限定されるものではなく、１時間や１週間など、プロセス内容に応じて他の時間長を用いてもよい。また、製品種別の数は２つに限定されるものではなく、１つであっても３つ以上であってもよい。
【００３８】
図３の例では、製品Ｖ１は、少なくとも７つの区間で工程１１，工程１２，工程１３，工程１４，工程１５，工程１６，工程７７を順に実行することにより生成されることが規定されている。また、製品Ｖ２は、少なくとも６つの区間で工程２１，工程２２，工程２４，工程２５，工程２６，工程７７を順に実行することにより生成されることが規定されている。
【００３９】
本実施の形態では、対象状況データ１４Ａにおいて、工程に関し以下のような工程条件が規定されているものとする。
１．各工程は実行順序に従うものとは、工程飛ばしは不可とする。
２．各工程の実行区間は不連続でもよい。
３．工程７７は設備不要であるが、他の工程は設備を必要とする。
４．工程７７は、製品Ｖ１，Ｖ２の両方で同じ内容の作業を実行する。
５．工程７７は、１区間で異なる２オーダーに関する作業を並列実行可能である。
【００４０】
本発明において、工程とは、モノを完成させるにあたって、対象物に変化を与えることを指す。製造の場合、大別すると加工・運搬・検査・停滞に相当し、具体的には切り抜き・組立などがある。また本発明において、プロセスとは、あるモノを作るシステムにおいて、対象が完成するまでのすべての工程を繋げたものを指す。また本発明において、オーダーとは、顧客からの受注（要求）を元に、現場へと出される指示を指す。オーダーには、少なくとも、基本的なオーダーデータとして、識別用のオーダーＩＤ、何を（What）・何時までに（When）・どれぐらい（How many）完成させるのかが記載される。実際のオーダーデータは現場によって多様で、例えば、製造現場で出荷先を分ける必要がある場合だと、何処へ（Where）が含まれる場合もある。
なお、本実施の形態では、理解を容易とするため、オーダー数とプロセス数が等しい場合を例として説明するが、これに限定されるものではない。本発明は、オーダー数とプロセス数が異なる場合にも対応することができる。
【００４１】
模範選好値１４Ｂは、予め設定されている各選好項目に関する、区間に対する工程の割り当てに関する模範となる選好の度合を示すデータである。図４は、生産プロセスに関する模範選好値の構成例を示す説明図である。図４の例では、選好項目として、「工程同一」、「オーダー同一」、および「種別同一」が用いられており、それぞれの模範選好値として「５０」，「８０」，「３０」が設定されている。
【００４２】
一般に、スケジューリングでは、各区間で実行可能な工程数は、設備（作業者）の数Ｍが上限となり、オーダーの数ＮがＭより大きい場合を扱う。したがって、ある区間ｔですべてのオーダーに関する工程を並列的に実行できないため、区間ｔにおいて、いずれのオーダーの工程を実際に実行するかを選択する必要がある。模範選好値１４Ｂは、工程を選択する際の模範となる選好の度合を示している。
【００４３】
選好項目は、区間ｔと、これ以前の先行区間ｔ’との間における工程の割当状況を評価する項目を示しており、それぞれの模範選好値は、これら選好項目間における相対的な適用の度合を示している。先行区間ｔ’は、区間ｔ以前の区間、すなわち区間１〜区間ｔ−１までの各区間の全部またはその一部からなる。
【００４４】
選好項目のうち、「工程同一」は、区間ｔにおいて各オーダーに対して仮に割り当てたＮ個の工程と、先行区間ｔ’で実際に割り当てたＭ個の工程とで、同じ工程が存在しているか否かを評価する項目である。区間ｔと同じ工程が先行区間ｔ’に１つ存在していれば、「工程同一」が１つ適用されていると評価される。
また「オーダー同一」は、Ｎ個の工程とＭ個の工程とで、同じオーダーの工程が存在しているか否かを評価する項目である。区間ｔと同じオーダーの工程が先行区間ｔ’に１つ存在していれば、「オーダー同一」が１つ適用されていると評価される。
また「種別同一」は、Ｎ個の工程とＭ個の工程とで、オーダーに関係なく同じ製品種別の工程が存在しているか否かを評価する項目である。区間ｔと同じ製品種別の工程が先行区間ｔ’に１つ存在していれば、「種別同一」が１つ適用されていると評価される。
【００４５】
対象スケジュール１４Ｃは、対象状況データ１４Ａと模範選好値１４Ｂとに基づいて生成したスケジュールである。図５は、生産プロセスに関する対象スケジュールの構成例を示す説明図である。図５には、Ａ〜Ｊの１０個のオーダーごとに、区間１〜２０にそれぞれの製品種別のプロセスを構成する工程を割り当てたスケジュールが示されている。
【００４６】
図５において、例えばオーダーＡについては、区間１２，１３，１４，１５，１６，１９，２０で工程１１〜１６，７７を順に実行することを示しており、オーダーＥについては、区間３，４，６，７，８，９で工程２１〜２６，７７を順に実行することを示している。
各区間において、並列的に実行される工程は３つであり、設備数Ｍと一致している。なお、工程７７については２つを１工程として実行可能であるため、区間９，１０，１２において２つずつ１工程として実行されており、区間２０では４つが２工程として実行されている。
【００４７】
演算処理部１５は、ＣＰＵとその周辺回路からなり、ＣＰＵとプログラム１４Ｐとが協働することにより、運転監視処理を行う各種の処理部を実現する回路部である。
演算処理部１５で実現される主な処理部として、データ取得部１５Ａ、候補工程抽出部１５Ｂ、選好適用検出部１５Ｃ、確率モデル作成部１５Ｄ、およびスケジュール生成部１５Ｅを備えている。
【００４８】
データ取得部１５Ａは、スケジュールの生成を開始する前に、通信Ｉ／Ｆ部１１から通信回線Ｌを介して選好値計算装置２０へアクセスし、選好値計算装置２０で生成された模範選好値１４Ｂ（２４Ｃ）を取得して記憶部１４へ保存する処理部である。これにより、記憶部１４には、図４で説明した模範選好値１４Ｂが保存されることになる。
【００４９】
候補工程抽出部１５Ｂは、要求期間を分割して得られた区間ごとに、当該区間ｔにおいてＮ個のオーダーのプロセスで実行すべきＮ個の候補工程を、当該プロセスを構成する各工程の実行順序にしたがって抽出する処理部である。
この際、候補工程抽出部１５Ｂは、Ｎ個のすべてのオーダーごとに候補工程を１つずつ抽出する。例えば、オーダーＡに関するプロセスで先行区間ｔ’で工程１４が実行された場合、続く区間ｔでは、図３で説明した製品Ｖ１の工程実行順序に基づき工程１４の次の工程１５が候補工程として抽出される。
【００５０】
選好適用検出部１５Ｃは、候補工程抽出部１５Ｂにより抽出した区間ｔのＮ個の候補工程とこれらＮ個の候補工程の直前に実行したＭ個の実工程とを比較することにより、予め設定されている選好項目ごとに、Ｎ個の候補工程に対する当該選好項目の適用状況を検出する処理部である。
前述したように、例えば選好項目「工程同一」については、区間ｔのＮ個の工程と、区間ｔ以前の先行区間ｔ’で実行したＭ個の工程とで、同じ工程が存在しているか否かが検出される。区間ｔと同じ工程がＭ個の工程に１つ存在していれば、「工程同一」が１つ適用ありと評価される。
【００５１】
確率モデル作成部１５Ｄは、選好適用検出部１５Ｃで得られた適用状況と、記憶部１４の選好項目に関する模範選好値１４Ｂとから計算した選好項目の適用度合に基づいて、区間ｔに関する、Ｎ個の候補工程のそれぞれの選択確率を示す確率モデルを作成する処理部である。
この際、確率モデル作成部１５Ｄは、選好項目ごとに、適用状況に含まれる当該選好項目適用回数と模範選好値とを乗算して適用度合を計算する。例えば、オーダーＡにおける選好項目「工程同一」の適用回数が「３」で「工程同一」の模範選好値が「５０」である場合、「工程同一」の適用度合は、「１５０（＝５０×３）」と計算される。なお、（製造が完了したなどの理由により）候補工程がない場合は、当該オーダーが選択されないように基準選択値を「０」にする。
【００５２】
また、確率モデル作成部１５Ｄは、これら適用度合を区間ｔに関するＮ個の候補工程ごとに合計し、得られたＮ個の合計値をＮ個の候補工程のそれぞれの比重とした、当該区間ｔに関する、ルーレット方式（適応度比例方式）に基づいた確率モデルを作成する。例えば、オーダーＥの候補選択に関する合計適用度合が「１８０」であり、すべてのオーダーの候補選択に関する合計適用度合の全体合計が「１０３０」である場合、オーダーＥの候補選択に関する選択確率は、「１７．４８％（＝１８０／１０３０）」と計算される。
【００５３】
スケジュール生成部１５Ｅは、区間ごとに、確率モデル作成部１５Ｄで作成した当該区間ｔに関する確率モデルに基づいて、当該区間ｔで実際に実行するＭ個の工程を選択することにより、オーダーの各工程を各区間のいずれかに割り当てた対象スケジュール１４Ｃを生成して記憶部１４へ保存する処理部である。
【００５４】
この際、スケジュール生成部１５Ｅは、区間ｔで実際に実行するＭ個の工程を選択する際、当該区間ｔに関する確率モデルに基づいて、当該区間ｔにおけるＮ個の候補工程のうちから、Ｍ個の工程をルーレット選択により選択する。これにより、オーダーＥの候補選択に関する選択確率が「１７．４８％」である場合、区間ｔにおいてオーダーＥの候補工程は、各選好項目に関する模範選好値１４Ｂに基づいて、「１７．４８％」の確率で選択されて割り当てられることになる。
【００５５】
［選好値計算装置］
次に、図１を参照して、本実施の形態にかかる選好値計算装置２０の構成について詳細に説明する。
選好値計算装置２０は、主な構成として、通信Ｉ／Ｆ部２１、操作入力部２２、画面表示部２３、記憶部２４、および演算処理部２５を備えており、内部バスＢ２を介してデータやり取り可能に接続されている。
【００５６】
通信Ｉ／Ｆ部２１は、通信回線Ｌを介してスケジュール生成装置１０や外部装置（図示せず）との間でデータ通信を行う回路部である。
操作入力部２２は、キーボード、マウス、タッチパネルなどの操作入力装置からなり、オペレータの操作を検出する装置である。
画面表示部２３は、ＬＣＤなどの画面表示装置からなり、メニュー画面、設定画面、模範状況データ入力画面、模範スケジュール入力画面、模範選好値表示画面など、各種の処理画面を画面表示する装置である。
【００５７】
記憶部２４は、ハードディスクや半導体メモリなどの記憶装置からなり、選好値計算装置２０で実行する選好値計算処理で用いるプログラム２４Ｐや各種の処理データを記憶する回路部である。
プログラム２４Ｐは、演算処理部２５のＣＰＵと協働することにより各種の処理部を実現するプログラムであり、選好値計算装置２０に接続された外部装置や記録媒体から読み出されて記憶部２４へ予め格納される。なお、プログラム２４Ｐについては、処理を実行する時点で、通信回線Ｌを介して外部装置や記録媒体から取得して記憶部２４へ格納するようにしてもよい。
【００５８】
記憶部２４で記憶する主な処理データとして、模範状況データ２４Ａ、模範スケジュール２４Ｂ、模範選好値２４Ｃ、および基準選好値２４Ｄがある。
模範状況データ２４Ａは、模範スケジュール２４Ｂの生成に適用された、対象となるプロセスに係わる状況、例えばオーダー内容、設備数、作業者数など、模範スケジュールが満たすべき制約やルールなどのスケジュール生成条件を規定したデータであり、操作入力部２２や通信回線Ｌに接続された外部装置から予め入力される。模範状況データ２４Ａには、図２のオーダーデータや図３の工程データ、さらには前述した工程条件が含まれているが、対象状況データ１４Ａと同様であり、ここでの説明は省略する。
【００５９】
模範スケジュール２４Ｂは、模範状況データ２４Ａと模範となる生産計画者の選好とに基づいて生成されたスケジュールである。図６は、生産プロセスに関する模範スケジュールの構成例を示す説明図である。図６には、Ａ〜Ｊの１０個のオーダーごとに、区間１〜２０にそれぞれの製品種別のプロセスを構成する工程を割り当てた模範とするスケジュールが示されている。
【００６０】
模範スケジュール２４Ｂについては、人が実際に生成したスケジュールに限定されるものではなく、任意のスケジューリングシステムやスケジュール生成装置で生成した模範となるスケジュールを用いてもよい。
また、模範スケジュール２４Ｂの生成に用いた模範状況については、スケジューリングの対象となる対象状況と完全一致している必要はなく、同じプロセスを用いて同じ製品を生産するスケジュール、すなわち対象スケジュールの生成に有用な模範選好値が得られるスケジュールであればよい。
【００６１】
模範選好値２５Ｃは、模範となる模範スケジュール２４Ｂと類似するスケジュールを生成する、複数の工程の割り当てに関する選好の度合を示す選好値である。この模範選好値２５Ｃは、模範選好値推定部２５Ｄにより生成されて記憶部１４に保存され、スケジュール生成装置１０におけるスケジュール生成時に用いられる。
基準選好値２４Ｄは、予め記憶部１４に設定される、基準スケジュールの生成時に用いられる選好値であり、選好項目の間で等しい値、例えば「０」が予め設定されている。
【００６２】
演算処理部２５は、ＣＰＵとその周辺回路からなり、ＣＰＵとプログラム２４Ｐとが協働することにより、運転監視処理を行う各種の処理部を実現する回路部である。
演算処理部２５で実現される主な処理部として、選好出現検出部２５Ａ、選好比率計算部２５Ｂ、仮選好値セット生成部２５Ｃ、模範選好値推定部２５Ｄ、および配信処理部２５Ｅを備えている。
【００６３】
選好出現検出部２５Ａは、記憶部２４から取得した模範となる模範スケジュール２４Ｂから、予め設定された選好項目ごとに、各区間の工程における当該選好項目の出現状況を検出する処理部である。
この際、選好出現検出部２５Ａは、模範スケジュール２４Ｂの区間ごとに、当該区間ｔの工程と先行区間ｔ’の工程とを比較して、選好項目ごとに当該選好項目の出現回数を模範出現回数として検出する。
【００６４】
また、選好出現検出部２５Ａは、模範スケジュール２４Ｂに関する模範状況データ２４Ａと、選好項目の間で等しい値、例えば「０」を示す所定の基準選好値とに基づいて基準スケジュールを生成し、基準スケジュールの区間ごとに、当該区間ｔの工程と先行区間ｔ’の工程とを比較して、選好項目ごとに当該選好項目の出現回数を基準出現回数として検出する。
【００６５】
基準スケジュールの生成については、スケジュール生成装置１０で説明した、対象状況データ１４Ａと模範選好値１４Ｂとを用いた対象スケジュールの生成と同じ手法で生成できる。この際、対象状況データ１４Ａに代えて模範状況データ２４Ａを用い、模範選好値１４Ｂに代えて基準選好値を用いればよい。
具体的には、まず、区間ｔにおいてＮ個のオーダーのプロセスで実行すべきＮ個の候補工程を、模範状況データ２４Ａで規定された当該プロセスを構成する各工程の実行順序にしたがって抽出する（候補工程抽出部）。
【００６６】
次に、先行区間ｔ’で実行したＭ個の実工程とを比較することにより、予め設定されている選好項目ごとに、Ｎ個の候補工程に対する適用状況を検出する（選好適用検出部）。続いて、得られた適用状況と基準選好値とから計算した選好項目の適用度合に基づいて、区間ｔに関する確率モデルを作成する（確率モデル作成部）。その後、区間ごとに、当該区間ｔにおける確率モデルに基づいて、当該区間ｔで実際に実行するＭ個の工程を選択することにより、オーダーの各工程を区間のそれぞれに割り当てた基準スケジュールを生成する（スケジュール生成部）。
【００６７】
模範スケジュール２４Ｂや基準スケジュールからの出現回数の検出については、前述したように、例えば選好項目「工程同一」については、区間ｔのＮ個の工程と、先行区間ｔ’のＭ個の工程とで、同じ工程が存在しているか否かが検出される。区間ｔと同じ工程が先行区間ｔ’に１つ存在していれば、「工程同一」が１回出現ありと評価される。
【００６８】
選好比率計算部２５Ｂは、選好出現検出部２５Ａで得られた出現状況に基づいて、模範スケジュールに関する選好項目の出現度合の比を示す選好比率を計算する処理部である。
この際、選好比率計算部２５Ｂは、選好項目ごとに、当該選好項目の模範出現回数を各区間で合計して模範出現回数合計を計算するとともに、当該選好項目の基準出現回数を各区間で合計して基準出現回数合計を計算し、選好項目ごとに、模範出現回数合計と基準出現回数合計との比を選好比率として計算する。
例えば、選好項目「工程同一」に関する模範出現回数合計が「２３４」であり、基準出現回数合計が「８４」である場合、選好項目「工程同一」に関する選好比率は、「２．７９（＝２３４／８４）」として計算される。
【００６９】
仮選好値セット生成部２５Ｃは、選好比率計算部２５Ｂで計算した選好比率に応じた確率分布に基づいて、選好項目に関する仮の選好値の組からなる、複数の仮選好値セットを生成する処理部である。
この際、仮選好値セット生成部２５Ｃは、選好項目ごとに、当該選好項目の選好比率に応じた平均値と基準となる標準偏差とを有する正規分布からなる確率分布を生成し、これら確率分布に基づいて選好項目に関する仮の選好値の組からなる、複数の仮選好値セットを生成する。
【００７０】
確率分布の生成については、例えば標準偏差が「５００」で平均値が「５００」の正規分布を予め用意しておき、この正規分布の平均値「５００」に選好項目「工程同一」に関する選好比率「２．７９」を乗算することにより、標準偏差が「５００」で新たな平均値「１３９５」を有する確率分布を生成すればよい。
仮選好値セットの生成については、選好項目ごとに、生成した確率分布が示す確率に基づいていずれか１つの仮の選好値を選択すれば、１組の仮の選好値が得られ、これを複数回繰り返し実行すれば、複数の仮選好値セットが得られる。また、初期値生成の確率分布については、例として正規分布の平均値に選好比率を乗算する手法を取っているが、これに限定されるものではなく、例えば標準偏差も変更する手法など、他の手法を適用してもよい。
【００７１】
模範選好値推定部２５Ｄは、仮選好値セット生成部２５Ｃで生成した複数の仮選好値セットのうち、当該仮選好値セットに基づき生成した仮スケジュールと模範スケジュール２４Ｂとの類似度が最も高いものを最良選好値セットとして選択し、最良選好値セットを構成する各選好値を模範選好値として推定する処理部である。
【００７２】
仮スケジュールの生成については、前述した選好出現検出部２５Ａでの基準スケジュールの生成手法のうち、基準選好値に代えて仮選好値セットの選好値を用いればよく、ここでの詳細な説明は省略する。
また、生成した仮スケジュールと模範スケジュール２４Ｂとの類似度については、公知の手法により求めればよい。例えば、２つの標本についてそれぞれの母集団の確率分布が一致しているかどうかを検定する際に用いられるコルモゴロフ=スミルノフ検定（Kolmogorov-Smirnov test）における検定統計量を類似度として利用する方法が考えられる。
【００７３】
最良選好値セットの選択については、仮選好値セット生成部２５Ｃで生成した初期の複数の仮選好値セットから最良選好値セットを選択してもよいが、模範選好値推定部２５Ｄにより、遺伝的アルゴリズムに基づいて世代交代させた仮選好値セットから最良選好値セットを選択してもよい。具体的には、仮選好値セット生成部２５Ｃで生成した初期の複数の仮選好値セットを遺伝的アルゴリズムに基づいて複数回にわたり世代交代させることにより複数の新たな仮選好値セットを導出し、これら新たな仮選好値セットのうち、当該新たな仮選好値セットから仮スケジュールを生成すればよい。
【００７４】
仮選好値セットの世代交代に用いる遺伝的アルゴリズムの世代交代モデルの１つとして、ＭＧＧ（Minimal Generation Gap）モデルがある（非特許文献２など参照）。ＭＧＧモデルは、世代交代を行う際に、元の個体群からランダムに選んだ２つの親個体間で交叉を行い、子個体を生成・評価し、これら４つの親・子個体のうち優秀な１個体とランダムに選んだ１個体を元の個体群に戻すのを繰り返すことにより、元の個体群の多様性を維持しつつ優秀な個体が得られることを特徴とする。
【００７５】
配信処理部２５Ｅは、通信回線Ｌを介して通信Ｉ／Ｆ部２１で検出した、スケジュール生成装置１０からのアクセスに応じて、記憶部２４の模範選好値２４Ｃをスケジュール生成装置１０へ配信する処理部である。
【００７６】
［第１の実施の形態の動作］
次に、本実施の形態にかかるスケジューリングシステム１の動作として、スケジュール生成装置１０でのスケジュール生成動作と、選好値計算装置２０の選好値計算動作について、それぞれ説明する。
【００７７】
［スケジュール生成動作］
図７を参照して、本実施の形態にかかるスケジュール生成装置１０のスケジュール生成動作について説明する。図７は、スケジュール生成処理を示すフローチャートである。
スケジュール生成装置１０は、操作入力部１２で検出されたオペレータ操作、あるいは、通信Ｉ／Ｆ部１１で受信した外部装置からの指示に応じて、図７のスケジュール生成処理を実行する。
【００７８】
まず、データ取得部１５Ａは、操作入力部１２または外部装置から対象状況データ１４Ａを取得して記憶部１４に保存するとともに、通信Ｉ／Ｆ部１１から通信回線Ｌを介して選好値計算装置２０にアクセスして模範選好値１４Ｂを取得し記憶部１４に保存する（ステップＳ１００）。
【００７９】
次に、候補工程抽出部１５Ｂは、対象状況データ１４Ａで指定された要求期間を所定時間長で分割して得られた複数の区間のうち、最初の区間１（ｔ＝１）で実行する工程を、対象状況データ１４Ａで指定された対象状況データ（図２）および工程データ（図３）に基づいて割り当てる（ステップＳ１０１）。この際、設備数Ｍがオーダー数Ｎより小さいため、Ｎ個のオーダーからランダムに選択したまたは対象状況データ１４Ａで指定されたＭ個のオーダーに対して、最初に実行すべき工程を割り当てる。
【００８０】
図８は、スケジュール生成処理を示す説明図である。図８には、対象状況データ（図２）および工程データ（図３）を含む対象状況データ１４Ａに基づいて、製品Ｖ１を生成するオーダーＡ〜Ｄと、製品Ｖ２を生成するオーダーＥ〜Ｊの、合わせて１０個のオーダー（Ｎ＝１０）に関する各工程を、３個の設備（Ｍ＝３）で並列的に順次実行するためのスケジュール生成例が示されている。この例では、先頭の区間１（ｔ＝１）において、３個のオーダーＦ，Ｈ，Ｊに工程２１がそれぞれ割り当てられている。
【００８１】
続いて、候補工程抽出部１５Ｂは、Ｎ個のオーダーのプロセスで、次の区間ｔで実行すべきＮ個の候補工程を、それぞれのプロセスを構成する各工程の実行順序にしたがって抽出する（ステップＳ１０２）。
【００８２】
図８の例では、区間７（ｔ＝７）において、オーダーＡ〜Ｄについては、それまでまだ工程が割り当てられていないため、区間７の候補工程として製品Ｖ１の先頭の工程１１がそれぞれ抽出されている。また、オーダーＥ，Ｇ，Ｉについては、直前の区間６（ｔ−１）で工程２４がそれぞれ実行されているため、区間７の候補工程として製品Ｖ２の実行順序にしたがって工程２５がそれぞれ抽出されている。なお、オーダーＦ，Ｈ，Ｊについては、図示されていない区間６より前の区間で工程２３，工程２５，工程２４が実行されているため、区間７の候補工程として製品Ｖ２の実行順序にしたがって工程２４，工程２６，工程２５それぞれ抽出されている。
【００８３】
次に、選好適用検出部１５Ｃは、候補工程抽出部１５Ｂにより抽出した区間ｔのＮ個の候補工程とその先行区間ｔ’で実行したＭ個の実工程とを比較することにより、予め模範選好値１４Ｂ（図４）で設定されている選好項目ごとに、Ｎ個の候補工程に対する選好項目の適用状況を検出する（ステップＳ１０３）。
【００８４】
図８の例では、模範選好値１４Ｂとして図４に示した選好項目「工程同一」、「オーダー同一」、および「種別同一」が設定されている場合が示されている。区間６において、オーダーＡ〜Ｄには工程が割り当てられていないため、区間７ではいずれの選好項目も適用回数「０」と判定される。一方、オーダーＦについては区間７の工程２４と同じ工程が区間６で３つ実行されているから、選好項目「工程同一」で適用回数「３」と判定される。また、オーダーＥ，Ｇ，Ｉについては区間６で工程２４がそれぞれ実行されているから、選好項目「オーダー同一」でそれぞれ適用回数「１」と判定される。また、オーダーＥ〜Ｊについては、区間６で同じ製品Ｖ２の工程２４が３つ実行されているから、選好項目「種別同一」でそれぞれ適用回数「３」と判定される。
【００８５】
この後、確率モデル作成部１５Ｄは、選好適用検出部１５Ｃで得られた適用状況と、記憶部１４の選好項目に関する模範選好値１４Ｂとから、選好項目ごとに適用度合を計算し（ステップＳ１０４）、得られた選好項目ごとの適用度合を合計した合計適用度合に基づいて、区間ｔに関する確率モデルを作成する（ステップＳ１０５）。この際、選好項目ごとの適用度合は、選好項目の模範選好値と適用状況に含まれる当該選好項目の適用回数との乗算値に基づいて計算される。
【００８６】
図８の例では、図４に示したように、選好項目「工程同一」、「オーダー同一」、「種別同一」に対して模範選好値「５０」，「８０」，「３０」が設定されている場合が示されている。オーダーＡ〜Ｄについては、いずれの選好項目も適用回数「０」と判定されたため、基礎適用度合「１０」だけが加算される。この基礎適用度合は、選択確率がゼロとならないように調整するための値である。一方、オーダーＥについては、選好項目「オーダー同一」と「種別同一」の適用回数「１」と「３」であるため、合計適用度合「１８０（＝８０×１＋３０×３＋１０）」と計算される。オーダーＦ〜Ｊも同様にして、合計適用度合「２５０」，「１８０」，「１００」，「１８０」，「１００」と計算される。
【００８７】
図９は、確率モデル作成処理を示す説明図である。各オーダーの選択確率は、全オーダーの合計適用度合の全体合計で、当該オーダーの合計適用度合を除算することにより計算される。図９の例では、全オーダーの合計適用度合の全体合計が「１０３０」である例が示されており、オーダーＡ〜Ｄの合計適用度合が「１０」であることから、その選択確率は「０．９７％（＝１０／１０３０）」と計算される。また、オーダーＥの合計適用度合が「１８０」であることから、その選択確率は「１７．４８％（＝１８０／１０３０）」と計算される。オーダーＦ〜Ｊも同様にして、選択確率「２４．２７％」，「１７．４８％」，「９．７１％」，「１７．４８％」，「９．７１％」と計算される。
【００８８】
したがって、区間７において、Ｎ（Ｎ＝１０）個の各候補選択からＭ個の候補選択を選択するための、ルーレット方式（適応度比例方式）に基づいた確率モデルは、これら各オーダーＡ〜Ｊの選択確率に基づき生成される。この確率モデルにおける選択確率を円形グラフで表した場合、それぞれのオーダーと対応する扇形領域の面積比が、それぞれのオーダーの選択確率比と等しいことになる。
【００８９】
続いて、スケジュール生成部１５Ｅは、確率モデル作成部１５Ｄで作成した区間ｔにおける確率モデルに基づいて、区間ｔで実際に実行するＭ個の工程をルーレット選択する（ステップＳ１０６）。
図９の例では、オーダーＡ〜Ｊのうち、３つのオーダーＥ，Ｆ，Ｈが選択されたことを示している。これにより、図５に示すように、区間７で実行する工程として、オーダーＥ，Ｆ，Ｈに、工程２５，工程２４，工程２６がそれぞれ割り当てられることになる。
【００９０】
この後、スケジュール生成部１５Ｅは、すべての区間に対する工程の割り当てが完了したか確認し（ステップＳ１０７）、未割当の区間が残っている場合（ステップＳ１０７：ＮＯ）、ステップＳ１０２へ戻る。
一方、すべての区間に対する工程の割り当てが完了した場合（ステップＳ１０７：ＹＥＳ）、生成されたスケジュールを対象スケジュール１４Ｃとして記憶部１４に保存して（ステップＳ１０８）、一連のスケジュール生成処理を終了する。
【００９１】
なお、図７では、スケジュール生成処理において、スケジュールを１つ生成して対象スケジュール１４Ｃとする場合を例として説明したが、これに限定されるものではない。例えば、ステップＳ１０１〜ステップＳ１０７を複数回繰り返して、複数のスケジュールを生成し、これらを対象スケジュール１４Ｃとするようにしてもよい。これにより、生産計画者の選好は同じであるが、スケジュール全体の評価値が違うというような、ある程度の幅を持つスケジュールを複数生成することができ、これらスケジュールのうちから、例えばプロセスに係わる状況に合った最良のものなど、任意のスケジュールを選択することができる。
【００９２】
［選好値計算動作］
図１０を参照して、本実施の形態にかかる選好値計算装置２０の選好値計算動作について説明する。図１０は、選好値計算処理を示すフローチャートである。
選好値計算装置２０は、操作入力部２２で検出されたオペレータ操作、あるいは、通信Ｉ／Ｆ部２１で受信した外部装置からの指示に応じて、図１０の選好値計算処理を実行する。なお、選好値計算処理を実行に際し、操作入力部２２または通信Ｉ／Ｆ部２１を介して外部装置から入力された模範状況データ２４Ａと模範スケジュール２４Ｂとが、予め記憶部２４に設定されているものとする。
【００９３】
まず、選好出現検出部２５Ａは、模範状況データ２４Ａと模範スケジュール２４Ｂとを記憶部２４から取得し（ステップＳ１５０）、模範状況データ２４Ａに基づいて、模範スケジュール２４Ｂの区間ごとに、当該区間ｔの工程と先行区間ｔ’の工程とを比較して、選好項目ごとにその出現回数を模範出現回数として検出し、これら出現回数を全区間で合計することにより選好項目ごとに模範出現回数合計を計算する（ステップＳ１５１）。
【００９４】
例えば図６に示した模範スケジュールの例では、選好項目として「工程同一」、「オーダー同一」、および「種別同一」が設定されている場合が示されている。区間２の模範出現回数を検出する場合、区間１，２の工程のうち同一の工程２１の組が２組存在しているから、選好項目「工程同一」で出現回数「２」と判定される。また区間１，２の工程のうち同じオーダーＦの工程の組が１組存在しているから、「オーダー同一」で出現回数「１」と判定される。また、区間１，２の工程のうち同じ製品種別の工程の組が３組存在しているから、選好項目「種別同一」で出現回数「３」と判定される。
【００９５】
図１１は、模範出現回数の検出例を示す説明図である。図６に示した模範スケジュールから検出した模範出現回数の検出例が示されている。前述のようにして、模範スケジュールの各区間について、選好項目ごとに模範出現回数が検出され、これらの合計値が模範出現回数合計として計算される。
【００９６】
次に、選好出現検出部２５Ａは、模範スケジュール２４Ｂに関する模範状況データ２４Ａと、選好項目の間で等しい値、例えば「０」を示す基準選好値とに基づいて基準スケジュールを生成する（ステップＳ１５２）。
図１２は、基準選好値の設定例を示す説明図である。ここでは、選好項目として「工程同一」、「オーダー同一」、および「種別同一」に対して値「０」の基準選好値が設定されている。
【００９７】
基準スケジュールの生成については、図７で説明した、対象状況データ１４Ａと模範選好値１４Ｂとを用いた対象スケジュールの生成と同じ手法で生成できる。この際、対象状況データ１４Ａに代えて模範状況データ２４Ａを用い、模範選好値１４Ｂに代えて基準選好値を用いればよい。
図１３は、基準スケジュールの生成例を示す説明図である。具体的には、まず、区間ｔにおいてＮ個のオーダーのプロセスで実行すべきＮ個の候補工程を、模範状況データ２４Ａで規定された当該プロセスを構成する各工程の実行順序にしたがって抽出する（候補工程抽出部）。
【００９８】
次に、先行区間ｔ’で実行したＭ個の実工程とを比較することにより、予め設定されている選好項目ごとに、Ｎ個の候補工程に対する適用状況を検出する（選好適用検出部）。続いて、得られた適用状況と基準選好値とから計算した選好項目の適用度合に基づいて、区間ｔに関する確率モデルを作成する（確率モデル作成部）。その後、区間ごとに、当該区間ｔにおける確率モデルに基づいて、当該区間ｔで実際に実行するＭ個の工程を選択することにより、オーダーの各工程を区間のそれぞれに割り当てた基準スケジュールを生成する（スケジュール生成部）。
【００９９】
続いて、選好出現検出部２５Ａは、基準スケジュールの区間ごとに、当該区間ｔの工程と先行区間ｔ’の工程とを比較して、選好項目ごとにその出現回数を基準出現回数として検出し、これら基準出現回数を全区間で合計することにより、選好項目ごとの基準出現回数合計を計算する（ステップＳ１５３）。
図１４は、模範出現回数の検出例を示す説明図である。図１４には、図１１に示した基準スケジュールから検出した基準出現回数の検出例が示されている。基準出現回数の検出については、模範出現回数の検出と同様にして実行すればよい。基準スケジュールの各区間について、選好項目ごとに基準出現回数が検出され、これらの合計値が基準出現回数合計として計算される。
【０１００】
この後、選好比率計算部２５Ｂは、選好出現検出部２５Ａで得られた出現状況に基づいて、選好項目ごとに、各区間の当該選好項目の模範出現回数を合計して模範出現回数合計を計算するとともに、各区間の当該選好項目の基準出現回数を合計して基準出現回数合計を計算し、選好項目ごとに、模範出現回数合計と基準出現回数合計との比を選好比率として計算する（ステップＳ１５４）。
【０１０１】
図１５は、選好比率の計算例を示す説明図である。図１５に示すように、選好項目「工程同一」の模範出現回数合計が「２３４」であり、基準出現回数合計が「８４」である場合、その選好比率は「２．７９（＝２３４／８４）」として計算される。また選好項目「オーダー同一」の模範出現回数合計が「１７４」であり、基準出現回数合計が「１２４」である場合、その選好比率は「１．４０（＝１７４／１２４）」として計算される。また選好項目「種別同一」の模範出現回数合計が「８７５」であり、基準出現回数合計が「５０１」である場合、その選好比率は「１．７５（＝８７５／５０１）」として計算される。
【０１０２】
次に、仮選好値セット生成部２５Ｃは、選好比率計算部２５Ｂで計算した選好比率に応じた確率分布に基づいて、選好項目ごとに、当該選好項目の選好比率に応じた平均値と基準となる標準偏差とを有する正規分布からなる確率分布を生成する（ステップＳ１５５）。
【０１０３】
図１６は、確率分布の生成例を示す説明図である。図１６の例では、基準となる標準偏差が「５００」である正規分布を用意し、その分布平均値として選好比率に「５００」を乗算した値を適用したものである。図１５に示すように、選好項目「工程同一」の選好比率「２．７９」に「５００」を乗算すると分布平均値「１３９５」が求められる。これにより、図１６に示すように、分布平均値が「１３９５」で標準偏差が「５００」である、選好項目「工程同一」に関する確率分布が得られる。
【０１０４】
また、選好項目「オーダー同一」の選好比率「１．４０」に「５００」を乗算すると分布平均値「７００」が求められる。これにより、図１６に示すように、分布平均値が「１７００」で標準偏差が「５００」である、選好項目「オーダー同一」に関する確率分布が得られる。また、選好項目「種別同一」の選好比率「１．７５」に「５００」を乗算すると分布平均値「８７５」が求められる。これにより、図１６に示すように、分布平均値が「８７５」で標準偏差が「５００」である、選好項目「種別同一」に関する確率分布が得られる。
【０１０５】
この後、仮選好値セット生成部２５Ｃは、選好項目ごとに、生成した確率分布が示す確率に基づいていずれか１つの仮の選好値を選択することにより、各選好項目に関する１組の仮の選好値を生成し、これを複数回繰り返し実行することにより、複数の仮選好値セットを生成する（ステップＳ１５６）。
図１７は、仮選好値セットの選択例を示す説明図である。図１７には、５つの仮選好値セットＳ１〜Ｓ５を選択した例が示されている。一般に、正規分布の縦軸は確率密度を示しており、例えば図１６のＸ±αに関する生起確率Ｐは、確率分布のうちＸ−αからＸ＋αの範囲の面積の大きさで求められる。
【０１０６】
次に、模範選好値推定部２５Ｄは、仮選好値セット生成部２５Ｃで生成した複数の仮選好値セットごとに仮スケジュールを生成し（ステップＳ１５７）、これら仮スケジュールごとに、模範スケジュール２４Ｂとの類似度を計算する（ステップＳ１５８）。
仮スケジュールの生成については、選好出現検出部２５Ａの基準スケジュール生成と同様に、スケジュール生成装置１０で説明した、対象状況データ１４Ａと模範選好値１４Ｂとを用いた対象スケジュールの生成と同じ手法で生成できる。この際、対象状況データ１４Ａに代えて模範状況データ２４Ａを用い、模範選好値１４Ｂに代えて仮選好値セットの選好値を用いればよい。
【０１０７】
また、生成した仮スケジュールと模範スケジュール２４Ｂとの類似度については、公知の手法により求めればよい。例えば、２つの標本についてそれぞれの母集団の確率分布が一致しているかどうかを検定する際に用いられるコルモゴロフ=スミルノフ検定（Kolmogorov-Smirnov test）における検定統計量を類似度として利用する方法が考えられる。
【０１０８】
この後、模範選好値推定部２５Ｄは、計算した仮スケジュールの類似度に基づいて、複数の仮選好値セットのうちから最良選好値セットを選択する最良選好値セット選択処理を実行し（ステップＳ１５９）、得られた最良選好値セットを構成する各選好値を模範選好値１４Ｂとして推定して記憶部１４に保存し（ステップＳ１６０）、一連の模範選好値計算処理を終了する。
【０１０９】
最良選好値セットを選択する最良選好値セット選択処理については、仮選好値セット生成部２５Ｃで生成した初期の複数の仮選好値セットから最良選好値セットを選択してもよいが、模範選好値推定部２５Ｄにより、遺伝的アルゴリズムに基づいて世代交代させた仮選好値セットから最良選好値セットを選択してもよい。具体的には、仮選好値セット生成部２５Ｃで生成した初期の複数の仮選好値セットを遺伝的アルゴリズムに基づいて複数回にわたり世代交代させることにより複数の新たな仮選好値セットを導出し、これら新たな仮選好値セットのうち、当該新たな仮選好値セットから仮スケジュールを生成すればよい。
【０１１０】
［第１の実施の形態の効果］
このように、本実施の形態にかかるスケジューリングシステム１は、選好値計算装置２０が、模範となる模範スケジュールと類似するスケジュールを生成する複数の工程の割り当てに関する選好の度合を示す模範選好値を、予め設定されている選好項目ごとに演算し、スケジュール生成装置１０が、複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれの選ばれやすさを、選好項目ごとの模範選好値に沿った確率モデルとして表現し、確率モデルに基づいて候補工程のうちから当該区間に割り当てる工程を選択することにより、１または複数のスケジュールを生成するようにしたものである。
【０１１１】
具体的には、選好値計算装置２０において、模範となる模範スケジュールと類似するスケジュールを生成する前記複数の工程の割り当てに関する選好の度合を示す模範選好値を、複数の仮選好値セットに基づいて生成した複数の仮スケジュールと前記模範スケジュールとの類似度が最も高くなるものを最良選好値セットとして選択し、前記最良選好値セットを構成する予め設定されている選好項目ごとの各選好値を前記模範選好値として推定し、スケジュール生成装置１０において、前記複数の区間のそれぞれについて、当該区間における割り当て可能な候補工程それぞれについて前記模範選好値と割り当て済み工程との配置関係に基づいて選ばれやすさの度合を確率モデルとして表現し、前記確率モデルに基づいて前記候補工程のうちから当該区間に割り当てる工程を選択することにより、前記スケジュールを生成するようにしたものである。
【０１１２】
より具体的には、スケジュール生成装置１０において、候補工程選択部１５Ｂが、区間ごとに、当該区間ｔにおいてＮ個のプロセスで実行すべきＮ個の候補工程を、当該プロセスを構成する各工程の実行順序にしたがって抽出し、選好適用検出部１５Ｃが、Ｎ個の候補工程と直前に実行したＭ個の実工程とを比較することにより、予め設定されている選好項目ごとに、Ｎ個の候補工程に対する適用状況を検出し、確率モデル作成部１５Ｄが、得られた適用状況と選好項目に関する模範選好値とから計算した選好項目の適用度合に基づいて、区間ｔに関する、Ｎ個の候補工程のそれぞれの選択確率を示す確率モデルを作成し、スケジュール生成部１５Ｅが、区間ごとに、当該区間ｔにおける確率モデルに基づいて、当該区間ｔで実際に実行するＭ個の工程を選択することにより、オーダーの各工程を各区間のいずれかに割り当てたスケジュールを生成するようにしたものである。
【０１１３】
また、選好値計算装置２０において、選好出現検出部２５Ａが、模範となる模範スケジュールから、選好項目ごとに各区間の工程における出現状況を検出し、選好比率計算部２５Ｂが、得られた出現状況に基づいて、模範スケジュールに関する選好項目の出現度合の比を示す選好比率を計算し、仮選好値セット生成部２５Ｃが、選好比率に応じた確率分布に基づいて、選好項目に関する仮の選好値の組からなる、複数の仮選好値セットを生成し、模範選好値推定部２５Ｄが、複数の仮選好値セットのうち、当該仮選好値セットに基づき生成した仮スケジュールと模範スケジュールとの類似度が最も高いものを最良選好値セットとして選択し、最良選好値セットを構成する各選好値を模範選好値として推定するようにしたものである。
【０１１４】
これにより、模範となる生産計画者の選好が選好項目ごとに模範選好値として数値化され、この模範選好値が与えられた確率モデルに基づいて、各区間で実行する工程が順次選択されて、一連のスケジュールが生成されることになる。したがって、スケジュールが満たすべき制約やルールを人が予め定式化することなく、模範となる生産計画者の選好に沿ったスケジュールを自動生成することが可能となる。また、複数回繰り返してスケジュールを生成すれば、生産計画者の選好は同じであるが、スケジュール全体の評価値が違うというような、ある程度の幅を持つスケジュールを複数生成することができる。このため、これらスケジュールのうちから、例えばプロセスに係わる状況に合った最良のスケジュールを選択することができる。また、生産計画者の選好度を定量化できるため、熟練者から初心者に対する、スケジューリングに関するノウハウ伝承に用いることも可能である。
【０１１５】
また、本実施の形態において、確率モデル作成部１５Ｄで、選好項目ごとに、適用状況に含まれる適用回数と模範選好値とを乗算して適用度合を計算し、これら適用度合を区間ｔに関するＮ個の候補工程ごとに合計し、得られたＮ個の合計値をそれぞれの比重とした、当該区間ｔに関する確率モデルを作成するようにしてもよい。
これにより、確率モデルに対して模範選好値を適切に与えることができ、模範となる生産計画者の選好に沿ったスケジュールを精度よく生成することが可能となる。
【０１１６】
また、本実施の形態において、スケジュール生成部１５Ｅで、区間ｔで実際に実行するＭ個の工程を選択する際、当該区間ｔに関する確率モデルに基づいて、当該区間ｔにおけるＮ個の候補工程のうちから、Ｍ個の工程をルーレット選択により選択するようにしてもよい。
これにより、生産計画者の選好に沿ってはいるが、ある程度の幅を持つスケジュールを生成することができる。
【０１１７】
また、本実施の形態において、選好出現検出部２５Ａが、模範スケジュールの区間ごとに、当該区間ｔの工程と先行区間ｔ’の工程とを比較して、選好項目ごとにその出現回数を模範出現回数として検出し、模範スケジュールに関する生成条件と選好項目の間で等しい基準選好値とに基づいて基準スケジュールを生成し、得られた基準スケジュールの区間ごとに、当該区間ｔの工程と先行区間ｔ’の工程とを比較して、選好項目ごとにその出現回数を基準出現回数として検出し、選好比率計算部２５Ｂが、選好項目ごとに、各区間の当該選好項目の模範出現回数を合計して模範出現回数合計を計算するとともに、各区間の当該選好項目の基準出現回数を合計して基準出現回数合計を計算し、選好項目ごとに、模範出現回数合計と基準出現回数合計との比を選好比率として計算するようにしてもよい。
これにより、模範となる模範スケジュールから確率モデルの元となる選好比率を正確に検出することができ、模範となる生産計画者の選好に沿ったスケジュールを精度よく生成することが可能となる。
【０１１８】
また、本実施の形態において、仮選好値セット生成部２５Ｃが、選好項目ごとに、当該選好項目の選好比率に応じた平均値と基準となる標準偏差とを有する正規分布からなる確率分布を生成し、これら確率分布に基づいて選好項目に関する仮の選好値の組からなる、複数の仮選好値セットを生成するようにしてもよい。
これにより、選好比率が与えられた確率モデルを、正規分布からなる確率分布により正確に具現化でき、模範となる生産計画者の選好に沿うとともに、ある程度の幅を持った複数の仮選好値セットを生成することができる。
【０１１９】
また、本実施の形態において、模範選好値推定部２５Ｄが、複数の仮選好値セットを遺伝的アルゴリズムに基づいて世代交代させることにより複数の新たな仮選好値セットを導出し、これら新たな仮選好値セットのうち、当該新たな仮選好値セットから仮スケジュールを生成するようにしてもよい。
これにより、仮選好値セット生成部２５Ｃで生成された仮選好値を用いてスケジューリングする場合と比較して、より模範スケジュールに類似したスケジュールを生成することができる。
【０１２０】
なお、本実施の形態では、前述のように、ある時間から工程順序に沿って計算する「フォワードスケジューリング（Forward Scheduling）」という方式での説明となっているが、この方式に限定されるものではない。スケジューリングには、完成させる時間（未来）から遡りながら割り当てて行く「バックワードスケジューリング（Backward Scheduling）」という方式もある。本実施の形態は、このようなバックワードスケジューリング、さらにはフォワード型（Forward Type）とバックワード型（Backward Type）とが混在するスケジューリング等の様々なスケジューリングの方式にも対応可能である。
【０１２１】
［第２の実施の形態］
次に、本発明の第２の実施の形態にかかるスケジューリングシステム１について説明する。第１の実施の形態では、物の生産プロセスに関するスケジュールを生成する場合を例として説明した。本実施の形態では、これ以外の例の１つとして、物の運搬プロセスに関するスケジュールを生成する場合を例として説明する。本実施の形態にかかる、スケジューリングシステム１、スケジュール生成装置１０、および選好値計算装置２０の構成については、第１の実施の形態と同様であり、ここでの詳細な説明は省略する。
【０１２２】
図１８は、第２の実施の形態にかかる運搬システムを示す説明図である。図１８に示すように、本実施の形態にかかる運搬システムは、設備として３つの荷積場Ｘ１，Ｘ２，Ｘ３と３つの荷降場Ｙ１，Ｙ２，Ｙ３を備えている。このうち、荷積場Ｘ１，Ｘ２，Ｘ３は、それぞれ荷降場Ｙ１，Ｙ２，Ｙ３と対をなし、それぞれ種別の異なる製品Ｖ１，Ｖ２，Ｖ３の荷物の積み降ろしに使用される。これら設備の間を３つのトラックＴ１，Ｔ２，Ｔ３が行き来して製品を運搬するが、設備とトラックとの対応関係は固定されていない。
【０１２３】
図１９は、運搬プロセスに関するオーダーと設備に関する規定例を示す説明図である。対象状況データ１４Ａには、図１９に示すようなオーダーと設備を規定するオーダーデータが含まれている。このオーダーでは、運搬する製品とオーダー数（運搬個数）、および運搬を完了すべき要求期間（納期）が規定されている。図１９の例では、製品Ｖ１，Ｖ２，Ｖ３のオーダー数がそれぞれ４個で、全部で１２個（Ｎ＝１２）の製品をなるべく早くという要求期間で運搬する必要があること、および、設備（トラック）が３つ（Ｍ＝３）で並列的に独立して作業可能であることが規定されている。
【０１２４】
図２０は、積み降ろし工程を規定する工程データの構成例を示す説明図である。対象状況データ１４Ａには、図２０に示すようなプロセスを構成する工程を規定する工程データが含まれている。工程データでは、プロセスで運搬する製品種別ごとに、工程作業に要する時間が規定されている。図２０の例では、製品Ｖ１は、荷積場Ｘ１での荷積工程に「１時間」を要し、荷降場Ｙ１での荷降工程に「２時間」を要することが規定されている。また、製品Ｖ２は、荷積場Ｘ２での荷積工程に「２時間」を要し、荷降場Ｙ２での荷降工程に「１時間」を要することが規定されている。また、製品Ｖ３は、荷積場Ｘ３での荷積工程に「２時間」を要し、荷降場Ｙ３での荷降工程に「２時間」を要することが規定されている。なお、荷積工程および荷降工程には「移動」に関する工程も含むものとする。
【０１２５】
本実施の形態では、対象状況データ１４Ａにおいて、工程に関し以下のような工程条件が規定されているものとする。
１．各トラックは一度に１オーダー分しか運搬できない。
２．各荷積場および荷降場は、同時にトラック１台しか作用できない。
【０１２６】
図２１は、運搬プロセスに関する模範選好値の構成例を示す説明図である。模範選好値１４Ｂは、予め設定されている各選好項目に関する、区間に対する工程の割り当てに関する模範となる選好の度合を示すデータである。図２１の例では、選好項目として、「工程同一」、「オーダー同一」、および「種別同一」が用いられており、それぞれの模範選好値として「０」，「１３８９」，「０」が設定されている。
【０１２７】
［第２の実施の形態の動作］
次に、本実施の形態にかかるスケジューリングシステム１の動作として、選好値計算装置２０による選好値計算動作と、スケジュール生成装置１０によるスケジュール生成動作とを実行する。本実施の形態にかかるこれら動作は、図１０で説明した選好値計算処理、および、図７で説明したスケジュール生成処理と同様であり、ここでの詳細な説明は省略する。
【０１２８】
まず、選好値計算装置２０は、操作入力部２２で検出されたオペレータ操作、あるいは、通信Ｉ／Ｆ部２１で受信した外部装置からの指示に応じて、図１０の選好値計算処理を実行する。なお、選好値計算処理を実行に際し、操作入力部１２または通信Ｉ／Ｆ部１１を介して外部装置から入力された模範状況データ２４Ａと模範スケジュール２４Ｂとが、予め記憶部２４に設定されているものとする。
【０１２９】
図２２は、運搬プロセスに関する模範スケジュールの構成例を示す説明図である。図２２には、Ａ〜Ｌの１２個のオーダーごとに、区間１〜１４にそれぞれの製品種別のプロセスを構成する工程を割り当てた模範とするスケジュールが示されている。ここでは、１区間が１時間に相当している。
図２２において、例えばオーダーＡについては、区間１，２の２時間分で工程Ｘ１Ｔ１を２つ続けて実行し、区間３で工程Ｙ１Ｔ１を実行することを示している。工程Ｘ１Ｔ１は、荷積場Ｘ１でトラックＴ１に荷積を行う工程を示しており、工程Ｙ１Ｔ１は、荷降場Ｙ１でトラックＴ１から荷降を行う工程を示している。なお、トラックＴ１の走行工程についてはスケジューリングに直接関与しないため、本実施の形態では省略する。
【０１３０】
図２３は、運搬プロセスに関する基準スケジュールの構成例を示す説明図である。図２３には、図２２の模範スケジュールと同様に、Ａ〜Ｌの１２個のオーダーごとに、区間１〜１５にそれぞれの製品種別のプロセスを構成する工程を割り当てた模範とするスケジュールが示されている。
【０１３１】
選好値計算装置２０において、選好出現検出部２５Ａは、予め設定された模範状況データ２４Ａおよび図２２の模範スケジュール２４Ｂと、模範状況データ２４Ａから生成した図２３の基準スケジュールとから、選好項目ごとに各区間の工程における出現状況を検出する（図１０：ステップＳ１５１−Ｓ１５３）。選好項目については、図２１と同様に、「工程同一」、「オーダー同一」、および「種別同一」が用いられるものとする。
【０１３２】
選好比率計算部２５Ｂは、得られた出現状況に基づいて、模範スケジュール２４Ｂに関する選好項目の出現度合の比を示す選好比率を計算し、仮選好値セット生成部２５Ｃは、選好比率に応じた確率分布に基づいて、選好項目に関する仮の選好値の組からなる、複数の仮選好値セットを生成する（図１０：ステップＳ１５４−Ｓ１５６）。
この後、模範選好値推定部２５Ｄは、複数の仮選好値セットのうち、当該仮選好値セットに基づき生成した仮スケジュールと模範スケジュール２４Ｂとの類似度が最も高いものを最良選好値セットとして選択し、最良選好値セットを構成する各選好値を模範選好値２４Ｃとして推定する（図１０：ステップＳ１５７−Ｓ１６０）。
【０１３３】
次に、スケジュール生成装置１０は、操作入力部１２で検出されたオペレータ操作、あるいは、通信Ｉ／Ｆ部１１で受信した外部装置からの指示に応じて、図７のスケジュール生成処理を実行する。
【０１３４】
スケジュール生成装置１０において、候補工程抽出部１５Ｂは、予め設定された対象状況データ１４Ａ、および、選好値計算装置２０から取得した模範選好値１４Ｂ（２４Ｃ）に基づいて、区間ごとに、当該区間ｔにおいてＮ個のオーダーのプロセスで実行すべきＮ個の候補工程を、当該プロセスを構成する各工程の実行順序にしたがって抽出する（図７：ステップＳ１０１−Ｓ１０２）。
【０１３５】
次に、選好適用検出部１５Ｃは、Ｎ個の候補工程と直前に実行したＭ個の実工程とを比較することにより、予め設定されている選好項目ごとに、Ｎ個の候補工程に対する適用状況を検出する（ステップＳ１０３）。
続いて、確率モデル作成部１５Ｄは、得られた適用状況と選好項目に関する模範選好値とから計算した選好項目の適用度合に基づいて、区間ｔにおける、Ｎ個の候補工程の選択確率を示す確率モデルを作成する（ステップＳ１０４−Ｓ１０５）。
【０１３６】
この後、スケジュール生成部１５Ｅは、区間ごとに、当該区間ｔにおける確率モデルに基づいて、当該区間ｔで実際に実行するＭ個の工程を選択することにより、オーダーの各工程を区間のそれぞれに割り当てたスケジュールを生成する（ステップＳ１０６−Ｓ１０８）。
【０１３７】
図２４は、運搬プロセスに関する対象スケジュールの構成例を示す説明図である。図２４には、図２２の模範スケジュール２４Ｂと同様に、Ａ〜Ｌの１２個のオーダーごとに、区間１〜１４にそれぞれの製品種別のプロセスを構成する工程を割り当てた対象スケジュール１４Ｃが示されている。図２４によれば、対象スケジュール１４Ｃとして、模範スケジュール２４Ｂと類似する内容のスケジュールが得られていることが分かる。
【０１３８】
このように、本発明にかかるスケジューリングシステム１は、物の生産プロセスに関するスケジュールの生成に限定されず、物の運搬プロセスに関するスケジュールなど、他のプロセスに関するスケジュールであっても、模範スケジュールに内在する模範となる生産計画者の選好に沿ったスケジュールを自動生成することができる。
【０１３９】
［第３の実施の形態］
次に、図２５を参照して、本発明の第３の実施の形態にかかるスケジューリングシステム１について説明する。図２５は、第３の実施の形態にかかるスケジューリングシステムの構成を示すブロック図である。
第１の実施の形態では、図１に示すように、スケジュール生成装置１０とは、別個の選好値計算装置２０で、選好値を推定する構成を例として説明したが、スケジュール生成装置１０と選好値計算装置２０の構成を１つのスケジュール生成装置３０内に実装してもよい。本実施の形態にかかるスケジューリングシステム１は、通信回線Ｌに接続された、全体としてサーバ装置などの情報処理装置からなるスケジュール生成装置３０から構成されている。
【０１４０】
図２５には、選好値計算処理とスケジュール生成処理とを行うスケジュール生成装置３０が示されている。このスケジュール生成装置３０は、全体としてサーバ装置などの情報処理装置からなり、主な構成として、通信Ｉ／Ｆ部３１、操作入力部３２、画面表示部３３、記憶部３４、および演算処理部４０を備えており、内部バスＢを介して相互にデータやり取り可能に接続されている。
【０１４１】
通信Ｉ／Ｆ部３１、操作入力部３２、画面表示部３３、および記憶部３４は、図１の通信Ｉ／Ｆ部１１，２１、操作入力部１２，２２、画面表示部１３，２３、および記憶部１４，２４に相当している。
また、記憶部３４には、プログラム３４Ｐのほか、主な処理データとして、模範状況データ３４Ａ、模範スケジュール３４Ｂ、模範選好値３４Ｃ、基準選好値３４Ｄ、対象状況データ３４Ｅ、対象スケジュール３４Ｆが記憶されている。
【０１４２】
記憶部３４の模範状況データ３４Ａ、模範スケジュール３４Ｂ、模範選好値３４Ｃ、基準選好値３４Ｄ、対象状況データ３４Ｅ、および対象スケジュール３４Ｆは、図１の模範状況データ２４Ａ、模範スケジュール２４Ｂ、模範選好値２４Ｃ（１４Ｂ）、基準選好値２４Ｄ、対象状況データ１４Ａ、および対象スケジュール１４Ｃに相当している。また、プログラム３４Ｐは、図１のプログラム１４Ｐとプログラム２４Ｐに相当している。
【０１４３】
演算処理部４０は、ＣＰＵとその周辺回路からなり、ＣＰＵとプログラム３４Ｐとが協働することにより、運転監視処理を行う各種の処理部を実現する回路部である。
演算処理部４０で実現される主な処理部として、選好出現検出部４１、選好比率計算部４２、仮選好値セット生成部４３、模範選好値推定部４４、候補工程抽出部４５、選好適用検出部４６、確率モデル作成部４７、およびスケジュール生成部４８がある。
【０１４４】
これら処理部のうち、選好出現検出部４１、選好比率計算部４２、仮選好値セット生成部４３、および模範選好値推定部４４は、図１の選好出現検出部２５Ａ、選好比率計算部２５Ｂ、仮選好値セット生成部２５Ｃ、および模範選好値推定部２５Ｄに相当している。また、候補工程抽出部４５、選好適用検出部４６、確率モデル作成部４７、およびスケジュール生成部４８は、図１の候補工程抽出部１５Ｂ、選好適用検出部１５Ｃ、確率モデル作成部１５Ｄ、およびスケジュール生成部１５Ｅに相当している。
【０１４５】
このように、スケジュール生成装置１０と選好値計算装置２０の構成を１つのスケジュール生成装置３０内に実装することにより、スケジューリングシステム１の構成を簡素化することが可能となる。また、模範選好値のやり取りに要する配信処理部２５Ｅやデータ取得部１５Ａなどの構成を省くことができるとともに、その所要時間を削減することができる。
【０１４６】
［実施の形態の拡張］
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。また、各実施形態については、矛盾しない範囲で任意に組み合わせて実施することができる。
【符号の説明】
【０１４７】
１…スケジューリングシステム、１０…スケジュール生成装置、１１…通信Ｉ／Ｆ部、１２…操作入力部、１３…画面表示部、１４…記憶部、１４Ａ…対象状況データ、１４Ｂ…模範選好値、１４Ｃ…対象スケジュール、１４Ｐ…プログラム、１５…演算処理部、１５Ａ…データ取得部、１５Ｂ…候補工程抽出部、１５Ｃ…選好適用検出部、１５Ｄ…確率モデル作成部、１５Ｅ…スケジュール生成部、２０…選好値計算装置、２１…通信Ｉ／Ｆ部、２２…操作入力部、２３…画面表示部、２４…記憶部、２４Ａ…模範状況データ、２４Ｂ…模範スケジュール、２４Ｃ…模範選好値、２４Ｄ…基準選好値、２４Ｐ…プログラム、２５…演算処理部、２５Ａ…選好出現検出部、２５Ｂ…選好比率計算部、２５Ｃ…仮選好値セット生成部、２５Ｄ…模範選好値推定部、２５Ｅ…配信処理部、３０…スケジュール生成装置、３１…通信Ｉ／Ｆ部、３２…操作入力部、３３…画面表示部、３４…記憶部、４０…演算処理部、４１…選好出現検出部、４２…選好比率計算部、４３…仮選好値セット生成部、４４…模範選好値推定部、４５…候補工程抽出部、４６…選好適用検出部、４７…確率モデル作成部、４８…スケジュール生成部、Ｌ…通信回線。
【図１】
2020119061.tif 000003
【図２】
2020119061.tif 000004
【図３】
2020119061.tif 000005
【図４】
2020119061.tif 000006
【図５】
2020119061.tif 000007
【図６】
2020119061.tif 000008
【図７】
2020119061.tif 000009
【図８】
2020119061.tif 000010
【図９】
2020119061.tif 000011
【図１０】
2020119061.tif 000012
【図１１】
2020119061.tif 000013
【図１２】
2020119061.tif 000014
【図１３】
2020119061.tif 000015
【図１４】
2020119061.tif 000016
【図１５】
2020119061.tif 000017
【図１６】
2020119061.tif 000018
【図１７】
2020119061.tif 000019
【図１８】
2020119061.tif 000020
【図１９】
2020119061.tif 000021
【図２０】
2020119061.tif 000022
【図２１】
2020119061.tif 000023
【図２２】
2020119061.tif 000024
【図２３】
2020119061.tif 000025
【図２４】
2020119061.tif 000026
【図２５】
2020119061.tif 000027