(57)【要約】      （修正有）【課題】計画担当者の持つ計画知識が定式化困難な場合にも、計画知識に沿った割り当て計画を立案する情報処理装置、情報処理方法、プログラムを提供する。【解決手段】制約条件に従い、割当対象物を割当先に割り当てる割当計画を作成し、作成された割当計画に対する変更指示または新たな割当対象物の割当指示を受け付け、受け付けた変更指示または新たな割当指示について、予め定められた候補のいずれに該当するかを特定する。そして、特定された指示内容との組を教師データとして抽出する。【選択図】図５
2018092255.tif 000002
【特許請求の範囲】
【請求項１】
制約条件に従い、割当対象物を割当先に割り当てる割当計画を作成する割当計画作成手段と、
前記割当計画作成手段により作成された割当計画に対する変更指示または新たな割当対象物の割当指示を受け付ける指示受付手段と、
前記指示受付手段により受け付けた変更指示または新たな割当指示について、予め定められた候補のいずれに該当するかを特定する指示内容特定手段と、
前記割当計画作成手段により作成された割当計画と前記指示内容特定手段により特定された指示内容との組を教師データとして抽出する教師データ抽出手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記割当計画作成手段により作成された割当計画を表示する表示手段をさらに備え、
前記指示受付手段は、前記割当計画作成手段により作成された割当計画が表示される画面において変更指示または割当指示を受け付けることを特徴とし、
前記表示手段は、さらに、前記割当計画に対して前記予め定められた候補を示す情報を付加して表示することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記教師データ抽出手段により抽出された教師データを学習することで、割当ルールを生成する割当ルール生成手段をさらに備え、
前記割当計画作成手段は、前記割当ルール生成手段により生成された割当ルールに基づき、割当計画の作成をすることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記変更指示または割当指示の内容と前記予め定められた候補との差分を、各候補について評価する評価手段をさらに備え、
前記指示内容特定手段は、前記評価手段による評価値が最も高い候補を、前記指示内容として特定することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
情報処理装置の割当計画作成手段が、制約条件に従い、割当対象物を割当先に割り当てる割当計画を作成する割当計画作成工程と、
前記情報処理装置の指示受付手段が、前記割当計画作成工程により作成された割当計画に対する変更指示または新たな割当対象物の割当指示を受け付ける指示受付工程と、
前記情報処理装置の指示内容特定手段が、前記指示受付工程により受け付けた変更指示または新たな割当指示について、予め定められた候補のいずれに該当するかを特定する指示内容特定工程と、
前記情報処理装置の教師データ抽出手段が、前記割当計画作成工程により作成された割当計画と前記指示内容特定工程により特定された指示内容との組を教師データとして抽出する教師データ抽出工程と、
を備えることを特徴とする情報処理方法。
【請求項６】
情報処理装置において実行可能なプログラムであって、
前記情報処理装置を、
制約条件に従い、割当対象物を割当先に割り当てる割当計画を作成する割当計画作成手段と、
前記割当計画作成手段により作成された割当計画に対する変更指示または新たな割当対象物の割当指示を受け付ける指示受付手段と、
前記指示受付手段により受け付けた変更指示または新たな割当指示について、予め定められた候補のいずれに該当するかを特定する指示内容特定手段と、
前記割当計画作成手段により作成された割当計画と前記指示内容特定手段により特定された指示内容との組を教師データとして抽出する教師データ抽出手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、プログラムに関する。
【背景技術】
【０００２】
取合せ計画や生産計画、配送計画をはじめとする割当計画では、割当対象物（注文、タスク、配送オーダ、etc.）を割当先（原反、機械、車両、etc.）への割当てる際の割当て方を決定する。
【０００３】
割当て方は、割当対象物と割当先の組合せや、配置、納期などの制約条件を充足し、かつ、歩留率、稼働率、積載率などの評価が良くなるように決定する。
【０００４】
割当計画を人手で行う場合、計画担当者が制約条件や評価を考慮して計画する。この制約条件や評価には、計画担当者が意識して考慮しているものと、無意識に考慮しているものがある。
【０００５】
一方、割当計画を自動で行う場合、計画担当者が有する制約条件や評価の知識を定式化する必要がある。
【０００６】
このうち計画担当者が意識している知識は、担当者からの聞き取りにより言語化することができる。しかしながら、「納期と効率を“うまく”バランスさせて計画する」など、言語化できても定式化が困難な知識が存在する。
【０００７】
さらに、計画担当者が意識していない知識は、自動計画のアルゴリズムを試作して割当計画結果を提示し、計画担当者の評価コメントからアルゴリズムを調整する、といった試行錯誤により言語化、定式化していく必要があるため、実装が困難な上に手間がかかる。
【０００８】
そこで、特許文献１には、割当計画のひとつである生産計画につき、機械学習を用いて最適な生産規則(ディスパッチングルール)を見出し、その生産規則に基づき生産計画を自動作成する手法が記載されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００４−９４９００号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上記特許文献１では、次に示す方法が開示されている。
【００１１】
まず、事前に決められた生産規則（ディスパッチングルール）に基づきシミュレーションを行う計画シミュレータを用意する。つぎに、様々な生産状況(生産工程/オーダー等)に対し、複数の生産規則に基づきシミュレーションし結果を得る。シミュレーション結果は、在庫量、機械稼働率など所与の評価指標に基づき評価する。各生産状況と最適(評価値最大)な生産規則の組合せを教師データとして蓄積する。蓄積した教師データを用いて、ニューラルネットワーク(NN)により学習することにより、生産状況をInput、最適な生産規則をOutputとするネットワークが出来上がる。
【００１２】
しかしながら、特許文献１の方法では、評価指標が所与である、すなわち、「最適」の判断基準が明確な場合しか使えないため、人の感覚に基づく「最適」のように定式化不可能な場合は利用できない。
【００１３】
さらに、決められた生産規則に基づきシミュレーションを行うため、シミュレーション途中の状態に依存して生産規則を動的に調整するようになっていないため、動的に生産規則を動的に調整していればより評価の高い結果が得られていた可能性を見逃している懸念がある。
【００１４】
そこで本発明は、計画担当者の持つ計画知識が定式化困難な場合にも、計画知識に沿った割り当て計画を立案することが可能な仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明の情報処理装置は、制約条件に従い、割当対象物を割当先に割り当てる割当計画を作成する割当計画作成手段と、前記割当計画作成手段により作成された割当計画に対する変更指示または新たな割当対象物の割当指示を受け付ける指示受付手段と、前記指示受付手段により受け付けた変更指示または新たな割当指示について、予め定められた候補のいずれに該当するかを特定する指示内容特定手段と、前記割当計画作成手段により作成された割当計画と前記指示内容特定手段により特定された指示内容との組を教師データとして抽出する教師データ抽出手段と、
を備えることを特徴とする。
【００１６】
また、本発明の情報処理方法は、情報処理装置の割当計画作成手段が、制約条件に従い、割当対象物を割当先に割り当てる割当計画を作成する割当計画作成工程と、前記情報処理装置の指示受付手段が、前記割当計画作成工程により作成された割当計画に対する変更指示または新たな割当対象物の割当指示を受け付ける指示受付工程と、前記情報処理装置の指示内容特定手段が、前記指示受付工程により受け付けた変更指示または新たな割当指示について、予め定められた候補のいずれに該当するかを特定する指示内容特定工程と、前記情報処理装置の教師データ抽出手段が、前記割当計画作成工程により作成された割当計画と前記指示内容特定工程により特定された指示内容との組を教師データとして抽出する教師データ抽出工程と、を備えることを特徴とする。
【００１７】
また、本発明のプログラムは、情報処理装置において実行可能なプログラムであって、前記情報処理装置を、制約条件に従い、割当対象物を割当先に割り当てる割当計画を作成する割当計画作成手段と、前記割当計画作成手段により作成された割当計画に対する変更指示または新たな割当対象物の割当指示を受け付ける指示受付手段と、前記指示受付手段により受け付けた変更指示または新たな割当指示について、予め定められた候補のいずれに該当するかを特定する指示内容特定手段と、前記割当計画作成手段により作成された割当計画と前記指示内容特定手段により特定された指示内容との組を教師データとして抽出する教師データ抽出手段として機能させるためのプログラム。
【発明の効果】
【００１８】
本発明によれば、計画担当者の持つ計画知識が定式化困難な場合にも、計画知識に沿った割り当て計画を立案することが可能となる。
【図面の簡単な説明】
【００１９】
【図１】本発明の１実施例である取合せ計画問題の概要を示す図面である。
【図２】本発明の割当計画システムの構成の一例を示すシステム構成図である。
【図３】図２に示した管理サーバ１０３、ないし、クライアント端末１０１に適用可能な情報処理装置のハードウェア構成を示すブロック図である。
【図４】図２に示した管理サーバ１０３、および、クライアント１０１の機能構成の一例を示す図である。
【図５】本発明における取合せ計画システムにおける教師データ抽出処理の概要を示すフローチャートである。
【図６】入力・表示制御部における、意思入れ入力の画面の一例を示す図である。
【図７】取合せ結果データに対する、部分割当候補を列挙した図である。
【図８】意思入れ結果データに対する、部分割当候補の評価の一例を示す図である。
【図９】本発明における取合せ計画システムにおける機械学習処理に用いるニューラルネットワークを示す図面である。
【図１０】本発明における取合せ計画システムにおける取合せ計画立案処理の概要を示すフローチャートである。
【図１１】図１０のステップＳ１０４部分割当評価処理の詳細を示すフローチャートである。
【図１２】部分割当候補の評価値を初期化した状態を示す図である。
【図１３】取合せ結果に対し、順位１位の部分割当候補に基づき仮割当てした状態を示す図である。
【図１４】評価値最高の部分割当候補に従い仮割り当てし、以降を割当シミュレーションした結果を示す図である。
【図１５】部分割当候補の評価値更新を示す図である。
【図１６】注文テーブルのデータ構成の一例を示す図である。
【図１７】原反テーブルのデータ構成の一例を示す図である。
【図１８】取合せ結果イメージと、取合せ結果テーブルのデータ構成の一例を示す図である。
【図１９】意思入れ結果テーブルのデータの一例を示す図である。
【図２０】教師データテーブルのデータ構成の一例を示す図である。
【発明を実施するための形態】
【００２０】
以下、図面を参照して、本発明の実施の形態の一例を説明する。
【００２１】
説明では、割当計画問題の１つである取合せ計画問題を題材とする。図１は、割当計画問題の１つである取合せ計画問題の概要を示す図である。
【００２２】
取合せ計画問題は、割当対象である注文を、割当先である原反に配置する問題である。配置は、制約条件を充足し、かつ、評価が良くなるように行う。制約条件には、注文と原反の組合せに関する制約（注文で指定した材質の原反に取り合せる、など）、注文の制約（全注文を取り合せる、など）、配置の制約（短辺方向に４注文以上配置できない、など）等、種々の制約が存在する。また、評価は、歩留率（原反面積に占める取合せた注文の総面積の比率）、段取替えの回数など、様々な評価軸が考えられる。なお、制約条件、評価のいずれにも、言語化できないもの、定式化できないものが存在しうる。
【００２３】
本実施例では取合せ計画問題を題材としているが、他の割当計画問題にも適用可能である。
【００２４】
図２は、本発明における割当計画システムのシステム構成の一例を示す図である。図中１０３の管理サーバは、本発明の情報処理装置として機能する装置であり、クライアント装置１０１、１０２からの割当計画作成指示を受け付けると、後述する割当計画作成処理を行う。１０１、１０２はクライアント装置であって、管理サーバ１０３に対して割当計画作成指示を行うためにユーザが用いる端末装置である。１０３は、管理サーバ１０３とクライアント装置１０１、１０２を相互に通信可能に接続するＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワークである。
【００２５】
次に、図３を参照して、図１の管理サーバ１０３に適用可能な情報処理装置のハードウ
ェア構成の一例を説明する。
【００２６】
ＣＰＵ２０１は、システムバス２０４に接続される後述の各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Basic Input / Output System）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００２７】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。また、入力コントローラ（入力Ｃ）２０５は、キーボード２０９や不図示のマウス等のポインティングデバイスからの入力を制御する。ビデオコントローラ（ＶＣ）２０６は、ディスプレイ装置２１０等の表示装置への表示を制御する。ディスプレイ装置は、例えばＣＲＴディスプレイや液晶ディスプレイ等である。これらは必要に応じて管理者が使用するものである。本発明には直接関係があるものではない。
【００２８】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフロッピー（登録商標）ディスク或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２９】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００３０】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ装置２１０上での表示を可能としている。また、ＣＰＵ２０１は、ディスプレイ装置２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００３１】
本発明の管理サーバの各種処理を実行するために用いられるプログラムは外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ２１１に格納されている。以上が、管理サーバ１０３に適用可能な情報処理装置のハードウェア構成の一例の説明である。
【００３２】
図４は、クライアント１０１、および、管理サーバ１０３の機能構成の一例を示す模式図である。図４に示すように、管理サーバ１０３は、データ管理部３０１、送信制御部３０２、受信制御部３０３、取合せ計画作成部３０４、教師データ抽出部３０５、機械学習部３０６を備えている。また、クライアント１０１は、送信制御部３１１、受信制御部３１２、入力・表示制御部３１３を備えている。
【００３３】
データ管理部３０１は、取合せ計画立案、教師データ抽出、機械学習に必要となるデータである、注文データ、原反データ、取合せ結果データ、意思入れ結果データ、教師データ、取合せルールデータをそれぞれ管理するためのデータテーブルである注文テーブル３０１−１、原反テーブル３０１−２、取合せ結果テーブル３０１−３、意思入れ結果テーブル３０１−４、教師データテーブル３０１−５、取合せルールテーブル３０１−６を管理する機能部である。これらデータテーブルの構成については、後述することにする。
【００３４】
送信制御部３０２は、データ管理部３０１で管理されているデータから必要なデータをクライアント１０１へ送信する機能部である。受信制御部３０３は、クライアント１０１から受信したデータをデータ管理部３０１に記憶する機能部である。
【００３５】
取合せ計画立案部３０４は、取合せルールテーブル３０１−６の取合せルール（制約条件）に従い、原反テーブル３０１−２の原反（割当先）に注文テーブル３０１−１の注文（割当対象）を取合せて取合せ計画（割当計画）を立案する機能部である。
【００３６】
教師データ抽出部３０５は、意思入れ結果テーブル３０１−４の意思入れ結果から、取合せルールとしてルール化したい割当て要素を教師データとして抽出する機能部である。機械学習部３０６は、教師データテーブル３０１−５の教師データに従って機械学習を行い取合せルールを得る機能部である。
【００３７】
送信制御部３１１は、入力・表示制御部３１３で入力されたデータから必要なデータをサーバ１０３へ送信する機能部である。受信制御部３１２は、サーバ１０３から受信したデータを入力・表示制御部３１３に受け渡す機能部である。入力・表示制御部３１３は、受信制御部３１２から受け渡される、取合せ結果を画面表示し、注文の割当、変更等の意思入れ入力を受け付けて結果を送信制御部３１１に受け渡す機能部である。
【００３８】
次に、図１６を参照して図４の注文テーブル３０１−１のデータ構成について説明する。図１６に示すように、注文テーブル３０１−１は、注文ＩＤ、長辺、短辺、注文数量、裁断納期というデータ項目を有して構成されている。
【００３９】
次に、図１７を参照して図４の原反テーブル３０１−２のデータ構成について説明する。図１７に示すように、原反テーブル３０１−２は、原反ＩＤ、長辺、短辺というデータ項目を有して構成されている。
【００４０】
次に、図１８を参照して図４の取合せ結果テーブル３０１−３のデータ構成について説明する。図１８に示すように、取合せ結果テーブル３０１−３は、取合せＩＤ、原反ＩＤ、部分割当Ｎｏ．、注文ＩＤ、長辺位置、短辺位置、長辺座標、短辺座標、というデータ項目を有して構成されている。
【００４１】
部分割当Ｎｏ．は、原反上に配置された注文を特定するための連番である。長辺位置、短辺位置は、部分割当候補配置条件に則した配置を示しており、配置済の部分割当または原反端に対してどのように接しているかを表す。部分割当候補配置条件については後述する。長辺座標、短辺座標は、原反の左上隅を０としたときの当該注文の左上隅座標を示す。
【００４２】
次に、図１９を参照して図４の意思入れ結果テーブル３０１−４のデータ構成について説明する。図１９に示すように、意思入れ結果テーブル３０１−４は、取合せ結果の１件の部分割当について、その一部の項目（注文ＩＤ、長辺座標、短辺座標）を有して構成されている。
以降に、各機能の詳細を処理の流れに沿って説明する。
【００４３】
図６を参照して、意思入れ入力の概要について説明する。意思入れ入力とは、取合せ結果データに対し人が注文の追加配置（新たな割当対象物の割当指示）、もしくは、配置変更（割当計画に対する変更指示）を行うことを指す。図６は、入力・表示制御部３１３における意思入れ入力画面の一例を示す図である。意思入れ入力画面には原反一覧、注文一覧、取合せ結果明細一覧、および、取合せ結果データの平面配置図が表示されている。
【００４４】
意思入れを行う場合、新たな注文を追加配置するケースでは、注文一覧から所望の注文を選択し、平面配置図の所望の位置に配置する。配置済みの注文を配置変更するケースでは、平面配置図上の部分割当の配置位置を変更する。
【００４５】
ここで、意思入れは手作業で行われるため、必ずしも部分割当候補配置条件（詳細は後述）に合致した位置とならないことに注意する。
【００４６】
図５を参照して、管理サーバ１０３のＣＰＵ２０１によって行われる教師データ抽出処理の概要について説明する。この処理をＣＰＵ２０１に行わせるためのコンピュータプログラムは、外部メモリ２１１に記憶されており、必要に応じてＣＰＵ２０１は当該コンピュータプログラムをＲＡＭ２０３にロードし、ロードしたコンピュータプログラムによる制御に従って、本処理を行うことになる。
【００４７】
まず、ＣＰＵ２０１は、データ管理部３０１で管理している教師データに用いる各種データ
【００４８】
を取得する（ステップＳ００１）。ここで取得するデータは、意思入れ結果テーブル３０１−４に記憶されている意思入れ結果データである。
【００４９】
ステップＳ００１で取得した各意思入れ結果データに対して、以降の処理（ステップＳ００３〜ステップＳ００７）を反復する（ステップＳ００２）。
【００５０】
反復処理にて、ＣＰＵ２０１は、まず、部分割当候補配置条件に合致する部分割当を列挙する（ステップＳ００３）。
【００５１】
ここで部分割当候補配置条件について説明する。部分割当候補配置条件とは、取合せ結果に対して部分割当を配置する位置を制限するための条件であり、取合せ計画立案にて部分割当を組合せて取合せ結果を構築する際に必要となる概念である。必要となる理由については後述する。
【００５２】
本実施例では、部分割当候補配置条件は、「長辺座標、短辺座標の両方が、配置済の部分割当または原反端に接する位置となる」と予め定めている。部分割当候補配置条件は、学習対象とする取合せルール、および、取合せ計画の立案アルゴリズムと整合するように設計することが肝要であり、本実施例においても然るべく設計している。
【００５３】
取合せ結果データに対し、部分割当候補配置条件に合致する部分割当候補を列挙したイメージを、図７に示す。
【００５４】
ステップＳ００３の部分割当候補列挙が終了後、各部分割当候補に対し意思入れ結果データとの差分を評価する（ステップＳ００４〜ステップＳ００６）。
【００５５】
差分評価の方法の一例として、部分割当候補と意思入れ結果データの配置位置間の距離を評価値として評価した例を図８に示す。
【００５６】
次に、評価最高の部分割当候補を教師データとする（ステップＳ００７）。すなわち、変更指示または割当指示の内容と前記予め定められた候補との差分を各候補について評価し、評価値が最も高い候補を指示内容として特定し、教師データとする。図８の例では、長辺位置を原反左端の右側、短辺位置を部分割当２の下側に接するように配置した場合に距離が最小(71.2)となるため、本部分割当候補を教師データとして抽出する。
【００５７】
教師データテーブル３０１−５のデータ構成は、図２０に示すように、教師データテーブル３０１−５は、割当状態と部分割当の組合せからなり、割当状態は取合せ結果データの情報を含むデータであり、部分割当は部分割当候補と同じデータ項目を有して構成されている。
【００５８】
全ての意思入れ結果データに対して反復実行が終了後（ステップＳ００８）、教師データを出力する（ステップＳ００９）。このステップでは、作成した教師データをサーバ１０３に対して出力（送信）する。そして、教師データを受信したサーバ１０３は教師データを教師データテーブル３０１−５に記憶することになる。以上が、図５の教師データ抽出処理の説明である。
【００５９】
次に図９を参照して、機械学習処理の概要について説明する。
【００６０】
本実施例における機械学習処理は、教師データから取合せルールを抽出する。ここで、教師データとは、「割当状態と、その割当状態に対し人が選択した部分割当の組」であり、学習の結果得られる取合せルールは、割当状態に対する、部分割当候補の尤度（選択確率）である。取合せルールのルール化対象を、取合せ結果全体ではなく、１つの部分割当とすることで、学習対象の変数（自由度）を減らすことで学習効率の向上を図ることができる。また、図５の教師データ抽出処理において、教師データを部分割当候補配置条件に合致するものに制限しているが、これも学習対象の変数（自由度）を減らすことに寄与している。本取合せルールを用いて取合せ計画を立案する手段については後述する。
【００６１】
なお、一般に機械学習は、データから反復的に学習し、そこに潜むパターンを見つけ出すことを指し、遺伝的アルゴリズム（ＧＡ）、サポートベクターマシン（ＳＶＭ）、ニューラルネットワーク（ＮＮ）など様々な技法が存在する。図９では技法としてＮＮを採用した場合のモデルの一例を示している。
【００６２】
次に、図１０を参照して、管理サーバ１０３のＣＰＵ２０１によって行われる取合せ計画立案処理の概要について説明する。この処理をＣＰＵ２０１に行わせるためのコンピュータプログラムは、外部メモリ２１１に記憶されており、必要に応じてＣＰＵ２０１は当該コンピュータプログラムをＲＡＭ２０３にロードし、ロードしたコンピュータプログラムによる制御に従って、本処理を行うことになる。
【００６３】
取合せ計画立案処理において、ＣＰＵ２０１は、まず、データ管理部３０１で管理している教師データに用いる各種データを取得する（ステップＳ１０１）ここで取得するデータは、注文テーブル３０１−１に記憶されている注文データ、原反テーブル３０１−２に記憶されている原反データ、取合せ結果テーブル３０１−３に記憶されている取合せ結果データ（途中経過）、取合せルールテーブル３０１−６に記憶されている取合せルールデータ、である。
【００６４】
ステップＳ１０１で取得したデータに対して、取合せが完了するまで、以降の処理（ステップＳ１０３〜ステップＳ１０６）を反復する（ステップＳ１０２）。
【００６５】
取合せの完了は、注文が全て割当済となる、原反の残スペースがなくなる、計算時間が所与の計算時間上限に到達する、などの条件により判定する。
【００６６】
反復において、ＣＰＵ２０１は、部分割当候補配置条件に合致するすべての部分割当候補に対し、部分割当評価を行う（ステップＳ１０３〜ステップＳ１０５）。部分割当評価の詳細については、図１１を参照して後述する。
【００６７】
次に、評価最高の部分割当候補に従い、割当（配置）を行う（ステップＳ１０６）。部分割当候補は、配置済の部分割当または原反端にどのように接するかの情報を有しているため、配置するべき位置（長辺座標、短辺座標）を特定することができる。
【００６８】
取合せ完了後（ステップＳ１０７）、取合せ結果データを出力する（ステップＳ１０８）。このステップでは、作成した取合せ結果データをサーバ１０３に対して出力（送信）する。そして、取合せ結果データを受信したサーバ１０３は、取合せ結果データを取合せ結果テーブル３０１−３に記憶することになる。以上が、図１０の取合せ計画立案処理の説明である。
【００６９】
次に図１１を参照して、図１０のステップＳ１０４の部分割当評価処理の詳細について説明する。この処理をＣＰＵ２０１に行わせるためのコンピュータプログラムは、外部メモリ２１１に記憶されており、必要に応じてＣＰＵ２０１は当該コンピュータプログラムをＲＡＭ２０３にロードし、ロードしたコンピュータプログラムによる制御に従って、本処理を行うことになる。
【００７０】
部分割当評価処理は、取合せ結果の途中状態に対して、最適な部分割当を得るための評価値を算出する。評価値の算出にあたっては、取合せルールテーブル３０１−６の取合せルールデータを利用する。取合せルールにより、割当状況（取合せ計画の途中状態を含む）に対し、部分割当の尤度を算出できる。しかしながら、あくまでも部分割当に対する局所評価であるため、尤度最高の部分割当にしたがって割当を繰り返したとて、最終的な取合せ結果が好適なものになるとは限らない。したがって、部分割当評価処理では、取合せルールデータを利用しつつ、割当を先読み評価することにより、最終的な取合せ結果を好適なものにする手法を取る。
【００７１】
部分割当評価処理において、ＣＰＵ２０１は、まず、部分割当候補の評価値を取合せルールによる評価で初期化する（ステップＳ２０１）
【００７２】
部分割当候補の評価値を取合せルールによる尤度に基づく評価で初期化した状態の例を、図１２に示す。取合せ結果明細は、取合せ計画の途中状態であり、原反に対して注文Ａ０１を２枚割当てた状態である。部分割当候補一覧は、当該の状態における部分割当候補の一覧であり、注文２枚、および、原反端に隣接する長辺位置・短辺位置が列挙されている。部分割当候補一覧の評価値には、取合せルールにより部分割当候補を評価した値が初期値として設定されている。また、仮割当てシミュレーション回数を０で初期化する。仮割当てシミュレーション回数の利用方法については後述する。
【００７３】
次に、所与の計算時間を超えるまで、以降の処理（ステップＳ２０３〜ステップＳ２０５）を反復する（ステップＳ２０２）。
【００７４】
反復処理にて、ＣＰＵ２０１は、まず、評価最高の部分割当候補に従い仮割当てを行う（ステップＳ２０３）。図１２の部分割当候補一覧においては、順位１の部分割当候補が評価値最高であり、それに基づき仮割当てを行う。仮割当て後の取合せ結果の途中状態を図１３に示す。
【００７５】
なお、反復の初回は仮割当てシミュレーション回数が全て０回のため、評価最高の部分割当候補を選択したが、初回以降は仮割当てシミュレーション回数をバイアス項として部分割当候補の選択基準に組入れ、仮割当ての回数が少ない部分割当候補を優先して選択するようにする。
【００７６】
バイアス項の組入れ方としては、ＵＣＢ１（Upper Confidence Bound）等が知られている。
【００７７】
次にステップＳ２０４では、仮割当てを行った取合せ結果の状態に対し、取合せが完了するまで仮割当てシミュレーションを行う。この仮割当てシミュレーションは、ステップＳ２０３で行った仮割当ての有効度合を測るために行うものであるため、高速に行うことが求められる。具体的な方法の一例として、取合せルールにより得られる選択確率に基づき部分割当を選択して仮割当て、これを繰り返して取合せ結果を作成する。仮割当てシミュレーションにより得られた取合せ結果の例を図１４に示す。
【００７８】
仮割当てシミュレーションにより作成した取合せ結果を評価し、その評価に基づきステップＳ２０３で選択した部分割当候補の評価値を更新する（ステップＳ２０５）。
【００７９】
仮割当てシミュレーション結果の評価は、歩留率などの定式化可能な評価軸を用いてもよいし、計画担当者による評価を蓄積して機械学習した結果に基づき評価してもよい。部分割当候補の評価値を更新した状態を図１５に示す。以上が、図１１の部分割当評価処理の説明である。
【００８０】
以上、実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００８１】
また、本発明におけるプログラムは、図５、図１０、図１１に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は図５、図１０、図１１の処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは図５、図１０、図１１の各装置の処理方法ごとのプログラムであってもよい。
【００８２】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【００８３】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【００８４】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることが出来る。
【００８５】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８６】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８７】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【００８８】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００８９】
１０１  管理サーバ
１０２、１０３  クライアント端末
【図１】
2018092255.tif 000003
【図２】
2018092255.tif 000004
【図３】
2018092255.tif 000005
【図４】
2018092255.tif 000006
【図５】
2018092255.tif 000007
【図６】
2018092255.tif 000008
【図７】
2018092255.tif 000009
【図８】
2018092255.tif 000010
【図９】
2018092255.tif 000011
【図１０】
2018092255.tif 000012
【図１１】
2018092255.tif 000013
【図１２】
2018092255.tif 000014
【図１３】
2018092255.tif 000015
【図１４】
2018092255.tif 000016
【図１５】
2018092255.tif 000017
【図１６】
2018092255.tif 000018
【図１７】
2018092255.tif 000019
【図１８】
2018092255.tif 000020
【図１９】
2018092255.tif 000021
【図２０】
2018092255.tif 000022