(57)【要約】      （修正有）【課題】ロット単位で製品を生産または処理するための計画を、立案精度を大きく落とすことなく、実用的な計算時間内で、より多くの製品がロットに含まれるように立案する。【解決手段】キャスト編成装置において、組込候補スラブグループ有無判定部１１０１は、第１の判定部２０６により収束判定条件を満たすと判定された際に導出されたキャスト片に含まれていないスラブグループと、当該キャスト片とから、組込候補スラブグループを抽出する。組込候補スラブグループ分解部１１０２は、組込候補スラブグループを組込候補スラブに分解する。第２のキャスト候補導出部１１０４は、組込候補スラブを、組込候補スラブグループとなっていないキャスト片に組み込んでキャスト候補とする。第２の最適化部１１０５は、最適なキャスト候補をキャスト片として導出する。第２のスラブグループ再定義部１１０７でキャスト片を更新する。【選択図】図１１
2018101389.tif 000002
【特許請求の範囲】
【請求項１】
複数の製品をロットの単位で纏めて生産または処理するための計画を作成する計画作成装置であって、
前記複数の製品の情報であって、前記製品の製造条件を含む製品情報を取得する取得手段と、
前記製品を同一のグループに含めることができる条件として前記取得手段により取得された前記製品情報に含まれる前記製品の製造条件を用いて表される同一グループ包含条件に基づいて前記複数の製品をグルーピングすることにより複数の製品グループを作成するグループ作成手段と、
前記グループ作成手段により作成された前記複数の製品グループの一部を選択する製品選択手段と、
前記製品選択手段により選択された前記製品グループの部分集合のうち、製品グループを同一のロットに含めることができる条件として前記製造条件を用いて表される同一ロット包含条件を満たす部分集合を第１のロット候補として導出する第１のロット候補導出手段と、
前記第１のロット候補導出手段により導出された前記第１のロット候補から最適ロットの候補である第１の最適ロット候補を、第１の制約式を満足する範囲で目的関数の値を最大または最小にする第１の最適化計算を行うことにより導出する第１の最適化手段と、
前記第１の最適化手段による前記第１の最適化計算の結果が収束したか否かを判定する第１の判定手段と、
前記第１の判定手段により前記第１の最適化計算の結果が収束していないと判定されると、前記第１の最適化手段により導出された前記第１の最適ロット候補に含まれる前記製品グループを１つの製品グループとして再定義する第１の再定義手段と、
前記第１の判定手段により前記第１の最適化手段による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化手段により導出された前記第１の最適ロット候補に含まれる前記製品グループを構成する前記製品と、該第１の最適ロット候補に含まれていない前記製品グループを構成する前記製品とから、該第１の最適ロット候補の所定の属性と閾値とを比較した結果と、該第１の最適ロット候補に含まれていない前記製品グループの所定の属性と前記閾値とを比較した結果とに基づいて、最適ロットの候補に更に組み込まれる候補となる製品である組込候補製品を抽出する組込候補製品抽出手段と、
前記組込候補製品抽出手段により抽出された前記組込候補製品の少なくとも１つを選択する組込候補製品選択手段と、
前記組込候補製品選択手段により選択された前記組込候補製品と、前記第１の判定手段により前記第１の最適化手段による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化手段により導出された前記第１の最適ロット候補のうち該組込候補製品を含まない第１の最適ロット候補との部分集合のうち、前記同一ロット包含条件を満たす部分集合を第２のロット候補として導出する第２のロット候補導出手段と、
前記第２のロット候補導出手段により導出された前記第２のロット候補から最適ロットの候補である第２の最適ロット候補を、第２の制約式を満足する範囲で目的関数の値を最大または最小にする第２の最適化計算を行うことにより導出する第２の最適化手段と、
前記第２の最適化手段による前記第２の最適化計算の結果が収束したか否かを判定する第２の判定手段と、
前記第２の判定手段により前記第２の最適化計算の結果が収束していないと判定されると、前記第２の最適化手段により導出された前記第２の最適ロット候補に含まれる前記製品グループを１つの製品グループとして再定義する第２の再定義手段と、
前記第２の判定手段により前記第２の最適化計算の結果が収束したと判定された際に前記第２の最適化手段により導出された前記第２の最適ロット候補を最適ロットとし、該最適ロットにどの前記製品が含まれるのかを示す情報を出力する出力手段と、を有し、
前記目的関数は、少なくとも前記ロットの数をロット候補導出評価指標として含む目的関数であり、
前記第１の制約式は、前記製品選択手段により選択された前記製品グループの数が、前記第１の最適ロット候補に含まれる前記製品グループの数と同じまたはそれ以上であり、且つ、同一の前記製品グループが異なる前記第１の最適ロット候補に含まれないことが定式化された式を含み、
前記第２の制約式は、前記第１の判定手段により前記第１の最適化手段による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化手段により導出された前記第１の最適ロット候補のうち、前記組込候補製品を含まない第１の最適ロット候補に含まれる前記製品グループの数が、前記第２の最適ロット候補に含まれる前記製品グループの数と同じまたはそれ以上であり、且つ、前記組込候補製品選択手段により選択された前記組込候補製品の数が、前記第２の最適ロット候補に含まれる前記組込候補製品の数と同じまたはそれ以上であり、且つ、同一の前記製品グループが異なる前記第２のロット候補に含まれないことが定式化された式を含み、
前記製品選択手段は、前記第１の再定義手段により前記製品グループが再定義された場合、前記第１の再定義手段により再定義された前記製品グループの全てと、未選択の前記製品グループのうちの一部の製品グループを選択し、
前記組込候補製品選択手段は、前記第２の再定義手段により前記製品グループが再定義された場合、未選択の前記組込候補製品を選択し、
前記組込候補製品抽出手段は、前記第１の最適化手段による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化手段により導出された前記第１の最適ロット候補の所定の属性と閾値とを比較した結果と、該第１の最適ロット候補に含まれていない前記製品グループの所定の属性と前記閾値とを比較した結果とに基づいて、前記組込候補製品を抽出し、
前記第１の再定義手段による前記製品グループの再定義と、前記製品選択手段による前記製品グループの選択と、前記第１のロット候補導出手段による前記第１のロット候補の導出と、前記第１の最適化手段による前記第１の最適化計算は、前記第１の判定手段により、前記第１の最適化手段による前記最適化計算の結果が収束したと判定するまで繰り返し行われ、
前記第２の再定義手段による前記製品グループの再定義と、前記組込候補製品選択手段による前記組込候補製品の選択と、前記第２のロット候補導出手段による前記第２のロット候補の導出と、前記第２の最適化手段による前記第２の最適化計算は、前記第２の判定手段により、前記第２の最適化手段による前記第２の最適化計算の結果が収束したと判定されるまで繰り返し行われることを特徴とする計画作成装置。
【請求項２】
前記グループ作成手段は、前記複数の製品グループを、前記取得手段により取得された前記製品情報に含まれる前記製品の製造条件に基づいて並び替え、
前記製品選択手段は、前記グループ作成手段により並び替えられた前記複数の製品グループの一部を、当該並び順において昇順または降順に、予め設定された数だけ選択することを特徴とする請求項１に記載の計画作成装置。
【請求項３】
前記グループ作成手段は、１つの前記製品グループに含まれる前記製品の数が予め指定される上限値を上回らないようにすることを特徴とする請求項１または２に記載の計画作成装置。
【請求項４】
前記製造条件には、前記製品の材質、サイズ、重量、および納期の少なくとも何れか１つが含まれ、
前記ロット候補導出評価指標は、前記製品の材質、サイズ、重量、および納期の少なくとも何れか１つを評価する評価指標をさらに含むことを特徴とする請求項１〜３の何れか１項に記載の計画作成装置。
【請求項５】
前記第１の判定手段は、前記第１の最適ロット候補に前記複数の製品のうち所定の割合以上の製品が含まれた場合と、前記第１の最適化計算により最大または最小にされた前記目的関数の前回の前記第１の最適化計算における値と今回の前記第１の最適化計算における値との差が所定値以下である場合とのうちの何れか１つの場合に、前記第１の最適化計算の結果が収束したと判定し、
前記第２の判定手段は、前記組込候補製品の全てについて、前記第２のロット候補導出手段による前記第２のロット候補の導出と、前記第２の最適化手段による前記第２の最適化計算とが行われた場合と、前記第２の最適ロット候補に前記複数の製品グループのうち所定の割合以上の製品グループが含まれた場合と、のうちの何れか１つの場合に、前記第２の最適化計算の結果が収束したと判定することを特徴とする請求項１〜４の何れか１項に記載の計画作成装置。
【請求項６】
前記同一ロット包含条件および前記同一グループ包含条件のうち少なくとも何れか一方の条件である制約・判定条件を満たさないことを示す制約違反情報を計算する計算手段を更に有し、
前記計算手段は、制約違反量および制約違反数の少なくとも何れか１つを、前記制約違反情報として計算し、
前記制約違反量は、前記組込候補製品を組込対象製品グループに組み込んだ場合の、定量化が可能な前記制約・判定条件の上限値または下限値からの外れ量を前記制約・判定条件ごとに表したものであり、
前記制約違反数は、前記組込候補製品と組込対象製品グループとの部分集合のうち、前記制約・判定条件を満たさない部分集合の数を前記制約・判定条件ごとに表したものであり、
前記組込対象製品グループは、前記第１の判定手段により前記第１の最適化手段による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化手段により導出された前記第１の最適ロット候補のうち該組込候補製品を含まない第１の最適ロット候補を構成する前記製品グループ、または、前記第２の再定義手段により１つの製品グループとして再定義された前記製品グループであり、
前記出力手段は、前記計算手段により前記制約違反情報が計算されると、前記最適ロットにどの前記製品が含まれるのかを示す情報に代えて、前記計算手段により計算された前記制約違反情報を出力することを特徴とする請求項１〜５の何れか１項に記載の計画作成装置。
【請求項７】
前記制約・判定条件は、前記同一ロット包含条件を含み、
前記出力手段により前記制約違反情報が出力された後に、前記同一ロット包含条件の上限値または下限値の修正値を入力する入力手段を更に有し、
前記入力手段により前記同一ロット包含条件の上限値または下限値の修正値が入力されると、当該修正値に基づいて、前記第１のロット候補導出手段による前記第１のロット候補の導出と、前記第１の最適化手段による前記第１の最適化計算と、前記第１の判定手段による判定と、前記第１の再定義手段による前記製品グループの再定義と、前記組込候補製品抽出手段による前記組込候補製品の抽出と、前記組込候補製品選択手段による前記組込候補製品の選択と、前記第２のロット候補導出手段による前記第２のロット候補の導出と、前記計算手段による前記制約違反情報の計算と、前記第２の最適化手段による前記第２の最適化計算と、前記第２の判定手段による判定と、前記第２の再定義手段による前記製品グループの再定義と、前記出力手段による出力とが行われることを特徴とする請求項６に記載の計画作成装置。
【請求項８】
前記制約・判定条件は、前記同一ロット包含条件に加えてまたは代えて前記同一グループ包含条件を含み、
前記入力手段は、前記同一ロット包含条件の上限値または下限値の修正値に加えてまたは代えて前記同一グループ包含条件の上限値または下限値の修正値を入力し、
前記入力手段により前記同一グループ包含条件の上限値または下限値の修正値が入力されると、当該修正値に基づいて、前記グループ作成手段による前記複数の製品グループの作成と、前記第１のロット候補導出手段による前記第１のロット候補の導出と、前記第１の最適化手段による前記第１の最適化計算と、前記第１の判定手段による判定と、前記第１の再定義手段による前記製品グループの再定義と、前記組込候補製品抽出手段による前記組込候補製品の抽出と、前記組込候補製品選択手段による前記組込候補製品の選択と、前記第２のロット候補導出手段による前記第２のロット候補の導出と、前記計算手段による前記制約違反情報の計算と、前記第２の最適化手段による前記第２の最適化計算と、前記第２の判定手段による判定と、前記第２の再定義手段による前記製品グループの再定義と、前記出力手段による出力とが行われることを特徴とする請求項７に記載の計画作成装置。
【請求項９】
前記出力手段は、前記組込候補製品と、前記組込対象製品グループとの部分集合のうち、前記同一ロット包含条件を満たす部分集合がある場合、当該組込候補製品と当該同一ロット包含条件を満たす部分集合を構成する組込対象製品グループ以外の組込対象製品グループと、当該組込候補製品との部分集合に基づく前記制約違反情報を出力しないことを特徴とする請求項６〜８の何れか１項に記載の計画作成装置。
【請求項１０】
前記出力手段は、前記制約違反情報をグラフまたは表として出力することを特徴とする請求項６〜９の何れか１項に記載の計画作成装置。
【請求項１１】
前記所定の属性は、製品数、重量、またはサイズであることを特徴とする請求項１〜１０の何れか１項に記載の計画作成装置。
【請求項１２】
前記組込候補製品選択手段は、未選択の前記組込候補製品の重量、サイズ、または納期に基づいて、該未選択の前記組込候補製品を選択することを特徴とする請求項１〜１１の何れか１項に記載の計画作成装置。
【請求項１３】
前記組込候補製品選択手段は、未選択の前記組込候補製品の１つまたは複数を同時に選択することを特徴とする請求項１〜１２の何れか１項に記載の計画作成装置。
【請求項１４】
前記製品は、連続鋳造機で鋳造されるスラブであり、
前記ロットは、連続して鋳造する複数のチャージのまとまりであるキャストであり、
前記計画は、前記スラブが属する前記キャストを示すキャスト計画であることを特徴とする請求項１〜１３の何れか１項に記載の計画作成装置。
【請求項１５】
前記同一ロット包含条件は、前記スラブの総重量が予め指定される上限値を超えていないこと、前記スラブを圧延することにより製造されるコイルの長さの和が予め指定される上限値を超えていないこと、前記スラブを圧延順に並び替えた場合に相前後する前記スラブの幅の差が予め指定される上限値以下であること、および、幅の差が一定値以下のスラブの枚数が予め指定される上限値以下であることの少なくとも何れか１つを含むことを特徴とする請求項１４に記載の計画作成装置。
【請求項１６】
複数の製品をロットの単位で纏めて生産または処理するための計画を作成する計画作成方法であって、
前記複数の製品の情報であって、前記製品の製造条件を含む製品情報を取得する取得工程と、
前記製品を同一のグループに含めることができる条件として前記取得工程により取得された前記製品情報に含まれる前記製品の製造条件を用いて表される同一グループ包含条件に基づいて前記複数の製品をグルーピングすることにより複数の製品グループを作成するグループ作成工程と、
前記グループ作成工程により作成された前記複数の製品グループの一部を選択する製品選択工程と、
前記製品選択工程により選択された前記製品グループの部分集合のうち、製品グループを同一のロットに含めることができる条件として前記製造条件を用いて表される同一ロット包含条件を満たす部分集合を第１のロット候補として導出する第１のロット候補導出工程と、
前記第１のロット候補導出工程により導出された前記第１のロット候補から最適ロットの候補である第１の最適ロット候補を、第１の制約式を満足する範囲で目的関数の値を最大または最小にする第１の最適化計算を行うことにより導出する第１の最適化工程と、
前記第１の最適化工程による前記第１の最適化計算の結果が収束したか否かを判定する第１の判定工程と、
前記第１の判定工程により前記第１の最適化計算の結果が収束していないと判定されると、前記第１の最適化工程により導出された前記第１の最適ロット候補に含まれる前記製品グループを１つの製品グループとして再定義する第１の再定義工程と、
前記第１の判定工程により前記第１の最適化工程による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化工程により導出された前記第１の最適ロット候補に含まれる前記製品グループを構成する前記製品と、該第１の最適ロット候補に含まれていない前記製品グループを構成する前記製品とから、該第１の最適ロット候補の所定の属性と閾値とを比較した結果と、該第１の最適ロット候補に含まれていない前記製品グループの所定の属性と前記閾値とを比較した結果とに基づいて、最適ロットの候補に更に組み込まれる候補となる製品である組込候補製品を抽出する組込候補製品抽出工程と、
前記組込候補製品抽出工程により抽出された前記組込候補製品の少なくとも１つを選択する組込候補製品選択工程と、
前記組込候補製品選択工程により選択された前記組込候補製品と、前記第１の判定工程により前記第１の最適化工程による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化工程により導出された前記第１の最適ロット候補のうち該組込候補製品を含まない第１の最適ロット候補との部分集合のうち、前記同一ロット包含条件を満たす部分集合を第２のロット候補として導出する第２のロット候補導出工程と、
前記第２のロット候補導出工程により導出された前記第２のロット候補から最適ロットの候補である第２の最適ロット候補を、第２の制約式を満足する範囲で目的関数の値を最大または最小にする第２の最適化計算を行うことにより導出する第２の最適化工程と、
前記第２の最適化工程による前記第２の最適化計算の結果が収束したか否かを判定する第２の判定工程と、
前記第２の判定工程により前記第２の最適化計算の結果が収束していないと判定されると、前記第２の最適化工程により導出された前記第２の最適ロット候補に含まれる前記製品グループを１つの製品グループとして再定義する第２の再定義工程と、
前記第２の判定工程により前記第２の最適化計算の結果が収束したと判定された際に前記第２の最適化工程により導出された前記第２の最適ロット候補を最適ロットとし、該最適ロットにどの前記製品が含まれるのかを示す情報を出力する出力工程と、を有し、
前記目的関数は、少なくとも前記ロットの数をロット候補導出評価指標として含む目的関数であり、
前記第１の制約式は、前記第１の最適ロット候補に含まれる前記製品グループの数と、前記製品選択工程により選択された前記製品グループの数とが同じであり、且つ、同一の前記製品グループが異なる前記第１の最適ロット候補に含まれないことが定式化された式を含み、
前記第２の制約式は、前記第２の最適ロット候補に含まれる前記製品グループの数と、前記第１の判定工程により前記第１の最適化工程による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化工程により導出された前記第１の最適ロット候補に含まれる前記製品の数とが同じであり、且つ、同一の前記製品グループが異なる前記第２のロット候補に含まれないことが定式化された式を含み、
前記製品選択工程は、前記第１の再定義工程により前記製品グループが再定義された場合、前記第１の再定義工程により再定義された前記製品グループの全てと、未選択の前記製品グループのうちの一部の製品グループを選択し、
前記組込候補製品選択工程は、前記第２の再定義工程により前記製品グループが再定義された場合、未選択の前記組込候補製品を選択し、
前記組込候補製品抽出工程は、前記第１の最適化工程による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化工程により導出された前記第１の最適ロット候補の所定の属性と閾値とを比較した結果と、該第１の最適ロット候補に含まれていない前記製品グループの所定の属性と前記閾値とを比較した結果とに基づいて、前記組込候補製品を抽出し、
前記第１の再定義工程による前記製品グループの再定義と、前記製品選択工程による前記製品グループの選択と、前記第１のロット候補導出工程による前記第１のロット候補の導出と、前記第１の最適化工程による前記第１の最適化計算は、前記第１の判定工程により、前記第１の最適化工程による前記最適化計算の結果が収束したと判定するまで繰り返し行われ、
前記第２の再定義工程による前記製品グループの再定義と、前記組込候補製品選択工程による前記組込候補製品の選択と、前記第２のロット候補導出工程による前記第２のロット候補の導出と、前記第２の最適化工程による前記第２の最適化計算は、前記第２の判定工程により、前記第２の最適化工程による前記第２の最適化計算の結果が収束したと判定されるまで繰り返し行われることを特徴とする計画作成方法。
【請求項１７】
請求項１〜１５の何れか１項に記載の計画作成装置の各手段としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計画作成装置、計画作成方法、およびプログラムに関し、特に、ロットに複数の製品を纏めてロット単位で複数の製品を生産または処理するために用いて好適なものである。
【背景技術】
【０００２】
製造業において製品の生産計画を立案する場合には、複数の製品を適切な規模で適切な数のロットに纏めてロット単位で製造するように生産計画を立案することが多い。
ここで、複数の製品をロットに纏めて製造する場合の一例として、製鋼工場で連続鋳造を行う場合について説明する。
【０００３】
製鋼工場では、高炉から供給された溶銑を転炉に装入して、酸素を吹き付けることで溶銑中の炭素を取り除き溶鋼を製造する。これを一次精錬と呼ぶ。次に、溶鋼は取鍋と呼ばれる容器に注入され二次精錬工程へ搬送される。この取鍋一杯分の溶鋼をチャージと呼ぶ。二次精錬工程として例えばＲＨ（Ruhrstahl Heraeus）工程があり、真空管中に溶鋼を循環させることで溶鋼中の不純なガスを真空中に除去して溶鋼の成分を調整する。二次精錬工程が終了すると、取鍋は連続鋳造機へと搬送される。連続鋳造機では、取鍋から鋳型へ溶鋼を注入すると同時に冷却することで半製品である鋳片を製造する。連続鋳造機では、複数のチャージを連続して鋳造することが可能であり、連続して鋳造する複数のチャージのまとまりをキャストと呼ぶ。また、複数のチャージの溶鋼を連続して鋳造することを連々鋳と呼ぶ。この連々鋳の回数を多くし過ぎると、連続鋳造機の構成部材（タンディッシュや鋳型の耐火物、浸漬ノズルなど）の溶損が生じるため、品種などで異なる溶損具合に応じて連々鋳を実施するチャージ数を適切に定めなければならない。
【０００４】
連続鋳造機において製造された鋳片はスラブと呼ばれ、圧延工程へ搬送される。圧延工程においてスラブは加熱炉によって再加熱され高温の状態で圧延機によって数ミリ単位の薄さまで圧延されコイル状に巻き取られる。スラブの形状や硬さによって、圧延機で連続して圧延できるスラブ枚数に制限がある。圧延機で連続して圧延されるスラブのまとまりをチャンスと呼ぶ。
各スラブには、注文情報から成分、形状、熱延希望日などの情報が付与されていて、製鋼工程および圧延工程における制約条件を考慮して、キャストやチャンスといったロットが編成される。
【０００５】
また近年、製鋼工程のロットであるキャストを圧延工程のロットであるチャンスと同じにすることで、リードタイムの短縮化、および熱ロスの低減化の試みがされている。このような操業を行う場合においては、製鋼工程および圧延工程における制約条件を同時に満足するキャスト編成（各キャストに含めるスラブ）を決定する必要がある。
【０００６】
キャスト編成においては、キャスト内に多数のスラブを取り込んで大ロット化することにより、鋳造の連々回数を増加させ、連々鋳の開始および終了時におけるスラブ不良部の低減や再鋳造開始にかかる準備時間の低減による生産量の増加が期待できる。一方で、成分、形状、および熱延希望日などの条件によって同一キャスト内に取り込むことが可能なスラブには制限がある。このため、制約条件を満たす範囲において可能な限り大ロットとなるキャスト編成を行うことが求められる。
【０００７】
キャスト編成の業務では、一般に、数百または千といった数のスラブを取り扱うため、スラブの組み合わせ数が多くなる。したがって、計画担当者が全ての制約条件を充足するキャスト編成を行うめには長時間を有する作業となる。
そこで、キャスト編成を自動で行う技術として特許文献１に記載の技術がある。
特許文献１には、各チャージを節点で表現すると共に、抱き合わせて鋳造可能なチャージ間を有向枝で表現したネットワークを作成し、最長のキャストとなるルートを前記ネットワーク上で探索することが開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１２−１１４５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１に記載の技術では、スラブをチャージに纏める方法に関しての説明がなく、与えられたチャージの情報に基づいてキャスト編成を行うことになる。したがって、チャージが適切に編成されていなければ最適なキャスト編成の結果が得られない虞がある。前述したようにスラブの組み合わせが多いため、特許文献１に記載の技術においてチャージを適切にキャストに含めようとすると、問題規模が大きくなり過ぎ、計算時間が長くなる虞がある。
【００１０】
以上のように従来の技術では、キャスト（ロット）に複数のスラブ（製品）を纏めてキャスト（ロット）単位でスラブ（製品）を鋳造（生産）するための鋳造（生産）計画を、立案結果の精度を大きく落とすことなく実用的な計算時間で立案することが容易でなかった。また、キャスト（ロット）に複数のスラブ（製品）を纏める際には、多くのスラブ（製品）がキャスト（ロット）に含まれるようにすることが求められる。
本発明は、以上のような問題点に鑑みてなされたものであり、ロット単位で製品を生産または処理するための計画を、立案精度を大きく落とすことなく、実用的な計算時間内で、より多くの製品がロットに含まれるように立案できるようにすることを目的とする。
【課題を解決するための手段】
【００１１】
本発明の計画作成装置は、複数の製品をロットの単位で纏めて生産または処理するための計画を作成する計画作成装置であって、前記複数の製品の情報であって、前記製品の製造条件を含む製品情報を取得する取得手段と、前記製品を同一のグループに含めることができる条件として前記取得手段により取得された前記製品情報に含まれる前記製品の製造条件を用いて表される同一グループ包含条件に基づいて前記複数の製品をグルーピングすることにより複数の製品グループを作成するグループ作成手段と、前記グループ作成手段により作成された前記複数の製品グループの一部を選択する製品選択手段と、前記製品選択手段により選択された前記製品グループの部分集合のうち、製品グループを同一のロットに含めることができる条件として前記製造条件を用いて表される同一ロット包含条件を満たす部分集合を第１のロット候補として導出する第１のロット候補導出手段と、前記第１のロット候補導出手段により導出された前記第１のロット候補から最適ロットの候補である第１の最適ロット候補を、第１の制約式を満足する範囲で目的関数の値を最大または最小にする第１の最適化計算を行うことにより導出する第１の最適化手段と、前記第１の最適化手段による前記第１の最適化計算の結果が収束したか否かを判定する第１の判定手段と、前記第１の判定手段により前記第１の最適化計算の結果が収束していないと判定されると、前記第１の最適化手段により導出された前記第１の最適ロット候補に含まれる前記製品グループを１つの製品グループとして再定義する第１の再定義手段と、前記第１の判定手段により前記第１の最適化手段による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化手段により導出された前記第１の最適ロット候補に含まれる前記製品グループを構成する前記製品と、該第１の最適ロット候補に含まれていない前記製品グループを構成する前記製品とから、該第１の最適ロット候補の所定の属性と閾値とを比較した結果と、該第１の最適ロット候補に含まれていない前記製品グループの所定の属性と前記閾値とを比較した結果とに基づいて、最適ロットの候補に更に組み込まれる候補となる製品である組込候補製品を抽出する組込候補製品抽出手段と、前記組込候補製品抽出手段により抽出された前記組込候補製品の少なくとも１つを選択する組込候補製品選択手段と、前記組込候補製品選択手段により選択された前記組込候補製品と、前記第１の判定手段により前記第１の最適化手段による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化手段により導出された前記第１の最適ロット候補のうち該組込候補製品を含まない第１の最適ロット候補との部分集合のうち、前記同一ロット包含条件を満たす部分集合を第２のロット候補として導出する第２のロット候補導出手段と、前記第２のロット候補導出手段により導出された前記第２のロット候補から最適ロットの候補である第２の最適ロット候補を、第２の制約式を満足する範囲で目的関数の値を最大または最小にする第２の最適化計算を行うことにより導出する第２の最適化手段と、前記第２の最適化手段による前記第２の最適化計算の結果が収束したか否かを判定する第２の判定手段と、前記第２の判定手段により前記第２の最適化計算の結果が収束していないと判定されると、前記第２の最適化手段により導出された前記第２の最適ロット候補に含まれる前記製品グループを１つの製品グループとして再定義する第２の再定義手段と、前記第２の判定手段により前記第２の最適化計算の結果が収束したと判定された際に前記第２の最適化手段により導出された前記第２の最適ロット候補を最適ロットとし、該最適ロットにどの前記製品が含まれるのかを示す情報を出力する出力手段と、を有し、前記目的関数は、少なくとも前記ロットの数をロット候補導出評価指標として含む目的関数であり、前記第１の制約式は、前記第１の最適ロット候補に含まれる前記製品グループの数と、前記製品選択手段により選択された前記製品グループの数とが同じであり、且つ、同一の前記製品グループが異なる前記第１の最適ロット候補に含まれないことが定式化された式を含み、前記第２の制約式は、前記第２の最適ロット候補に含まれる前記製品グループの数と、前記第１の判定手段により前記第１の最適化手段による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化手段により導出された前記第１の最適ロット候補に含まれる前記製品の数とが同じであり、且つ、同一の前記製品グループが異なる前記第２のロット候補に含まれないことが定式化された式を含み、前記製品選択手段は、前記第１の再定義手段により前記製品グループが再定義された場合、前記第１の再定義手段により再定義された前記製品グループの全てと、未選択の前記製品グループのうちの一部の製品グループを選択し、前記組込候補製品選択手段は、前記第２の再定義手段により前記製品グループが再定義された場合、未選択の前記組込候補製品を選択し、前記組込候補製品抽出手段は、前記第１の最適化手段による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化手段により導出された前記第１の最適ロット候補の所定の属性と閾値とを比較した結果と、該第１の最適ロット候補に含まれていない前記製品グループの所定の属性と前記閾値とを比較した結果とに基づいて、前記組込候補製品を抽出し、前記第１の再定義手段による前記製品グループの再定義と、前記製品選択手段による前記製品グループの選択と、前記第１のロット候補導出手段による前記第１のロット候補の導出と、前記第１の最適化手段による前記第１の最適化計算は、前記第１の判定手段により、前記第１の最適化手段による前記最適化計算の結果が収束したと判定するまで繰り返し行われ、前記第２の再定義手段による前記製品グループの再定義と、前記組込候補製品選択手段による前記組込候補製品の選択と、前記第２のロット候補導出手段による前記第２のロット候補の導出と、前記第２の最適化手段による前記第２の最適化計算は、前記第２の判定手段により、前記第２の最適化手段による前記第２の最適化計算の結果が収束したと判定されるまで繰り返し行われることを特徴とする。
【００１２】
本発明の計画作成方法は、複数の製品をロットの単位で纏めて生産または処理するための計画を作成する計画作成方法であって、前記複数の製品の情報であって、前記製品の製造条件を含む製品情報を取得する取得工程と、前記製品を同一のグループに含めることができる条件として前記取得工程により取得された前記製品情報に含まれる前記製品の製造条件を用いて表される同一グループ包含条件に基づいて前記複数の製品をグルーピングすることにより複数の製品グループを作成するグループ作成工程と、前記グループ作成工程により作成された前記複数の製品グループの一部を選択する製品選択工程と、前記製品選択工程により選択された前記製品グループの部分集合のうち、製品グループを同一のロットに含めることができる条件として前記製造条件を用いて表される同一ロット包含条件を満たす部分集合を第１のロット候補として導出する第１のロット候補導出工程と、前記第１のロット候補導出工程により導出された前記第１のロット候補から最適ロットの候補である第１の最適ロット候補を、第１の制約式を満足する範囲で目的関数の値を最大または最小にする第１の最適化計算を行うことにより導出する第１の最適化工程と、前記第１の最適化工程による前記第１の最適化計算の結果が収束したか否かを判定する第１の判定工程と、前記第１の判定工程により前記第１の最適化計算の結果が収束していないと判定されると、前記第１の最適化工程により導出された前記第１の最適ロット候補に含まれる前記製品グループを１つの製品グループとして再定義する第１の再定義工程と、前記第１の判定工程により前記第１の最適化工程による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化工程により導出された前記第１の最適ロット候補に含まれる前記製品グループを構成する前記製品と、該第１の最適ロット候補に含まれていない前記製品グループを構成する前記製品とから、該第１の最適ロット候補の所定の属性と閾値とを比較した結果と、該第１の最適ロット候補に含まれていない前記製品グループの所定の属性と前記閾値とを比較した結果とに基づいて、最適ロットの候補に更に組み込まれる候補となる製品である組込候補製品を抽出する組込候補製品抽出工程と、前記組込候補製品抽出工程により抽出された前記組込候補製品の少なくとも１つを選択する組込候補製品選択工程と、前記組込候補製品選択工程により選択された前記組込候補製品と、前記第１の判定工程により前記第１の最適化工程による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化工程により導出された前記第１の最適ロット候補のうち該組込候補製品を含まない第１の最適ロット候補との部分集合のうち、前記同一ロット包含条件を満たす部分集合を第２のロット候補として導出する第２のロット候補導出工程と、前記第２のロット候補導出工程により導出された前記第２のロット候補から最適ロットの候補である第２の最適ロット候補を、第２の制約式を満足する範囲で目的関数の値を最大または最小にする第２の最適化計算を行うことにより導出する第２の最適化工程と、前記第２の最適化工程による前記第２の最適化計算の結果が収束したか否かを判定する第２の判定工程と、前記第２の判定工程により前記第２の最適化計算の結果が収束していないと判定されると、前記第２の最適化工程により導出された前記第２の最適ロット候補に含まれる前記製品グループを１つの製品グループとして再定義する第２の再定義工程と、前記第２の判定工程により前記第２の最適化計算の結果が収束したと判定された際に前記第２の最適化工程により導出された前記第２の最適ロット候補を最適ロットとし、該最適ロットにどの前記製品が含まれるのかを示す情報を出力する出力工程と、を有し、前記目的関数は、少なくとも前記ロットの数をロット候補導出評価指標として含む目的関数であり、前記第１の制約式は、前記第１の最適ロット候補に含まれる前記製品グループの数と、前記製品選択工程により選択された前記製品グループの数とが同じであり、且つ、同一の前記製品グループが異なる前記第１の最適ロット候補に含まれないことが定式化された式を含み、前記第２の制約式は、前記第２の最適ロット候補に含まれる前記製品グループの数と、前記第１の判定工程により前記第１の最適化工程による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化工程により導出された前記第１の最適ロット候補に含まれる前記製品の数とが同じであり、且つ、同一の前記製品グループが異なる前記第２のロット候補に含まれないことが定式化された式を含み、前記製品選択工程は、前記第１の再定義工程により前記製品グループが再定義された場合、前記第１の再定義工程により再定義された前記製品グループの全てと、未選択の前記製品グループのうちの一部の製品グループを選択し、前記組込候補製品選択工程は、前記第２の再定義工程により前記製品グループが再定義された場合、未選択の前記組込候補製品を選択し、前記組込候補製品抽出工程は、前記第１の最適化工程による前記第１の最適化計算の結果が収束したと判定された際に前記第１の最適化工程により導出された前記第１の最適ロット候補の所定の属性と閾値とを比較した結果と、該第１の最適ロット候補に含まれていない前記製品グループの所定の属性と前記閾値とを比較した結果とに基づいて、前記組込候補製品を抽出し、前記第１の再定義工程による前記製品グループの再定義と、前記製品選択工程による前記製品グループの選択と、前記第１のロット候補導出工程による前記第１のロット候補の導出と、前記第１の最適化工程による前記第１の最適化計算は、前記第１の判定工程により、前記第１の最適化工程による前記最適化計算の結果が収束したと判定するまで繰り返し行われ、前記第２の再定義工程による前記製品グループの再定義と、前記組込候補製品選択工程による前記組込候補製品の選択と、前記第２のロット候補導出工程による前記第２のロット候補の導出と、前記第２の最適化工程による前記第２の最適化計算は、前記第２の判定工程により、前記第２の最適化工程による前記第２の最適化計算の結果が収束したと判定されるまで繰り返し行われることを特徴とする。
【００１３】
本発明のプログラムは、前記計画作成装置の各手段としてコンピュータを機能させることを特徴とする。
【発明の効果】
【００１４】
本発明によれば、ロット単位で製品を生産または処理するための計画を、立案精度を大きく落とすことなく、実用的な計算時間内で、より多くの製品がロットに含まれるように立案することができる。
【図面の簡単な説明】
【００１５】
【図１】キャスト計画を作成する手法の概要の一例を説明する図である。
【図２】前提形態におけるキャスト編成装置の機能的な構成の一例を示す図である。
【図３】スラブ情報の第１の例を示す図である。
【図４】並び替え後のスラブ情報の一例を示す図である。
【図５】スラブグループ情報の一例を示す図である。
【図６】並び替え後のスラブグループ情報の一例を示す図である。
【図７】集合分割問題を解く方法の一例を概念的に示す図である。
【図８】行列を概念的に説明する図である。
【図９】再定義後のスラブグループ情報の一例を示す図である。
【図１０】キャスト片（再定義されたスラブグループ）に取り込めないスラブグループの一例を概念的に示す図である。
【図１１】キャスト編成装置の機能的な構成の第１の例を示す図である。
【図１２】組込候補スラブグループの一例を概念的に示す図である。
【図１３−１】計画作成方法の第１の例を説明するフローチャートである。
【図１３−２】図１３−１に続くフローチャートである。
【図１４】ステップＳ１３０２の処理の一例を説明するフローチャートである。
【図１５】キャスト計画の立案結果の一例を表形式で示す図である。
【図１６】キャスト編成装置の機能的な構成の第２の例を示す図である。
【図１７】制約違反量の計算、記憶、破棄の方法の一例を概念的に示す図である。
【図１８】キャスト重量についての制約違反量の一例を示す図である。
【図１９】キャスト重量についての制約違反量をボックスプロットで示す図である。
【図２０】各制約条件の上限値と組余り数とを表形式で示す図である。
【図２１】１回目の計算の結果から得られる各制約条件の制約違反量をボックスプロットで表した図である。
【図２２】２回目の計算の結果から得られる各制約条件の制約違反量をボックスプロットで表した図である。
【図２３】３回目の計算の結果から得られる各制約条件の制約違反量をボックスプロットで表した図である。
【図２４−１】計画作成方法の第２の例を説明するフローチャートである。
【図２４−２】図２４−１に続くフローチャートである。
【発明を実施するための形態】
【００１６】
［前提形態］
本発明者らは、特願２０１６−１０４５４３号において特許文献１に記載の技術に対し、立案精度を大きく落とすことなく、短時間でキャスト計画を立案することができる技術を提案している。本発明の実施形態は、この特願２０１６−１０４５４３号に記載の技術を前提とする技術である。そこで、本発明の実施形態の説明の前に、特願２０１６−１０４５４３号に記載の技術のうち、本発明の実施形態の前提となる技術を前提形態として説明する。
【００１７】
以下では、生産計画として、連続鋳造機におけるキャスト計画を作成する（即ちキャスト編成を行う）場合を例に挙げて説明する。この場合、「スラブ」が「製品」に対応し、「キャスト」が「ロット」に対応し、「鋳造」が「製造」に対応する。また、「製品」は、原料に手が加えられた物を指し、市場に出回る最終製品等に限定されるものではない。例えば、中間製品（半製品）も「製品」に含まれる。
【００１８】
（概要）
前提形態の概要について説明する。
図１は、前提形態におけるキャスト計画を作成する手法の概要の一例を説明する図である。
立案対象期間に製造予定の複数のスラブのそれぞれには、当該スラブの製造条件を含むスラブ情報が紐付けられている。このスラブ情報に基づいて、製造条件が所定の範囲内で一致するスラブが同一のスラブグループに属するように、複数のスラブのそれぞれをグルーピングする。
【００１９】
図１では、このようにして得られたスラブグループを識別するスラブグループＮｏ．と、当該スラブグループＮｏ．のスラブグループに属するスラブの枚数（スラブ枚数）と、当該スラブグループＮｏ．のスラブグループに属するスラブの製造条件の１つとして与えられている熱延希望日のうち最も早い日（最早日）とを示す。連続鋳造機で製造されたスラブはヤードに置かれた後、次工程の熱延工程で熱間圧延される。この熱間圧延を行う日として工場側が希望する日が熱延希望日になる。すなわち、熱延希望日は、熱延工場に対するスラブの納期である。熱延希望日は、例えば、熱間圧延により得られた熱延鋼板を巻き取ることにより得られるコイルの客先に対する納期や熱延ラインの設備の稼働状況などに基づいて設定される。
【００２０】
図１に示す例では、スラブグループは、熱延希望日（最早日）が早いものから順に並び替えられる。尚、図１では、説明の都合上、熱延希望日（最早日）が早いものから順にスラブグループを並べた場合の並び順とスラブグループＮｏ．とを同じにしている。
次に、複数のスラブグループの一部を選択し、選択したスラブグループの部分集合を作成する。図１に示す例では、２７個のスラブグループの中から１０個のスラブグループを熱延希望日（最早日）が早いものから選択し、これら１０個のスラブグループの部分集合を作成する。これらの部分集合のそれぞれについて、同一のキャストで製造することが可能な条件（制約条件）を満たすか否かを判定し、この条件を満たす部分集合をキャスト候補とする。
【００２１】
次に、キャスト候補の中から最適なキャスト候補の組み合わせを、最適化問題を解くことにより導出する。最適化問題の詳細については後述する。以下の説明では、このようにして得られた最適なキャスト候補を必要に応じて「キャスト片」と称する。
図１では、このような最適化問題の計算の結果（「１回目の分割最適化」の結果）、キャスト片１０１ａ〜１０１ｄが得られたことを示す。図１において、キャスト片１０１ａ〜１０１ｒに示されている１つの四角形は、当該キャスト片を構成するスラブグループを示し、当該四角形内の数字は、当該スラブグループのスラブグループＮｏ．を示す。
【００２２】
次に、キャスト片１０１ａ〜１０１ｄのそれぞれを新たなスラブグループとして再定義し、当該新たなスラブグループの全てと、未選択のスラブグループのうちの一部のスラブグループを選択し、選択したスラブグループの部分集合を作成する。図１に示す例では、未選択の１７個のスラブグループの中から６個のスラブグループを熱延希望日（最早日）が早いものから選択し、４個の新たなスラブグループと、これら６個のスラブグループの部分集合を作成する。前述したように、これらの部分集合のうち、同一のキャストに含めることができる条件（制約条件）を満たす部分集合をキャスト候補とし、キャスト候補の中から最適なキャスト候補の組み合わせ（キャスト片）を、最適化問題を解くことにより導出する。
【００２３】
図１では、この最適化問題の計算の結果（「２回目の分割最適化」の結果）、キャスト片１０１ｅ〜１０１ｈが得られたことを示す。図１では、既にキャスト片として導出され、新たなスラブグループとなっている部分をグレーで塗りつぶして示す。
次に、このようにして得られたキャスト片１０１ｅ〜１０１ｈのそれぞれを新たなスラブグループとして再定義する。そして、前述したのと同様の手順でキャスト片１０１ｉ〜１０１ｍ、１０１ｎ〜１０１ｒがこの順で導出される。このように、既に導出したキャスト片を維持したまま、当該キャスト片にスラブグループが徐々に追加され、キャスト片のサイズが拡大する。尚、実際には、キャストに含まれるスラブグループの並び順は、当該スラブグループに属するスラブの幅に基づいて決められるが、ここでは、既に導出したキャスト片を維持しつつ、そのサイズが拡大する様子を分かりやすく示すために、幅で並び替えを行わずに、新たに追加されるスラブグループを既に作成されているキャスト片の後ろに繋げて示す。
【００２４】
以上のようにして導出したキャスト片に含まれるスラブグループが所定の収束判定条件を満たす場合、当該キャスト片をキャストとして確定する。図１に示す例では、全てのスラブグループがキャスト片の何れかに含まれている場合に、収束判定条件を満たすものとする。したがって、キャスト片１０１ｎ〜１０１ｒがキャストとなる。このようにして得られたキャストから、各スラブが属するキャストをキャスト計画の立案結果として出力する。
尚、図１は、前提形態の概念を示したものであり、以下に説明する内容とは必ずしも対応していない。例えば、図１に示すスラブグループに含まれるスラブ数や熱延希望日（最早日）の内容は、図３〜図６に示すものとは異なる。
【００２５】
（キャスト編成装置２００）
図２は、前提形態におけるキャスト編成装置２００の機能的な構成の一例を示す図である。キャスト編成装置２００のハードウェアは、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＨＤＤ、および各種のインターフェースを備える情報処理装置や、専用のハードウェアを用いることにより実現される。
【００２６】
＜スラブ情報取得部２０１＞
スラブ情報取得部２０１は、スラブ情報を取得して記憶する。スラブ情報取得部２０１は、例えば、キャスト編成装置２００に対するオペレータによる操作、外部装置から送信されたスラブ情報の受信、または可搬型記憶媒体に記憶されたスラブ情報の読み出しを行うことによりスラブ情報を取得する。
【００２７】
図３は、スラブ情報３００の一例を示す図である。
図３において、スラブ情報３００は、スラブＮｏ．、材質、スラブ重量、スラブ幅、スラブ厚、コイル幅、コイル厚、コイル長さ、および熱延希望日が相互に関連付けられた情報である。立案対象のスラブのそれぞれについてスラブ情報が個別に与えられる。
【００２８】
スラブＮｏ．は、スラブを識別する番号である。
材質とは、スラブの成分などを示すものである。ここでは、材質を、当該材質を識別する記号で表すものとする。
スラブ重量、スラブ幅、スラブ厚は、それぞれ、スラブの重量、幅、厚みである。材質、スラブ重量、スラブ幅、スラブ厚、および熱延希望日は、スラブを製造する工程（連続鋳造工程）における製造条件である。
【００２９】
コイル幅、コイル厚、コイル長さは、それぞれ、スラブＮｏ．で識別されるスラブを熱間圧延することにより得られるコイルの幅、厚み、長さである。コイル幅、コイル厚、コイル長さ、および熱延希望日は、スラブを製造する工程よりも後の工程（熱間圧延工程）における製造条件である。尚、前述したように熱延希望日は、熱間圧延を行う日として工場側が希望する日である。
【００３０】
＜スラブグループ作成部２０２＞
スラブグループ作成部２０２は、スラブ情報取得部２０１で取得されたスラブ情報３００に基づいて、製造条件が所定の範囲内で一致するスラブが同一のスラブグループに属するように、スラブ情報３００に含まれるスラブのそれぞれをグルーピングする。
まず、スラブグループ作成部２０２は、スラブ情報３００に含まれるスラブの製造条件の少なくとも１つに基づいて、スラブ情報３００のスラブ（レコード）を並び替える。本形態では、熱延希望日が早いスラブから順にスラブ情報３００のスラブ（レコード）を並び替える。図４は、図３に示すスラブ情報３００のスラブ（レコード）を熱延希望日が早いものから順に並び替えられたスラブ情報４００の一例を示す図である。尚、図３と図４との関係を分かりやすく示すために、図３と図４では同じスラブに同じスラブＮｏ．を付している。ただし、図４において、最上段の行のスラブＮｏ．を「１」とし、以降昇順にスラブＮｏ．を付け直してもよい。更に熱延希望日が同じスラブ（レコード）の中で、熱延希望日の次に重視する項目に基づいてスラブをソートしてもよい。
【００３１】
次に、スラブグループ作成部２０２は、以上のようにして並び替えられたスラブ情報４００に含まれる未選択のスラブ（レコード）のうち、最上位にあるスラブを１つ選択する。すなわち、スラブグループ作成部２０２は、スラブ情報４００に含まれる未選択のスラブ（レコード）のうち、熱延希望日が最も早いものを１つ選択する。
【００３２】
次に、スラブグループ作成部２０２は、既に作成されているスラブグループの中に、スラブ情報４００から選択したスラブを追加できるスラブグループがあるか否かを判定する。前述したように本形態では、スラブの製造条件が所定の範囲内で一致するスラブを同一のスラブグループに含める。
具体的に本形態では、スラブグループ作成部２０２は、以下の（Ａ１）〜（Ｄ１）の全ての判定条件を満たす場合に、既に作成されているスラブグループの中に、スラブ情報４００から選択したスラブを追加できるスラブグループがあると判定する。
【００３３】
（Ａ１）既に作成されているスラブグループに含まれるスラブの幅（スラブ幅）と、スラブ情報４００から選択したスラブの幅（スラブ幅）との差の最大値が１００［ｍｍ］以下である。
（Ｂ１）既に作成されているスラブグループに含まれるスラブの厚み（スラブ厚）と、スラブ情報４００から選択したスラブの厚み（スラブ厚）との差の最大値が２［ｍｍ］以下である。
（Ｃ１）既に作成されているスラブグループに含まれるスラブの熱延希望日と、スラブ情報４００から選択したスラブの熱延希望日との差の最大値が２［日］以下である。
（Ｄ１）既に作成されているスラブグループに含まれるスラブの材質と、スラブ情報４００から選択したスラブの材質とが同じである。
【００３４】
スラブグループ作成部２０２は、既に作成されているスラブグループの中に、スラブ情報４００から選択したスラブを追加できるスラブグループがないと判定した場合には、新たなスラブグループを作成し、当該選択したスラブを当該作成した新たなスラブグループに含める。
一方、既に作成されているスラブグループの中に、スラブ情報４００から選択したスラブを追加できるスラブグループがある場合、スラブグループ作成部２０２は、当該スラブグループに含まれるスラブと、当該選択したスラブの枚数の合計が上限値以下であるか否かを判定する。熱延工程において圧延ロールが摩耗するため、同一のチャンスにおいて連続して熱間圧延する同幅帯のスラブの枚数に制約がある。そこで、本形態では、１つのスラブグループに含めるスラブの枚数に上限値を設定する。本形態では、この上限値を４０［枚］以下とする。
【００３５】
スラブグループ作成部２０２は、スラブ情報４００から選択したスラブを追加できるスラブグループに含まれるスラブと、当該選択したスラブの枚数の合計が上限値以下でない場合には、新たなスラブグループを作成し、当該選択したスラブを当該作成した新たなスラブグループに含める。
一方、スラブ情報４００から選択したスラブを追加できるスラブグループに含まれるスラブと、当該選択したスラブの枚数の合計が上限値以下である場合、スラブグループ作成部２０２は、当該選択したスラブを、当該スラブグループに含める。
【００３６】
スラブグループ作成部２０２は、熱延希望日が早いものから順に並び替えられたスラブ情報４００に含まれる未選択のスラブ（レコード）のうち、スラブ情報４００の最上位にあるスラブを１つずつ選択して、以上の処理を実行し、スラブ情報４００に含まれるスラブを何れかのスラブグループに含める。
【００３７】
図５は、図４に示したスラブ情報４００から作成されるスラブグループ情報５００の一例を示す図である。スラブグループ情報５００は、スラブグループのリストである。
図５において、スラブグループ情報５００は、スラブグループＮｏ．、材質、スラブ幅（最大値、最小値）、スラブ厚（最大値、最小値）、スラブ重量、コイル長さ、熱延希望日（最早日、最遅日）、およびスラブ枚数が相互に関連付けられた情報である。
【００３８】
スラブグループＮｏ．とは、スラブグループを識別する番号である。
材質とは、スラブグループに属するスラブの材質である。本形態では前述した（Ｄ１）の条件により、１つのスラブグループには同じ材質のスラブが属する。
スラブ幅の最大値とは、スラブグループに含まれるスラブの幅（スラブ幅）の最大値をいう。スラブ幅の最小値とは、スラブグループに含まれるスラブの幅（スラブ幅）の最小値をいう。
【００３９】
スラブ厚の最大値とは、スラブグループに含まれるスラブの厚み（スラブ厚）の最大値をいう。スラブ厚の最小値とは、スラブグループに含まれるスラブの厚み（スラブ厚）の最小値をいう。
スラブ重量とは、スラブグループに含まれるスラブの重量（スラブ重量）の合計値である。
【００４０】
コイル長さとは、スラブグループに含まれるスラブのコイル長さの合計値である。
熱延希望日の最早日とは、スラブグループに含まれるスラブの熱延希望日のうち最も早い日をいう。熱延希望日の最遅日とは、スラブグループに含まれるスラブの熱延希望日のうち最も遅い日をいう。
スラブグループ作成部２０２は、以上のようなスラブグループ情報５００を作成する。
【００４１】
前述したように本形態では、複数のスラブグループを組み合わせてキャストを構成する。このため、１つのスラブグループに属するスラブの製造条件（例えば、スラブ厚、スラブ幅、および圧延希望日の少なくとも１つ）がばらついている場合には、これらを組み合わせたキャストにおいてもスラブの製造条件のばらつきが大きくなる。そこで、本形態では、スラブグループ作成部２０２は、スラブ情報３００に含まれるスラブの製造条件の少なくとも１つの値（本形態では熱延希望日）に従って、スラブ情報３００のレコード（スラブ）を並び替え、並び替えた順番で、スラブが属するスラブグループを決定する。このようにすれば、製造条件が大きく異なるスラブが同じスラブグループに属することを抑制することができる。
【００４２】
＜スラブグループ選択部２０３＞
スラブグループ選択部２０３は、熱延希望日の最早日が早いスラブグループから順にスラブグループ作成部２０２により作成されたスラブグループ情報５００のスラブグループ（レコード）を並び替える。図６は、図５に示すスラブグループ情報５００のスラブグループ（レコード）を熱延希望日の最早日が早いものから順に並び替えたスラブグループ情報６００の一例を示す図である。図５と図６との関係を分かりやすく示すために、図５と図６では同じスラブグループに同じスラブグループＮｏ．を付している。ただし、図６において、最上段の行のスラブグループＮｏ．を「１」とし、以降昇順にスラブグループＮｏ．を付け直してもよい。
【００４３】
スラブグループ選択部２０３は、以上のようにして並び替えられたスラブグループ情報６００に含まれるスラブグループ（レコード）の一部を、上位のスラブグループ（レコード）から順に所定の個数だけ選択する。すなわち、スラブグループ選択部２０３は、以上のようにして並び替えられたスラブグループ情報６００に含まれるスラブグループ（レコード）の一部を、熱延希望日の最早日が早いものから順に所定の個数だけ選択する。
【００４４】
１回当たりのスラブグループの選択数（前記所定の個数）が「５」である場合、１回目のスラブグループの選択をスラブグループ選択部２０３が行う場合は、図６に示すスラブグループ情報６００の１行目〜５行目のスラブグループを選択する。尚、２回目以降のスラブグループの選択を行う場合については後述する。選択するスラブグループの個数が多いほど最適化計算に要する計算時間が長くなるため、本計算に許容される時間に基づいてスラブグループの選択数を少なくとも２以上として定める。
【００４５】
＜キャスト候補導出部２０４＞
キャスト候補導出部２０４は、スラブグループ選択部２０３で選択されたスラブグループから、キャスト候補を導出する。
まず、キャスト候補導出部２０４は、スラブグループ選択部２０３で選択されたスラブグループの集合から、とり得るスラブグループの組み合わせ（部分集合）を全数列挙する。スラブグループ選択部２０３における一回当たりのスラブグループの選択数が「５」である場合、キャスト候補導出部２０４は、スラブグループの組み合わせ（部分集合）として、３２（＝２5）通りの組み合わせ（部分集合）を列挙する。
【００４６】
次に、キャスト候補導出部２０４は、列挙したスラブグループの組み合わせ（部分集合）のそれぞれについて、以下の（Ａ２）〜（Ｅ２）の全ての制約条件を満たすか否かを判定し、満たすもののみをキャスト候補として採用する。
【００４７】
（Ａ２）材質制約
スラブグループの組み合わせ（部分集合）に含まれるスラブの材質の中に、同一のキャストに含めることが禁止される材質が混在していない。
例えば、材質Ａのスラブと材質Ｃのスラブを同一のキャストに含めることができない場合には、材質Ａのスラブが属するスラブグループと材質Ｃのスラブが属するスラブグループとの組み合わせは、材質制約に違反するので、キャスト候補として採用されない。
【００４８】
（Ｂ２）キャスト重量
スラブグループの組み合わせ（部分集合）に含まれるスラブの総重量が、（１つの）キャストの重量の上限値を上回らない。
例えば、キャストの重量の上限値が１３００［ｔｏｎ］である場合、図６に示すスラブグループＮｏ．が「１」、「２」、「５」、「３」のスラブグループのスラブ重量の合計は１３２１．７［ｔｏｎ］であるため、これらのスラブグループの組み合わせ（部分集合）はキャスト候補として採用されない。
【００４９】
本形態では、同一のキャストに含まれるスラブは同一のロット（チャンス）として熱延工程で熱間圧延されるようにするため、熱間圧延の際に生じる制約を満足するキャストを導出する必要がある。そこで、本形態では、以下の（Ｃ２）〜（Ｅ２）の制約条件を採用する。
【００５０】
（Ｃ２）コイル長
スラブグループの組み合わせ（部分集合）に含まれるスラブのコイル長さの合計が、上限値を上回らない。
例えば、上限値が１００［ｋｍ］である場合、図６に示すスラブグループＮｏ．が「１」、「２」、「５」、「３」のスラブグループのコイル長さの合計は１０４．７［ｋｍ］であるため、これらのスラブグループの組み合わせ（部分集合）はキャスト候補として採用されない。
【００５１】
（Ｄ２）幅移行制約
圧延順に並び替えた際に相前後する２つのスラブの幅の差が上限値以下である。
熱延工程においては、幅が大きいスラブから順に熱間圧延する、いわゆるナローダウンとしなければならないという制約が課せられる場合がある。この場合、スラブグループの組み合わせ（部分集合）に含まれるスラブをスラブ幅が広いものから順に並び替えた場合に相前後する２つのスラブの幅（スラブ幅）の差が上限値以下である必要がある。例えば、この上限値が１５０［ｍｍ］である場合に、スラブグループＮｏ．が「２」と「５」のスラブグループ（部分集合）をキャスト候補として採用できるか否かを考える。スラブグループＮｏ．が「２」のスラブグループのスラブ幅の最小値は１６００［ｍｍ］であり、スラブグループＮｏ．が「５」のスラブグループのスラブ幅の最大値は１４００［ｍｍ］である。このため、これらのスラブグループに含まれるスラブを、ナローダウンとなるように並び替えると、何れかのスラブの間で、スラブ幅の差として２００［ｍｍ］以上の差が生じる。したがって、これらのスラブグループの組み合わせ（部分集合）はキャスト候補として採用されない。
【００５２】
（Ｅ２）同幅本数制約
幅の差が一定値以下のスラブの枚数が上限値以下である。
幅の差が一定値以下の多数のスラブを同じチャンスに含めると、圧延ロールの摩耗により、コイルの形状不良が生じ、コイルの品質が劣る虞がある。そこで、幅の差が一定値以下のスラブの枚数が上限値以下であるという制約条件を設ける。例えば、幅の差が１００［ｍｍ］以下のスラブの枚数が４０［枚］以下になることを同幅本数制約とする場合、スラブグループＮｏ．が「２」と「４」のスラブグループ（部分集合）では、スラブ幅が１６００［ｍｍ］〜１７００［ｍｍ］の範囲のスラブの枚数が４９［枚］ある。したがって、これらのスラブグループの組み合わせ（部分集合）はキャスト候補として採用されない。
【００５３】
＜最適化部２０５＞
最適化部２０５は、キャスト候補導出部２０４により導出されたキャスト候補の中から、最適なキャスト候補（キャスト片）の組み合わせを、最適化問題を解くことにより導出する。本形態では、最適化問題として集合分割問題を用いる。
【００５４】
図７は、集合分割問題を解く方法の一例を概念的に示す図である。
図７に示すように、ｍ個の要素からなる集合Ｍが与えられているとする（図７の黒丸が１つの要素である）。図７に示す例では１０個の要素が与えられている（ｍ＝１０）。本形態では、１つの要素が１つのスラブグループに対応する。
【００５５】
次に、集合Ｍの部分集合としてｎ個の部分集合を導出する。例えば、要素の組み合わせとしてとり得る全ての組み合わせを部分集合とする。ただし、要素の組み合わせとしてとり得る全ての組み合わせを部分集合とせずに、一部の組み合わせを部分集合としてもよい。図７では、表記の都合上、部分集合７０１ａ〜７０１ｇのみを示す。本形態では、１つの部分集合が１つのキャスト候補に対応する。
次に、これらｎ個の部分集合のそれぞれについて評価指標（コスト）を導出する。
【００５６】
次に、評価指標（コスト）の値の総和が最適となる部分集合の組み合わせを最適解とする。評価指標の値が小さいほど望ましい問題設定の場合は、最小値が最適であり、逆に、評価指標の値が大きいほど望ましい問題設定の場合は、最大値が最適である。図７では、部分集合７０１ａ、７０１ｄ、７０１ｆが最適解であることを示す。本形態では、このような部分集合のそれぞれがキャスト片に対応する。
集合分割問題では、一般に、同じ要素が重複して複数の部分集合に含まれないようにするという制約条件の下で、最適解を導出する。図７に示すように、１０個の要素は、何れか１つの部分集合にのみ含まれる。
尚、集合分割問題自体は公知の技術で実現することができるので、ここでは、その詳細な説明を省略する。
【００５７】
以上のことを前提として、最適化部２０５が行う処理の一例を説明する。
本形態では、最適なキャスト（キャスト片）を導出する最適化問題（集合分割問題）を以下の（１）式〜（３）式で定式化する。すなわち、本形態では、最適化部２０５は、以下の（１）式の目的関数ｆの値を、以下の（２）式および（３）式の制約式を満たす範囲で最小化するときの決定変数ｘjを導出する。尚、最適化問題（集合分割問題）は、例えば、公知の混合整数計画法により解くことができ、その際に商用のソルバー（cplexなど）を用いることも可能である。
【００５８】
【数１】
2018101389.tif 000003
【００５９】
ここで、キャスト候補ｊに含まれるスラブグループｉの集合をｉ∈ＮI、キャスト候補ｊの集合をｊ∈ＮJとする。また、決定変数ｘjは、キャスト候補ｊをキャスト片として採用する場合に「１」となり、採用しない場合に「０」となる０−１変数（ｘj∈｛０，１｝）であるとする。また、ｃjは、キャスト候補ｊの評価値を表す。本形態では、評価値ｃjを以下の（４）式で表す。
ｃj＝ＣW×Ｗ＋ＣT×Ｔ＋ＣD×Ｄ＋ＣN−ＣS×Ｓ  ・・・（４）
【００６０】
（４）式において、Ｗは、キャスト候補ｊに含まれるスラブの幅（スラブ幅）の最大値と最小値との差である。ＣWは、Ｗに対する重み係数である。
Ｔは、キャスト候補ｊに含まれるスラブの厚み（スラブ厚）の最大値と最小値との差である。ＣTは、Ｔに対する重み係数である。
Ｄは、キャスト候補ｊに含まれるスラブの熱延希望日の平均値と最早日との差である。ＣDは、Ｄに対する重み係数である。
【００６１】
ＣNは、キャスト数に対する重み係数である。前述したように決定変数ｘjは、キャスト候補ｊをキャスト片として採用する場合に「１」となり、採用しない場合に「０」となる０−１変数である。したがって、（１）式の計算において、決定変数ｘjの積算値がキャスト数になる。よって、決定変数ｘjに重み係数ＣNを乗算した値を積算することにより、キャスト数を評価することができる。
Ｓは、キャスト候補ｊに含まれるスラブの枚数である。ＣSは、Ｓに対する重み係数である。１つのキャスト内に含まれるスラブの枚数が多いほど、歩留まりが改善することから、キャスト候補ｊの評価値ｃjは、評価が高いことを示す値になる（（４）式では値が小さくなる）。
重み係数ＣW、ＣT、ＣD、ＣN、ＣSは、それぞれの評価項目をどの程度重視するかによって予め設定されるものであり、各評価項目間の評価のバランスを表す。
【００６２】
例えば、図５、図６に示したスラブグループ情報５００、６００のスラブグループＮｏ．が「１」と「２」のスラブグループからなるキャスト候補ｊの評価値ｃjは以下のようになる。まず、Ｗは、２００（＝１７００−１５００）である。また、Ｔは、０（＝２５０−２５０）である。また、Ｄは、０．４（＝１．４−１）である。ここで、Ｄを求めるに際し、スラブグループＮｏ．が「１」と「２」のスラブグループに含まれるスラブの熱延希望日の平均値は６月１．４日であるものとしている。また、Ｓは、３７（＝９＋２８）である。
以上のことから、例えば、ＣW＝１、ＣT＝１、ＣD＝２００、ＣN＝１０００、ＣS＝１である場合、評価値ｃjは、１２４３（＝１×２００＋１×０＋２００×０．４＋１０００−１×３７）になる。
【００６３】
（２）式および（３）式において、Ｍiは、キャスト候補ｊとして選択されたスラブグループｉに属するスラブの枚数である。ＨMAXは、スラブの枚数の上限値である。（２）式のｉ∈ＮIａｎｄＭi≧ＨMAXは、キャスト候補ｊに含まれるスラブグループｉのそれぞれについて、当該スラブグループｉに属するスラブの枚数Ｍiが上限値ＨMAX以上である場合には、（２）式を適用することを意味する。また、（３）式のｉ∈ＮIａｎｄＭi＜ＨMAXは、キャスト候補ｊに含まれるスラブグループｉのそれぞれについて、当該スラブグループｉに属するスラブの枚数Ｍiが上限値ＨMAX未満である場合には、（３）式を適用することを意味する。
【００６４】
（２）式および（３）式のＡijは、スラブグループｉを行、キャスト候補ｊを列とする行列であって、「０」または「１」を要素とする行列である。
図８は、行列Ａijを概念的に説明する図である。
図８において、各列は、１つのキャスト候補ｊに含まれるスラブグループｉを示す。当該キャスト候補ｊに含まれるスラブグループｉに対応する行に「１」が、当該キャスト候補ｊに含まれないスラブグループｉに対応する行に「０」が与えられる。例えば、キャスト候補１（ｊ＝１）には、スラブグループ１、２（ｉ＝１、２）が含まれ、その他のスラブグループは含まれない。
【００６５】
キャスト候補導出部２０４で導出されたキャスト候補ｊのそれぞれについて、このような「１」または「０」の割り当てが行われた結果が行列Ａijになる。尚、図８の矢印線の下の部分は、各キャスト候補ｊに対して評価値ｃjと決定変数ｘjが得られることを示す。
図８に示す例では、行列Ａijは、以下の（５）式のように表される。
【００６６】
【数２】
2018101389.tif 000004
【００６７】
したがって、（２）式の制約条件は、属するスラブの枚数Ｍiが上限値ＨMAX以上であるスラブグループｉは、キャスト片に含めるスラブグループとして必ず１回採用されることを表す。
一方、（３）式の制約条件は、属するスラブの枚数Ｍiが上限値ＨMAX未満であるスラブグループｉは、キャスト片に含めるスラブグループとして１回採用されるか、または１回も採用されない（採用回数が０（ゼロ）である）ことを表す。
最適化部２０５は、以上のようにして決定変数ｘjを導出することを、キャスト候補導出部２０４によりキャスト候補が導出される度に実行する。「１」が与えられた決定変数ｘjに対応するキャスト候補ｊがキャスト片になる。
【００６８】
＜判定部２０６＞
判定部２０６は、最適化部２０５における最適化計算の結果が、収束判定条件を満たすか否かを判定する。
本形態では、「１」が与えられた決定変数ｘjに対応する各キャスト候補ｊ（キャスト片）の何れかに、スラブグループ作成部２０２または後述するスラブグループ再定義部２０７において作成された(最新の)スラブグループの全てが１つずつ含まれている場合に、最適化部２０５における最適化計算の結果が、収束判定条件を満たすと判定し、そうでない場合に、最適化部２０５における最適化計算の結果が、収束判定条件を満たさないと判定するものとする。
【００６９】
この判定の結果、最適化部２０５における最適化計算の結果が、収束判定条件を満たす場合、判定部２０６は、当該最適化部２０５における最適化計算の結果において「１」が与えられた決定変数ｘjに対応するキャスト候補ｊ（キャスト片）をキャストとして確定する。そして、判定部２０６は、出力部２０８を起動する。
一方、最適化部２０５における最適化計算の結果が、収束判定条件を満たさない場合、判定部２０６は、スラブグループ再定義部２０７を起動する。
【００７０】
＜スラブグループ再定義部２０７＞
スラブグループ再定義部２０７は、最適化部２０５における最適化計算の（最新の）結果として「１」が与えられた決定変数ｘjに対応するキャスト候補ｊ（キャスト片）に含まれる複数のスラブグループを１つのスラブグループとして再定義することを、キャスト候補ｊ（キャスト片）のそれぞれについて個別に行う。
図９は、スラブグループを再定義した後のスラブグループ情報９００の一例を示す図である。
図９では、図５に示したスラブグループ情報５００において、スラブグループＮｏ．が「１」と「２」のスラブグループが第１のキャスト片に含められ、スラブグループＮｏ．が「３」と「４」のスラブグループが第２のキャスト片に含められ、スラブグループＮｏ．が「５」のスラブグループが第３のキャスト片に含められた場合を例に挙げて示す。
【００７１】
第１のキャスト片に含められたスラブグループＮｏ．が「１」と「２」のスラブグループを１つに纏めて新たなスラブグループを再定義する場合を例に挙げて、図５に示したスラブグループ情報５００と図９に示すスラブグループ情報９００との関係を説明する。
【００７２】
スラブグループ再定義部２０７は、スラブグループＮｏ．が「１」と「２」のスラブグループのスラブ幅の最大値、最小値から、新たなスラブグループのスラブ幅の最大値、最小値として、それぞれ１７００、１５００を導出する。
スラブグループ再定義部２０７は、スラブグループＮｏ．が「１」と「２」のスラブグループのスラブ厚の最大値、最小値から、新たなスラブグループのスラブ厚の最大値、最小値として、それぞれ２５０、２５０を導出する。
【００７３】
スラブグループ再定義部２０７は、スラブグループＮｏ．が「１」と「２」のスラブグループのスラブ重量を加算して、新たなスラブグループのスラブ重量として７３６．４（＝１８５．３＋５５１．１）を導出する。
スラブグループ再定義部２０７は、スラブグループＮｏ．が「１」と「２」のスラブグループのコイル長さを加算して、新たなスラブグループのコイル長さとして６２．２（＝２５．４＋３６．８）を導出する。
【００７４】
スラブグループ再定義部２０７は、スラブグループＮｏ．が「１」と「２」のスラブグループの圧延希望日の最早日・最遅日から、新たなスラブグループの圧延希望日の最早日・最遅日として、それぞれ６月１日、６月２日を導出する。
スラブグループ再定義部２０７は、スラブグループＮｏ．が「１」と「２」のスラブグループのスラブ枚数を加算して、新たなスラブグループのスラブ枚数として３７（＝９＋２８）を導出する。
尚、スラブグループＮｏ．が「１」と「２」のスラブグループの材質は「Ａ」であるので変更されない。
【００７５】
スラブグループ再定義部２０７は、図５に示したスラブグループ情報５００のスラブグループＮｏ．が「１」と「２」のスラブグループを削除し、以上のようにして導出した材質、スラブ幅、スラブ厚、スラブ重量、コイル長さ、熱延希望日、およびスラブ枚数からなるスラブグループ（レコード）を新たに生成し、当該スラブグループ（レコード）を識別するスラブグループＮｏ．を当該スラブグループ（レコード）に付与する。図９では、スラブグループＮｏ．が「１」と「２」のスラブグループから再定義された新たなスラブグループのスラブグループＮｏ．として「１」が付与された場合を例に挙げて示す。
【００７６】
第２のキャスト片に含められたスラブグループＮｏ．が「３」と「４」のスラブグループについても同様にして新たなスラブグループが得られる。図９では、図５に示したスラブグループ情報５００のスラブグループＮｏ．が「３」と「４」のスラブグループから再定義された新たなスラブグループのスラブグループＮｏ．として「２」が付与された場合を例に挙げて示す。
【００７７】
また、第３のキャスト片に含められたスラブグループは、スラブグループＮｏ．が「５」のスラブグループのみである。したがって、スラブグループＮｏ．が「５」のスラブグループについては、スラブグループＮｏ．のみが変更される。図９では、図５に示したスラブグループ情報５００のスラブグループＮｏ．が「５」のスラブグループから再定義された新たなスラブグループのスラブグループＮｏ．として「３」が付与された場合を例に挙げて示す。
【００７８】
また、図５に示したスラブグループ情報５００のスラブグループＮｏ．が「６」〜「１０」のスラブグループについても、スラブグループＮｏ．のみが変更される。図９では、図５に示したスラブグループ情報５００のスラブグループＮｏ．が「６」〜「１０」のスラブグループから再定義された新たなスラブグループのスラブグループＮｏ．として「４」〜「８」が付与された場合を例に挙げて示す。
【００７９】
そして、スラブグループ選択部２０３は、以上のようにして再定義されたスラブグループからなるスラブグループ情報９００から一部のスラブグループを選択し、キャスト候補導出部２０４は、当該選択されたスラブグループから、キャスト候補を導出し、最適化部２０５は、当該キャスト候補から、キャスト片を導出し、判定部２０６は、最適化部２０５における最適化計算の結果が、収束判定条件を満たすか否かを判定し、最適化部２０５における最適化計算の結果が、収束判定条件を満たさない場合には、スラブグループ再定義部２０７は、最適化部２０５で得られたキャスト片に含まれる複数のスラブグループを１つのスラブグループとして再定義する。以上の処理が、判定部２０６により、最適化部２０５における最適化計算の結果が、収束判定条件を満たすと判定されるまで繰り返し行われる。ここで、１回当たりのスラブグループの選択数が「５」である場合、２回目以降のスラブグループの選択をスラブグループ選択部２０３が行う場合は、図９に示すスラブグループ情報９００の１行目〜５行目のスラブグループを選択する。
【００８０】
このようにすることによって、図１に示したように、最適化部２０５における最適化計算が行われる度に、キャスト片１０１ａ〜１０１ｄ→キャスト片１０１ｅ〜１０１ｈ→キャスト片１０１ｉ〜１０１ｍのようにキャスト片のサイズが徐々に拡大し、最終的にキャスト片１０１ｎ〜１０１ｒがキャストとなる。
【００８１】
スラブグループ情報５００に含まれるスラブグループの全てから一度にキャストを導出しようとすると、スラブグループの組み合わせ数が膨大な数になり（すなわち問題規模が大きくなり）、実用的な計算時間内にキャストを導出することが容易でない。これに対し、本形態では、スラブグループ情報５００に含まれるスラブグループの一部を選択してキャスト片を導出し、導出したキャスト片に含まれるスラブグループを１つのスラブグループとして再定義した上で未選択のスラブグループを取り込んでキャスト片を最導出することを繰り返すことでキャスト片のサイズを徐々に拡大する。したがって、大規模な問題であっても、実用的な計算時間でキャスト計画を導出することができる。また、操業上において重要な項目で事前にスラブグループをソートして、ソートした順にキャスト片の生成とスラブグループの再定義を繰り返すため、生成されたキャスト片における前記重視した項目のばらつきを抑制することができ、上記の様に問題を分割して解を求めることによる精度の低下を最小限に抑えることが可能となる。
【００８２】
＜出力部２０８＞
出力部２０８は、判定部２０６により、最適化部２０５における最適化計算の結果が収束判定条件を満たすと判定され、キャストが確定されると、それぞれのキャストに含まれるスラブの情報をキャスト計画の立案結果として出力する。出力部２０８は、例えば、コンピュータディスプレイへの表示、外部装置への送信、および、内部または外部の記憶媒体への記憶の少なくとも何れか１つを行うことにより、それぞれのキャストに含まれるスラブの情報を出力する。例えば、出力部２０８は、図３に示したスラブ情報３００の項目として、キャストを識別する番号であるキャストＮｏ．を追加した情報を、それぞれのキャストに含まれるスラブの情報として出力することができる。
【００８３】
（３）式に示したように、キャストに含まれないスラブグループが存在し得る。すなわち、前述した収束判定条件を満たすことができない場合が存在し得る。このような状況になった場合、出力部２０８は、このようなキャストに含まれないスラブグループの情報を合わせて出力することができる。これにより、オペレータは、当該スラブグループ（に含まれるスラブ）を、前述したようにして導出されたキャスト計画のどのキャストに組み込むのかをキャスト編成装置２００の操作により指示することができる。これにより、キャスト編成装置２００は、当該スラブグループを当該指示されたキャストに含めることができる。また、このようにせずに、当該スラブグループを、次の立案対象期間におけるキャスト計画に含めるようにしてもよい。
【００８４】
また、以上のような、スラブをいずれのキャストにも取り込むことが制約上できない、いわゆる組み余りが生じた際においても計算が収束するように、例えば、全てのスラブグループｉの数に対する、キャスト片の何れかに含まれるスラブグループｉの数の割合（すなわち、スラブグループｉのキャスト片への採用率）が所定の割合以上である場合に、収束判定条件を満たすと判定してもよい。また、全てのスラブグループｉ内のスラブの数に対する、キャスト片の何れかに含まれるスラブグループｉ内のスラブの数の割合（すなわち、スラブのキャスト片への採用率）が所定の割合以上である場合に、収束判定条件を満たすと判定してもよい。
【００８５】
また、スラブグループｉ（スラブ）のキャスト片への採用率を、全てのスラブグループｉに含まれるスラブの重量に対する、キャスト片の何れかに含まれるスラブグループｉに含まれるスラブの重量の割合としてもよい。更に、スラブグループｉ（スラブ）のキャスト片への採用率を、全てのスラブグループｉに含まれるスラブのコイル長さの合計に対する、キャスト片の何れかに含まれるスラブグループｉに含まれるスラブのコイル長さの合計の割合としてもよい。
【００８６】
その他、前回の最適化計算の結果として得られた目的関数ｆの値と、今回の最適化計算の結果として得られた目的関数ｆの値との差が所定値以下、または、前回の最適化計算の結果として得られた目的関数ｆの値と、今回の最適化計算の結果として得られた目的関数ｆの値とが同じである場合に、収束判定条件を満たすと判定してもよい。
【００８７】
（前提形態のまとめ）
以上のように本形態では、スラブ情報３００に含まれるスラブのうち、製造条件が所定の範囲内で一致するスラブ（（Ａ１）〜（Ｄ１）の全ての判定条件を満たすスラブ）が同一のスラブグループに属するように、スラブ情報３００に含まれるスラブのそれぞれをグルーピングする。したがって、キャスト計画の立案対象のスラブが多い場合であっても、計算時間が増大することを抑制することができる。
【００８８】
また、本形態では、複数のスラブグループの一部を、熱延希望日の最早日が早いものから順に選択する。そして、選択したスラブグループのうち、同一のキャストに含めることができる条件（（Ａ２）〜（Ｅ２）の制約条件の全て）を満たすものをキャスト候補として導出する。キャスト候補を（キャスト片またはキャストとして）採用するか否かを示す変数である決定変数ｘjと、キャスト数を含む評価指標を用いて表現される評価値ｃiとを変数として有する目的関数ｆを最小化する決定変数ｘjを、最適化計算を行うことにより導出する。最適化計算の際の制約条件として、最適なキャスト候補に含まれるスラブグループの数と、キャスト候補を導出するのに先立って選択されるスラブグループの数とが同じであり、同一のスラブグループが異なるキャスト候補に含まれないという条件を採用する。このような最適化計算により採用されたキャスト候補に含まれるスラブグループを新たなスラブグループとして１つに纏める（すなわちスラブグループを再定義する）。以上の処理を、最適化計算の結果が収束するまで繰り返し行う。
【００８９】
このように、スラブグループの一部を取り込んでキャスト片のサイズを徐々に拡大して最終的キャスト計画を作成するので、スラブグループから一度にキャストを導出してキャスト計画を作成する場合に比べ、実用的な計算時間でキャスト計画を導出することができ、キャスト計画の作成に要する計算時間を短縮することができる。また、熱延希望日の最早日といった、操業上において重要な項目で事前にスラブグループをソートして、ソートした順にキャスト片の生成とスラブグループの再定義を繰り返すため、生成されたキャスト片における前記重視した項目のばらつきを抑制することができ、キャスト編成の問題を分割して解を求めることによる精度の低下を最小限に抑えることが可能となる。
【００９０】
また、本形態では、最適化計算の際の制約条件を、スラブグループに含まれるスラブの数が上限値ＨMAX以上であるか否かによって異ならせる。
すなわち、含まれるスラブの数が上限値ＨMAX以上であるスラブグループに対しては、以下の制約を課す。すなわち、同じ内容のスラブグループについて、最適なキャスト候補に含まれるスラブグループの数と、キャスト候補を導出するのに先立って選択されるラブグループの数とを同じにする制約を課す。したがって、多数のスラブが属するスラブグループがキャスト片として採用されやすくなる。よって、計算時間をより一層短縮することができる。
【００９１】
一方、含まれるスラブの数が上限値ＨMAX以上でないスラブグループに対しては、以下の制約を課す。即ち、同じ内容のスラブグループについて、最適なキャスト候補に含まれるスラブグループの数を、キャスト候補を導出するのに先立って選択されるスラブグループの数以下にする制約を課す。これにより、キャスト候補を導出するのに先立って選択したスラブグループを、最適なキャスト候補の中に含めないことが許容される。したがって、少数のスラブが属するスラブグループが、好ましくないキャスト片に含まれることを抑制することができる。
【００９２】
また、本形態では、スラブグループのうち、（Ｃ２）コイル長、（Ｄ２）幅移行制約、および（Ｅ２）同幅本数制約の制約条件を満たすものをキャスト候補として採用する。したがって、製鋼工程のロットであるキャストを、熱延工程のロットであるチャンスと同じにすることができる。よって、例えば、熱延工程で熱間圧延される前にスラブがヤードに長時間滞在することを抑制することができる。これにより、例えば、製造工期を短縮することと、スラブの温度が低下することにより熱延工程における加熱炉の燃料原単位を抑制することとを実現することができる。
【００９３】
［第１の実施形態］
以上のように、前提形態では、最適化問題の問題規模を縮小するために、製造条件が所定の範囲内で一致するスラブを集約したスラブグループの単位で最適化問題を解くことで、計算時間の短縮を実現することができる。前提形態では、図１に示したように、最適化部２０５における最適化計算が行われる度に、キャスト片１０１ａ〜１０１ｄ→キャスト片１０１ｅ〜１０１ｈ→キャスト片１０１ｉ〜１０１ｍのようにキャスト片のサイズが徐々に拡大する。この場合、前述したように、（Ａ２）材質制約、（Ｂ２）キャスト重量、（Ｃ２）コイル長、（Ｄ２）幅移行制約、および（Ｅ２）同幅本数制約の制約条件を満たさず、キャスト候補導出部２０４により、何れのキャスト片（スラブグループ再定義部２０７で再定義されたスラブグループ）にも取り込めないスラブグループが発生し得る。
【００９４】
図１０は、キャスト片（スラブグループ再定義部２０７で再定義されたスラブグループ）に取り込めないスラブグループの一例を概念的に示す図である。ここでは説明を簡単にするために、制約条件が（Ｂ２）キャスト重量および（Ｃ２）コイル長であるものとする。また、キャスト重量の上限値、コイル長の上限値は、それぞれ、前提形態で例示した１３００［ｔｏｎ］、１００［ｋｍ］であるとする。
【００９５】
図１０に示すように、繰り返し計算によって２つのスラブグループ１００１、１００２がスラブグループ再定義部２０７で再定義されたとする。この場合に、キャスト候補導出部２０４が、スラブグループ１００１、１００２に対して、スラブグループ１００３を組み合わせてキャスト候補とすることができるか否かを説明する。
図１０に示すようにスラブグループ１００１を構成するスラブの総重量（図１０に示すキャスト重量）は１２００［ｔｏｎ］であり、スラブグループ１００３を構成するスラブの総重量（図１０に示すスラブＧｒ重量）は２５０［ｔｏｎ］である。したがって、スラブグループ１００１に対して、スラブグループ１００３を組み合わせると、組み合わせ後のスラブグループを構成するスラブの総重量（キャスト重量）は、１４５０［ｔｏｎ］となり、上限値である１３００［ｔｏｎ］を超える。このため、スラブグループ１００１にスラブグループ１００３を取り込むことができない。
【００９６】
また、スラブグループ１００２を構成するスラブのコイルの全長（図１０に示すコイル長）は８５［ｋｍ］であり、スラブグループ１００３を構成するスラブのコイルの全長（図１０に示すコイル長）は２０［ｋｍ］である。したがって、スラブグループ１００２に対して、スラブグループ１００３を組み合わせると、組み合わせ後のスラブグループを構成するスラブのコイルの全長（コイル長）が１０５［ｋｍ］となり、上限値である１００［ｋｍ］を超える。このため、スラブグループ１００２にスラブグループ１００３を取り込むことができない。
【００９７】
以上のように前提形態では、スラブグループ１００３は、スラブグループ１００１、１００２の何れにも組み込まれない（すなわちキャスト候補にならない）スラブグループとして計算が終了する。前述したように、このような場合、前提形態では、キャストに含まれないスラブグループに含まれるスラブを、キャスト計画のどのキャストに組み込むのかをオペレータが指示できるようにしている。
【００９８】
キャスト編成問題においては、より多くのスラブをキャストに自動的に取り込み、大きなキャストを編成することが望ましい。そこで、以下に説明する本発明の実施形態では、より多くのスラブを自動的にキャストに取り込むことができるようにする。このようにすることにより、キャストの容量（キャスト重量およびコイル長さにより定まるキャストの大きさ）が、その上限に可及的に近くなるように、スラブをキャストに自動的に組み込むことを実現できることが期待できる。
【００９９】
以下に、本発明の第１の実施形態を説明する。尚、以下の説明において、前提形態と同一の部分については、図１〜図１０に付した符号と同一の符号を付す等して詳細な説明を省略する。
【０１００】
（キャスト編成装置１１００）
図１１は、本実施形態におけるキャスト編成装置１１００の機能的な構成の一例を示す図である。キャスト編成装置１１００のハードウェアは、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＨＤＤ、および各種のインターフェースを備える情報処理装置や、専用のハードウェアを用いることにより実現される。
【０１０１】
＜スラブ情報取得部２０１＞
スラブ情報取得部２０１は、前提形態で説明したものと同じであり、スラブ情報３００を取得する（図３を参照）。
＜スラブグループ作成部２０２＞
スラブグループ作成部２０２は、前提形態で説明したものと同じであり、スラブ情報３００に基づいて、製造条件が所定の範囲内で一致するスラブが同一のスラブグループに属するように、スラブ情報３００に含まれるスラブのそれぞれをグルーピングし、スラブグループ情報５００を作成する（図５を参照）。
【０１０２】
＜スラブグループ選択部２０３＞
スラブグループ選択部２０３は、前提形態で説明したものと同じであり、熱延希望日の最早日が早いスラブグループから順にスラブグループ情報５００のスラブグループ（レコード）を並び替えたスラブグループ情報６００に含まれるスラブグループ（レコード）の一部を、上位のスラブグループ（レコード）から順に所定の個数だけ選択する（図６を参照）。
【０１０３】
＜第１のキャスト候補導出部２０４＞
第１のキャスト候補導出部２０４は、前提形態で説明したキャスト候補導出部２０４と同じであるが、表記の都合上、名称を変えている。第１のキャスト候補導出部２０４は、スラブグループ選択部２０３で選択されたスラブグループから、前提形態の＜キャスト候補導出部２０４＞の項で説明した（Ａ２）〜（Ｅ２）の全ての制約条件を満たすスラブグループの組合せをキャスト候補として導出する。
【０１０４】
＜第１の最適化部２０５＞
第１の最適化部２０５は、前提形態で説明した最適化部２０５と同じであるが、表記の都合上、名称を変えている。第１の最適化部２０５は、第１のキャスト候補導出部２０４により導出されたキャスト候補の中から、最適なキャスト候補（キャスト片）の組み合わせを、集合分割問題を解くことにより導出する。具体的に第１の最適化部２０５は、（１）式の目的関数ｆの値を、（２）式および（３）式の制約式を満たす範囲で最小化するときの決定変数ｘjを導出する。尚、前述したように決定変数ｘjは、キャスト候補ｊをキャスト片として採用する場合に「１」となり、採用しない場合に「０」となる０−１変数（ｘj∈｛０，１｝）である。
【０１０５】
＜第１の判定部２０６＞
第１の判定部２０６は、前提形態で説明した判定部２０６と同じであるが、表記の都合上、名称を変えている。第１の判定部２０６は、第１の最適化部２０５における最適化計算の結果が、収束判定条件を満たすか否かを判定する。ただし、第１の判定部２０６は、スラブのキャスト片への採用率（＝（各キャスト片に取り込まれているスラブの総数÷スラブ情報に含まれるスラブの総数）×１００）が所定の割合以上である場合に、第１の最適化部２０５における最適化計算の結果が、収束判定条件を満たすと判定し、そうでない場合に、第１の最適化部２０５における最適化計算の結果が、収束判定条件を満たさないと判定するものとする。所定の割合は、スラブグループｉのキャスト片への取り込み漏れをどの程度許容するかによって予め設定される。例えば、７０［％］を所定の割合として採用することができる。尚、スラブグループｉのキャスト片への採用率が１００％である場合には、前提形態で説明した収束判定条件（キャスト片の何れかにスラブグループの全てが１つずつ含まれているか否かの判定）と同じ収束判定条件になる。第１の判定部２０６は、第１の最適化部２０５における最適化計算の結果が、収束判定条件を満たすと判定すると、後述する組込候補スラブグループ有無判定部１１０１を起動する。
【０１０６】
＜第１のスラブグループ再定義部２０７＞
第１のスラブグループ再定義部２０７は、前提形態で説明したスラブグループ再定義部２０７と同じであるが、表記の都合上、名称を変えている。第１のスラブグループ再定義部２０７は、第１の判定部２０６により、第１の最適化部２０５における最適化計算の結果が、収束判定条件を満たしていないと判定された場合に起動する。第１のスラブグループ再定義部２０７は、第１の最適化部２０５における最適化計算の（最新の）結果として「１」が与えられた決定変数ｘjに対応するキャスト候補ｊ（キャスト片）に含まれる複数のスラブグループを１つのスラブグループとして再定義することを、キャスト候補ｊ（キャスト片）のそれぞれについて個別に行う。
【０１０７】
そして、スラブグループ選択部２０３は、再定義されたスラブグループからなるスラブグループ情報９００（図９を参照）から一部のスラブグループを選択し、第１のキャスト候補導出部２０４は、当該選択されたスラブグループから、キャスト候補を導出し、第１の最適化部２０５は、当該キャスト候補から、キャスト片を導出し、第１の判定部２０６は、第１の最適化部２０５における最適化計算の結果が、収束判定条件を満たすか否かを判定し、第１の最適化部２０５における最適化計算の結果が、収束判定条件を満たさない場合には、第１のスラブグループ再定義部２０７は、第１の最適化部２０５で得られたキャスト片に含まれる複数のスラブグループを１つのスラブグループとして再定義する。以上の処理が、第１の判定部２０６により、第１の最適化部２０５における最適化計算の結果が、収束判定条件を満たすと判定されるまで繰り返し行われる。
【０１０８】
＜組込候補スラブグループ有無判定部１１０１＞
前述したように組込候補スラブグループ有無判定部１１０１は、第１の判定部２０６により、第１の最適化部２０５における最適化計算の結果が、収束判定条件を満たすと判定されると起動する。組込候補スラブグループ有無判定部１１０１は、スラブグループ作成部２０２により作成されたスラブグループ情報５００に含まれるスラブグループの中から、第１の判定部２０６により収束判定条件を満たすと判定された際（当該判定の直前）に第１の最適化部２０５により導出されたキャスト片に含まれていないスラブグループを抽出する。
【０１０９】
次に、組込候補スラブグループ有無判定部１１０１は、第１の判定部２０６により収束判定条件を満たすと判定された際に第１の最適化部２０５により導出されたキャスト片に含まれるスラブグループの所定の属性と閾値とを比較した結果と、前記抽出したスラブグループの所定の属性と閾値とを比較した結果とに基づいて、当該キャスト片および当該スラブグループの中に組込候補スラブグループがあるか否かを判定する。この判定の結果、組込候補スラブグループがある場合、組込候補スラブグループ有無判定部１１０１は、当該組込候補スラブグループを抽出する。本実施形態では、容量が閾値未満であるキャスト片およびスラブグループを、組込候補スラブグループとする。より具体的に説明すると、キャスト片、及びスラブグループに含まれるスラブの総重量が、１チャージの重量未満であるキャスト片、及びスラブグループを、組込候補スラブグループとする。
【０１１０】
図１２は、組込候補スラブグループの一例を概念的に示す図である。図１２に示す１つの四角形が１つのスラブグループを表すものとする。また、破線が閾値（１チャージの重量）を示すものとする。
図１２において、キャスト片１２０１〜１２０７は、収束判定条件を満たした時点での第１の最適化部２０５における最適化計算の結果（決定変数ｘj）から導出されたキャスト片であるものとする。スラブグループ１２０８、１２０９は、スラブグループ作成部２０２により作成されたスラブグループ情報５００に含まれるスラブグループのうち、当該導出したキャスト片１２０１〜１２０７に含まれていないスラブグループであるものとする。
【０１１１】
図１２に示す例では、キャスト片１２０６、１２０７およびスラブグループ１２０８、１２０９が閾値（１チャージの重量）未満であるので、組込候補スラブグループになる。このように、キャスト片に含まれていないスラブグループ１２０８、１２０９だけでなくキャスト片１２０６、１２０７も、組込候補スラブグループになり得る。組込候補スラブグループ有無判定部１１０１は、以上のようにして組込候補スラブグループを抽出すると、組込候補スラブグループ分解部１１０２を起動する。
【０１１２】
＜組込候補スラブグループ分解部１１０２＞
組込候補スラブグループ分解部１１０２は、組込候補スラブグループ有無判定部１１０１により抽出された組込候補スラブグループのそれぞれを１枚ずつのスラブに分解する。組込候補スラブグループ分解部１１０２は、当該分解したそれぞれのスラブを組込候補スラブとして組込候補スラブリストに登録する。
【０１１３】
＜組込候補スラブ選択部１１０３＞
組込候補スラブ選択部１１０３は、組込候補スラブグループ分解部１１０２により組込候補スラブリストに登録された組込候補スラブのうち、未選択の組込候補スラブを１枚選択する。
組込候補スラブの選択順は特に限定されないが、例えば、スラブ重量、コイル長さ、または熱延希望日に基づいて、組込候補スラブの選択順を定めることができる。尚、スラブ重量、コイル長さ、および熱延希望日は、スラブ情報３００に含まれる（図３を参照）。
【０１１４】
例えば、キャストの重量をキャストの最大重量（１つのキャストにおいて許容されるスラブの合計重量の最大値）に可及的に近づけることを指針として組込候補スラブの選択順を定める場合には、スラブ重量が重い組込候補スラブを優先的に選択することができる。一方、キャストに含めるスラブの枚数を多くすることを指針として組込候補スラブの選択順を定める場合には、逆にスラブ重量が軽い組込候補スラブを優先的に選択する。最大コイル長（熱延工程において１ロット（１チャンス）で圧延できるコイルの長さの最大値）に可及的に近づけることを指針として組込候補スラブの選択順を定める場合には、コイルの長さが長い組込候補スラブを優先的に選択することができる。一方、熱延工程において１ロット（１チャンス）で圧延するコイルの数を多くすることを指針としてスラブの選択順を定める場合には、逆にコイル長さが短い組込候補スラブを優先的に選択する。熱延希望日については、最も早い熱延希望日の組込候補スラブを選択する。
【０１１５】
＜第２のキャスト候補導出部１１０４＞
第２のキャスト候補導出部１１０４は、第１の判定部２０６により収束判定条件を満たすと判定された際に第１の最適化部２０５により導出されたキャスト片のうち、組込候補スラブグループ有無判定部１１０１により組込候補スラブグループとして抽出されなかったキャスト片と、組込候補スラブ選択部１１０３により選択された組込候補スラブとの組み合わせ（部分集合）としてとり得る組み合わせを全数列挙する。
【０１１６】
次に、第２のキャスト候補導出部１１０４は、列挙した組み合わせ（部分集合）のうち、前提形態の＜キャスト候補導出部２０４＞の項で説明した（Ａ２）〜（Ｅ２）の全ての制約条件を満たす組み合わせをキャスト候補として導出する。
【０１１７】
＜第２の最適化部１１０５＞
第２の最適化部１１０５は、第２のキャスト候補導出部１１０４により導出されたキャスト候補の中から、最適なキャスト候補（キャスト片）の組み合わせを、集合分割問題を解くことにより導出する。集合分割問題の解法は、最適化部２０５（第１の最適化部２０５）と同じである。即ち、第２の最適化部１１０５は、（１）式の目的関数ｆの値を、（２）式および（３）式の制約式を満たす範囲で最小化するときの決定変数ｘjを導出する。尚、前述したように決定変数ｘjは、キャスト候補ｊをキャスト片として採用する場合に「１」となり、採用しない場合に「０」となる０−１変数（ｘj∈｛０，１｝）である。
【０１１８】
尚、第１の最適化部２０５では、スラブグループ選択部２０３により選択されたスラブグループの数が、第１の最適化部２０５により導出される最適なキャスト候補（キャスト片）の組み合わせに含まれるスラブグループの数と同じまたはそれ以上になるように、最適なキャスト候補（キャスト片）の組み合わせを（２）式および（３）式に従って決定する。これに対し、第２の最適化部１１０５では、第１の判定部２０６により収束判定条件を満たすと判定された際に第１の最適化部２０５により導出された最適なキャスト候補（キャスト片）のうち、組込候補スラブグループを含まないキャスト候補の組み合わせに含まれるスラブグループの数が、第２の最適化部１１０５により導出される最適なキャスト候補（キャスト片）の組み合わせに含まれるスラブグループの数と同じまたはそれ以上になり、且つ、組込候補スラブ選択部１１０３により選択された組込候補スラブの数が、第２の最適化部１１０５により導出される最適なキャスト候補（キャスト片）の組み合わせに含まれる組込候補スラブの数と同じまたはそれ以上になるように、最適なキャスト候補（キャスト片）の組み合わせを（２）式および（３）式に従って決定する。
【０１１９】
＜第２の判定部１１０６＞
第２の判定部１１０６は、第２の最適化部１１０５における最適化計算の結果が、収束判定条件を満たすか否かを判定する。
本実施形態では、組込候補スラブリストに登録された組込候補スラブの全てについて、キャスト候補の導出と、最適なキャスト候補（キャスト片）の組み合わせの導出とが行われると、収束判定条件を満たすと判定するものとする。第２の判定部１１０６は、第２の最適化部１１０５における最適化計算の結果が、収束判定条件を満たしていないと判定した場合には、第２のスラブグループ再定義部１１０７を起動し、そうでない場合には、後述する出力部１１０８を起動する。
【０１２０】
＜第２のスラブグループ再定義部１１０７＞
第２のスラブグループ再定義部１１０７は、スラブグループ再定義部２０７（第１のスラブグループ再定義部２０７）と同様に、第２の最適化部１１０５における最適化計算の（最新の）結果として「１」が与えられた決定変数ｘjに対応するキャスト候補ｊ（キャスト片）に含まれる複数のスラブグループを１つのスラブグループとして再定義することを、キャスト候補ｊ（キャスト片）のそれぞれについて個別に行い、スラブグループ情報を生成する。スラブグループ情報の生成は、図９のスラブグループ情報９００を参照しながら説明したのと同様にして行うことができるので、ここでは、その詳細な説明を省略する。
【０１２１】
そして、組込候補スラブ選択部１１０３は、組込候補スラブグループ分解部１１０２により組込候補スラブリストに登録された組込候補スラブのうち、未選択の組込候補スラブを１枚選択し、第２のキャスト候補導出部１１０４は、当該選択された組込候補スラブと、第２のスラブグループ再定義部１１０７により再定義されたスラブグループであるキャスト片とから、キャスト候補を導出し、第２の最適化部１１０５は、当該キャスト候補から、キャスト片を導出し、第２の判定部１１０６は、第２の最適化部１１０５における最適化計算の結果が、収束判定条件を満たすか否かを判定し、第２の最適化部１１０５における最適化計算の結果が、収束判定条件を満たさない場合には、第２のスラブグループ再定義部１１０７は、第２の最適化部１１０５で得られたキャスト片に含まれる複数のスラブグループを１つのスラブグループとして再定義する。以上の処理が、第２の判定部１１０６により、第２の最適化部１１０５における最適化計算の結果が、収束判定条件を満たすと判定されるまで繰り返し行われる。
【０１２２】
＜出力部１１０８＞
出力部１１０８は、第２の判定部１１０６により、第２の最適化部１１０５における最適化計算の結果が、収束判定条件を満たすと判定され、キャストが確定されると、それぞれのキャストに含まれるスラブの情報をキャスト計画の立案結果として出力する。出力部１１０８は、例えば、コンピュータディスプレイへの表示、外部装置への送信、および、内部または外部の記憶媒体への記憶の少なくとも何れか１つを行うことにより、それぞれのキャストに含まれるスラブの情報を出力する。例えば、出力部１１０８は、図３に示したスラブ情報３００の項目として、キャストを識別する番号であるキャストＮｏ．を追加した情報を、それぞれのキャストに含まれるスラブの情報として出力することができる。
【０１２３】
また、本実施形態では、前提形態と比較して多くのスラブがキャストに取り込まれるが、それでも全ての組込候補スラブがキャストに取り込まれず、キャストに取り込まれない組込候補スラブが存在する場合が生じる。このような場合には、前提形態と同様に、出力部１１０８は、このようなキャストに含まれない組込候補スラブの情報を合わせて出力することができる。これにより、オペレータは、当該組込候補スラブを、前述したようにして導出されたキャスト計画のどのキャストに組み込むのかをキャスト編成装置１１００の操作により指示することができる。これにより、キャスト編成装置１１００は、当該組込候補スラブを当該指示されたキャストに含めることができる。また、このようにせずに、当該組込候補スラブを、次の立案対象期間におけるキャスト計画に含めるようにしてもよい。
【０１２４】
（フローチャート）
図１３−１、図１３−２のフローチャートを参照しながら、キャスト編成装置１１００により行われる計画作成方法の一例を説明する。
まず、図１３−１のステップＳ１３０１において、スラブ情報取得部２０１は、スラブ情報３００を取得する（図３を参照）。
次に、ステップＳ１３０２において、スラブグループ作成部２０２は、ステップＳ１３０１で取得されたスラブ情報３００に含まれるスラブのそれぞれをグルーピングしてスラブグループを作成し、スラブグループ情報５００を導出する（図５を参照）。ステップＳ１３０２の詳細については図１４を参照しながら後述する。
【０１２５】
次に、ステップＳ１３０３において、スラブグループ選択部２０３は、熱延希望日の最早日が早いスラブグループから順にステップＳ１３０２で作成されたスラブグループ情報５００のスラブグループ（レコード）を並び替えたスラブグループ情報６００から（図６を参照）、スラブグループの一部を、熱延希望日の最早日が早いものから順に所定の個数だけ選択する。
次に、ステップＳ１３０４において、第１のキャスト候補導出部２０４は、ステップＳ１３０３で選択されたスラブグループから、前述した（Ａ２）〜（Ｅ２）の全ての制約条件を満たすものをキャスト候補として導出する。
【０１２６】
次に、ステップＳ１３０５において、第１の最適化部２０５は、（１）式の目的関数ｆの値を、（２）式および（３）式の制約式を満たす範囲で最小にするときの決定変数ｘjを導出することにより、キャスト片を導出する。
次に、ステップＳ１３０６において、第１の判定部２０６は、ステップＳ１３０５における最適化計算の結果が、収束判定条件を満たすか否かを判定する。前述したように本実施形態では、第１の判定部２０６は、スラブグループのキャスト片への採用率が所定の割合以上である場合に、収束判定条件を満たすと判定する。
【０１２７】
この判定の結果、最適化計算の結果が、収束判定条件を満たさない場合には、ステップＳ１３０７に進む。ステップＳ１３０７に進むと、第１のスラブグループ再定義部２０７は、ステップＳ１３０５の最適化計算の結果として「１」が与えられた決定変数ｘjに対応するキャスト候補ｊ（キャスト片）に含まれる複数のスラブグループを１つのスラブグループとして再定義することを、キャスト候補ｊ（キャスト片）のそれぞれについて個別に行い、スラブグループを再定義し、スラブグループ情報９００を生成する（図９を参照）。そして、ステップＳ１３０３の処理に戻り、再定義されたスラブグループのスラブグループ情報９００を用いて、ステップＳ１３０３以降の処理が行われる。
【０１２８】
ステップＳ１３０６において、最適化計算の結果が、収束判定条件を満たすと判定されると、図１３−２のステップＳ１３０８に進む。ステップＳ１３０８に進むと、組込候補スラブグループ有無判定部１１０１は、ステップＳ１３０２で作成されたスラブグループ情報５００に含まれるスラブグループの中に、ステップＳ１３０６で収束判定条件を満たすと判定された際にステップＳ１３０５で導出されたキャスト片に含まれていないスラブグループがあるか否かを判定する。この判定の結果、キャスト片に含まれていないスラブグループがない場合には、ステップＳ１３０９を省略して後述するステップＳ１３１０に進む。一方、キャスト片に含まれていないスラブグループがある場合には、ステップＳ１３０９に進む。
【０１２９】
ステップＳ１３０９に進むと、組込候補スラブグループ有無判定部１１０１は、ステップＳ１３０２で作成されたスラブグループ情報５００の中から、ステップＳ１３０６で収束判定条件を満たすと判定された際にステップＳ１３０５で導出されたキャスト片に含まれていないスラブグループを抽出する。そして、ステップＳ１３１０に進む。
【０１３０】
ステップＳ１３１０に進むと、組込候補スラブグループ有無判定部１１０１は、ステップＳ１３０６で収束判定条件を満たすと判定された際にステップＳ１３０５で導出されたキャスト片の中に、組込候補スラブグループがあるか否かを判定する。ステップＳ１３０９からステップＳ１３１０に進んだ場合、組込候補スラブグループ有無判定部１１０１は、ステップＳ１３０９で抽出したスラブグループの中に、組込候補スラブグループがあるか否かを更に判定する。前述したように本実施形態では、キャスト片、及びスラブグループに含まれるスラブの総重量が、１チャージの重量未満であるキャスト片、及びスラブグループを、組込候補スラブグループとする。この判定の結果、組込候補スラブグループがない場合には、ステップＳ１３１１〜Ｓ１３１７の処理を省略して後述するステップＳ１３１８の処理に進む。一方、組込候補スラブグループがある場合には、ステップＳ１３１１に進む。
【０１３１】
次に、ステップＳ１３１１に進むと、組込候補スラブグループ有無判定部１１０１は、組込候補スラブグループを抽出する。
次に、ステップＳ１３１２において、組込候補スラブグループ分解部１１０２は、ステップＳ１３１１で抽出された組込候補スラブグループのそれぞれを１枚のスラブに分解し、分解したそれぞれのスラブを組込候補スラブとして組込候補スラブリストに登録する。
次に、ステップＳ１３１３において、組込候補スラブ選択部１１０３は、組込候補スラブグループ分解部１１０２により組込候補スラブリストに登録された組込候補スラブのうち、未選択の組込候補スラブを１枚選択する。
【０１３２】
次に、ステップＳ１３１４において、第２のキャスト候補導出部１１０４は、ステップＳ１３０６で収束判定条件を満たすと判定された際にステップＳ１３０５で導出されたキャスト片のうち、ステップＳ１３１１で組込候補スラブグループとして抽出されなかったキャスト片と、ステップＳ１３１３で選択された組込候補スラブとの組み合わせ（部分集合）としてとり得る組み合わせを全数列挙する。そして、第２のキャスト候補導出部１１０４は、列挙した組み合わせ（部分集合）のそれぞれについて、前述した（Ａ２）〜（Ｅ２）の全ての制約条件を満たす組み合わせをキャスト候補として導出する。
【０１３３】
次に、ステップＳ１３１５において、第２の最適化部１１０５は、（１）式の目的関数ｆの値を、（２）式および（３）式の制約式を満たす範囲で最小にするときの決定変数ｘjを導出することにより、キャスト片を導出する。
次に、ステップＳ１３１６において、第２の判定部１１０６は、ステップＳ１３１５における最適化計算の結果が、収束判定条件を満たすか否かを判定する。前述したよう本実施形態では、第２の判定部１１０６は、ステップＳ１３１２で組込候補スラブリストに登録されたスラブの全てについて、ステップＳ１３１３〜Ｓ１３１７の処理が終了した場合に、収束判定条件を満たすと判定する。
【０１３４】
この判定の結果、最適化計算の結果が、収束判定条件を満たさない場合には、ステップＳ１３１７に進む。ステップＳ１３１７に進むと、第２のスラブグループ再定義部１１０７は、ステップＳ１３１５の最適化計算の結果として「１」が与えられた決定変数ｘjに対応するキャスト候補ｊ（キャスト片）に含まれる複数のスラブグループを１つのスラブグループとして再定義することを、キャスト候補ｊ（キャスト片）のそれぞれについて個別に行い、スラブグループを再定義し、スラブグループ情報を生成する。そして、ステップＳ１３１３の処理に戻り、再定義されたスラブグループのスラブグループ情報と未選択の組込候補スラブとを用いて、ステップＳ１３１３以降の処理が行われる。
【０１３５】
そして、ステップＳ１３１６において、最適化計算の結果が、収束判定条件を満たすと判定されると、図１３−２のステップＳ１３１８に進む。ステップＳ１３１８に進むと、出力部１１０８は、それぞれのキャストに含まれるスラブの情報をキャスト計画の立案結果として出力する。そして、図１３−２のフローチャートによる処理を終了する。
【０１３６】
図１４は、図１３−１のステップＳ１３０２の処理の一例を説明するフローチャートである。
まず、ステップＳ１４０１において、スラブグループ作成部２０２は、図１３−１のステップＳ１３０１で取得されたスラブ情報３００に含まれるスラブ（レコード）を、熱延希望日が早いスラブから順に並び替える（図４に示すスラブ情報４００を参照）。
次に、ステップＳ１４０２において、スラブグループ作成部２０２は、並び替えられたスラブ情報４００の行を指定する変数ｋに「０（ゼロ）」を設定する。
【０１３７】
次に、ステップＳ１４０３において、スラブグループ作成部２０２は、並び替えられたスラブ情報４００の行を指定する変数ｋに「１」を加算する。
次に、ステップＳ１４０４において、スラブグループ作成部２０２は、スラブグループ作成部２０２は、既に作成されているスラブグループの中に、並び替えられたスラブ情報４００のｋ行目に登録されているスラブを追加できるスラブグループがあるか否かを判定する。前提形態の＜スラブグループ作成部２０２＞の項で説明したように本実施形態では、（Ａ１）〜（Ｄ１）の全ての判定条件を満たす場合に、既に作成されているスラブグループの中に、選択したスラブを追加できるスラブグループがあると判定する。
【０１３８】
この判定の結果、既に作成されているスラブグループの中に、並び替えられたスラブ情報４００のｋ行目に登録されているスラブを追加できるスラブグループがない場合には、ステップＳ１４０５に進む。ステップＳ１４０５に進むと、スラブグループ作成部２０２は、新たなスラブグループを作成し、並び替えられたスラブ情報４００のｋ行目に登録されているスラブを、当該作成した新たなスラブグループに含める。そして、後述するステップＳ１４０８に進む。
【０１３９】
一方、ステップＳ１４０４の判定の結果、並び替えられたスラブ情報４００のｋ行目に登録されているスラブを追加できるスラブグループがある場合には、ステップＳ１４０６に進む。ステップＳ１４０６に進むと、スラブグループ作成部２０２は、ステップＳ１４０４で追加できると判定されたスラブグループに含まれるスラブと、並び替えられたスラブ情報４００のｋ行目に登録されているスラブの枚数の合計が上限値以下であるか否かを判定する。
【０１４０】
この判定の結果、スラブの枚数の合計が上限値以下である場合には、ステップＳ１４０７に進む。ステップＳ１４０７に進むと、スラブグループ作成部２０２は、並び替えられたスラブ情報４００のｋ行目に登録されているスラブを、ステップＳ１４０４において当該スラブを追加できると判定されたスラブグループに含める。そして、後述するステップＳ１４０８に進む。
【０１４１】
一方、ステップＳ１４０６において、スラブの枚数の合計が上限値以下でないと判定された場合には、前述したステップＳ１４０５に進む。前述したようにステップＳ１４０５では、スラブグループ作成部２０２は、新たなスラブグループを作成し、並び替えられたスラブ情報４００のｋ行目に登録されているスラブを、当該作成した新たなスラブグループに含める。そして、ステップＳ１４０８に進む。
【０１４２】
ステップＳ１４０８に進むと、スラブグループ作成部２０２は、並び替えられたスラブ情報４００に含まれる全てのスラブが、何れかのスラブグループに割り当てられたか否かを判定する。この判定の結果、並び替えられたスラブ情報４００に含まれる全てのスラブが、何れかのスラブグループに割り当てられていない場合には、ステップＳ１４０３に戻る。そして、並び替えられたスラブ情報４００に含まれる全てのスラブが、何れかのスラブグループに割り当てられるまで、ステップＳ１４０３〜Ｓ１４０８の処理を繰り返し行う。
【０１４３】
以上のようにして並び替えられたスラブ情報４００に含まれる全てのスラブが、何れかのスラブグループに割り当てられると、スラブグループ情報５００が得られる（図５を参照）。そして、ステップＳ１４０９において、スラブグループ作成部２０２は、スラブグループ情報５００をスラブグループ選択部２０３に出力する。そして、図１３−１のステップＳ１３０３に進む。
【０１４４】
（実施例）
次に、本実施形態の実施例を説明する。
本実施例では、１０１８枚のスラブを対象にして、前提形態の手法と本実施形態の手法とのそれぞれでキャスト計画を立案した。図１５は、その結果を示す図である。具体的に図１５（ａ）は、前提形態の手法で立案したキャスト計画の結果を示し、図１５（ｂ）は、本実施形態の手法で立案したキャスト計画の結果を示す。
【０１４５】
図１５（ａ）および図１５（ｂ）において、Ｎｏは、キャストの識別番号である。各キャストのキャスト重量充填率は、キャストの最大重量に対する、当該キャストに含まれるスラブのスラブ重量（図３を参照）の合計値の割合を百分率で表記したものである。尚、キャストの最大重量は、前述したように、１つのキャストにおいて許容されるスラブの最大重量である。各キャストのコイル長充填率は、最大コイル長に対する、当該キャストに含まれるスラブのコイルの長さ（図３を参照）の合計長の割合を百分率で表記したものである。尚、最大コイル長は、熱延工程において１ロット（１チャンス）で圧延できるコイルの長さの最大値である。
【０１４６】
図１５（ａ）に示すように、前提形態の手法で立案されたキャスト計画の結果では、８つのキャストが作成され、合計８２９枚のスラブがこれら８つのキャストの何れかに取り込まれた。したがって、組込候補スラブ（何れのキャストにも組み込まれなかったスラブ）は１８９（＝１０１８−８２９）枚であった。この結果に対して、本実施形態の手法（図１３−２の処理）を適用すると、合計８９３枚のスラブがキャストに取り込まれ、組込候補スラブは１２５（＝１０１８−８９３）枚に削減した。また、図１５（ｂ）に示すように、Ｎｏ．１、２、７のキャストにおいて、スラブ重量充填率、またはコイル長充填率が向上した。
【０１４７】
以上のように本実施形態の手法により、より多くのスラブをキャストに充当することが可能となる。また、前提形態の手法による計算時間は９２４秒であるのに対し、前提形態の手法と本実施形態の手法（図１３−２の処理）の合計の計算時間は９９１秒であった。したがって、本実施形態の手法（図１３−２の処理）を追加したとしても、大きく計算時間を延長することなく、より適したキャスト計画を立案することが可能である。
【０１４８】
（まとめ）
以上のように本実施形態では、製造条件が所定の範囲内で一致するスラブを同一のスラブグループとし、同一のキャストに含めることができる条件を満たすスラブグループをキャスト候補として導出し、最適なキャスト候補をキャスト片として導出する。このようにして導出したキャスト片に含まれていないスラブグループと、当該キャスト片とから、組込候補スラブグループを抽出し、組込候補スラブグループを１枚ごとのスラブ（組込候補スラブ）に分解する。そして、組込候補スラブグループとなっていないキャスト片のうち、同一のキャストに含めることができる条件を満たすキャスト片に組込候補スラブを組み込んでキャスト候補とし、最適なキャスト候補をキャスト片として導出し、キャスト片を更新（即ち、スラブグループを再定義）する。このような処理を、全ての組込候補スラブについて行う。したがって、（前提形態のまとめ）の項で説明した効果に加え、実用的な計算時間内で、より多くのスラブをキャストに自動的に取り込むことができるという効果が得られる。
【０１４９】
（変形例）
＜変形例１＞
本実施形態では、第１の判定部２０６は、スラブのキャスト片への採用率が所定の割合以上である場合に、第１の最適化部２０５における最適化計算の結果が、収束判定条件を満たすと判定する場合を例に挙げて説明した。ここで、「所定の割合」を１００％（即ち、全てのスラブがキャスト片に含まれる）としてもよい。第１の最適化部２０５における最適化計算の結果、全てのスラブがキャスト片に含まれる場合であっても、当該キャスト片が組込候補スラブグループになることがあり得るので、このような収束判定条件を採用することができる（図１２のキャスト片１２０６、１２０７を参照）。
【０１５０】
この他、スラブグループｉの総数に対する、キャスト片の何れかに含まれるスラブグループｉの総数の割合が所定の割合以上である場合に、収束判定条件を満たすと判定してもよい。また、スラブグループｉ（スラブ）のキャスト片への採用率を、全てのスラブグループｉに含まれるスラブの重量に対する、キャスト片の何れかに含まれるスラブグループｉに含まれるスラブの重量の割合としてもよい。更に、スラブグループｉ（スラブ）のキャスト片への採用率を、全てのスラブグループｉに含まれるスラブのコイル長さの合計に対する、キャスト片の何れかに含まれるスラブグループｉに含まれるスラブのコイル長さの合計の割合としてもよい。また、前回の最適化計算の結果として得られた目的関数ｆの値と、今回の最適化計算の結果として得られた目的関数ｆの値との差が所定値以下、または、前回の最適化計算の結果として得られた目的関数ｆの値と、今回の最適化計算の結果として得られた目的関数ｆの値とが同じである場合に、収束判定条件を満たすと判定してもよい。
【０１５１】
＜変形例２＞
本実施形態では、第２の判定部１１０６は、組込候補スラブリストに登録された組込候補スラブの全てについて、キャスト候補の導出と、最適なキャスト候補（キャスト片）の組み合わせの導出とが行われると、収束判定条件を満たすと判定する場合を例に挙げて説明した。しかしながら、必ずしもこのようにする必要はない。例えば、スラブグループｉのキャスト片への採用率が所定の割合以上である場合に、収束判定条件を満たすと判定してもよいし、スラブのキャスト片への採用率が所定の割合以上である場合に、収束判定条件を満たすと判定してもよい。
【０１５２】
ここで、第１の判定部２０６と、第２の判定部１１０６において、収束判定条件として閾値（前記所定の割合）を除いて同じ条件を設定する場合、第２の判定部１１０６における閾値（前記所定の割合）を、第１の判定部２０６における閾値（前記所定の割合）よりも大きくするのが好ましい。本実施形態で説明したように、第１の判定部２０６におけるスラブのキャスト片への採用率に対する閾値（前記所定の割合）を７０［％］とする場合、第２の判定部１１０６におけるスラブのキャスト片の採用率に対する閾値（前記所定の割合）を例えば８０［％］にすることができる。
【０１５３】
この他、変形例１で説明したように、スラブグループｉ（スラブ）のキャスト片への採用率を、スラブの重量で規定してもよいし、コイル長さで規定してもよい。
【０１５４】
＜変形例３＞
本実施形態では、組込候補スラブ選択部１１０３は、組込候補スラブを１枚ずつ選択する場合を例に挙げて説明した。しかしながら、必ずしもこのようにする必要はなく、組込候補スラブを複数枚ずつ選択してもよい。このようにする場合、第２のキャスト候補導出部１１０４は、キャスト片と、１つまたは複数の組込候補スラブとの組み合わせ（部分集合）としてとり得る組み合わせを全数列挙する。また、組込候補スラブ選択部１１０３で選択する組込候補スラブの数を固定とせずに、例えば、図１３−２に示したステップＳ１３１３〜Ｓ１３１６の処理の繰り返し数に応じて異ならせてもよい。
【０１５５】
＜変形例４＞
本実施形態では、第２のキャスト候補導出部１１０４は、キャスト片と、組込候補スラブとの組み合わせ（部分集合）としてとり得る組み合わせを全数列挙する場合を例に挙げて説明した。しかしながら、全数でなくとも、少なくともこれらの組み合わせを複数列挙していればよい。例えば、キャスト片同士の組み合わせと、１つまたは複数のキャスト片と組込候補スラブとの組み合わせとの少なくとも何れか一方を更に列挙してもよい。例えば、キャスト片同士の組み合わせと、組込候補スラブ同士の組み合わせと、キャスト片と組込候補スラブとの組み合わせとしてとり得る組み合わせを全数列挙してもよい。
【０１５６】
＜変形例５＞
本実施形態では、組込候補スラブグループ有無判定部１１０１は、キャスト片、及びスラブグループに含まれるスラブの総重量が、１チャージの重量未満であるキャスト片、及びスラブグループを、組込候補スラブグループとする場合を例に挙げて説明した。しかしながら、必ずしもこのようにする必要はない。例えば、キャスト片、及びスラブグループに含まれるスラブの総重量に代えて、サイズ（例えば、キャスト片・スラブグループにおけるスラブのコイルの長さの合計）を用いてもよい。また、キャスト片、及びスラブグループに含まれるスラブの数量がある閾値以下の場合に組込候補スラブグループとしてもよい。
【０１５７】
＜変形例６＞
本実施形態では、スラブ情報３００のスラブ（レコード）を熱延希望日が早いスラブから順に並び替える場合を例に挙げて説明した。しかしながら、スラブ情報３００に含まれるスラブの製造条件に基づいてスラブ情報３００のスラブ（レコード）を並び替えるようにしていれば、必ずしもこのようにする必要はない。圧延工程においては一般に幅が広いスラブから狭いスラブへと圧延する操業をしているが、前後に圧延されるスラブ幅の変化量が小さいほど操業が安定する傾向がある。そこで、例えば、スラブ幅が狭いスラブ（レコード）から順に並び替えるようにしてもよい。このようにすることで、同一キャスト内におけるスラブ幅のばらつきが抑制され、操業が安定化する。尚、スラブ幅、スラブ厚、およびスラブ重量のように数値で表されているものについては、例えば、当該数値が降順または昇順になるようにスラブ（レコード）を並び替える。一方、材質のように記号で表されているものについては、例えば、辞書順（アルファベット順や五十音順）に従って記号が昇順または降順になるようにスラブ（レコード）を並び替える。
以上のことは、スラブグループ選択部２０３においてスラブグループ情報５００のスラブグループ（レコード）を並び替える場合についても同じである。
【０１５８】
＜変形例７＞
本実施形態では、前述した（Ａ１）〜（Ｄ１）の全ての判定条件を満たす場合に、既に作成されているスラブグループの中に、スラブ情報４００から選択したスラブを含める場合を例に挙げて説明した。しかしながら、スラブ情報３００に含まれるスラブの製造条件に基づいて定められる判定条件に基づいて、既に作成されているスラブグループの中に、スラブ情報４００から選択したスラブを含めるか否かを判定するようにしていれば、必ずしもこのようにする必要はない。例えば、条件（Ｄ１）を省略してもよい。
【０１５９】
＜変形例８＞
本実施形態では、列挙したスラブグループの組み合わせ（部分集合）のそれぞれについて、前述した（Ａ２）〜（Ｅ２）の全ての制約条件を満たすもののみをキャスト候補として採用する場合を例に挙げて説明した。しかしながら、同一のキャストに含めることができる条件（制約条件）を満たすものをキャスト候補として採用していれば、必ずしもこのようにする必要はない。例えば、（Ｂ２）〜（Ｅ２）のうちの少なくとも何れか１つを採用していればよい。
【０１６０】
＜変形例９＞
本実施形態では、スラブグループ選択部２０３で選択するスラブグループの数が一定である場合を例に挙げて説明した。しかしながら、スラブグループ選択部２０３で選択するスラブグループの数を異ならせてもよい。図１３−１に示したステップＳ１３０３〜Ｓ１３０６の処理を繰り返すと、スラブグループの再定義によって、スラブグループに属するスラブ枚数が増加する。すると、前述した（Ａ２）〜（Ｅ２）の制約条件を満たさなくなるキャスト候補が発生しやすくなることから、キャスト候補の数が減少し、ステップＳ１３０３〜Ｓ１３０６の１回当たりの処理の時間が短くなる傾向となる。したがって、図１３−１で示したステップＳ１３０３〜Ｓ１３０７に示す処理を繰り返し、スラブグループに含まれるスラブ数が多くなるにつれて、スラブグループ選択部２０３で選択するスラブグループの数を大きくしてもよい。これにより、ステップＳ１３０４において導出されるキャスト候補数の減少を抑制して、より多数の組み合わせの中からキャスト片を最適化結果として得るとともに、収束に要するまでのステップＳ１３０３〜Ｓ１３０７の繰り返し計算回数を抑制することが可能となる。
【０１６１】
＜変形例１０＞
本実施形態では、同一のキャストに含まれるスラブは同一のロット（チャンス）として熱延工程で熱間圧延されるようにするための制約条件として、（Ｃ２）〜（Ｅ２）の制約条件を例に挙げて説明した。しかしながら、同一のキャストに含まれるスラブは同一のロット（チャンス）として熱延工程で熱間圧延されるようにするための制約条件は、（Ｃ２）〜（Ｅ２）の制約条件の少なくとも１つを含んでいればよい。例えば、熱延対象のスラブや設備に応じて、（Ｃ２）〜（Ｅ２）の制約条件のうち、何れの制約条件を採用するかを決定することができる。
【０１６２】
＜変形例１１＞
本実施形態では、キャスト候補ｊに含まれるスラブのスラブ幅の最大値と最小値との差Ｗ、キャスト候補ｊに含まれるスラブのスラブ厚の最大値と最小値との差Ｔ、キャスト候補ｊに含まれるスラブの熱延希望日の平均値と最早日との差Ｄ、およびキャスト数を、キャスト候補ｊの評価指標として用いる場合を例に挙げて説明した。しかしながら、ロット単位で生産される製品の生産計画を作成する場合には、ロットの数を評価していれば、その他の評価指標は適宜決定すればよい。すなわち、本実施形態の例では、評価指標には、少なくともキャスト数が含まれていればよい。また、キャスト候補ｊに含まれるスラブの熱延希望日の平均値と最早日との差Ｄに加えてまたは代えて、キャスト候補ｊに含まれるスラブの熱延希望日の最遅日と最早日との差を評価指標として用いてもよい。また、材質を評価指標に含めてもよい。
【０１６３】
＜変形例１２＞
本実施形態では、同じ内容のスラブグループｉ（すなわち、構成するスラブの組み合わせが同じスラブグループｉ）が複数存在しないことを前提としているため、（２）式および（３）式の制約式の右辺の値を「１」にした。しかしながら、例えば、同じ内容のスラブグループｉが複数ある場合には、（２）式および（３）式の制約式の右辺の値は、その数になる。例えば、同じ内容のスラブグループｉが２つある場合、当該スラブグループｉに対する制約式として、（２）式および（３）式の制約式の右辺の値を「２」にした制約式が与えられる。このようにすることによって、同じ内容のスラブグループｉが複数ある場合であっても、最適なキャスト候補に含めるスラブグループを、属するスラブの数に応じて決定することができる。
【０１６４】
＜変形例１３＞
キャスト計画の対象となるスラブの数が多い場合には、本実施形態で説明したようにスラブグループを作成するのが好ましい。前述したように計算時間を短縮することができるからである。しかしながら、例えば、キャスト計画の対象となるスラブの数が多くない場合には、スラブグループを作成しなくてもよい。
【０１６５】
＜変形例１４＞
本実施形態において、１回の最適化計算における計算時間の上限値を設け、１回の最適化計算における計算時間が当該上限値になった場合には、その時点で得られている解を最適なキャスト候補と見なすようにしてもよい。
【０１６６】
＜変形例１５＞
本実施形態では、キャスト計画を作成する場合を例に挙げて説明した。しかしながら、本実施形態で説明した手法は、キャスト計画以外の、ロットに複数の製品を纏めてロット単位で生産される複数の製品の生産計画に適用することができる。
【０１６７】
例えば、本実施形態で説明した手法を厚板生産計画（板取り問題）に適用してもよい。スラブを目標の板厚に圧延した後、圧延後のスラブを注文に応じて剪断し厚板を得る。よって、どのスラブからどの厚板を切り出すのかを決める必要がある。かかる内容を厚板生産計画として作成する。この場合、「厚板」が「製品」に対応し、「スラブ」が「ロット」に対応し、「剪断（切り出し）」が「製造」に対応する。また、１つのスラブから剪断する厚板の合計重量がスラブ重量に十分に達しない場合、当該スラブを組込候補ロットとみなすことができる。
【０１６８】
スラブ情報に相当する厚板情報には、例えば、厚板の材質、サイズ、および納期などの製造条件が含まれる。（Ａ２）〜（Ｅ２）に相当する条件として、厚板を同一のスラブから切り出すことが可能な条件（制約条件）が与えられる。この制約条件には、例えば、同一のスラブに所定の材質と異なる厚板が含まれないことや、厚板の総重量が上限値を上回らないことや、同一のスラブに含まれる厚板の厚みが所定の範囲内の厚みであることを含めることができる。この制約条件を満たすスラブがスラブ候補になる。尚、厚板をグルーピングすることもできる。例えば、本実施形態で説明した「圧延希望日」を「納期」に置き換えてスラブグループ作成部２０２の項で説明した処理を行うことにより厚板グループを作成することができる。最適化の際の評価指標としては、スラブの数に加え、例えば、スラブの余剰部分などを含めることができる。スラブの余剰部分とは、スラブからの切り出し後、何れの厚板にもならないスラブの部分である。このスラブの余剰部分が小さいほど、評価値は、評価が高いことを示すようにする。この他、本実施形態で説明したように、製品（厚板）のサイズや納期を用いた評価指標を採用することができる。また、最適化計算の際の制約式は、キャスト計画における制約式と同様に設定することができる（（２）式、（３）式を参照）。例えば、（２）式に対応する制約式として、同じ内容の厚板（または厚板グループ）について、最適なスラブ候補に含まれる厚板（または厚板グループ）の数と、スラブ候補を導出するのに先立って選択される厚板（または厚板グループ）の数とが同じであることが定式化された制約式を採用することができる。
【０１６９】
また、本実施形態で説明した手法を熱延計画（チャンス編成問題）に適用してもよい。連続して熱間圧延する複数のスラブを決定する必要がある。この複数のスラブの単位をチャンスと呼ぶ。この場合、「熱延板（コイル）」が「製品」に対応し、「チャンス」が「ロット」に対応し、「圧延」が「製造」に対応する。また、１つのチャンスに割り当てられた熱延板の数量、重量、または圧延長が十分でない場合。当該チャンスを組込候補ロットとみなし、当該チャンスにより製造される熱延板（コイル）を組込候補製品とみなすことができる。スラブ情報に対応する熱延板情報には、例えば、熱延板（コイル）の材質、スラブのサイズ、熱延板（コイル）のサイズ、および熱延希望日などの製造条件が含まれる。（Ａ２）〜（Ｅ２）に相当する条件として、例えば、（Ｃ２）〜（Ｅ２）を用いることができる。この制約条件を満たすチャンスがチャンス候補になる。尚、熱延板をグルーピングすることもできる。例えば、スラブグループ作成部２０２の項で説明した処理を行うことにより熱延板グループを作成することができる。最適化の際の評価指標としては、チャンスの数を用いることができる。この他、本実施形態で説明したように、製品（熱延板）のサイズや熱延希望日を用いた評価指標を採用することができる。また、最適化計算の際の制約式は、キャスト計画における制約式と同様に設定することができる（（２）式、（３）式を参照）。例えば、（２）式に対応する制約式として、同じ内容の熱延板（または熱延板グループ）について、最適なチャンス候補に含まれる熱延板（または熱延板グループ）の数と、チャンス候補を導出するのに先立って選択される熱延板（または熱延板グループ）の数とが同じであることが定式化された制約式を採用することができる。
【０１７０】
また、本実施形態で説明した手法の適用対象は、ロット単位で纏めて複数の製品を生産するための計画に限定されず、ロット単位で纏めて複数の製品を処理するための計画であってもよい。
例えば、本実施形態で説明した手法を山立て作成計画（山立て問題）に適用してもよい。鋼材置場（ヤード）においてクレーン等の搬送機器を用いて複数のスラブを複数の山に分けて山積みする際の各スラブが属する山と各山における各スラブの位置（積段）とを決定する必要がある。かかる内容を山立て計画として作成する。この場合、「スラブ」が「製品」に対応し、「山」が「ロット」に対応し、「山立て（搬送機器によるスラブの搬送）」が「処理」に対応する。また、１つの山に割り当てられたスラブの数量がある閾値に達しない場合、当該山を組込候補ロットとみなし、当該山を構成するスラブを組込候補製品とみなすことができる。スラブ情報は、本実施形態で説明したスラブ情報３００を用いることができる。（Ａ２）〜（Ｅ２）に相当する条件（制約条件）として、（Ａ２）〜（Ｅ２）の「キャスト」を「山」に置き換えた条件を含めることができる。この制約条件を満たす山が山候補になる。尚、本実施形態と同様にスラブをグルーピングしてスラブグループを作成することができる。最適化の際の評価指標としては、山の数に加え、例えば、山繰りの回数などを含めることができる。山繰りとは、山を作る際に、最終的な場所とは異なる場所にスラブを一旦仮置きすることをいう。山繰りの回数が小さいほど、評価値は、評価が高いことを示すようにする。この他、本実施形態で説明したように、スラブのサイズや熱延希望日を用いた評価指標を採用することができる。また、最適化計算の際の制約式は、キャスト計画における制約式と同様に設定することができる（（２）式、（３）式を参照）。
【０１７１】
＜変形例１６＞
本実施形態では、目的関数ｆの値を最小化する最適化問題を例に挙げて説明した。しかしながら、例えば、（１）式の右辺に（−１）を掛けることにより、目的関数ｆの値を最大化する最適化問題としてもよい。
【０１７２】
［第２の実施形態］
次に、第２の実施形態を説明する。第１の実施形態では、組込候補スラブグループを１枚ごとのスラブ（組込候補スラブ）に分解し、組込候補スラブグループとならなかったキャスト片と、組込候補スラブとからなる最適なキャスト候補の組み合わせを集合分割問題として解くことで、キャストに組み込まれるスラブの数を増加させることができる。この結果、制約条件が許容される範囲内においては組余りスラブをキャスト片に組み込むことが可能となる。
【０１７３】
しかし、第１の実施形態では、各キャストの制約条件が上限値または下限値に近づくと、組込候補スラブを何れのキャストにも組み込むことができなくなり、最終的に、何れのキャストにも組み込まれないスラブが発生する。このような場合には、制約条件の上限値または下限値をオペレータが見直して再度最適化計算を実施することがある。なぜならば、例えば、前述したように、（Ｄ２）幅移行制約は、スラブをスラブ幅が広いものから順に並び替えた場合に相前後する２つのスラブの幅の差をある上限値以下とする制約であるが、わずかに上限値から外れているだけであれば操業上において問題になることはなく、上限値からの外れ量の程度によっては許容可能な制約条件だからである。
【０１７４】
しかしながら、第１の実施形態の手法によって何れのキャストにも組み込まれなかった組込候補スラブを各キャストに取り込む際に、オペレータが、どの制約条件がどの程度の違反が生じているかを把握することができなければ、再度、最適化計算を実施する場合における制約条件の修正方針が得られず、試行錯誤により制約条件の修正と最適化計算を繰り返すこととなり、立案作業が長時間化する虞がある。
【０１７５】
そこで、本実施形態では、第１の実施形態において何れのキャスト（最適なキャスト候補（キャスト片）の組み合わせ）にも組み込まれなかった組込候補スラブの、各キャストに対する制約条件の違反量を求めて表示することで、オペレータが制約条件の修正方針を容易に決定することができるようにする。このように本実施形態は、第１の実施形態に対し、何れのキャストにも組み込まれなかった組込候補スラブの各キャストに対する制約違反量を求めて表示することと、その結果に応じてオペレータの操作により修正された制約条件を使って再計算を行うこととを追加する点が主として異なる。したがって、本実施形態の説明において、前提形態および第１の実施形態と同一の部分については、図１〜図１５に付した符号と同一の符号を付す等して詳細な説明を省略する。ここで、修正が可能な制約条件は、定量化が可能な制約条件である。本実施形態では、前提形態で説明した（Ｂ２）キャスト重量、（Ｃ２）コイル長、および（Ｄ２）幅移行制約が、修正が可能な制約条件であり、その他の制約条件は修正ができないものとする場合を例に挙げて説明する。
【０１７６】
（キャスト編成装置１６００）
図１６は、本実施形態におけるキャスト編成装置１６００の機能的な構成の一例を示す図である。キャスト編成装置１６００のハードウェアは、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＨＤＤ、および各種のインターフェースを備える情報処理装置や、専用のハードウェアを用いることにより実現される。
【０１７７】
＜第２のキャスト候補導出部１６０１＞
第２のキャスト候補導出部１６０１は、第１の実施形態の第２のキャスト候補導出部１１０４と同様に、第１の判定部２０６により収束判定条件を満たすと判定された際に第１の最適化部２０５により導出されたキャスト片のうち、組込候補スラブグループ有無判定部１１０１により組込候補スラブグループとして抽出されなかったキャスト片、または、第２のスラブグループ再定義部１１０７により再定義されたスラブグループであるキャスト片と、組込候補スラブ選択部１１０３により選択された組込候補スラブとの組み合わせ（部分集合）としてとり得る組み合わせを全数列挙し、列挙した組み合わせ（部分集合）のうち、（Ａ２）〜（Ｅ２）の全ての制約条件を満たす組み合わせをキャスト候補として導出する。
【０１７８】
本実施形態の第２のキャスト候補導出部１６０１は、列挙した組み合わせ（部分集合）が、（Ａ２）〜（Ｅ２）の制約条件のうちで、満たさないものが存在する場合には、以下の処理を行う。
まず、第２のキャスト候補導出部１６０１は、当該組み合わせ（部分集合）を構成するキャスト片および組込候補スラブについて、（Ａ２）〜（Ｅ２）の制約条件のうち、当該組込候補スラブを当該キャスト片に組み込んだ場合に満たさない制約条件を導出して記憶する。
【０１７９】
次に、第２のキャスト候補導出部１６０１は、（Ｂ２）〜（Ｅ２）の制約条件のうち、当該組込候補スラブを当該キャスト片に組み込んだ場合に満たさない制約条件の違反量を計算し、記憶する。ここで、制約条件の違反量とは、当該制約条件の上限値または下限値からの外れ量である。例えば、（Ｂ２）キャストの重量の上限値が１３００［ｔｏｎ］であり、組込候補スラブをキャスト片に組み込んだ場合に、当該キャスト片の重量が１４００［ｔｏｎ］になる場合、当該組込候補スラブを当該キャスト片に組み込んだ場合の制約条件の違反量は、１００（＝１４００−１３００）［ｔｏｎ］になる。尚、本実施形態では、（Ａ１）材質制約は、定量化できないので、制約条件の違反量の計算対象から除外される。また、本実施形態では、第２のキャスト候補導出部１６０１は、修正が不可能な制約条件であっても、定量化が可能な制約条件である（Ｅ２）同幅本数制約については、制約条件の違反量を計算して記憶する。以下の説明では、制約条件の違反量を必要に応じて制約違反量と称する。また、組込候補スラブをキャスト片に組み込んだ場合に満たさなくなる制約条件を必要に応じて違反制約条件と称する。
【０１８０】
＜第２の最適化部１６０２＞
第２の最適化部１６０２は、第１の最適化部１１０５と同様に、第２のキャスト候補導出部１１０４により導出されたキャスト候補の中から、最適なキャスト候補（キャスト片）の組み合わせを、集合分割問題を解くことにより導出する。
本実施形態の第２の最適化部１６０２は、以上の処理に加え、今回（最新の）の最適化計算の結果と、その１つ前の前回の最適化計算の結果とが変わった場合に以下の処理を行う。尚、第２のキャスト候補導出部１６０１が列挙した組み合わせ（部分集合）に、（Ａ２）〜（Ｅ２）の全ての制約条件を満たす組み合わせがある場合に、前回の最適化計算の結果と今回の最適化計算の結果とが変わることになる。
【０１８１】
また、本実施形態では、前回の最適化計算の結果と今回の最適化計算の結果とが変わる場合、第２の最適化部１６０２は、第２の最適化部１６０２の今回の最適化計算により組込候補スラブの組み込みの対象となったキャスト片に対して、当該最適化計算の時点よりも前に第２のキャスト候補導出部１６０１により計算され記憶された違反制約条件および制約違反量を破棄する。
以下、図１７を参照しながら、第２のキャスト候補導出部１６０１および第２の最適化部１６０２による制約違反量の計算、記憶、破棄の方法の具体例を説明する。
図１７は、制約違反量の計算、記憶、破棄の方法の一例を概念的に示す図である。図１７（ｂ）において、×は、その横に示されるキャスト片に組込候補スラブを組み込むと当該制約条件を満たさないことを示し、○は、その横に示されるキャスト片に組込候補スラブを組み込んでも当該制約条件を満たすことを示す。
【０１８２】
図１７では、第１の判定部２０６により収束判定条件を満たすと判定された際に第１の最適化部２０５により導出されたキャスト片のうち、組込候補スラブグループ有無判定部１１０１により組込候補スラブグループとして抽出されなかったキャスト片、または、第２のスラブグループ再定義部１１０７により再定義されたスラブグループであるキャスト片が、キャスト片１７０１ａ〜１７０１ｄであるとする。また、組込候補スラブ選択部１１０３により組込候補スラブ１７０２ａ、１７０２ｂ、１７０２ｃの順で組込候補スラブが選択されるものとする。
【０１８３】
この場合、３つの組込候補スラブ１７０２ａ、１７０２ｂ、１７０２ｃがあるので、組込候補スラブ選択部１１０３、第２のキャスト候補導出部１６０１、第２の最適化部１６０２、第２の判定部１１０６、および第２のスラブグループ再定義部１１０７の処理は、３回繰り返される。図１７（ｂ）の１巡目、２巡目、３巡目は、この繰り返し回数を示す。
【０１８４】
まず、１巡目では、組込候補スラブ１７０２ａは、何れのキャスト片１７０１ａ〜１７０１ｄに組み込まれても、（Ａ２）〜（Ｅ２）の制約条件のうちで満たさないものが存在する（図１７（ｂ）の１巡目における組込候補スラブ１７０２ａの横に示す×を参照）。この場合、第２のキャスト候補導出部１６０１は、キャスト片１７０１ａ〜１７０１ｄと、組込候補スラブ１７０２ａとの組み合わせのそれぞれについて、組込候補スラブ１７０２ａをキャスト片１７０１ａ〜１７０１ｄに組み込んだ場合にどの制約条件が満たされないのか（即ち違反制約条件）を導出して記憶する。また、第２のキャスト候補導出部１６０１は、（Ｂ２）〜（Ｅ２）の制約条件のうち、組込候補スラブ１７０２ａをキャスト片１７０１ａ〜１７０１ｄに組み込んだ場合に満たさない制約条件の違反量（制約違反量）を計算し、記憶する。
【０１８５】
第２の最適化部１６０２は、第２のキャスト候補導出部１６０１により導出されたキャスト候補の中から、最適なキャスト候補（キャスト片）の組み合わせを、集合分割問題を解くことにより導出する。ここでは、キャスト片１７０１ａ〜１７０１ｄに変化がないため、最適化計算の結果は、前回と今回とで変わらない。尚、前回と今回とでキャスト片に変化がない場合、第２の最適化部１６０２は、最適化計算を行わないようにしてもよい。
【０１８６】
１巡目では、組込候補スラブ１７０２ａ〜１７０２ｃの全てについて処理が終わっていないので、第２の判定部１１０６は、第２の最適化部１６０２における最適化計算の結果が、収束判定条件を満たさないと判定する。そして、第２のスラブグループ再定義部１１０７は、スラブグループ（キャスト片）を再定義する。１巡目では、キャスト片１７０１ａ〜１７０１ｃに変化がないので、キャスト片１７０１ａ〜１７０１ｄがそのまま採用される。
【０１８７】
次に、２巡目では、組込候補スラブ１７０２ｂは、キャスト片１７０１ｃに組み込まれた場合に、（Ａ２）〜（Ｅ２）の全ての制約条件を満たし、その他のキャスト片１７０１ａ、１７０１ｂ、１７０１ｄに組み込まれた場合には、（Ａ２）〜（Ｅ２）の制約条件のうちで、満たさないものが存在する（図１７（ｂ）の２巡目における組込候補スラブ１７０２ｂの横に示す○、×を参照）。
【０１８８】
この場合、第２のキャスト候補導出部１６０１は、組込候補スラブ１７０２ｂは、キャスト片１７０１ｃに組み込まれた場合に、（Ａ２）〜（Ｅ２）の全ての制約条件を満たすことを判定する前に、組込候補スラブ１７０２ｂをキャスト片１７０１ａ、１７０１ｂ、１７０１ｄに組み込んだ場合に満たさない制約条件（違反制約条件）と、（Ｂ２）〜（Ｅ２）の制約条件のうち、組込候補スラブ１７０２ｂをキャスト片１７０１ａ、１７０１ｂ、１７０１ｄに組み込んだ場合に満たさない制約条件の違反量（制約違反量）とを記憶した場合、それらを破棄する。組込候補スラブ１７０２ｂはキャスト片１７０１ｃに組み込まれるため、これらの情報は不要となるからである。
【０１８９】
第２の最適化部１６０２は、第２のキャスト候補導出部１６０１により導出されたキャスト候補の中から、最適なキャスト候補（キャスト片）の組み合わせを、集合分割問題を解くことにより導出する。ここでは、キャスト片１７０１ａ、１７０１ｂ、１７０１ｄは、１巡目と変化がない。一方、キャスト片１７０１ｃには組込候補スラブ１７０２ｂが組み込まれる。
【０１９０】
２巡目では、組込候補スラブ１７０２ａ〜１７０２ｃの全てについて処理が終わっていないので、第２の判定部１１０６は、第２の最適化部１６０２における最適化計算の結果が、収束判定条件を満たさないと判定する。そして、第２のスラブグループ再定義部１１０７は、スラブグループ（キャスト片）を再定義する。２巡目では、第２のスラブグループ再定義部１１０７は、組込候補スラブ１７０２ｂが組み込まれたキャスト片１７０１ｃを新たなスラブグループ（キャスト片１７０１ｃ´）として再定義する。その他のキャスト片１７０１ａ、１７０１ｂ、１７０１ｄには変化がないので、キャスト片１７０１ａ、１７０１ｂ、１７０１ｄがそのまま採用される。
【０１９１】
また、第２の最適化部１６０２は、２巡目の最適化計算において組込候補スラブ１７０２ｂの組み込みの対象となったキャスト片１７０１ｃに対して１巡目において第２のキャスト候補導出部１６０１により計算され記憶された違反制約条件および制約違反量を破棄する。即ち、第２の最適化部１６０２は、組込候補スラブ１７０２ａをキャスト片１７０１ｃに組み込んだ場合の違反制約条件および制約違反量を破棄する。
【０１９２】
次に、３巡目では、組込候補スラブ１７０２ｃは、何れのキャスト片１７０１ａ、１７０１ｂ、１７０１ｃ´、１７０１ｄに組み込まれても、（Ａ２）〜（Ｅ２）の制約条件うちで、を満たさないものが存在する（図１７（ｃ）の１巡目における組込候補スラブ１７０２ｃの横に示す×を参照）。この場合、第２のキャスト候補導出部１６０１は、キャスト片１７０１ａ、１７０１ｂ、１７０１ｃ´、１７０１ｄと、組込候補スラブ１７０２ｃとのそれぞれについて、組込候補スラブ１７０２ｃをキャスト片１７０１ａ、１７０１ｂ、１７０１ｃ´、１７０１ｄに組み込んだ場合にどの制約条件が満たされないのか（即ち違反制約条件）を導出して記憶する。また、第２のキャスト候補導出部１６０１は、（Ｂ２）〜（Ｅ２）の制約条件のうち、組込候補スラブ１７０２ｃをキャスト片１７０１ａ、１７０１ｂ、１７０１ｃ´、１７０１ｄに組み込んだ場合に満たさない制約条件の違反量（制約違反量）を計算し、記憶する。
【０１９３】
第２の最適化部１６０２は、第２のキャスト候補導出部１６０１により導出されたキャスト候補の中から、最適なキャスト候補（キャスト片）の組み合わせを、集合分割問題を解くことにより導出する。ここでは、キャスト片１７０１ａ、１７０１ｂ、１７０１ｃ´、１７０１ｄに変化がないため、最適化計算の結果は、前回と今回とで変わらない。以上により、組込候補スラブ１７０２ａ〜１７０２ｃの全てについて処理が終わるので、第２の判定部１１０６は、第２の最適化部１６０２における最適化計算の結果が、収束判定条件を満たすと判定する。
【０１９４】
図１７に示す例では、キャスト片１７０１ａに組込候補スラブ１７０２ａを組み込んだ場合の制約違反量と、キャスト片１７０１ｂに組込候補スラブ１７０２ａを組み込んだ場合の制約違反量と、キャスト片１７０１ｄに組込候補スラブ１７０２ａを組み込んだ場合の制約違反量とが（破棄されずに）記憶される。また、キャスト片１７０１ａに組込候補スラブ１７０２ｃを組み込んだ場合の制約違反量と、キャスト片１７０１ｂに組込候補スラブ１７０２ｃを組み込んだ場合の制約違反量と、キャスト片１７０１ｃ´に組込候補スラブ１７０２ｃを組み込んだ場合の制約違反量と、キャスト片１７０１ｄに組込候補スラブ１７０２ｃを組み込んだ場合の制約違反量とが（破棄されずに）記憶される。即ち、図１７（ｂ）の１巡目および３巡目の×で示されている８つの場合のうち、１巡目のキャスト片１７０１ｃに組込候補スラブ１７０２ａを組み込んだ場合を除く７つの場合の制約条件および制約違反量が記憶される。
【０１９５】
＜出力部１６０３＞
全ての組込候補スラブが何れかのキャスト片に組み込まれた場合、出力部１６０３は、第１の実施形態の出力部１１０８と同様に、それぞれのキャストに含まれるスラブの情報をキャスト計画の立案結果として出力する。
一方、少なくとも何れか１つの組込候補スラブがキャスト片に組み込まれていない場合、出力部１６０３は、（Ｂ２）〜（Ｄ２）の制約条件ごとに、どの組込候補スラブをどのキャスト片に組み込んだ場合にどの位の制約違反量となるのかを示す情報を表示する。
【０１９６】
図１８は、（Ｂ２）キャスト重量についての制約違反量の一例を示す図である。図１８では、例えば、組込候補スラブ２をＣａｓｔ６のキャスト片に組み込むと、制約違反量が０．４［ｔｏｎ］になることを示す。尚、図１８の各マスの数値は、第２の判定部１１０６により、第２の最適化部１６０２における最適化計算の結果が、収束判定条件を満たすと判定された時点で得られる情報である。他の（Ｃ２）〜（Ｄ２）の制約条件についても図１８に示すような情報が得られる。
【０１９７】
出力部１６０３は、例えば、どの組込候補スラブをどのキャスト片に組み込んだ場合にどの位の制約違反量となるのかを（Ｂ２）〜（Ｄ２）の制約条件ごとに示す情報を、図１８に示すように、表により表示することができる。また、出力部１６０３は、どの組込候補スラブをどのキャスト片に組み込んだ場合にどの位の制約違反量となるのかを（Ｂ２）〜（Ｄ２）の制約条件ごとに示す情報を、グラフにより表示することができる。図１９は、図１８に示す（Ｂ２）キャスト重量についての制約違反量をボックスプロットで示す図である。出力部１６０３は、図１９に示すように、どの組込候補スラブをどのキャスト片に組み込んだ場合にどの位の制約違反量となるのかを示す情報を、ボックスプロットにより表示してもよい。また、出力部１６０３は、各キャスト片を構成するスラブおよび組込候補スラブのスラブ情報を表示する。例えば、出力部１６０３は、図１８や図１９のキャストの欄（Ｃａｓｔ１等）をクリックすると、当該キャストを構成するスラブのスラブ情報の一覧をポップアップ表示することができる。同様に、出力部１６０３は、図１８の組込候補スラブの欄（組込候補スラブ１等）をクリックすると、当該組込候補スラブのスラブ情報の一覧をポップアップ表示することができる。
【０１９８】
オペレータは、図１８や図１９に示す情報から、どの制約条件がどの程度違反しているのかを把握し、修正が可能な（Ｂ２）〜（Ｄ２）の制約条件の中から修正すべき制約条件と当該制約条件の上限値の修正値を試行錯誤に依らずに決定することができる。
また、組込候補スラブをキャスト片に組み込むと、修正ができない（Ａ２）および（Ｅ２）の制約条件に違反する場合、出力部１６０３は、以上の情報に加え、どの組込候補スラブをどのキャスト片に組み込んだ場合に、当該制約条件に違反するのかを示す情報を表示してもよい。この表示は、図１８や図１９に示す情報と同じ画面で行われても違う画面で行われてもよい。
【０１９９】
＜制約条件入力部１６０４＞
制約条件入力部１６０４は、キャスト編成装置１６００のユーザインターフェースに対するオペレータの操作に基づいて、修正が可能な（Ｂ２）〜（Ｄ２）の制約条件の中から修正すべき制約条件と当該制約条件の上限値の修正値を入力する。そして、制約条件入力部１６０４による入力があると、前述したスラブグループ選択部２０３、第１のキャスト候補導出部２０４、第１の最適化部２０５、第１の判定部２０６、第１のスラブグループ再定義部２０７、組込候補スラブグループ有無判定部１１０１、組込候補スラブグループ分解部１１０２、組込候補スラブ選択部１１０３、第２のキャスト候補導出部１６０１、第２の最適化部１６０２、第２の判定部１１０６、第２のスラブグループ再定義部１１０７、および出力部１６０３の処理が再び行われる。このとき、第１のキャスト候補導出部２０４および第２のキャスト候補導出部１６０１は、修正後の制約条件を用いて、最適なキャスト候補の組み合わせを導出する。また、第２のキャスト候補導出部１６０１は、修正後の制約条件を用いて、制約違反量を計算する。
【０２００】
図２０は、以上の計算を３回繰り返して行った場合（即ち、制約条件入力部１６０４による修正値の入力を２回行った場合）の各制約条件の上限値と組余り数とを表形式で示す図である。図２０において、回数は、繰り返し計算の回数である。コイル長は、（Ｃ２）コイル長の上限値を示す。キャスト重量は、（Ｂ２）キャスト重量の上限値を示す。幅移行は、（Ｄ２）幅移行制約の上限値を示す。組余り数は、第２の最適化部１６０２による最適化計算の結果、何れのキャスト片にも組み込まれなかった組込候補スラブの数を示す。図２１、図２２、図２３は、それぞれ、図２０に示す１回目、２回目、３回目の計算の結果から得られる（Ｂ２）〜（Ｄ２）の各制約条件の制約違反量をボックスプロットで表した図である。
【０２０１】
具体的に、図２１（ａ）、図２１（ｂ）、図２１（ｃ）は、それぞれ、図２０に示す１回目の計算の結果から得られる（Ｃ２）コイル長の制約違反量、（Ｂ２）キャスト重量の制約違反量、（Ｄ２）幅移行制約の制約違反量を示す。図２２（ａ）、図２２（ｂ）、図２２（ｃ）は、それぞれ、図２０に示す２回目の計算の結果から得られる（Ｃ２）コイル長の制約違反量、（Ｂ２）キャスト重量の制約違反量、（Ｄ２）幅移行制約の制約違反量を示す。図２３（ａ）、図２３（ｂ）、図２３（ｃ）は、それぞれ、図２０に示す３回目の計算の結果から得られる（Ｃ２）コイル長の制約違反量、（Ｂ２）キャスト重量の制約違反量、（Ｄ２）幅移行制約の制約違反量を示す。
【０２０２】
図２１（ｂ）および図２１（ｃ）に示すように、１回目の計算では、キャスト重量および幅移行制約に関する制約違反が発生している。コイル長に関しては制約違反が生じていないため、制約条件の緩和をする対象を（Ｂ２）キャスト重量および（Ｄ２）幅移行制約とした。そこで、まず、（Ｂ２）キャスト重量の上限値を２１００［ｔｏｎ］から２４００［ｔｏｎ］へ緩和して２回目の計算を行った結果、図２０に示すように組余り数は１２枚から９枚に削減した。図２２（ｃ）に示すように、２回目の計算では、（Ｄ２）幅移行制約に違反が生じているため、（Ｄ２）幅移行制約の上限値を９０［ｍｍ］から１００［ｍｍ］へ緩和して３回目の計算を行った。その結果、図２０に示すように組余り数は９枚から１枚に削減した。
【０２０３】
尚、例えば、図２１において、Ｃａｓｔ５のキャスト片には何れの組込候補スラブを組み込んでも、（Ｂ２）〜（Ｄ２）の制約条件に違反しないので、Ｃａｓｔ５に対しては何も示されていない。これは、Ｃａｓｔ５のキャスト片に各組込候補スラブを組み込むと、その他の制約条件（例えば（Ａ２）材質制約）に違反するため、Ｃａｓｔ５のキャスト片には各組込候補スラブを組み込むことができないことを表す。どの組込候補スラブをどのキャスト片に組み込むと、当該その他の制約条件に違反するのかを示す情報を表示することにより、オペレータは、Ｃａｓｔ５のキャスト片に組込候補スラブを組み込めない理由を把握することができる。
また、ここでは、（Ｂ２）キャスト重量、（Ｃ２）コイル長、および（Ｄ２）幅移行制約の順に制約条件の上限値を修正する場合を例に挙げて示したが、制約条件の上限値を修正する順番は、オペレータが定めることができ任意である。また、複数の制約条件の上限値を一度に修正してもよい。
【０２０４】
（フローチャート）
図２４−１、図２４−２のフローチャートを参照しながら、キャスト編成装置１６００により行われる計画作成方法の一例を説明する。
図２４−１のステップＳ２４０１〜図２４−２のステップＳ２４１２は、図１３−１のステップＳ１３０１〜図１３−２のステップＳ１３１２と同じであるので、ここでは、その詳細な説明を省略する。尚、ステップＳ２４１０において、組込候補スラブグループがないと判定された場合には、後述するステップＳ２４２４に進む。
【０２０５】
ステップＳ２４１２において組込候補スラブが組込候補スラブリストに登録されると、ステップＳ２４１３に進む。ステップＳ２４１３に進むと、組込候補スラブ選択部１１０３は、組込候補スラブリストに登録された組込候補スラブのうち、未選択の組込候補スラブを１枚選択する。
次に、ステップＳ２４１４において、第２のキャスト候補導出部１６０１は、ステップＳ２４０６で収束判定条件を満たすと判定された際にステップＳ２４０５で導出されたキャスト片のうち、ステップＳ２４１１で組込候補スラブグループとして抽出されなかったキャスト片と、ステップＳ２４１３で選択された組込候補スラブとの組み合わせ（部分集合）としてとり得る組み合わせを全数列挙する。
【０２０６】
次に、ステップＳ２４１５において、第２のキャスト候補導出部１６０１は、列挙した組み合わせ（部分集合）の中に、（Ａ２）〜（Ｅ２）の全ての制約条件を満たす組み合わせがあるか否かを判定する。この判定の結果、列挙した組み合わせ（部分集合）の中に、（Ａ２）〜（Ｅ２）の全ての制約条件を満たす組み合わせがある場合には、ステップＳ２４１６に進む。ステップＳ２４１６に進むと、図１３−２のステップＳ１３１５と同様に、第２のキャスト候補導出部１６０１は、列挙した組み合わせ（部分集合）のそれぞれについて、前述した（Ａ２）〜（Ｅ２）の全ての制約条件を満たす組み合わせをキャスト候補として導出する。そして、後述するステップＳ２４１８に進む。
【０２０７】
一方、列挙した組み合わせ（部分集合）の中に、（Ａ２）〜（Ｅ２）の全ての制約条件を満たす組み合わせがない場合には、ステップＳ２４１７に進む。ステップＳ２４１７に進むと、第２のキャスト候補導出部１６０１は、当該組み合わせ（部分集合）を構成するキャスト片および組込候補スラブについて、（Ａ２）〜（Ｅ２）の制約条件のうち、当該組込候補スラブを当該キャスト片に組み込んだ場合にどの制約条件が満たされないのか（即ち違反制約条件）を導出して記憶する。また、第２のキャスト候補導出部１６０１は、（Ｂ２）〜（Ｅ２）の制約条件のうち、当該組込候補スラブを当該キャスト片に組み込んだ場合に満たさない制約条件の違反量（制約違反量）を計算し、記憶する。そして、ステップＳ２４１８に進む。
【０２０８】
ステップＳ２４１８に進むと、第２の最適化部１６０２は、（１）式の目的関数ｆの値を、（２）式および（３）式の制約式を満たす範囲で最小にするときの決定変数ｘjを導出することにより、キャスト片を導出する。
次に、ステップＳ２４１９において、第２の最適化部１６０２は、直近のステップＳ２４１８の最適化計算の結果と、その１つ前のステップＳ２４１８の最適化計算の結果とに変化があるか否か（即ち、直近のステップＳ２４１８で導出されたキャスト片と、その１つ前にステップＳ２４１８で導出されたキャスト片とに違いがあるか否か）を判定する。この判定の結果、最適化計算の結果に変化がない場合には、ステップＳ２４２０を省略して後述するステップＳ２４２１に進む。
【０２０９】
一方、最適化計算の結果に変化がある場合には、ステップＳ２４２０に進む。ステップＳ２４２０に進むと、第２の最適化部１６０２は、今回のステップＳ２４１８の最適化計算において組込候補スラブの組み込みの対象となったキャスト片に対して、前回のステップＳ２４１８の最適化計算の前にステップＳ２４１７で計算され記憶された違反制約条件および制約違反量を破棄する。そして、ステップＳ２４２１に進む。
【０２１０】
ステップＳ２４２１に進むと、第２の判定部１１０６は、ステップＳ２４１８における最適化計算の結果が、収束判定条件を満たすか否かを判定する。本実施形態でも第１の実施形態と同様に、第２の判定部１１０６は、ステップＳ２４１２で組込候補スラブリストに登録されたスラブの全てについて、ステップＳ２４１３〜Ｓ２４２２の処理が終了した場合に、収束判定条件を満たすと判定する。
【０２１１】
この判定の結果、最適化計算の結果が、収束判定条件を満たさない場合には、ステップＳ２４２２に進む。ステップＳ２４２２に進むと、第２のスラブグループ再定義部１１０７は、ステップＳ２４１８の最適化計算の結果として「１」が与えられた決定変数ｘjに対応するキャスト候補ｊ（キャスト片）に含まれる複数のスラブグループを１つのスラブグループとして再定義することを、キャスト候補ｊ（キャスト片）のそれぞれについて個別に行い、スラブグループを再定義し、スラブグループ情報を生成する。そして、ステップＳ２４１３の処理に戻り、再定義されたスラブグループのスラブグループ情報と未選択の組込候補スラブとを用いて、ステップＳ２４１３以降の処理が行われる。
【０２１２】
そして、ステップＳ２４２１において、最適化計算の結果が、収束判定条件を満たすと判定されると、ステップＳ２４２３に進む。ステップＳ２４２３に進むと、出力部１６０３は、組込候補スラブリストに登録された全ての組込候補スラブが何れかのキャスト片に組み込まれたか否かを判定する。この判定の結果、組込候補スラブリストに登録された全ての組込候補スラブが何れかのキャスト片に組み込まれた場合には、ステップＳ２４２４に進む。ステップＳ２４２４に進むと、出力部１６０３は、それぞれのキャストに含まれるスラブの情報をキャスト計画の立案結果として出力する。そして、図２４−２のフローチャートによる処理を終了する。
【０２１３】
一方、組込候補スラブリストに登録された全ての組込候補スラブのうち、何れのキャスト片にも組み込まれていないものが存在する場合には、ステップＳ２４２５に進む。ステップＳ２４２５に進むと、出力部１６０３は、（Ｂ２）〜（Ｄ２）の制約条件ごとに、どの組込候補スラブをどのキャスト片に組み込んだ場合にどの位の制約違反量となるのかを示す情報等、オペレータによる制約条件の修正の指針となる情報を出力する（図１８、図１９等を参照）。
次に、ステップＳ２４２６において、制約条件入力部１６０４は、修正が可能な（Ｂ２）〜（Ｄ２）の制約条件の中から修正すべき制約条件と当該制約条件の上限値の修正値とが入力されたか否かを判定する。この判定の結果、修正すべき制約条件と当該制約条件の上限値の修正値が入力されなかった場合には、図２４−２のフローチャートによる処理を終了する。例えば、キャスト編成装置１６００のユーザインターフェースに対するオペレータの操作に基づいて、図２４−１および図２４−２のフローチャートによる処理の終了が指示された場合に、修正すべき制約条件と当該制約条件の上限値の修正値が入力されなかったとして、図２４−２のフローチャートによる処理を終了する。
【０２１４】
一方、修正すべき制約条件と当該制約条件の上限値の修正値が入力された場合には、ステップＳ２４０３に戻る。そして、修正後の制約条件を用いて、ステップＳ２４０３以降の処理が行われる。
（まとめ）
以上のように本実施形態では、組込候補スラブを各キャスト片に組み込んだ際の制約違反量を抽出、表示する。従って、第１の実施形態で説明した効果に加え、以下の効果を奏する。例えば、違反が生じていない制約条件の閾値（上限値または下限値）を変更して最適化計算を繰り返すというような非効率的な作業を削減できると共に、前回の計算条件においてネックとなる制約条件を特定して、当該制約条件の閾値を修正することができる。このため、何れのキャスト片にも組み込まれない組込候補スラブの数が少ないキャスト計画の立案を効率的に得ることができる。
【０２１５】
（変形例）
＜変形例１＞
本実施形態では、修正が可能な制約条件が（Ｂ２）キャスト重量、（Ｃ２）コイル長、および（Ｄ２）幅移行制約である場合を例に挙げて説明した。しかしながら、修正が可能な制約条件は、定量化が可能な制約条件であれば、必ずしもこれらの制約条件に限定されない。例えば、材質制約として、各スラブの成分値の範囲を規定した場合、材質制約は定量化されるので、修正が可能な制約条件に含めることができる。
【０２１６】
＜変形例２＞
また、本実施形態では、前回の最適化計算の結果と今回の最適化計算の結果とが変わる場合、今回の最適化計算において組込候補スラブの組み込みの対象となったキャスト片に対して、当該最適化計算の時点よりも前に第２のキャスト候補導出部１６０１で計算され記憶された違反制約条件および制約違反量を破棄する場合を例に挙げて説明した。しかしながら、必ずしもこのようにする必要はない。他の例を２つ以下に示す。
【０２１７】
第１の例として、このような違反制約条件および制約違反量を破棄しなくてもよい。このようにする場合、出力部１６０３は、当該制約違反量も含めて、（Ｂ２）〜（Ｄ２）の制約条件ごとに、どの組込候補スラブをどのキャスト片に組み込んだ場合にどの位の制約違反量となるのかを示す情報をグラフや表を用いて表示する。図１７に示す例では、組込候補スラブ１７０２ａをキャスト片１７０１ｃに組み込んだ場合の制約違反量も破棄されずに記憶される。即ち、第１の例では、図１７（ｂ）の１巡目および３巡目の×で示されている８つの場合の制約違反量が記憶される。
【０２１８】
第２の例として、違反制約条件および制約違反量を第２のキャスト候補導出部１６０１で求めずに、第２の判定部１１０６の判定の後に求めてもよい。このようにする場合、図１６の第２の判定部１１０６と出力部１６０３との間に、制約違反量計算部が配置される。制約違反量計算部は、例えば、第２の判定部１１０６により収束判定条件を満たすと判定された際の第２の最適化部１６０２の最適化計算の結果、何れのキャスト片にも組み込まれなかった組込候補スラブを特定する。そして、制約違反量計算部は、第２の判定部１１０６により収束判定条件を満たすと判定された際の第２の最適化部１６０２の最適化計算の結果として得られたキャスト片に、特定した組込候補スラブが組み込まれた場合の制約違反量を計算する。また、このようにする場合、例えば、図２４−２のフローチャートにおいて、ステップＳ２４１５、Ｓ２４１７、Ｓ２４１９、Ｓ２４２０の処理が不要になり、ステップＳ２４２１とステップＳ２４２３との間において、制約違反量計算部が前述した処理を行う。
【０２１９】
図１７に示す例では、キャスト片１７０１ｃ´に組込候補スラブ１７０２ａを組み込んだ場合の制約違反量が記憶される。即ち、第２の例では、図１７（ｂ）の１巡目および３巡目の×で示されている８つの場合のうち、１巡目のキャスト片１７０１ｃに組込候補スラブ１７０２ａを組み込んだ場合を除く７つの場合と、キャスト片１７０１ｃ´に組込候補スラブ１７０２ａを組み込んだ場合の合計８つの場合の制約違反量が記憶される。
【０２２０】
＜変形例３＞
本実施形態では、キャスト候補を導出する際の制約条件（（Ｂ２）〜（Ｄ２））を修正の対象とする場合を例に挙げて説明した。しかしながら、スラブグループを作成する際の判定条件（（Ａ１）〜（Ｄ１））のうち、定量化が可能な判定条件（例えば（Ａ１）〜（Ｃ１））を修正の対象に含めてもよい。このようにする場合、制約条件入力部１６０４は、例えば、修正が可能な（Ｂ２）〜（Ｄ２）の制約条件と、修正が可能な（Ａ１）〜（Ｃ１）の判定条件の中から修正すべき判定条件・制約条件と、当該判定条件・制約条件の上限値の修正値を入力する。スラブグループ作成部２０２は、判定条件の上限値の修正があった場合には、修正後の判定条件の上限値に基づいて、スラブグループを再作成する。
【０２２１】
また、このようにする場合、図２４−１、図２４−２のフローチャートは、例えば、以下のように変更される。まず、ステップＳ２４２６において、制約条件入力部１６０４は、修正が可能な（Ｂ２）〜（Ｄ２）の制約条件の中から修正すべき制約条件と当該制約条件の上限値の修正値とが入力されたか否かと、修正が可能な（Ａ１）〜（Ｃ１）の判定条件の中から修正すべき判定条件と当該判定条件の上限値の修正値とが入力されたか否かと、を判定する。この判定の結果、修正が可能な（Ｂ２）〜（Ｄ２）の制約条件の中から修正すべき制約条件と当該制約条件の上限値の修正値とが入力された場合には、ステップＳ２４０３に戻る。また、ステップＳ２４２６において、修正が可能な（Ａ１）〜（Ｃ１）の判定条件の中から修正すべき判定条件と当該判定条件の上限値の修正値とが入力された場合には、ステップＳ２４０２に戻る。この場合、制約条件入力部１６０４は、修正が可能な（Ａ１）〜（Ｃ１）の判定条件の中から修正すべき判定条件と当該判定条件の上限値の修正値を、スラブグループ作成部２０２に出力する（図１６において、制約条件入力部１６０４からスラブグループ作成部２０２に向かう矢印線が追加される）。これらの入力がなかった場合には、図２４−２のフローチャートによる処理を終了する。その他、スラブグループを作成する際の判定条件（（Ａ１）〜（Ｄ１））のうち、定量化が可能な判定条件（例えば（Ａ１）〜（Ｃ１））を修正の対象とし、キャスト候補を導出する際の制約条件（（Ｂ２）〜（Ｄ２））を修正の対象に含めなくてもよい。
【０２２２】
＜変形例４＞
本実施形態では、制約違反量を計算して表示する場合を例に挙げて説明した。しかしながら、制約違反量に加えてまたは代えて制約違反数を計算して表示してもよい。ここで、制約違反数とは、制約条件毎の組込候補スラブおよびキャスト片の組み合わせの数であって、組込候補スラブをキャスト片に組み込むと制約条件を満たさなくなる組み合わせの数である。本実施形態で制約違反量を破棄する場合と同様に、第２の最適化部１６０２の最適化計算により組込候補スラブの組み込みの対象となったキャスト片と、組込候補スラブとの組み合わせの数であって、当該最適化計算の時点よりも前に計数された数を制約違反数から減算してもよい。また、変形例２の第１の例のように、このような減算を行わなくてもよい。また、変形例２の第２の例のように、第２の判定部１１０６の判定の後に、最終的に定まったキャスト片と、何れのキャスト片にも組み込まれなかった組込候補スラブとの組み合わせの数を制約違反数としてもよい。図１７の場合を例に挙げて説明すると、本実施形態の例では、制約違反数は７となる。変形例２の第１の例では、制約違反数は８となる。変形例２の第２の例では、制約違反数は８となる。即ち、１つの制約条件について出力（表示）される制約違反量の数と、１つの制約条件について出力（表示）される制約違反数とはそれぞれ対応する。
その他、本実施形態においても、第１の実施形態で説明した種々の変形例を採用することができる。
【０２２３】
［その他の変形例］
尚、以上説明した本発明の実施形態は、コンピュータがプログラムを実行することによって実現することができる。また、前記プログラムを記録したコンピュータ読み取り可能な記録媒体及び前記プログラム等のコンピュータプログラムプロダクトも本発明の実施形態として適用することができる。記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
また、以上説明した本発明の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【０２２４】
［請求項との関係］
本実施形態で説明した事項と請求項との関係を以下に列挙する。尚、本発明が以下のものに限定されるものではないことは、変形例などで説明した通りである。
計画作成装置は、例えば、キャスト編成装置１１００に対応する。
取得手段は、例えば、スラブ情報取得部２０１を用いることにより実現される。
製品情報は、例えば、スラブ情報３００に対応する。
グループ作成手段は、例えば、スラブグループ作成部２０２を用いることにより実現される。同一グループ包含条件は、例えば、（Ａ１）〜（Ｄ１）の判定条件を用いることにより実現される。
製品選択手段は、例えば、スラブグループ選択部２０３を用いることにより実現される。
第１のロット候補導出手段は、例えば、第１のキャスト候補導出部２０４を用いることにより実現される。同一ロット包含条件は、例えば、（Ａ２）〜（Ｅ２）の制約条件を用いることにより実現される（第１の実施形態の変形例８、１５等も参照）。
第１の最適化手段は、例えば、第１の最適化部２０５を用いることにより実現される。
第１の最適化手段で用いられる目的関数は、例えば（１）式により実現される。
第１の最適化手段で用いられるロット候補導出評価指標は、例えば、（４）式の各項により実現される（変形例１１等も参照）。
第１の制約式は、例えば、第１の最適化部２０５で用いられる（２）式、（３）式により実現される。
第１の最適ロット候補は、例えば、第１の最適化部２０５により導出される最適なキャスト候補（キャスト片）の組み合わせにより実現される。
第１の判定手段は、例えば、第１の判定部２０６を用いることにより実現される（第１の実施形態の変形例１等も参照）。
第１の再定義手段は、例えば、第１のスラブグループ再定義部２０７を用いることにより実現される。
組込候補製品抽出手段は、例えば、組込候補スラブグループ有無判定部１１０１および組込候補スラブグループ分解部１１０２を用いることにより実現される。組込候補製品は、例えば、組込候補スラブグループに対応し、組込候補スラブグループは、例えば、キャスト片１２０６、１２０７を構成するスラブグループのそれぞれと、スラブグループ１２０８、１２０９である。所定の属性は、スラブの総重量に対応する（第１の実施形態の変形例５等も参照）。
組込候補製品選択手段は、例えば、組込候補スラブ選択部１１０３を用いることにより実現される（第１の実施形態の変形例３等も参照）。
第２のロット候補導出手段は、例えば、第２のキャスト候補導出部１１０４を用いることにより実現される。
第２の最適化手段は、例えば、第２の最適化部１１０５を用いることにより実現される。
第２の最適化手段で用いられる目的関数は、例えば（１）式により実現される。
第２の最適化手段で用いられるロット候補導出評価指標は、例えば、（４）式の各項により実現される。
第２の制約式は、例えば、第２の最適化部１１０５で用いられる（２）式、（３）式により実現される（第１の実施形態の変形例２等も参照）。
第２の最適ロット候補は、例えば、第２の最適化部１１０５により導出される最適なキャスト候補（キャスト片）の組み合わせにより実現される。
第２の判定手段は、例えば、第２の判定部１１０６を用いることにより実現される。
第２の再定義手段は、例えば、第２のスラブグループ再定義部１１０７を用いることにより実現される。
出力手段は、例えば、出力部１１０８を用いることにより実現される。
グループ作成手段は、例えば、スラブグループ作成部２０２を用いることにより実現される（第１の実施形態の変形例１３等も参照）。
製品グループは、スラブグループに対応する。
計算手段は、例えば、第２のキャスト候補導出部１６０１を用いることにより実現される（第２の実施形態の変形例２、変形例３等も参照）。
制約・判定条件は、例えば、（Ａ１）〜（Ｄ１）の判定条件、（Ａ２）〜（Ｅ２）の制約条件により実現される（第２の実施形態の変形例３等も参照）。定量化が可能な前記制約・判定条件は、例えば、（Ａ１）〜（Ｃ１）の判定条件、（Ｂ２）〜（Ｄ２）の制約条件により実現される（第２の実施形態の変形例３等も参照）。
製品違反情報は、例えば、製品違反量および製品違反数（第２の実施形態の変形例４等を参照）を用いることにより実現される。
組込対象製品グループは、例えば、第１の判定部２０６により収束判定条件を満たすと判定された際に第１の最適化部２０５により導出されたキャスト片のうち、組込候補スラブグループ有無判定部１１０１により組込候補スラブグループとして抽出されなかったキャスト片、または、第２のスラブグループ再定義部１１０７により再定義されたスラブグループであるキャスト片を用いることにより実現される。
入力手段は、例えば、制約条件入力部１６０４を用いることにより実現される（第２の実施形態の変形例３等も参照）。
前記出力手段が、前記組込候補製品と、前記組込対象製品グループとの部分集合のうち、前記同一ロット包含条件を満たす部分集合がある場合、当該組込候補製品と当該同一ロット包含条件を満たす部分集合を構成する組込対象製品グループ以外の組込対象製品グループと、当該組込候補製品との部分集合に基づく前記制約違反情報を出力しないことは、例えば、ステップＳ２４２５において出力される制約違反量が、ステップＳ２４１７において記憶される制約違反量のうち、ステップＳ２４２０で破棄されなかった制約違反量であること（即ち、ステップＳ２４１５において、ステップＳ２４１４で列挙された組み合わせ（部分集合）の中に、（Ａ２）〜（Ｅ２）の全ての制約条件を満たす組み合わせがある場合には、ステップＳ２４１７の処理が行われないこと）に対応する。
【符号の説明】
【０２２５】
１１００：キャスト編成装置、２０１：スラブ情報取得部、２０２：スラブグループ作成部、２０３：スラブグループ選択部、２０４：第１のキャスト候補導出部、２０５：第１の最適化部、２０６：第１の判定部、２０７：第１のスラブグループ再定義部、１１０１：組込候補スラブグループ有無判定部、１１０２：組込候補スラブグループ分解部、１１０３：組込候補スラブ選択部、１１０４・１６０１：第２のキャスト候補導出部。１１０５・１６０２：第２の最適化部、１１０６：第２の判定部、１１０７：第２のスラブグループ再定義部、１１０８・１６０３：出力部、３００：スラブ情報、４００：並び替え後のスラブ情報、５００：スラブグループ情報、６００：並び替え後のスラブグループ情報、９００：再定義後のスラブグループ情報、１２０１〜１２０７：キャスト片、１２０８〜１２０９：スラブグループ、１６０４：制約条件入力部、１７０１ａ〜１７０１ｄ：キャスト片、１７０２ａ〜１７０２ｂ：組込候補スラブ
【図１】
2018101389.tif 000005
【図２】
2018101389.tif 000006
【図３】
2018101389.tif 000007
【図４】
2018101389.tif 000008
【図５】
2018101389.tif 000009
【図６】
2018101389.tif 000010
【図７】
2018101389.tif 000011
【図８】
2018101389.tif 000012
【図９】
2018101389.tif 000013
【図１０】
2018101389.tif 000014
【図１１】
2018101389.tif 000015
【図１２】
2018101389.tif 000016
【図１３−１】
2018101389.tif 000017
【図１３−２】
2018101389.tif 000018
【図１４】
2018101389.tif 000019
【図１５】
2018101389.tif 000020
【図１６】
2018101389.tif 000021
【図１７】
2018101389.tif 000022
【図１８】
2018101389.tif 000023
【図１９】
2018101389.tif 000024
【図２０】
2018101389.tif 000025
【図２１】
2018101389.tif 000026
【図２２】
2018101389.tif 000027
【図２３】
2018101389.tif 000028
【図２４−１】
2018101389.tif 000029
【図２４−２】
2018101389.tif 000030