(57)【要約】【課題】計算資源が限られた環境であっても、最適制御における厳密な最適解を高速に得ること。【解決手段】複数の生産者が生産及び供給する供給量の最適な配分を決定する生産配分決定装置であって、各生産者の供給量と限界コストとの関係を表す供給曲線モデルから、前記複数の生産者の総供給量と限界コストとの関係を表す総供給曲線モデルを計算する総供給曲線計算手段と、前記総供給曲線モデルに基づいて、需要量に応じた最適な限界コストを示す最適価格を計算するための最適価格テーブルを作成する最適価格テーブル作成手段と、与えられた需要量と、前記最適価格テーブルとに基づいて、前記与えられた需要量に応じた最適価格を計算する最適価格計算手段と、前記各生産者の供給曲線モデルと、前記最適価格とに基づいて、前記各生産者それぞれの供給量の最適な配分を示す最適供給量を計算する供給量計算手段と、を有することを特徴とする。【選択図】図３
2020095457.tif 000002
【特許請求の範囲】
【請求項１】
複数の生産者が生産及び供給する供給量の最適な配分を決定する生産配分決定装置であって、
各生産者の供給量と限界コストとの関係を表す供給曲線モデルから、前記複数の生産者の総供給量と限界コストとの関係を表す総供給曲線モデルを計算する総供給曲線計算手段と、
前記総供給曲線モデルに基づいて、需要量に応じた最適な限界コストを示す最適価格を計算するための最適価格テーブルを作成する最適価格テーブル作成手段と、
与えられた需要量と、前記最適価格テーブルとに基づいて、前記与えられた需要量に応じた最適価格を計算する最適価格計算手段と、
前記各生産者の供給曲線モデルと、前記最適価格とに基づいて、前記各生産者それぞれの供給量の最適な配分を示す最適供給量を計算する供給量計算手段と、
を有することを特徴とする生産配分決定装置。
【請求項２】
前記最適価格テーブル作成手段は、
前記総供給曲線モデルを、限界コストを表す変数について整理し、論理和又は論理積で分割することで、前記最適価格テーブルを作成する、ことを特徴とする請求項１に記載の生産配分決定装置。
【請求項３】
前記最適価格テーブルには、１以上のレコードが含まれ、
前記レコードには、需要量の上限及び下限と、前記需要量の上限及び下限に対応する計算式とが含まれ、
前記計算式は、需要量に応じた最適価格を計算するための式である、ことを特徴とする請求項１又は２に記載の生産配分決定装置。
【請求項４】
前記最適価格計算手段は、
前記最適価格テーブルに含まれる１以上のレコードのうち、前記与えられた需要量が前記需要量の上限及び下限の範囲内となるレコードを探索し、
探索したレコードに含まれる前記計算式に対して、前記与えられた需要量を代入することで、前記最適価格を計算する、ことを特徴とする請求項３に記載の生産配分決定装置。
【請求項５】
前記総供給曲線計算手段は、
前記総供給量を表す変数と、前記限界コストを表す変数と、論理記号とを用いた一階述語論理式に対して限定記号消去法を用いることで、前記総供給量を表す変数と、前記限界コストを表す変数との関係を表す総供給曲線モデルを計算する、ことを特徴とする請求項１乃至４の何れか一項に記載の生産配分決定装置。
【請求項６】
前記生産配分決定装置は、各時刻ｓ（ｓ＝１，・・・，Ｔ）において前記複数の生産者が生産及び供給する供給量の最適な配分を決定する生産配分決定装置であり、
前記各生産者の現在の供給量と、前記各生産者の供給量の変化率制約と、前記各生産者の供給能力の上限及び下限をそれぞれ示す能力上限及び能力下限とに基づいて、時刻ｓにおける前記各生産者の供給量の上限及び下限をそれぞれ示す供給上限及び供給下限を計算する上下限計算手段を有し、
前記最適価格計算手段は、
与えられた需要量と、前記最適価格テーブルとに基づいて、前記与えられた需要量に応じた、時刻ｓにおける最適価格を計算し、
前記供給量計算手段は、
前記時刻ｓにおける各生産者の供給上限及び供給下限と、前記各生産者の供給曲線モデルと、前記時刻ｓにおける最適価格とに基づいて、前記最適供給量を計算する、ことを特徴とする請求項１に記載の生産配分決定装置。
【請求項７】
前記最適価格テーブル作成手段は、
前記総供給曲線モデルを、限界コストを表す変数と前記需要量を表す変数とについて整理し、論理和又は論理積で分割することで、前記最適価格テーブルを作成する、ことを特徴とする請求項６に記載の生産配分決定装置。
【請求項８】
前記最適価格テーブルには、１以上のレコードが含まれ、
前記レコードには、需要量の上限及び下限をそれぞれ表す第１の数式群及び第２の数式群と、前記需要量を表す変数が含まれない第３の数式群と、前記第１の数式群、前記第２の数式群及び前記第３の数式群に対応する計算式とが含まれ、
前記計算式は、需要量に応じた、時刻ｓにおける最適価格を計算するための式である、ことを特徴とする請求項６又は７に記載の生産配分決定装置。
【請求項９】
前記最適価格計算手段は、
前記最適価格テーブルに含まれる１以上のレコードのうち、前記与えられた需要量が、前記第１の数式群の最小値及び前記第２の数式群の最大値の範囲内となり、かつ、前記第３の数式群が真となるレコードを探索し、
探索したレコードに含まれる前記計算式に対して、前記与えられた需要量と前記供給上限及び供給下限を代入することで、前記最適価格を計算する、ことを特徴とする請求項８に記載の生産配分決定装置。
【請求項１０】
前記総供給曲線計算手段は、
前記総供給量を表す変数と、前記限界コストを表す変数と、前記各生産者の供給上限及び供給下限をそれぞれ表す変数と、論理記号とを用いた一階述語論理式に対して限定記号消去法を用いることで、前記総供給量を表す変数と、前記限界コストを表す変数と、前記各生産者の供給上限及び供給下限をそれぞれ表す変数との関係を表す総供給曲線モデルを計算する、ことを特徴とする請求項６乃至９の何れか一項に記載の生産配分決定装置。
【請求項１１】
前記上下限計算手段による前記供給上限及び供給下限の計算と、前記最適価格計算手段による前記最適価格の計算と、前記供給量計算手段による前記最適供給量の計算とを、時刻ｓ＝Ｔから時刻ｓ＝１まで繰り返し実行する、ことを特徴とする請求項６乃至１０の何れか一項に記載の生産配分決定装置。
【請求項１２】
前記総供給曲線計算手段による前記総供給曲線モデルの計算と、前記最適価格テーブル作成手段による前記最適価格テーブルの作成とをオフラインで実行し、
前記最適価格計算手段による前記最適価格の計算と、前記供給量計算手段による前記最適供給量の計算とをオンラインで実行する、ことを特徴とする請求項１乃至１１の何れか一項に記載の生産配分決定装置。
【請求項１３】
複数の生産者が生産及び供給する供給量の最適な配分を決定する生産配分決定システムであって、情報処理装置と、制御装置とが含まれる生産配分決定システムにおいて、
前記情報処理装置は、
各生産者の供給量と限界コストとの関係を表す供給曲線モデルから、前記複数の生産者の総供給量と限界コストとの関係を表す総供給曲線モデルを計算する総供給曲線計算手段と、
前記総供給曲線モデルに基づいて、需要量に応じた最適な限界コストを示す最適価格を計算するための最適価格テーブルを作成する最適価格テーブル作成手段と、を有し、
前記制御装置は、
与えられた需要量と、前記最適価格テーブルとに基づいて、前記与えられた需要量に応じた最適価格を計算する最適価格計算手段と、
前記各生産者の供給曲線モデルと、前記最適価格とに基づいて、前記各生産者それぞれの供給量の最適な配分を示す最適供給量を計算する供給量計算手段と、
を有することを特徴とする生産配分決定システム。
【請求項１４】
前記情報処理装置は、前記総供給曲線計算手段による前記総供給曲線モデルの計算と、前記最適価格テーブル作成手段による前記最適価格テーブルの作成とをオフラインで実行し、
前記制御装置は、前記最適価格計算手段による前記最適価格の計算と、前記供給量計算手段による前記最適供給量の計算とをオンラインで実行する、ことを特徴とする請求項１３に記載の生産配分決定システム。
【請求項１５】
複数の生産者が生産及び供給する供給量の最適な配分を決定する生産配分決定装置が、
各生産者の供給量と限界コストとの関係を表す供給曲線モデルから、前記複数の生産者の総供給量と限界コストとの関係を表す総供給曲線モデルを計算する総供給曲線計算手順と、
前記総供給曲線モデルに基づいて、需要量に応じた最適な限界コストを示す最適価格を計算するための最適価格テーブルを作成する最適価格テーブル作成手順と、
与えられた需要量と、前記最適価格テーブルとに基づいて、前記与えられた需要量に応じた最適価格を計算する最適価格計算手順と、
前記各生産者の供給曲線モデルと、前記最適価格とに基づいて、前記各生産者それぞれの供給量の最適な配分を示す最適供給量を計算する供給量計算手順と、
を有することを特徴とする生産配分決定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生産配分決定装置、生産配分決定システム及び生産配分決定方法に関する。
【背景技術】
【０００２】
複数の生産者（例えば、発電設備、ガス生産設備、ボイラー等の各種設備又は機器）が生産する生産物（例えば、電力、ガス、蒸気等の各種資源）を配分する場合に最適なコストを決定する手法や生産ラインで生産される製品の生産量を配分する場合に最適なコストを決定する手法が知られている。
【０００３】
例えば、並列計算によって２次計画問題を解くことで最適制御を行う手法（特許文献１）や計算の履歴を活用して２次計画問題を解く手法（非特許文献２）等が知られている。
【０００４】
また、オンラインでの最適化計算を容易にするため、オフラインで最適化問題を解析する手法が知られている。
【０００５】
例えば、オフラインで最適制御則を生成し、オンラインでは数値の代入を行うことで最適制御を実現する手法が知られている（特許文献３、非特許文献１）。また、オフラインで数式処理技術を適用することで、オンラインでの最適化計算を容易に実現する手法も知られている（特許文献４、特許文献５、非特許文献２、非特許文献３）。
【０００６】
例えば、特許文献４に記載されている手法では、最適解となる際に満たすべき条件式を利用して、最適制御を行うためにオンラインで解くべき連立方程式の規模を削減している。また、特許文献５や非特許文献２及び３に記載されている手法では、最適解となる際に満たすべき条件式から、需給系統全体での総供給量と最適な限界コスト（最適価格）との満たすべき関係式をオフラインで数式処理計算しておき、オンラインでは２分探索により最適価格と最適解との計算を行う手法が記載されている。
【０００７】
なお、特許文献５や非特許文献２及び３に記載されている手法では、一階述語論理式により問題を定式化して、限定記号消去により最適化を図る手法（非特許文献４）が使用されている。具体的には、全称記号（∀）や存在記号（∃）で表される限定記号と、多変数の多項式の等式や不等式を積（∧）や和（∨）で表される論理記号とを用いて結合した論理式を組み合わせ、一階述語論理式を得る。論理式に現れる変数のうち、限定記号で束縛される変数を束縛変数と呼び、限定記号で束縛されない変数を自由変数と呼ぶ。一階述語論理式のうち、束縛変数を消去して、自由変数が満たすべき論理式を導くことで、最適化を図る。
【０００８】
また、２次計画問題を解く手法の１つとして、非特許文献６に記載されている内点法が知られている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１２−１３８０６９号公報
【特許文献２】特開２００４−２８８１６１号公報
【特許文献３】特開２０１０−１２８９０号公報
【特許文献４】特開２０１２−１９４９６０号公報
【特許文献５】国際公開第２０１６／０７５８０５号
【非特許文献】
【００１０】
【非特許文献１】Alberto Bemporad, Manfred Morari, Vivek Dua, Efstratios N. Pistikopoulos "The explicit linear quadratic regulator for constrained systems" Automatica, Vol.38, pp.3-20
【非特許文献２】丹下吉雄，桐生智志，松井哲郎，「最適性条件と数式処理による省エネルギーのための高速最適分配制御」，電気学会論文誌C，Ｖｏｌ．１３６，Ｎｏ.９，ｐｐ１３５９−１３６６
【非特許文献３】桐生智志，丹下吉雄，飯坂達也、松井哲郎，「需要予測と変化率制約を考慮した数式処理型高速最適分配制御」，平成３０年電気学会全国大会予稿集，Ｎｏ.３，ｐｐ４４−４５
【非特許文献４】穴井宏和，横山和弘，「ＱＥの計算アルゴリズムとその応用  数式処理による最適化」，東京大学出版会，２０１１年，ｐｐ．２１４−２２１
【非特許文献５】穴井宏和，「数理最適化の実線ガイド」，講談社，２０１３年，ｐｐ．６３−６８
【発明の概要】
【発明が解決しようとする課題】
【００１１】
一般的に、生産物の需要量は、様々な状況により時々刻々変化する。したがって、全体での調達コストを抑制しつつ、必要十分な生産物を調達するためには、各生産者の供給量を需要量に応じて適切に配分しなければならない。特に、例えば、制御周期が短い対象に適用する場合には高速に最適解（つまり、各生産者が需要家に供給する供給量の最適な配分）を得る必要がある。
【００１２】
しかしながら、例えば特許文献１や特許文献２に記載されている従来手法では、２次計画問題を解くことによって最適解を求めていた。このため、最適解を求めるために繰り返し計算が必要であると共に、時には解なしとなる場合もあり、高速な最適制御を実現することが困難なことがあった。
【００１３】
また、例えば特許文献３に記載されている従来手法では、オフラインで最適制御則を生成するため、オフラインでの計算負荷が大きくなる。このため、最適化問題の規模が大きな対象では適用が困難な場合があった。
【００１４】
また、例えば特許文献４に記載されている従来手法では、オンラインで最適化を行う際に連立方程式を解く必要があり、ＰＬＣ（Programmable Logic Controller）等の計算資源が限られた環境では高速性が損なわれることがあった。また、この従来手法では、制約条件の近似も行うため、厳密な最適解を得ることはできなかった。
【００１５】
更に、特許文献５、非特許文献２及び３に記載されている従来手法では、最適解の計算過程で２分探索を用いるため、計算資源の限られた環境では高速性が損なわれることがあった。
【００１６】
本発明は、上記の点に鑑みてなされたもので、計算資源が限られた環境であっても、最適制御における厳密な最適解を高速に得ることを目的とする。
【課題を解決するための手段】
【００１７】
上記目的を達成するため、本発明の一実施形態の生産配分決定装置は、複数の生産者が生産及び供給する供給量の最適な配分を決定する生産配分決定装置であって、各生産者の供給量と限界コストとの関係を表す供給曲線モデルから、前記複数の生産者の総供給量と限界コストとの関係を表す総供給曲線モデルを計算する総供給曲線計算手段と、前記総供給曲線モデルに基づいて、需要量に応じた最適な限界コストを示す最適価格を計算するための最適価格テーブルを作成する最適価格テーブル作成手段と、与えられた需要量と、前記最適価格テーブルとに基づいて、前記与えられた需要量に応じた最適価格を計算する最適価格計算手段と、前記各生産者の供給曲線モデルと、前記最適価格とに基づいて、前記各生産者それぞれの供給量の最適な配分を示す最適供給量を計算する供給量計算手段と、を有することを特徴とする。
【発明の効果】
【００１８】
計算資源が限られた環境であっても、最適制御における厳密な最適解を高速に得ることができる。
【図面の簡単な説明】
【００１９】
【図１】第一の実施形態に係る生産配分決定装置の全体構成の一例を示す図である。
【図２】第一の実施形態に係る生産配分決定装置のハードウェア構成の一例を示す図である。
【図３】第一の実施形態に係る生産配分決定装置の機能構成の一例を示す図である。
【図４】第一の実施形態に係るオフライン処理の一例を示すフローチャートである。
【図５】総供給曲線モデルφ（λ，Ｌ）を折れ点で分割する場合の一例を説明するための図である。
【図６】第一の実施形態に係る最適価格テーブルの一例を示す図である。
【図７】第一の実施形態に係るオンライン処理の一例を示すフローチャートである。
【図８】第一の実施形態に係る最適供給量Ｐ［ｋ］の計算処理の一例を示すフローチャートである。
【図９】需給系統の一例を示す図（実施例１）である。
【図１０】各発電機の供給曲線モデルの一例を示す図（実施例１）である。
【図１１】総供給曲線モデルφ（λ，Ｌ）の一例を示す図（実施例１）である。
【図１２】最適価格テーブルの一例を示す図（実施例１）である。
【図１３】各発電機の最適供給量を計算する場合の一例を説明するための図（実施例１）である。
【図１４】従来技術との比較結果を示す図（実施例１）である。
【図１５】第二の実施形態に係る生産配分決定装置の機能構成の一例を示す図である。
【図１６Ａ】第二の実施形態に係るオフライン処理の一例を示すフローチャート（１／２）である。
【図１６Ｂ】第二の実施形態に係るオフライン処理の一例を示すフローチャート（２／２）である。
【図１７】第二の実施形態に係る最適価格テーブルの一例を示す図である。
【図１８】第二の実施形態に係るオンライン処理の一例を示すフローチャートである。
【図１９】断面ｓ＝Ｔにおける供給上限及び供給下限の計算処理の一例を示すフローチャートである。
【図２０】断面ｓ＝Ｔにおける生産者ｋの供給可能範囲の一例を説明するための図である。
【図２１】第二の実施形態に係る最適価格λ［ｓ］の計算処理の一例を示すフローチャートである。
【図２２】第二の実施形態に係る最適供給量Ｐ［ｋ］［ｓ］の計算処理の一例を示すフローチャートである。
【図２３】断面ｓ（＜Ｔ）における供給上限及び供給下限の計算処理の一例を示すフローチャートである。
【図２４】断面ｓ（＜Ｔ）における生産者ｋの供給可能範囲の一例を説明するための図である。
【図２５】需要量の一例を示す図（実施例２）である。
【図２６】最適価格テーブルの一例を示す図（実施例２）である。
【図２７】断面ｓ＝２０における各発電機の最適供給量を計算する場合の一例を説明するための図（実施例２）である。
【図２８】断面ｓ＝１９における各発電機の最適供給量を計算する場合の一例を説明するための図（実施例２）である。
【図２９】各発電機の最適供給量の一例を示す図（実施例２）である。
【図３０】従来技術との比較結果を示す図（実施例２）である。
【図３１】第三の実施形態に係る生産配分決定システムの全体構成の一例を示す図である。
【発明を実施するための形態】
【００２０】
以下、本発明の各実施形態について、図面を参照しながら説明する。以降の各実施形態では、例えばＰＬＣやＤＣＳ（Distributed Control System）等の計算資源が限られた機器、装置又はシステム（以降、「エッジデバイス」とも表す。）であっても、最適制御における厳密な最適解（つまり、各生産者が需要家に供給する供給量の最適な配分）を高速に得る場合について説明する。
【００２１】
なお、生産者とは、生産物を生産及び供給する各種設備又は機器等である。具体的には、例えば、生産物として電力を生産及び供給する発電設備、ガスを生産及び供給するガス生産設備、蒸気を生産及び供給するボイラー等が挙げられる。また、需要家とは、生産者が生産する生産物を需要する各種設備又は機器等である。具体的には、例えば、電力を需要する各種電気設備、ガスを需要する発電設備、蒸気を需要するタービン等が挙げられる。ただし、生産物は、電気やガス、蒸気等の資源に限られない。生産物は、例えば、原材料を生産者が加工すること等によって生産される仕掛品や半製品、製品等であってもよい。
【００２２】
以降の各実施形態では、複数の生産者がそれぞれ生産した生産物の全てを需要家に対して供給するものとする。また、生産者を表すインデックスをｋとして、複数の生産者のそれぞれを「生産者ｋ」と表し、生産者ｋの総数をＮ（ただし、Ｎは２以上の整数）とする。
【００２３】
ここで、生産者ｋは、生産物を生産する際に、その供給量に応じた限界コスト（marginal cost）を必要とする。限界コストとは、生産物の１単位を追加生産する際に必要となるコストのことである。また、生産者ｋの供給量をＰ［ｋ］とする。
【００２４】
生産者ｋの供給量Ｐ［ｋ］と限界コストとの関係は、供給曲線モデルＣ´［ｋ］によって表される。すなわち、或る供給量Ｐ［ｋ］における限界コストは、Ｃ´［ｋ］（Ｐ［ｋ］）で表される。
【００２５】
以降の各実施形態では、各生産者ｋの供給曲線モデルＣ´［ｋ］が予め与えられているものとする。また、各供給曲線モデルＣ´［ｋ］が表す曲線は、線形又は区分線形（以降、線形である場合も含めて「区分線形」と表す。）で表されるものとする。
【００２６】
［第一の実施形態］
第一の実施形態では、複数の生産者ｋのそれぞれが生産した生産物を需要家に対して供給する場合に、各生産者ｋの供給量の最適な配分を決定する生産配分決定装置１０について説明する。なお、本実施形態に係る生産配分決定装置１０は、例えばＰＣ（パーソナルコンピュータ）等で実現される情報処理装置であるものとする。
【００２７】
＜全体構成＞
まず、本実施形態に係る生産配分決定装置１０の全体構成について、図１を参照しながら説明する。図１は、第一の実施形態に係る生産配分決定装置１０の全体構成の一例を示す図である。
【００２８】
図１に示すように、本実施形態に係る生産配分決定装置１０は、オフライン処理部１１０と、オンライン処理部１２０とを有する。
【００２９】
オフライン処理部１１０は、オフラインの処理（以降、「オフライン処理」とも表す。）として、全ての生産者ｋ（ｋ＝１，・・・，Ｎ）の供給量の合計を示す総供給量（つまり、総生産量）と限界コストとの関係を示す総供給曲線モデルφを計算した上で、この総供給曲線モデルφを用いて、需要家の需要量Ｌに対する限界コスト（最適価格）λを計算するための最適価格テーブルを作成する。なお、総供給曲線モデルφは総供給量（これは、需要家の需要量に等しい。）Ｌと限界コストλとの関係式として表されるため、φ（λ，Ｌ）とも表す。
【００３０】
オンライン処理部１２０は、オンラインの処理（以降、「オンライン処理」とも表す。）として、与えられた需要量Ｌを供給する場合の限界コストである最適価格λを最適価格テーブルから計算した上で、この最適価格λを用いて、各生産者ｋの供給量（つまり、生産量）Ｐ［ｋ］を計算する。この供給量Ｐ［ｋ］が、生産者ｋが供給すべき供給量の最適な配分（つまり、最適供給量）である。これにより、各生産者ｋの最適供給量（つまり、最適制御における最適解）が決定される。
【００３１】
ここで、オンライン処理とは、例えば、制御対象（つまり、最適制御の対象となる需給系統）の制御中に実行される処理のことである。一方で、オフラインの処理とは、例えば、制御対象の制御とは無関係に実行される処理（例えば、制御対象の制御中でない時に実行される処理等）のことである。したがって、本実施形態に係る生産配分決定装置１０は、オフラインで総供給曲線モデルφの計算と最適価格テーブルの作成とを行っておき、オンラインで最適価格テーブルを用いた最適価格λの計算と最適配分Ｐ［ｋ］の計算とを行うことができる。このとき、最適価格テーブルを用いた最適価格λの計算と最適配分Ｐ［ｋ］の計算とは、計算負荷が比較的小さい処理として実現することができるため、高速に計算することができる。特に、例えば、オンライン処理のみを計算資源が限られたエッジデバイス上で実行する場合であっても、高速に計算することができる。
【００３２】
なお、上記のオフライン処理部１１０は、例えば、生産配分決定装置１０にインストールされた１以上のプログラムがＣＰＵ（Central Processing Unit）等に実行させる処理により実現される。同様に、上記のオンライン処理部１２０は、例えば、生産配分決定装置１０にインストールされた１以上のプログラムがＣＰＵ等に実行させる処理により実現される。
【００３３】
＜ハードウェア構成＞
次に、本実施形態に係る生産配分決定装置１０のハードウェア構成について、図２を参照しながら説明する。図２は、第一の実施形態に係る生産配分決定装置１０のハードウェア構成の一例を示す図である。
【００３４】
図２に示すように、本実施形態に係る生産配分決定装置１０は、入力装置１１と、表示装置１２と、外部Ｉ／Ｆ１３と、通信Ｉ／Ｆ１４と、ＲＯＭ（Read Only Memory）１５と、ＲＡＭ（Random Access Memory）１６と、ＣＰＵ１７と、補助記憶装置１８とを有する。これら各ハードウェアは、バス１９により相互に通信可能に接続されている。
【００３５】
入力装置１１は、例えば各種ボタンやタッチパネル、キーボード、マウス等であり、生産配分決定装置１０に各種の操作を入力するのに用いられる。表示装置１２は、例えばディスプレイ等であり、生産配分決定装置１０による各種の処理結果を表示する。なお、生産配分決定装置１０は、入力装置１１及び表示装置１２の少なくとも一方を有していなくてもよい。
【００３６】
外部Ｉ／Ｆ１３は、外部装置とのインタフェースである。外部装置には、記録媒体１３ａ等がある。生産配分決定装置１０は、外部Ｉ／Ｆ１３を介して、記録媒体１３ａの読み取りや書き込み等を行うことができる。記録媒体１３ａには、例えば、ＳＤメモリカード(SD memory card）やＵＳＢメモリ、ＣＤ（Compact Disk）、ＤＶＤ（Digital Versatile Disk）等がある。なお、オフライン処理部１１０を実現する１以上のプログラムやオンライン処理部１２０を実現する１以上のプログラム等が、記録媒体１３ａに記録されていてもよい。
【００３７】
通信Ｉ／Ｆ１４は、生産配分決定装置１０が他の装置や機器、設備等とデータ通信を行うためのインタフェースである。なお、オフライン処理部１１０を実現する１以上のプログラムやオンライン処理部１２０を実現する１以上のプログラム等は、通信Ｉ／Ｆ１４を介して、所定のサーバ等から取得（ダウンロード）されてもよい。
【００３８】
ＲＯＭ１５は、電源を切ってもデータを保持することができる不揮発性の半導体メモリである。ＲＡＭ１６は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＣＰＵ１７は、例えば補助記憶装置１８やＲＯＭ１５からプログラムやデータをＲＡＭ１６上に読み出して、各種処理を実行する演算装置である。
【００３９】
補助記憶装置１８は、例えばＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）等であり、プログラムやデータを格納している不揮発性のメモリである。補助記憶装置１８に格納されているプログラムやデータには、例えば、オフライン処理部１１０を実現する１以上のプログラムやオンライン処理部１２０を実現する１以上のプログラム、基本ソフトウェアであるＯＳ（Operating System）、ＯＳ上で動作する各種アプリケーションプログラム等がある。
【００４０】
本実施形態に係る生産配分決定装置１０は、図２に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。なお、図２では、生産配分決定装置１０が１台のコンピュータで実現される場合のハードウェア構成例を示したが、これに限られない。生産配分決定装置１０は、例えば、複数台のコンピュータで実現されていてもよい。
【００４１】
＜機能構成＞
次に、本実施形態に係る生産配分決定装置１０の機能構成について、図３を参照しながら説明する。図３は、第一の実施形態に係る生産配分決定装置１０の機能構成の一例を示す図である。
【００４２】
図３に示すように、本実施形態に係る生産配分決定装置１０のオフライン処理部１１０には、総供給曲線計算部１１１と、最適価格テーブル作成部１１２とが含まれる。また、オンライン処理部１２０には、最適価格計算部１２１と、配分計算部１２２とが含まれる。
【００４３】
総供給曲線計算部１１１は、各生産者ｋ（ｋ＝１，・・・，Ｎ）の供給曲線モデルＣ´［ｋ］から総供給曲線モデルφ（λ，Ｌ）を計算する。総供給曲線モデルφ（λ，Ｌ）は、各生産者ｋ（ｋ＝１，・・・，Ｎ）の供給曲線モデルＣ´［ｋ］を合成することにより得ることができる。
【００４４】
最適価格テーブル作成部１１２は、総供給曲線モデルφ（λ，Ｌ）を用いて、最適価格テーブルを作成する。最適価格テーブルは、上述したように、需要量Ｌに対する最適価格λを計算するためのテーブルである。
【００４５】
最適価格計算部１２１は、最適価格テーブルを用いて、与えられた需要量Ｌに対する最適価格λを計算する。
【００４６】
配分計算部１２２は、最適価格λを用いて、各生産者ｋの最適供給量Ｐ［ｋ］を計算する。
【００４７】
＜オフライン処理＞
次に、本実施形態に係る生産配分決定装置１０のオフライン処理について、図４を参照しながら説明する。図４は、第一の実施形態に係るオフライン処理の一例を示すフローチャートである。上述したように、オフライン処理では、総供給曲線モデルφ（λ，Ｌ）の計算と、最適価格テーブルの作成とが行われる。なお、図４のステップＳ１０１が総供給曲線モデルφ（λ，Ｌ）を計算するための処理であり、ステップＳ１０２〜ステップＳ１１４が最適価格テーブルを作成するための処理である。
【００４８】
まず、総供給曲線計算部１１１は、各生産者ｋ（ｋ＝１，・・・，Ｎ）の供給曲線モデルＣ´［ｋ］から総供給曲線モデルφ（λ，Ｌ）を計算する（ステップＳ１０１）。
【００４９】
すなわち、総供給曲線計算部１１１は、限界コストλと、各生産者ｋの総供給量（つまり、需要量）Ｌとを以下の式により求める。
【００５０】
【数１】
2020095457.tif 000003
そして、総供給曲線計算部１１１は、限界コストλと総供給量Ｌとが取り得る値を実行可能解（feasible solution）として計算することにより、総供給曲線モデルφ（λ，Ｌ）を得る。このような実行可能解は、各生産者ｋの供給曲線モデルＣ´［ｋ］を表す式と、上記の数１に示す限界コストλ及び総供給量Ｌと、論理記号とを用いて一階述語論理式を生成した上で、限定記号消去法により、この一階述語論理式の限定記号を消去することで得ることができる。これにより、総供給曲線モデルφ（λ，Ｌ）は、限界コストλと総供給量Ｌとの関係を示す論理式で表される。
【００５１】
次に、最適価格テーブル作成部１１２は、総供給曲線モデルφ（λ，Ｌ）をλについて整理した数式（論理式）を作成する（ステップＳ１０２）。ここで、論理式の整理は、「論理式の簡単化」又は「論理式の簡略化」とも称され、論理式を、論理的に等価で、かつ、簡易な表現にすることをいう。したがって、整理後の数式（論理式）も「総供給曲線モデルφ（λ，Ｌ）」と表す。このような論理式の整理は、例えば、Mathematica等の数式処理ソフトウェアにより実現することができる。
【００５２】
なお、上述したように各生産者ｋの供給曲線モデルＣ´［ｋ］は区分線形であるため、総供給曲線モデルφ（λ，Ｌ）も区分線形となる。
【００５３】
次に、最適価格テーブル作成部１１２は、区分線形である総供給曲線モデルφ（λ，Ｌ）を論理和（∨）で分割する（ステップＳ１０３）。このことは、総供給曲線モデルφ（λ，Ｌ）が表すグラフ（１つ以上の直線で構成されるグラフ）を折れ点で分割することを意味する。以降では、総供給曲線モデルφ（λ，Ｌ）が表すグラフを構成する直線の総数をＱとして、当該グラフを折れ点で分割することで、Ｑ本の直線が得られたものとする。すなわち、総供給曲線モデルφ（λ，Ｌ）は、Ｑ本の直線をそれぞれ表すＱ個の数式（論理式）に分割されたものとする。以降では、これらＱ個の数式を「直線数式」と表す。
【００５４】
ここで、一例として、Ｑ＝６である場合に、総供給曲線モデルφ（λ，Ｌ）を折れ点で分割する場合について、図５を参照しながら説明する。図５は、総供給曲線モデルφ（λ，Ｌ）を折れ点で分割する場合の一例を説明するための図である。
【００５５】
図５に示すように、総供給曲線モデルφ（λ，Ｌ）が表すグラフが直線１〜直線６の６本の直線で構成されている場合、当該グラフの折れ点は５つである。そして、総供給曲線モデルφ（λ，Ｌ）を論理和（∨）で分割することは、これらの各折れ点でグラフを分割することを意味する。したがって、これら５つの折れ点で当該グラフを分割することで、当該グラフは、直線１〜直線６の６本の直線に分割される。このとき、各直線数式は、直線１〜直線６のそれぞれを表す数式である。
【００５６】
なお、ステップＳ１０２とステップＳ１０３については、例えば、ステップＳ１０３を先に実行し、分割された各式に対して、ステップＳ１０２が実行されてもよい。
【００５７】
次に、最適価格テーブル作成部１１２は、上記のステップＳ１０３で分割された直線数式（つまり、直線を表す数式）のインデックスを表す変数をｑ、最適価格テーブルに格納されるレコードのインデックスを表す変数をｍとして、ｑ及びｍをそれぞれ１に初期化する（ステップＳ１０４）。
【００５８】
次に、最適価格テーブル作成部１１２は、上記のステップＳ１０３で分割された直線数式の中から１つの直線数式を選択（つまり、１本の直線を選択）する（ステップＳ１０５）。本ステップで選択された直線数式を「ｑ番目の直線数式」と表す。
【００５９】
次に、最適価格テーブル作成部１１２は、ｑ番目の直線数式にλに関する等式が含まれるか否かを判定する（ステップＳ１０６）。ここで、λに関する等式が含まれない場合（言い換えれば、λに関する不等式が含まれる場合）、当該直線数式が表す直線は、λ軸に平行であることを意味する。図５に示す例では、直線１や直線４、直線６が、λに関する等式が含まれない数式で表される直線である。一方で、λに関する等式が含まれる場合、当該直線数式が表す直線は、λ軸に平行でないことを意味する。図５に示す例では、直線２や直線３、直線５が、λに関する等式が含まれる直線数式で表される直線である。以降では、ｑ番目の直線数式に含まれるλに関する等式を「λ＝θ［ｑ］（Ｌ）」と表す。
【００６０】
ステップＳ１０６でｑ番目の直線数式にλに関する等式が含まれると判定された場合、最適価格テーブル作成部１１２は、当該直線数式を論理積（∧）で分割する（ステップＳ１０７）。これにより、当該直線数式は、Ｌに関する数式と、λに関する等式λ＝θ［ｑ］（Ｌ）とに分割される。ここで、Ｌに関する数式は、需要量Ｌの範囲を表す数式であるため、「α［ｑ］≦Ｌ≦β［ｑ］」と表される。したがって、ｑ番目の直線数式は、α［ｑ］≦Ｌ≦β［ｑ］と、λ＝θ［ｑ］（Ｌ）とに分割される。α［ｑ］及びβ［ｑ］は、それぞれｑ番目の直線数式における需要量Ｌの下限及び上限である。
【００６１】
次に、最適価格テーブル作成部１１２は、ｑ番目の直線数式からλに関する等式λ＝θ［ｑ］（Ｌ）を抽出する（ステップＳ１０８）。次に、最適価格テーブル作成部１１２は、ｑ番目の直線数式からＬに関する数式α［ｑ］≦Ｌ≦β［ｑ］を抽出する（ステップＳ１０９）。なお、ステップＳ１０８及びステップＳ１０９は順不同である。
【００６２】
次に、最適価格テーブル作成部１１２は、Ｌに関する数式α［ｑ］≦Ｌ≦β［ｑ］から下限α［ｑ］及び上限β［ｑ］を抽出する（ステップＳ１１０）。なお、ステップＳ１１０は、ステップＳ１０９により後に実行されればよく、例えば、ステップＳ１０８よりも前に実行されてもよい。
【００６３】
次に、最適価格テーブル作成部１１２は、下限α［ｑ］と、上限β［ｑ］と、λに関する等式λ＝θ［ｑ］（Ｌ）とを対応付けたレコードを、ｍ番目のレコードとして最適価格テーブルに追加する（ステップＳ１１１）。
【００６４】
続いて、最適価格テーブル作成部１１２は、ｍをｍ＋１に更新する（ステップＳ１１２）。次に、最適価格テーブル作成部１１２は、Ｑ個の直線数式のうち、上記のステップＳ１０５で未選択の直線数式があるか否かを判定する（ステップＳ１１３）。
【００６５】
そして、ステップＳ１１３で未選択の直線数式があると判定された場合又はステップＳ１０６でｑ番目の直線数式にλに関する等式が含まれないと判定された場合、最適価格テーブル作成部１１２は、ｑをｑ＋１に更新（ステップＳ１１４）して、ステップＳ１０５に戻る。
【００６６】
一方で、ステップＳ１１３で未選択の直線数式があると判定されなかった場合、オフライン処理部１１０は、オフライン処理を終了する。これにより、λ軸と平行でない直線を表す直線数式から、最適価格テーブルのレコードが作成される。
【００６７】
ここで、Ｑ個の直線数式のうち、λ軸と平行でない直線を表す直線数式の数をＭとして、上記のオフライン処理で作成された最適価格テーブルの一例を図６に示す。図６は、第一の実施形態に係る最適価格テーブルの一例を示す図である。なお、図６に示す例では、各ｍに対して、ｑ＝ｍとなるようにｑを適宜リナンバリングした場合を示している。
【００６８】
図６に示すように、最適価格テーブルに格納されている各レコードには、項目として、Ｌ下限と、Ｌ上限と、λ関係式とが含まれる。ｍ番目のレコードについて、項目「Ｌ下限」にはα［ｍ］、項目「Ｌ上限」にはβ［ｍ］、項目「λ関係式」にはλ＝θ［ｍ］（Ｌ）がそれぞれ設定される。このように、本実施形態に係る最適価格テーブルには、需要量Ｌの下限α［ｍ］と、需要量Ｌの上限β［ｍ］と、λに関する等式λ＝θ［ｍ］（Ｌ）とが対応付けられたレコードが格納されている。
【００６９】
なお、最適価格テーブルは、Ｌ下限と、Ｌ上限と、λ関係式とが対応付けられていればよく、必ずしもテーブル形式でなくてもよい。
【００７０】
＜オンライン処理＞
次に、本実施形態に係る生産配分決定装置１０のオンライン処理について、図７を参照しながら説明する。図７は、第一の実施形態に係るオンライン処理の一例を示すフローチャートである。上述したように、オンライン処理では、与えられた需要量Ｌに対して、最適価格λの計算と、最適供給量Ｐ［ｋ］の計算とが行われる。なお、図７のステップＳ２０１〜ステップＳ２０４が最適価格λを計算するための処理であり、ステップＳ２０５〜ステップＳ２０７が最適供給量Ｐ［ｋ］を計算するための処理である。
【００７１】
まず、最適価格計算部１２１は、最適価格テーブルに格納されているレコードのインデックスを表す変数をｍとして、ｍを１に初期化する（ステップＳ２０１）。
【００７２】
次に、最適価格計算部１２１は、与えられた需要量Ｌが、ｍ番目のレコードに含まれるＬ下限α［ｍ］以上かつＬ上限β［ｍ］以下であるか否かを判定する（ステップＳ２０２）。すなわち、最適価格計算部１２１は、α［ｍ］≦Ｌ≦β［ｍ］を満たすか否かを判定する
ステップＳ２０２でα［ｍ］≦Ｌ≦β［ｍ］を満たさないと判定された場合、最適価格計算部１２１は、ｍをｍ＋１に更新（ステップＳ２０３）して、ステップＳ２０２に戻る。これにより、α［ｍ］≦Ｌ≦β［ｍ］を満たすレコードが見つかるまで、上記のステップＳ２０２が繰り返し実行される。このように、最適価格計算部１２１は、与えられた需要量Ｌに対して、α［ｍ］≦Ｌ≦β［ｍ］を満たすレコードを探索する。
【００７３】
ステップＳ２０２でα［ｍ］≦Ｌ≦β［ｍ］を満たすと判定された場合、最適価格計算部１２１は、当該α［ｍ］及びβ［ｍ］に対応するλ関係式λ＝θ［ｍ］（Ｌ）により最適価格λを計算する（ステップＳ２０４）。すなわち、最適価格計算部１２１は、当該α［ｍ］及びβ［ｍ］に対応するλ関係式λ＝θ［ｍ］（Ｌ）に対して、与えられた需要量Ｌを代入することで、最適価格λを計算する。これにより、最適価格λが得られる。
【００７４】
このように、本実施形態に係る生産配分決定装置１０は、与えられた需要量Ｌを用いて最適価格テーブルを探索（又は検索）した上で、探索されたレコードに含まれるλ関係式に当該需要量Ｌを代入するだけで、容易かつ高速に最適価格λを計算することができる。
【００７５】
次に、配分計算部１２２は、生産者のインデックスを表す変数ｋを１に初期化する（ステップＳ２０５）。
【００７６】
次に、配分計算部１２２は、生産者ｋの最適供給量Ｐ［ｋ］を計算する（ステップＳ２０６）。本ステップの処理の詳細については後述する。
【００７７】
次に、配分計算部１２２は、ｋ＝Ｎであるか否かを判定する（ステップＳ２０７）。ステップＳ２０７でｋ＝Ｎであると判定されなかった場合、配分計算部１２２は、ｋをｋ＋１に更新（ステップＳ２０８）して、ステップＳ２０６に戻る。これにより、生産者１の最適供給量Ｐ［１］から生産者Ｎの最適供給量Ｐ［Ｎ］までが繰り返し計算される。
【００７８】
そして、ステップＳ２０７でｋ＝Ｎであると判定された場合、オンライン処理部１２０は、オンライン処理を終了する。これにより、各生産者ｋの最適供給量Ｐ［ｋ］，ｋ＝１，・・・，Ｎが決定される。したがって、これらの最適供給量Ｐ［１］〜最適供給量Ｐ［Ｎ］を用いて、制御対象の最適制御を実現される。
【００７９】
ここで、上記のステップＳ２０６で或る生産者ｋの最適供給量Ｐ［ｋ］を計算する処理について、図８を参照しながら説明する。図８は、第一の実施形態に係る最適供給量Ｐ［ｋ］の計算処理の一例を示すフローチャートである。
【００８０】
まず、配分計算部１２２は、最適価格λと、生産者ｋの限界コストとを比較する（ステップＳ３０１）。生産者ｋの限界コストは、供給曲線モデルＣ´［ｋ］によって表される。
【００８１】
ステップＳ３０１の比較結果が「生産者ｋの限界コストの下限＞λ」である場合、配分計算部１２２は、生産者ｋの最適供給量を、Ｐ［ｋ］＝ｍｉｎ［ｋ］とする（ステップＳ３０２）。ここで、ｍｉｎ［ｋ］は、生産者ｋの限界コストの下限を表す。この場合は、生産者ｋは、最適価格λに見合う生産及び供給を行うことができない場合に相当する。
【００８２】
ステップＳ３０１の比較結果が「生産者ｋの限界コストの上限≧λ≧生産者ｋの限界コストの下限」である場合、配分計算部１２２は、生産者ｋの最適供給量を、限界コストがλとなるＰ［ｋ］（すなわち、λ＝Ｃ´［ｋ］（Ｐ［ｋ］）となるＰ［ｋ］）とする（ステップＳ３０３）。この場合は、生産者ｋは、最適価格λに見合った生産及び供給を行うことができる場合に相当する。
【００８３】
ステップＳ３０１の比較結果が「生産者ｋの限界コストの上限＜λ」である場合、配分計算部１２２は、生産者ｋの最適供給量を、Ｐ［ｋ］＝ｍａｘ［ｋ］とする（ステップＳ３０４）。ここで、ｍａｘ［ｋ］は、生産者ｋの限界コストの上限を表す。この場合は、生産者ｋは、最適価格λに応じた量の生産物を生産及び供給を行うことができない場合に相当する。
【００８４】
＜実施例１＞
以降では、実施例１として、本実施形態に係る生産配分決定装置１０の実施例について説明する。実施例１では、図９に示す需給系統における供給量の最適化について説明する。図９に示す需給系統は、３台の発電機（発電機Ｎｏ．１、発電機Ｎｏ．２、発電機Ｎｏ．３）が燃料を使用して、それぞれＰ［１］、Ｐ［２］、Ｐ［３］（ＭＷ）の電力を発電し、電気設備に対して電力Ｌ（ＭＷ）を供給する。発電機Ｎｏ．１、発電機Ｎｏ．２及び発電機Ｎｏ．３が生産者、電気設備が需要家である。
【００８５】
また、発電機Ｎｏ．１、発電機Ｎｏ．２及び発電機Ｎｏ．３の供給曲線モデルＣ´［ｋ］を図１０に示す。図１０において、Ｃ´［１］は発電機Ｎｏ．１の供給曲線モデル、Ｃ´［２］は発電機Ｎｏ．２の供給曲線モデル、Ｃ´［３］は発電機Ｎｏ．３の供給曲線モデルを示している。なお、限界コストの単位は千円／ＭＷ・ｈであるものとする。
【００８６】
このとき、図４のステップＳ１０１で計算された総供給曲線モデルφ（λ，Ｌ）を図１１に示す。図１１に示す総供給曲線モデルφ（λ，Ｌ）は、以下により計算することができる。
【００８７】
まず、
ｆ１：＝Ｌ＝Ｐ［１］＋Ｐ［２］＋Ｐ［３］
ｆ２：＝ｆ２１∧ｆ２２∧ｆ２３
ｆ２１：＝（５０≦Ｐ［１］≦３００∧λ＝２×０，００１５×Ｐ［１］＋２．５）
∨（５０＝Ｐ［１］∧λ＝２×０．００１５×５０＋２．５）
∨（３００＝Ｐ［１］∧λ≧２×０．００１５×３００＋２．５）
ｆ２２：＝（１００≦Ｐ［２］≦４００∧λ＝２×０．０００５×Ｐ［２］＋３．２）
∨（１００＝Ｐ［２］∧λ≦２×０．０００５×１００＋３．２）
∨（４００＝Ｐ［２］∧λ≧２×０．０００５×４００＋３．２）
ｆ２３：＝（２００≦Ｐ［３］≦５００∧λ＝２×０．００１０×Ｐ［３］＋３．５）
∨（２００＝Ｐ［３］∧λ≦２×０．００１０×２００＋３．５）
∨（５００＝Ｐ［３］∧λ≧２×０．００１０×５００＋３．５）
とする。ここで、ｆ１は電気設備の需要量Ｌが各発電機の発電量の合計（Ｐ［１］、Ｐ［２］、Ｐ［３］）に等しいことを示す。また、ｆ２は全ての発電機の限界コストに関する数式ｆ２１，ｆ２２，ｆ２３を論理積で結合した数式である。各ｆ２ｋ（ｋ＝１，２，３）は、供給量がその上限と下限との間にある場合の限界コストを示す数式と、供給量がその上限である場合の限界コストを示す数式と、供給量がその下限である場合の限界コストを示す数式とを論理和で結合した数式である。
【００８８】
次に、ｆ１及びｆ２の論理積に対して、各発電機の発電量Ｐ［１］、Ｐ［２］及びＰ［３］に存在記号（∃）を付与し、一階述語論理式ψ：＝∃Ｐ［１］∃Ｐ［２］∃Ｐ［３］（ｆ１∧ｆ２）を生成する。そして、この一階述語論理式ψに対して限定記号消去法を適用することで、総供給曲線モデルφを生成する。すなわち、例えば、限定記号消去法を実行する関数をＱＥ（・）とすれば、φ：＝ＱＥ（ψ）である。
【００８９】
図４のステップＳ１０２で総供給曲線モデルφ（λ，Ｌ）をλについて整理すると、本実施例では、以下のようになる。
【００９０】
φ（λ，Ｌ）＝（Ｌ＝３５０∧λ≦５３／２０）
∨（３５０＜Ｌ≦１７００／３∧λ＝（１６００＋３Ｌ）／１０００）
∨（１７００／３＜Ｌ≦７００∧λ＝（１１５００＋３Ｌ）／４０００）
∨（７００＜Ｌ＜９００∧λ＝（２７００＋Ｌ）／１０００）
∨（Ｌ＝９００∧１８／５≦λ≦３９／１０）
∨（９００＜Ｌ＜１２００∧λ＝（１０５０＋Ｌ）／５００）
∨（Ｌ＝１２００∧λ≧９／２）
したがって、上記のステップＳ１０３でφ（λ，Ｌ）を論理和で分割した場合、λに関する等式が含まれる分割数式は、「（３５０＜Ｌ≦１７００／３∧λ＝（１６００＋３Ｌ）／１０００）」と、「（１７００／３＜Ｌ≦７００∧λ＝（１１５００＋３Ｌ）／４０００）」と、「（７００＜Ｌ＜９００∧λ＝（２７００＋Ｌ）／１０００）」と、「（９００＜Ｌ＜１２００∧λ＝（１０５０＋Ｌ）／５００）」との４つである。このため、本実施例では、オフライン処理で作成される最適価格テーブルは、図１２のようになる。図１２に示す最適価格テーブルは、上記の４つの分割数式から得られたＬ下限、Ｌ上限及びλ関係式が含まれるレコードで構成される。
【００９１】
ここで、本実施例では、オンライン処理において、需要量Ｌ＝８２０（ＭＷ）が与えられたものとする。この場合、図７のステップＳ２０２で、７００≦８２０≦９００であるため、図１２に示す最適価格テーブルのＮｏ３のレコードが探索される。したがって、図７のステップＳ２０４で最適価格λは、λ＝（２７００＋８２０）／１０００＝３．５２と計算される。
【００９２】
これにより、図７のステップＳ２０６で、各発電機の最適供給量Ｐ［ｋ］は、Ｐ［１］＝３００、Ｐ［２］＝３２０、Ｐ［３］＝２００と計算される。これは、図１３に示すように、発電機Ｎｏ．１では限界コストの上限（＝３．４）よりも最適価格λの方が大きく、発電機Ｎｏ．２では限界コストの下限≦最適価格λ≦限界コストの上限であり、発電機Ｎｏ．３では限界コストの下限（＝３．９）よりも最適価格λの方が小さいためである。
【００９３】
＜従来技術との比較結果＞
ここで、従来技術である内点法及び２分探索と、上記の実施例１とで最適解の計算時間を比較した結果を図１４に示す。図１４に示すように、本実施形態に係る生産配分決定装置１０では、従来技術（内点法）と比較して７４０．６倍、従来技術（２分探索）と比較して３８．７倍高速に最適解を得ることができた。なお、２分探索には、上記の特許文献５に記載の数式処理も利用した。
【００９４】
このように、本実施形態に係る生産配分決定装置１０では、従来技術と比較して、最適解を得るための処理を大幅に高速化させることができる。このとき、この最適解の計算にあたっては、事前にオフラインで作成しておいた最適価格テーブルの探索を行えばよく、例えば、繰り返しアルゴリズムによる収束性の判定等が必要ない。しかも、近似解ではなく、最適解として厳密解を得ることができる。このため、本実施形態に係る生産配分決定装置１０によれば、例えば、解の有無も即時に判断できると共に、最大計算時間の見積もりを容易に行うことも可能となる。
【００９５】
なお、オフライン処理（つまり、総供給曲線モデルφの計算と最適価格テーブルの作成）は、各生産者ｋの供給曲線モデルＣ´［ｋ］が変更されない間は再度行われる必要はない。すなわち、各生産者ｋの供給曲線モデルＣ´［ｋ］が変更されない間は、オフライン処理は一度だけ行われればよい。
【００９６】
［第二の実施形態］
次に、第二の実施形態について説明する。第二の実施形態では、予測ホライズンの各断面ｓ（ｓ＝１，・・・，Ｔ）で複数の生産者ｋのそれぞれが生産した生産物を需要家に対して供給する場合に、各断面ｓにおける各生産者ｋの供給量の最適な配分を決定する生産配分決定装置１０について説明する。ここで、Ｔは、１以上の整数である。
【００９７】
以降では、便宜上、断面ｓ＝０を現在時刻する。なお、各断面ｓ間の時間幅Δｓ（すなわち、断面ｓ＋１と断面ｓとの間の時間幅Δｓ）は、任意に決定される。時間幅Δｓは、一定であってもよいが、一定でなくてもよく、例えば、各ｓに対して時間幅Δｓが異なっていてもよい。
【００９８】
また、各断面ｓ（ｓ＝１，・・・，Ｔ）において、複数の生産者ｋがそれぞれ生産した生産物の全てを需要家に対して供給するものとする。
【００９９】
なお、第二の実施形態に係る生産配分決定装置１０の全体構成及びハードウェア構成は、第一の実施形態と同様であるため、その説明を省略する。
【０１００】
＜機能構成＞
次に、本実施形態に係る生産配分決定装置１０の機能構成について、図１５を参照しながら説明する。図１５は、第二の実施形態に係る生産配分決定装置１０の機能構成の一例を示す図である。
【０１０１】
図１５に示すように、本実施形態に係る生産配分決定装置１０のオフライン処理部１１０には、総供給曲線計算部１１１と、最適価格テーブル作成部１１２とが含まれる。また、オンライン処理部１２０には、最適価格計算部１２１と、配分計算部１２２と、初期上下限計算部１２３と、上下限計算部１２４とが含まれる。
【０１０２】
総供給曲線計算部１１１は、各生産者ｋ（ｋ＝１，・・・，Ｎ）の供給曲線モデルＣ´［ｋ］から総供給曲線モデルφを計算する。本実施形態に係る総供給曲線モデルφは、限界コストλと、総供給量Ｌと、各生産者ｋの供給量の上限を示す供給上限ｍａｘ［ｋ］と、各生産者ｋの供給量の下限を示す供給下限ｍｉｎ［ｋ］との関係を示す関係式で表される。したがって、本実施形態に係る総供給曲線モデルφは、φ（λ，Ｌ，ｍｉｎ［１］，・・・，ｍｉｎ［Ｎ］，ｍａｘ［１］，・・・，ｍａｘ［Ｎ］）と表される。
【０１０３】
最適価格テーブル作成部１１２は、総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［１］，・・・，ｍｉｎ［Ｎ］，ｍａｘ［１］，・・・，ｍａｘ［Ｎ］）を用いて、最適価格テーブルを作成する。本実施形態に係る最適価格テーブルは、断面ｓにおける最適価格λ［ｓ］を計算するためのテーブルである。なお、最適価格λ［ｓ］は、未来の各断面ｓにおける最適価格であるため、「最適価格予測値」とも称される。
【０１０４】
初期上下限計算部１２３は、断面ｓ＝Ｔにおける各生産者ｋの供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を計算する。このとき、初期上下限計算部１２３は、各生産者ｋの変化率制約δ［ｋ］と、各生産者ｋの能力上限ｕｌ［ｋ］及び能力下限ｌｌ［ｋ］と、供給量現在値Ｐ［ｋ］［０］とに基づいて、断面ｓ＝Ｔにおける各生産者ｋの供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を計算する。ここで、供給量現在値Ｐ［ｋ］［０］は現在時刻（つまり、ｓ＝０）における各生産者ｋの供給量Ｐ［ｋ］のことである。
【０１０５】
なお、変化率制約δ［ｋ］とは、例えば、生産者ｋが単位時間あたりに生産物の生産量を変化させることが可能な量や割合を示す制約条件である。変化率制約δ［ｋ］は、例えば、生産量を減少させる場合と、生産量を増加させる場合とで異なる値であってもよい。
【０１０６】
また、能力上限ｕｌ［ｋ］とは、生産者ｋが生産可能な生産物の上限量である。同様に、能力上限ｌｌ［ｋ］とは、生産者ｋが生産可能な生産物の下限量である。例えば、生産者ｋが発電設備である場合、能力上限ｕｌ［ｋ］は最大発電量に該当し、能力下限ｌｌ［ｋ］は最低発電量に該当する。能力上限ｕｌ［ｋ］及び能力下限ｌｌ［ｋ］は、生産者ｋの供給曲線モデルＣ´［ｋ］における供給量Ｐ［ｋ］の上限及び下限として得られる。
【０１０７】
最適価格計算部１２１は、最適価格テーブルを用いて、需要量Ｌ［ｓ］と、供給上限ｍａｘ［ｋ］［ｓ］と、供給下限ｍｉｎ［ｋ］［ｓ］とに対して、最適価格λ［ｓ］を計算する。ここで、需要量Ｌ［ｓ］は、未来の各断面ｓにおける需要量であるため、「需要量予測値」とも称される。
【０１０８】
配分計算部１２２は、最適価格λ［ｓ］を用いて、断面ｓにおける各生産者ｋの最適供給量Ｐ［ｋ］［ｓ］を計算する。なお、最適供給量Ｐ［ｋ］［ｓ］は、未来の各断面ｓにおける最適供給量であるため、「最適供給量予測値」とも称される。
【０１０９】
上下限計算部１２４は、断面ｓ＋１における各生産者の最適供給量Ｐ［ｋ］［ｓ＋１］に基づいて、断面ｓ（＜Ｔ）における各生産者ｋの供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を計算する。このとき、上下限計算部１２４は、各生産者ｋの変化率制約δ［ｋ］と、各生産者ｋの能力上限ｕｌ［ｋ］及び能力下限ｌｌ［ｋ］と、供給量現在値Ｐ［ｋ］［０］とに基づいて、供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を計算する。
【０１１０】
ここで、本実施形態に係るオンライン処理部１２０は、断面ｓ＝Ｔからｓ＝１まで順に、供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］の計算と、最適価格λ［ｓ］の計算と、最適供給量Ｐ［ｋ］［ｓ］の計算とを繰り返すことで、各断面ｓ（ｓ＝１，・・・，Ｔ）における各生産者ｋの最適供給量Ｐ［ｋ］［ｓ］を決定する。
【０１１１】
＜オフライン処理＞
次に、本実施形態に係る生産配分決定装置１０のオフライン処理について、図１６Ａ及び図１６Ｂを参照しながら説明する。図１６Ａ及び図１６Ｂは、第二の実施形態に係るオフライン処理の一例を示すフローチャートである。なお、図１６Ａ及び図１６ＢのステップＳ４０１が総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［１］，・・・，ｍｉｎ［Ｎ］，ｍａｘ［１］，・・・，ｍａｘ［Ｎ］）を計算するための処理であり、図１６Ａ及び図１６ＢのステップＳ４０２〜ステップＳ４２０が最適価格テーブルを作成するための処理である。
【０１１２】
まず、総供給曲線計算部１１１は、各生産者ｋ（ｋ＝１，・・・，Ｎ）の供給曲線モデルＣ´［ｋ］から総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［１］，・・・，ｍｉｎ［Ｎ］，ｍａｘ［１］，・・・，ｍａｘ［Ｎ］）を計算する（ステップＳ４０１）。
【０１１３】
すなわち、総供給曲線計算部１１１は、限界コストλと、各生産者ｋの総供給量（つまり、需要量）Ｌとを以下の式により求める。
【０１１４】
【数２】
2020095457.tif 000004
そして、総供給曲線計算部１１１は、限界コストλと総供給量Ｌと供給下限［ｋ］と供給上限ｍａｘ［ｋ］とが取り得る値を実行可能解（feasible solution）として計算することにより、総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［１］，・・・，ｍｉｎ［Ｎ］，ｍａｘ［１］，・・・，ｍａｘ［Ｎ］）を得る。このような実行可能解は、各生産者ｋの供給曲線モデルＣ´［ｋ］を表す式と、上記の数２に示す限界コストλ及び総供給量Ｌと、論理記号とを用いて一階述語論理式を生成した上で、限定記号消去法により、この一階述語論理式の限定記号を消去することで得ることができる。これにより、総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［１］，・・・，ｍｉｎ［Ｎ］，ｍａｘ［１］，・・・，ｍａｘ［Ｎ］）は、限界コストλと、総供給量Ｌと、各生産者ｋの供給下限ｍｉｎ［ｋ］及び供給上限ｍａｘ［ｋ］との関係を示す論理式で表される。
【０１１５】
なお、以降では、表記を簡単にするため、総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［１］，・・・，ｍｉｎ［Ｎ］，ｍａｘ［１］，・・・，ｍａｘ［Ｎ］）を「総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）」とも表す。
【０１１６】
次に、最適価格テーブル作成部１１２は、総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）をλについて整理した数式（論理式）を作成する（ステップＳ４０２）。なお、上述したように各生産者ｋの供給曲線モデルＣ´［ｋ］は区分線形であるため、総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）も区分線形となる。
【０１１７】
次に、最適価格テーブル作成部１１２は、区分線形である総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）を論理和で分割する（ステップＳ４０３）。第一の実施形態と同様に、以降では、Ｑ個の数式（論理式）に分割されたものとして、これらＱ個の数式を「直線数式」と表す。
【０１１８】
なお、ステップＳ４０２とステップＳ４０３については、例えば、ステップＳ４０３を先に実行し、分割された各式に対して、ステップＳ４０２が実行されてもよい。
【０１１９】
次に、最適価格テーブル作成部１１２は、上記のステップＳ４０３で分割された直線数式のインデックスを表す変数ｑと、最適価格テーブルに格納されるレコードのインデックスを表す変数ｍとをそれぞれ１に初期化する（ステップＳ４０４）。
【０１２０】
次に、最適価格テーブル作成部１１２は、上記のステップＳ４０３で分割された直線数式の中から１つの直線数式を選択する（ステップＳ４０５）。本ステップで選択された直線数式を「ｑ番目の直線数式」と表す。
【０１２１】
次に、最適価格テーブル作成部１１２は、ｑ番目の直線数式にλに関する等式が含まれるか否かを判定する（ステップＳ４０６）。
【０１２２】
ステップＳ４０６でｑ番目の直線数式にλに関する等式が含まれないと判定された場合、最適価格テーブル作成部１１２は、ｑをｑ＋１に更新（ステップＳ４０７）して、ステップＳ４０５に戻る。
【０１２３】
ステップＳ４０６でｑ番目の直線数式にλに関する等式が含まれると判定された場合、最適価格テーブル作成部１１２は、当該直線数式を論理積で分割する（ステップＳ４０８）。これにより、当該直線数式は、λに関する等式λ＝θ［ｑ］（Ｌ，ｍｉｎ［１］，・・・，ｍｉｎ［Ｎ］，ｍａｘ［１］，・・・，ｍａｘ［Ｎ］）と、λに関する等式以外の条件式Ｆとに分割される。なお、条件式Ｆは、λに関する等式λ＝θ［ｑ］以外の数式（論理式）によって表される条件式である。
【０１２４】
なお、以降では、表記を簡単にするため、λに関する等式λ＝θ［ｑ］（Ｌ，ｍｉｎ［１］，・・・，ｍｉｎ［Ｎ］，ｍａｘ［１］，・・・，ｍａｘ［Ｎ］）を「λに関する等式λ＝θ［ｑ］（Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）」とも表す。
【０１２５】
次に、最適価格テーブル作成部１１２は、ｑ番目の直線数式から、λに関する等式以外の条件式Ｆを抽出する（ステップＳ４０９）。次に、最適価格テーブル作成部１１２は、ｑ番目の直線数式からλに関する等式λ＝θ［ｑ］（Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）を抽出する（ステップＳ４１０）。なお、ステップＳ４０９及びステップＳ４１０は順不同である。また、ステップＳ４１０は、例えば、後述するステップＳ４２１の判定が行われる前であれば任意の箇所で実行されてもよい。
【０１２６】
次に、最適価格テーブル作成部１１２は、λに関する等式以外の条件式ＦをＬについて整理した数式を作成する（ステップＳ４１１）。次に、最適価格テーブル作成部１１２は、整理後の数式（つまり、条件式ＦをＬについて整理した数式）を論理和で分割する（ステップＳ４１２）。ここで、以降では、この分割により得られた条件式（数式）をＨ［ｉ］，ｉ＝１，・・・，Ｉとする。なお、このＩは１以上の整数であるが、具体的な値はｑ番目の直線数式によって決定されるため、Ｉ＝Ｉ［ｑ］である。
【０１２７】
次に、最適価格テーブル作成部１１２は、条件式Ｈ［ｉ］のインデックスを表す変数ｉを１に初期化する（ステップＳ４１３）。
【０１２８】
次に、最適価格テーブル作成部１１２は、上記のステップＳ４１２で分割された条件式Ｈ［ｉ］の中から１つの条件式Ｈ［ｉ］を選択する（ステップＳ４１４）。本実施形態では、一例として、本ステップでｉ＝１からＩまでに順に条件式Ｈ［ｉ］が選択されるものとする。ただし、条件式Ｈ［ｉ］は任意に選択されてもよい。
【０１２９】
次に、最適価格テーブル作成部１１２は、上記のステップＳ４１４で選択した条件式Ｈ［ｉ］から、Ｌの下限に関する数式群α［ｑ］［ｊ１］，ｊ１＝１，・・・，Ｊｉ１を抽出する（ステップＳ４１５）。
【０１３０】
次に、最適価格テーブル作成部１１２は、上記のステップＳ４１４で選択した条件式Ｈ［ｉ］から、Ｌの上限に関する数式群β［ｑ］［ｊ２］，ｊ２＝１，・・・，Ｊｉ２を抽出する（ステップＳ４１６）。
【０１３１】
次に、最適価格テーブル作成部１１２は、上記のステップＳ４１４で選択した条件式Ｈ［ｉ］から、Ｌと無関係の数式群γ［ｑ］［ｊ３］，ｊ３＝１，・・・，Ｊｉ３を抽出する（ステップＳ４１７）。
【０１３２】
なお、上記のステップＳ４１５〜ステップＳ４１７は順不同である。
【０１３３】
そして、最適価格テーブル作成部１１２は、Ｌの下限に関する数式群α［ｊ１］と、Ｌの上限に関する数式群β［ｊ２］と、Ｌと無関係の数式群γ［ｊ３］と、λに関する等式λ＝θ［ｑ］（Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）とを対応付けたレコードを、ｍ番目のレコードとして最適価格テーブルに追加する（ステップＳ４１８）。
【０１３４】
続いて、最適価格テーブル作成部１１２は、ｍをｍ＋１に更新する（ステップＳ４１９）。次に、最適価格テーブル作成部１１２は、Ｉ個の条件式Ｈ［ｉ］のうち、上記のステップＳ４１４で未選択の条件式Ｈ［ｉ］があるか否かを判定する（ステップＳ４２０）。
【０１３５】
ステップＳ４２０で未選択の条件式Ｈ［ｉ］があると判定された場合、最適価格テーブル作成部１１２は、ｉをｉ＋１に更新（ステップＳ４２１）して、ステップＳ４１４に戻る。
【０１３６】
ステップＳ４２０で未選択の条件式Ｈ［ｉ］がないと判定された場合、最適価格テーブル作成部１１２は、未選択の直線数式があるか否かを判定する（ステップＳ４２２）。
【０１３７】
そして、ステップＳ４２０で未選択の直線数式があると判定された場合、最適価格テーブル作成部１１２は、ｑをｑ＋１に更新（ステップＳ４０７）して、ステップＳ４０５に戻る。一方で、ステップＳ４２０で未選択の直線数式があると判定されなかった場合、最適価格テーブル作成部１１２は、オフライン処理を終了する。これにより、λに関する等式λ＝θ［ｑ］（Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）が含まれる直線数式から、最適価格テーブルのレコードが作成される。
【０１３８】
ここで、Ｑ個の直線数式のうち、λに関する等式が含まれる直線数式のインデックスをｑ１，・・・，ｑＱ´、Ｍ＝Ｉ［ｑ１］＋・・・＋Ｉ［ｑＱ´］として、上記のオフライン処理で作成された最適価格テーブルの一例を図１７に示す。図１７は、第二の実施形態に係る最適価格テーブルの一例を示す図である。なお、図１７に示す例では、各ｍに対して、ｑ＝ｍとなるようにｑを適宜リナンバリングした場合を示している。
【０１３９】
図１７に示すように、最適価格テーブルに格納されている各レコードには、項目として、Ｌ下限と、Ｌ上限と、Ｌとλ以外の条件と、λ関係式とが含まれる。ｍ番目のレコードについて、項目「Ｌ下限」には｛α［ｍ］［ｊ１］，ｊ１＝１，・・・，Ｊｉ１｝、項目「Ｌ上限には｛β［ｍ］［ｊ２］，ｊ２＝１，・・・，Ｊｉ２｝、項目「Ｌとλ以外の条件」には｛γ［ｍ］［ｊ３］，ｊ３＝１，・・・，Ｊｉ３｝、項目「λ関係式」にはλ＝θ［ｍ］（Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）がそれぞれ設定される。このように、本実施形態に係る最適価格テーブルには、需要量Ｌの下限に関する数式群と、需要量Ｌの上限に関する数式群と、Ｌ及びλと無関係な条件式と、λに関する等式λ＝θ［ｍ］（Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）とが対応付けられたレコードが格納されている。
【０１４０】
なお、最適価格テーブルは、Ｌ下限と、Ｌ上限と、Ｌとλ以外の条件と、λ関係式とが対応付けられていればよく、必ずしもテーブル形式でなくてもよい。
【０１４１】
＜オンライン処理＞
次に、本実施形態に係る生産配分決定装置１０のオンライン処理について、図１８を参照しながら説明する。図１８は、第二の実施形態に係るオンライン処理の一例を示すフローチャートである。ここで、本実施形態に係るオンライン処理では、需要量Ｌ［ｓ］，ｓ＝１，・・・，Ｔと、供給量現在値Ｐ［ｋ］［０］とが与えられる。
【０１４２】
まず、オンライン処理部１２０は、断面ｓをＴに初期化（すなわち、断面ｓを、予測ホライズンの最終断面であるｓ＝Ｔに初期化）する（ステップＳ５０１）。次に、初期上下限計算部１２３は、断面ｓ＝Ｔにおける各生産者ｋの供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を計算する（ステップＳ５０２）。本ステップの処理の詳細については後述する。
【０１４３】
次に、最適価格計算部１２１は、最適価格テーブルを用いて、需要量Ｌ［ｓ］と、供給上限ｍａｘ［ｋ］［ｓ］と、供給下限ｍｉｎ［ｋ］［ｓ］とに対して、最適価格λ［ｓ］を計算する（ステップＳ５０３）。本ステップの処理の詳細については後述する。
【０１４４】
次に、配分計算部１２２は、最適価格λ［ｓ］を用いて、断面ｓにおける各生産者ｋの最適供給量Ｐ［ｋ］［ｓ］を計算する（ステップＳ５０４）。本ステップの処理の詳細については後述する。
【０１４５】
次に、オンライン処理部１２０は、断面ｓをｓ−１に更新する（ステップＳ５０５）。次に、オンライン処理部１２０は、断面ｓが１以上であるか否かを判定する（ステップＳ５０６）。
【０１４６】
ステップＳ５０６で断面ｓが１以上であると判定された場合、上下限計算部１２４は、断面ｓ（＜Ｔ）における各生産者ｋの供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を計算する（ステップＳ５０７）。本ステップの処理の詳細については後述する。そして、オンライン処理部１２０は、ステップＳ５０３に戻る。
【０１４７】
一方で、ステップＳ５０６で断面ｓが１以上であると判定されなかった場合、オンライン処理部１２０は、オンライン処理を終了する。これにより、各断面ｓにおける各生産者ｋの最適供給量Ｐ［ｋ］［ｓ］が決定される。したがって、これらの最適供給量Ｐ［ｋ］［ｓ］を用いて、制御対象の最適制御を実現される。
【０１４８】
ここで、上記のステップＳ５０２で断面ｓ＝Ｔにおける各生産者ｋの供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を計算する処理について、図１９を参照しながら説明する。図１９は、断面ｓ＝Ｔにおける供給上限及び供給下限の計算処理の一例を示すフローチャートである。
【０１４９】
まず、初期上下限計算部１２３は、生産者のインデックスを表す変数ｋを１に初期化する（ステップＳ６０１）。
【０１５０】
次に、初期上下限計算部１２３は、生産者ｋの変化率制約δ［ｋ］と、生産者ｋの能力上限ｕｌ［ｋ］と、供給量現在値Ｐ［ｋ］［０］とに基づいて、断面ｓ＝Ｔにおける供給上限ｍａｘ［ｋ］［ｓ］を計算する（ステップＳ６０２）。
【０１５１】
初期上下限計算部１２３は、ｍａｘ１［ｋ］［ｓ］＝Ｐ［ｋ］［０］＋ｓ×δ［ｋ］とした上で、ｍａｘ［ｋ］［ｓ］＝ＭＩＮ（ｕｌ［ｋ］，ｍａｘ１［ｋ］［ｓ］）により供給上限ｍａｘ［ｋ］［ｓ］を計算する。すなわち、初期上下限計算部１２３は、ｕｌ［ｋ］又はｍａｘ１［ｋ］［ｓ］のいずれか小さい方を供給上限ｍａｘ［ｋ］［ｓ］とする。このことは、生産者ｋが生産可能な上限量（能力上限ｕｌ［ｋ］）と、変化率制約δ［ｋ］を考慮して供給量現在値Ｐ［ｋ］［０］から供給量を変化させた場合に断面ｓで生産者ｋが生産可能な上限量（ｍａｘ１［ｋ］［ｓ］）とのいずれか小さい方を供給上限ｍａｘ［ｋ］［ｓ］とすることを意味する。
【０１５２】
次に、初期上下限計算部１２３は、生産者ｋの変化率制約δ［ｋ］と、生産者ｋの能力下限ｌｌ［ｋ］と、供給量現在値Ｐ［ｋ］［０］とに基づいて、断面ｓ＝Ｔにおける供給下限ｍｉｎ［ｋ］［ｓ］を計算する（ステップＳ６０３）。
【０１５３】
初期上下限計算部１２３は、ｍｉｎ１［ｋ］［ｓ］＝Ｐ［ｋ］［０］−ｓ×δ［ｋ］とした上で、ｍｉｎ［ｋ］［ｓ］＝ＭＡＸ（ｌｌ［ｋ］，ｍｉｎ１［ｋ］［ｓ］）により供給下限ｍｉｎ［ｋ］［ｓ］を計算する。すなわち、初期上下限計算部１２３は、ｌｌ［ｋ］又はｍｉｎ１［ｋ］［ｓ］のいずれか大きい方を供給下限ｍｉｎ［ｋ］［ｓ］とする。このことは、生産者ｋが生産可能な下限量（能力下限ｌｌ［ｋ］）と、変化率制約δ［ｋ］を考慮して供給量現在値Ｐ［ｋ］［０］から供給量を変化させた場合に断面ｓで生産者ｋが生産可能な下限量（ｍｉｎ１［ｋ］［ｓ］）とのいずれか大きい方を供給下限ｍｉｎ［ｋ］［ｓ］とすることを意味する。
【０１５４】
なお、上記のステップＳ６０２及びステップＳ６０３は順不同である。
【０１５５】
次に、初期上下限計算部１２３は、生産者のインデックスを表す変数ｋをｋ＋１に更新する（ステップＳ６０４）。
【０１５６】
次に、初期上下限計算部１２３は、ｋ≦Ｎであるか否かを判定する（ステップＳ６０５）。
【０１５７】
ステップＳ６０５でｋ≦Ｎであると判定された場合、初期上下限計算部１２３は、ステップＳ６０２に戻る。一方で、ステップＳ６０５でｋ≦Ｎであると判定されなかった場合、初期上下限計算部１２３は、処理を終了する。これにより、断面ｓ＝Ｔにおける各生産者ｋの供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］が得られる。
【０１５８】
ここで、断面ｓ＝Ｔにおける生産者ｋの供給可能範囲は、供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］で表される。或る生産者ｋの供給可能範囲を図２０に示す。図２０に示す例では、ｍａｘ１［ｋ］［ｓ］＞ｕｌ［ｋ］、かつ、ｍｉｎ１［ｋ］［ｓ］＞ｌｌ［ｋ］である。この場合、供給上限ｍａｘ［ｋ］［ｓ］＝ｕｌ［ｋ］、供給下限ｍｉｎ［ｋ］［ｓ］＝ｍｉｎ１［ｋ］［ｓ］となる。このとき、断面ｓ＝Ｔにおいて、生産者ｋが供給可能な供給量Ｐ［ｋ］［ｓ］の範囲（供給可能範囲）は、ｍｉｎ［ｋ］［ｓ］≦Ｐ［ｋ］［ｓ］≦ｍａｘ［ｋ］［ｓ］となる。
【０１５９】
次に、上記のステップＳ５０３で或る断面ｓにおける最適価格λ［ｓ］を計算する処理について、図２１を参照しながら説明する。図２１は、第二の実施形態に係る最適価格λ［ｓ］の計算処理の一例を示すフローチャートである。
【０１６０】
まず、最適価格計算部１２１は、最適価格テーブルに格納されているレコードのインデックスを表す変数ｍを１に初期化する（ステップＳ７０１）。
【０１６１】
次に、最適価格計算部１２１は、与えられた需要Ｌ［ｓ］が、ｍ番目のレコードに含まれるＬ下限の数式群の最大値以上かつＬ上限の数式群の最小値以下であるかを判定する（ステップＳ７０２）。
【０１６２】
すなわち、まず、ｍ番目のレコードに含まれるＬ下限の数式群｛α［ｍ］［ｊ１］，ｊ１＝１，・・・，Ｊｉ１｝に対して、断面ｓにおける各生産者ｋ（ｋ＝１，・・・，Ｎ）の供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を代入した上で、これら最大値をα［ｍ］［ｓ］とする。つまり、α［ｍ］［ｓ］＝ＭＡＸ｛α［ｍ］［ｊ１］（ｍｉｎ［１］［ｓ］，・・・，ｍｉｎ［Ｎ］［ｓ］，ｍａｘ［１］［ｓ］，・・・，ｍａｘ［Ｎ］［ｓ］），ｊ１＝１，・・・，Ｊｉ１｝とする。
【０１６３】
同様に、ｍ番目のレコードに含まれるＬ上限の数式群｛β［ｍ］［ｊ２］，ｊ２＝１，・・・，Ｊｉ２｝に対して、断面ｓにおける各生産者ｋ（ｋ＝１，・・・，Ｎ）の供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を代入した上で、これら最小値をβ［ｍ］［ｓ］とする。つまり、β［ｍ］［ｓ］＝ＭＩＮ｛β［ｍ］［ｊ２］（ｍｉｎ［１］［ｓ］，・・・，ｍｉｎ［Ｎ］［ｓ］，ｍａｘ［１］［ｓ］，・・・，ｍａｘ［Ｎ］［ｓ］），ｊ２＝１，・・・，Ｊｉ２｝とする。
【０１６４】
そして、最適価格計算部１２１は、α［ｍ］［ｓ］≦Ｌ［ｓ］≦β［ｍ］［ｓ］を満たすか否かを判定する。
【０１６５】
ステップＳ７０２でα［ｍ］［ｓ］≦Ｌ［ｓ］≦β［ｍ］［ｓ］を満たすと判定された場合、最適価格計算部１２１は、Ｌとλ以外の条件（すなわち、｛γ［ｍ］［ｊ３］，ｊ３＝１，・・・，Ｊｉ３｝）を満たすか否かを判定する（ステップＳ７０３）。ここで、Ｌとλ以外の条件を満たすとは、｛γ［ｍ］［ｊ３］，ｊ３＝１，・・・，Ｊｉ３｝に対して、断面ｓにおける各生産者ｋ（ｋ＝１，・・・，Ｎ）の供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を代入した結果がＴｒｕｅになることである。言い換えれば、全てのｊ３に対して、γ［ｍ］［ｊ３］（ｍｉｎ［１］［ｓ］，・・・，ｍｉｎ［Ｎ］［ｓ］，ｍａｘ［１］［ｓ］，・・・，ｍａｘ［Ｎ］［ｓ］）がＴｒｕｅとなることである。
【０１６６】
ステップＳ７０３でＬとλ以外の条件を満たすと判定された場合、最適価格計算部１２１は、当該｛α［ｍ］［ｊ１］，ｊ１＝１，・・・，Ｊｉ１｝、｛β［ｍ］［ｊ２］，ｊ２＝１，・・・，Ｊｉ２｝及び｛γ［ｍ］［ｊ３］，ｊ３＝１，・・・，Ｊｉ３｝に対応するλ関係式λ＝θ［ｍ］（Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）により最適価格λ［ｓ］を計算する（ステップＳ７０４）。すなわち、最適価格計算部１２１は、λ＝θ［ｍ］（Ｌ，ｍｉｎ［ｋ］，ｍａｘ［ｋ］）に対して、断面ｓにおける需要量Ｌ［ｓ］と、断面ｓにおける各生産者ｋ（ｋ＝１，・・・，Ｎ）の供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］とを代入して、λ［ｓ］＝θ［ｍ］（Ｌ［ｓ］，ｍｉｎ［１］［ｓ］，・・・，ｍｉｎ［Ｎ］［ｓ］，ｍａｘ［１］［ｓ］，・・・，ｍａｘ［ｋ］［ｓ］）を計算する。これにより、断面ｓにおける最適価格λ［ｓ］が得られる。
【０１６７】
ステップＳ７０２でα［ｍ］［ｓ］≦Ｌ［ｓ］≦β［ｍ］［ｓ］を満たさないと判定された場合又はステップＳ７０３でＬとλ以外の条件を満たさないと判定された場合、最適価格計算部１２１は、ｍをｍ＋１に更新（ステップＳ７０５）して、ステップＳ７０２に戻る。
【０１６８】
このように、本実施形態に係る生産配分決定装置１０は、需要量Ｌ［ｓ］と、供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］とを用いて最適価格テーブルを探索（又は検索）した上で、探索されたレコードに含まれるλ関係式に当該需要量Ｌ［ｓ］並びに供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を代入するだけで、容易かつ高速に断面ｓにおける最適価格λ［ｓ］を計算することができる。
【０１６９】
次に、上記のステップＳ５０４で各生産者ｋの最適供給量Ｐを計算する処理について、図２２を参照しながら説明する。図２２は、第二の実施形態に係る最適供給量Ｐ［ｋ］［ｓ］の計算処理の一例を示すフローチャートである。
【０１７０】
まず、配分計算部１２２は、生産者のインデックスを表す変数ｋを１に初期化する（ステップＳ８０１）。
【０１７１】
次に、配分計算部１２２は、断面ｓにおける最適価格λ［ｓ］と、断面ｓにおける生産者ｋの限界コストを比較する（ステップＳ８０２）。断面ｓにおける生産者ｋの限界コストは、供給曲線モデルＣ´［ｋ］によって表される。
【０１７２】
ステップＳ３０１の比較結果が「生産者ｋの限界コストの下限＞λ［ｓ］」である場合、配分計算部１２２は、断面ｓにおける生産者ｋの最適供給量を、Ｐ［ｋ］［ｓ］＝ｍｉｎ［ｋ］［ｓ］とする（ステップＳ８０３）。この場合は、生産者ｋは、断面ｓで最適価格λ［ｓ］に見合う生産及び供給を行うことができない場合に相当する。
【０１７３】
ステップＳ３０１の比較結果が「生産者ｋの限界コストの上限≧λ［ｓ］≧生産者ｋの限界コストの下限」である場合、配分計算部１２２は、断面ｓにおける生産者ｋの最適供給量を、限界コストがλとなるＰ［ｋ］［ｓ］（すなわち、λ［ｓ］＝Ｃ´［ｋ］（Ｐ［ｋ］［ｓ］，ｍｉｎ［ｋ］［ｓ］，ｍａｘ［ｋ］［ｓ］）となるＰ［ｋ］［ｓ］）とする（ステップＳ８０４）。この場合は、生産者ｋは、断面ｓで最適価格λ［ｓ］に見合った生産及び供給を行うことができる場合に相当する。
【０１７４】
ステップＳ３０１の比較結果が「生産者ｋの限界コストの上限＜λ［ｓ］」である場合、配分計算部１２２は、断面ｓにおける生産者ｋの最適供給量を、Ｐ［ｋ］＝ｍａｘ［ｋ］［ｓ］とする（ステップＳ８０５）。この場合は、生産者ｋは、断面ｓで最適価格λ［ｓ］に応じた量の生産物を生産及び供給を行うことができない場合に相当する。
【０１７５】
ステップＳ８０３、ステップＳ８０４又はステップＳ８０５に続いて、配分計算部１２２は、ｋをｋ＋１に更新する（ステップＳ８０６）。次に、配分計算部１２２は、ｋ≦Ｎであるか否かを判定する（ステップＳ８０７）。
【０１７６】
そして、ステップＳ８０７でｋ≦Ｎであると判定されなかった場合、配分計算部１２２は、ステップＳ８０２に戻る。一方で、ステップＳ８０７でｋ≦Ｎであると判定された場合、配分計算部１２２は、処理を終了する。これにより、断面ｓにおける各生産者ｋの最適供給量Ｐ［ｋ］［ｓ］が計算される。
【０１７７】
次に、上記のステップＳ５０７で断面ｓ（＜Ｔ）における各生産者ｋの供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を計算する処理について、図２３を参照しながら説明する。図２３は、断面ｓ（＜Ｔ）における供給上限及び供給下限の計算処理の一例を示すフローチャートである。
【０１７８】
まず、上下限計算部１２４は、生産者のインデックスを表す変数ｋを１に初期化する（ステップＳ９０１）。
【０１７９】
次に、上下限計算部１２４は、生産者ｋの変化率制約δ［ｋ］と、生産者ｋの能力上限ｕｌ［ｋ］と、供給量現在値Ｐ［ｋ］［０］と、断面ｓ＋１における生産者ｋの最適供給量Ｐ［ｋ］［ｓ＋１］とに基づいて、断面ｓ（＜Ｔ）における供給上限ｍａｘ［ｋ］［ｓ］を計算する（ステップＳ９０２）。
【０１８０】
上下限計算部１２４は、ｍａｘ１［ｋ］［ｓ］＝Ｐ［ｋ］［０］＋ｓ×δ［ｋ］、ｍａｘ２［ｋ］［ｓ］＝Ｐ［ｋ］［ｓ＋１］＋δ［ｋ］とした上で、ｍａｘ［ｋ］［ｓ］＝ＭＩＮ（ｕｌ［ｋ］，ｍａｘ１［ｋ］［ｓ］，ｍａｘ２［ｋ］［ｓ］）により供給上限ｍａｘ［ｋ］［ｓ］を計算する。すなわち、上下限計算部１２４は、ｕｌ［ｋ］、ｍａｘ１［ｋ］［ｓ］又はｍａｘ２［ｋ］［ｓ］のうちの最も小さいものを供給上限ｍａｘ［ｋ］［ｓ］とする。このことは、上下限計算部１２４は、生産者ｋが生産可能な上限量（能力上限ｕｌ［ｋ］）と、変化率制約δ［ｋ］を考慮して供給量現在値Ｐ［ｋ］［０］から供給量を変化させた場合に断面ｓで生産者ｋが生産可能な上限量（ｍａｘ１［ｋ］［ｓ］）と、変化率制約δ［ｋ］を考慮して最適供給量Ｐ［ｋ］［ｓ＋１］から供給量を変化させた場合に断面ｓで生産者ｋが生産可能な上限量（ｍａｘ２［ｋ］［ｓ］）とのうちの最も小さいものを供給上限ｍａｘ［ｋ］［ｓ］とすることを意味する。
【０１８１】
次に、上下限計算部１２４は、生産者ｋの変化率制約δ［ｋ］と、生産者ｋの能力下限ｌｌ［ｋ］と、供給量現在値Ｐ［ｋ］［０］と、断面ｓ＋１における生産者ｋの最適供給量Ｐ［ｋ］［ｓ＋１］とに基づいて、断面ｓ（＜Ｔ）における供給下限ｍｉｎ［ｋ］［ｓ］を計算する（ステップＳ９０３）。
【０１８２】
上下限計算部１２４は、ｍｉｎ１［ｋ］［ｓ］＝Ｐ［ｋ］［０］−ｓ×δ［ｋ］、ｍｉｎ２［ｋ］［ｓ］＝Ｐ［ｋ］［ｓ＋１］−δ［ｋ］とした上で、ｍｉｎ［ｋ］［ｓ］＝ＭＡＸ（ｌｌ［ｋ］，ｍｉｎ１［ｋ］［ｓ］，ｍｉｎ２［ｋ］［ｓ］）により供給下限ｍｉｎ［ｋ］［ｓ］を計算する。すなわち、上下限計算部１２４は、ｌｌ［ｋ］、ｍｉｎ１［ｋ］［ｓ］又はｍｉｎ２［ｋ］［ｓ］のうちの最も大きいものを供給下限ｍｉｎ［ｋ］［ｓ］とする。このことは、上下限計算部１２４は、生産者ｋが生産可能な下限量（能力下限ｌｌ［ｋ］）と、変化率制約δ［ｋ］を考慮して供給量現在値Ｐ［ｋ］［０］から供給量を変化させた場合に断面ｓで生産者ｋが生産可能な下限量（ｍｉｎ１［ｋ］［ｓ］）と、変化率制約δ［ｋ］を考慮して最適供給量Ｐ［ｋ］［ｓ＋１］から供給量を変化させた場合に断面ｓで生産者ｋが生産可能な下限量（ｍｉｎ２［ｋ］［ｓ］）とのうちの最も大きいものを供給下限ｍｉｎ［ｋ］［ｓ］とすることを意味する。
【０１８３】
なお、上記のステップＳ９０２及びステップＳ９０３は順不同である。
【０１８４】
次に、上下限計算部１２４は、ｋをｋ＋１に更新する（ステップＳ９０４）。次に、上下限計算部１２４は、ｋ≦Ｎであるか否かを判定する（ステップＳ９０５）。
【０１８５】
ステップＳ９０５でｋ≦Ｎであると判定された場合、上下限計算部１２４は、ステップＳ９０２に戻る。一方で、ステップＳ９０５でｋ≦Ｎであると判定されなかった場合、上下限計算部１２４は、処理を終了する。
【０１８６】
ここで、断面ｓ（＜Ｔ）における生産者ｋの供給可能範囲は、供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］で表される。或る生産者ｋの供給可能範囲を図２４に示す。図２４に示す例では、ｍａｘ１［ｋ］［ｓ］＞ｕｌ［ｋ］＞ｍａｘ２［ｋ］［ｓ］、かつ、ｍｉｎ１［ｋ］［ｓ］＞ｍｉｎ２［ｋ］［ｓ］＞ｌｌ［ｋ］である。この場合、供給上限ｍａｘ［ｋ］［ｓ］＝ｍａｘ２［ｋ］［ｓ］、供給下限ｍｉｎ［ｋ］［ｓ］＝ｍｉｎ１［ｋ］［ｓ］となる。このとき、断面ｓ（＜ｔ）において、生産者ｋが供給可能な供給量Ｐ［ｋ］［ｓ］の範囲（供給可能範囲）は、ｍｉｎ［ｋ］［ｓ］≦Ｐ［ｋ］［ｓ］≦ｍａｘ［ｋ］［ｓ］となる。
【０１８７】
このように、断面ｓ（＜Ｔ）では、１つ未来の断面ｓ＋１で決定された最適供給量Ｐ［ｋ］［ｓ＋１］も考慮した供給上限ｍａｘ［ｋ］［ｓ］及び供給下限ｍｉｎ［ｋ］［ｓ］を決定する。これにより、各断面ｓ（＜Ｔ）において、最適な供給上限ｍａｘ［ｋ］［ｓ］及び供給下限［ｋ］［ｓ］を決定することができる。
【０１８８】
＜実施例２＞
以降では、実施例２として、本実施形態に係る生産配分決定装置１０の実施例について説明する。実施例２では、実施例１と同様に、図９に示す需給系統における供給量の最適化について説明する。
【０１８９】
このとき、Ｔ＝２０として、断面ｓ＋１と断面ｓとの間の時間幅をΔｓ＝５（ｍｉｎ）とする。
【０１９０】
また、発電機Ｎｏ．１の能力上限ｕｌ［１］、能力下限ｌｌ［１］及び変化率制約をδ［１］を以下とする。
【０１９１】
・能力上限ｕｌ［１］＝３００（ＭＷ）
・能力下限ｌｌ［１］＝５０（ＭＷ）
・変化率制約δ［１］＝±２０（ＭＷ／５ｍｉｎ）
同様に、発電機Ｎｏ．２の能力上限ｕｌ［２］、能力下限ｌｌ［２］及び変化率制約をδ［２］を以下とする。
【０１９２】
・能力上限ｕｌ［２］＝４００（ＭＷ）
・能力下限ｌｌ［２］＝１００（ＭＷ）
・変化率制約δ［２］＝±１０（ＭＷ／５ｍｉｎ）
同様に、発電機Ｎｏ．３の能力上限ｕｌ［３］、能力下限ｌｌ［３］及び変化率制約をδ［３］を以下とする。
【０１９３】
・能力上限ｕｌ［３］＝５００（ＭＷ）
・能力下限ｌｌ［３］＝２００（ＭＷ）
・変化率制約δ［３］＝±３０（ＭＷ／５ｍｉｎ）
また、生産配分決定装置１０に与えられる需要量Ｌ［ｓ］，ｓ＝１，・・・，２０を図２５に示す。図２５は、現在時刻を９：３０として、９：３５（断面ｓ＝１）から１１：１０（断面ｓ＝２０）までの需要量Ｌ［ｓ］（すなわち、電力需要量予測値）を示している。
【０１９４】
更に、現在時刻９：３０における各発電機の供給量（つまり、供給量現在値）Ｐ［１］［０］、Ｐ［２］［０］及びＰ［３］［０］は以下とする。
【０１９５】
・発電機Ｎｏ．１の供給量現在値Ｐ［１］［０］＝１００（ＭＷ）
・発電機Ｎｏ．２の供給量現在値Ｐ［２］［０］＝１５０（ＭＷ）
・発電機Ｎｏ．３の供給量現在値Ｐ［３］［０］＝２５０（ＭＷ）
すなわち、図９に示す需給系統は、現在時刻９：３０においてＰ［１］［０］＋Ｐ［２］［０］＋Ｐ［３］［０］＝５００（ＭＷ）の電力を電気設備に供給している。
【０１９６】
このとき、総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［１］，ｍｉｎ［２］，ｍｉｎ［３］，ｍａｘ［１］，ｍａｘ［２］，ｍａｘ［３］）は、以下により計算することができる。
【０１９７】
まず、
ｆ１：＝Ｌ＝Ｐ［１］＋Ｐ［２］＋Ｐ［３］
ｆ２：＝ｆ２１∧ｆ２２∧ｆ２３
ｆ２１：＝（ｍｉｎ［１］≦Ｐ［１］≦ｍａｘ［１］∧λ＝２×０，００１５×Ｐ［１］＋２．５）∨（ｍｉｎ［１］＝Ｐ［１］∧λ＝２×０．００１５×ｍｉｎ［１］＋２．５）∨（ｍａｘ［１］＝Ｐ［１］∧λ≧２×０．００１５×ｍａｘ［１］＋２．５）
ｆ２２：＝（ｍｉｎ［２］≦Ｐ［２］≦ｍａｘ［２］∧λ＝２×０．０００５×Ｐ［２］＋３．２）∨（ｍｉｎ［２］＝Ｐ［２］∧λ≦２×０．０００５×ｍｉｎ［２］＋３．２）∨（ｍａｘ［２］＝Ｐ［２］∧λ≧２×０．０００５×ｍａｘ［２］＋３．２）
ｆ２３：＝（ｍｉｎ［３］≦Ｐ［３］≦ｍａｘ［３］∧λ＝２×０．００１０×Ｐ［３］＋３．５）∨（ｍｉｎ［３］＝Ｐ［３］∧λ≦２×０．００１０×ｍｉｎ［３］＋３．５）∨（ｍａｘ［３］＝Ｐ［３］∧λ≧２×０．００１０×ｍａｘ［３］＋３．５）
とする。ここで、ｆ１は電気設備の需要量Ｌが各発電機の発電量の合計（Ｐ［１］、Ｐ［２］、Ｐ［３］）に等しいことを示す。また、ｆ２は全ての発電機の限界コストに関する数式ｆ２１，ｆ２２，ｆ２３を論理積で結合した数式である。各ｆ２ｋ（ｋ＝１，２，３）は、供給量が供給上限と供給下限との間にある場合の限界コストを示す数式と、供給量が供給上限である場合の限界コストを示す数式と、供給量が供給下限である場合の限界コストを示す数式とを論理和で結合した数式である。
【０１９８】
次に、ｆ１及びｆ２の論理積に対して、各発電機の発電量Ｐ［１］、Ｐ［２］及びＰ［３］に存在記号（∃）を付与し、一階述語論理式ψ：＝∃Ｐ［１］∃Ｐ［２］∃Ｐ［３］（ｆ１∧ｆ２）を生成する。そして、この一階述語論理式ψに対して限定記号消去法を適用することで、総供給曲線モデルφを生成する。すなわち、例えば、限定記号消去法を実行する関数をＱＥ（・）とすれば、φ：＝ＱＥ（ψ）である。これにより、実施例２における総供給曲線モデルφ（λ，Ｌ，ｍｉｎ［１］，ｍｉｎ［２］，ｍｉｎ［３］，ｍａｘ［１］，ｍａｘ［２］，ｍａｘ［３］）が得られる。
【０１９９】
したがって、図１６Ａ及び図１６Ｂのオフライン処理により、図２６に示す最適価格テーブルが作成される。図２６に示す最適価格テーブルは、Ｌ下限、Ｌ上限、Ｌとλ以外の条件及びλ関係式が含まれるレコードで構成される。
【０２００】
ここで、本実施例のオンライン処理では、上記のステップＳ５０２で以下の供給上限ｍａｘ［ｋ］［２０］及び供給下限ｍｉｎ［ｋ］［２０］が計算される。
【０２０１】
・ｍａｘ［１］［２０］＝３００，ｍｉｎ［１］［２０］＝５０
・ｍａｘ［２］［２０］＝３５０，ｍｉｎ［２］［２０］＝１００
・ｍａｘ［３］［２０］＝５００，ｍｉｎ［３］［２０］＝２００
また、断面ｓ＝２０において、上記のステップＳ５０３では、与えられた需要量Ｌ［２０］＝８２０（ＭＷ）から、最適価格テーブルのＮｏ６のレコードのＬ下限、Ｌ上限及びＬとλ以外の条件を満たすことになるため、最適価格λ［２０］がλ［２０］＝８８／２５＝３．５２と計算される。
【０２０２】
次に、断面ｓ＝２０において、上記のステップＳ５０４では、各発電機の最適供給量Ｐ［ｋ］［２０］は、Ｐ［１］［２０］＝３００、Ｐ［２］［２０］＝３２０、Ｐ［３］［２０］＝２００と計算される。これは、図２７に示すように、発電機Ｎｏ．１では限界コストの上限（＝３．４）よりも最適価格λ［２０］の方が大きく、発電機Ｎｏ．２では限界コストの下限≦最適価格λ［２０］≦限界コストの上限であり、発電機Ｎｏ．３では限界コストの下限（＝３．９）よりも最適価格λ［２０］の方が小さいためである。
【０２０３】
次に、断面ｓ＝１９では、上記のステップＳ５０７で以下の供給上限ｍａｘ［ｋ］［１９］及び供給下限ｍｉｎ［ｋ］［１９］が計算される。
【０２０４】
・ｍａｘ［１］［１９］＝３００，ｍｉｎ［１］［１９］＝２８０
・ｍａｘ［２］［１９］＝３３０，ｍｉｎ［２］［１９］＝３１０
・ｍａｘ［３］［１９］＝２３０，ｍｉｎ［３］［１９］＝２００
また、断面ｓ＝１９において、上記のステップＳ５０３では、与えられた需要量Ｌ［１９］＝８００（ＭＷ）から、最適価格テーブルのＮｏ２０のレコードのＬ下限、Ｌ上限及びＬとλ以外の条件を満たすことになるため、最適価格λ［１９］がλ［１９］＝３３７／１００＝３．３７と計算される。
【０２０５】
次に、断面ｓ＝１９において、上記のステップＳ５０４では、各発電機の最適供給量Ｐ［ｋ］［１９］は、Ｐ［１］［１９］＝２９０、Ｐ［２］［１９］＝３１０、Ｐ［３］［１９］＝２００と計算される。これは、図２８に示すように、発電機Ｎｏ．１では限界コストの上限≦最適価格λ［１９］≦限界コストの下限であり、発電機Ｎｏ．２では限界コストの下限（＝３．５１）よりも最適価格λ［１９］の方が小さく、発電機Ｎｏ．３では限界コストの下限（＝３．９）よりも最適価格λ［１９］の方が小さいためである。
【０２０６】
以降、同様に、断面ｓ＝１８から断面ｓ＝１まで１断面ずつ過去にずらしながら各断面ｓにおける各発電機の最適供給量Ｐ［ｋ］［ｓ］を計算する。
【０２０７】
実施例２における各発電機について、本実施形態に係る生産配分決定装置１０によって断面ｓ（ｓ＝１，・・・，２０）の最適供給量Ｐ［ｋ］［ｓ］を計算した結果を図２９に示す。図２９では、各断面ｓにおける各発電機の最適供給量Ｐ［ｋ］［ｓ］を示している。
【０２０８】
＜従来技術との比較結果＞
ここで、従来技術である２分探索と、上記の実施例２とで最適解の計算時間を比較した結果を図３０に示す。図３０に示すように、本実施形態に係る生産配分決定装置１０では、従来技術（２分探索）と比較して１６．９倍高速に最適解を得ることができた。なお、２分探索には、上記の特許文献５に記載の数式処理も利用した。
【０２０９】
なお、本実施形態では、或る時刻ｔにおいて、各断面ｓ（ｓ＝１，・・・，Ｔ）の最適供給量Ｐ［ｋ］［ｓ］を計算する場合について説明したが、例えば、時刻ｔ毎に、各断面ｓ（ｓ＝１，・・・，Ｔ）の最適供給量Ｐ［ｋ］［ｓ］を繰り返し計算してもよい。すなわち、或る時間区間（例えば、制御周期等）を表すインデックスをｔ、時刻ｔにおける最適供給量をＰｔ［ｋ］［ｓ］として、時刻ｔ毎に、最適供給量をＰｔ［ｋ］［ｓ］（ｓ＝１，・・・，Ｔ）を計算してもよい。
【０２１０】
［第三の実施形態］
次に、第三の実施形態について説明する。第三の実施形態では、オフライン処理部１１０とオンライン処理部１２０とを異なる装置が有する場合について説明する。図３１に示すように、本実施形態に係る生産配分決定システムには、オフライン処理部１１０を有する最適価格テーブル作成装置２０と、オンライン処理部１２０を有する生産配分決定装置３０とが含まれる。また、最適価格テーブル作成装置２０と生産配分決定装置３０とは、ネットワークを介して通信可能に接続されている。
【０２１１】
このような構成の場合、オフライン処理では、最適価格テーブル作成装置２０が最適価格テーブルを作成し、作成した最適価格テーブルが生産配分決定装置３０に送信されればよい。そして、生産配分決定装置３０は、受信した最適価格テーブルを補助記憶装置等に保持しておけばよい。これにより、オンライン処理では、生産配分決定装置３０は、補助記憶装置等に保持しておいた最適価格テーブルを用いて、プラントを構成する生産者の最適供給量を計算することができる。
【０２１２】
これにより、例えば、オフライン処理を実行する最適価格テーブル作成装置２０を比較的計算資源が多い情報処理装置（例えば、ＰＣ等）で実現する一方で、オンライン処理を実行する生産配分決定装置３０を比較的計算資源が少ないエッジデバイス（例えば、ＰＬＣやＤＣＳ等の制御装置）で実現することができる。
【０２１３】
本発明は、具体的に開示された上記の各実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０２１４】
１０        生産配分決定装置
１１０      オフライン処理部
１１１      総供給曲線計算部
１１２      最適価格テーブル作成部
１２０      オンライン処理部
１２１      最適価格計算部
１２２      配分計算部
【図１】
2020095457.tif 000005
【図２】
2020095457.tif 000006
【図３】
2020095457.tif 000007
【図４】
2020095457.tif 000008
【図５】
2020095457.tif 000009
【図６】
2020095457.tif 000010
【図７】
2020095457.tif 000011
【図８】
2020095457.tif 000012
【図９】
2020095457.tif 000013
【図１０】
2020095457.tif 000014
【図１１】
2020095457.tif 000015
【図１２】
2020095457.tif 000016
【図１３】
2020095457.tif 000017
【図１４】
2020095457.tif 000018
【図１５】
2020095457.tif 000019
【図１６Ａ】
2020095457.tif 000020
【図１６Ｂ】
2020095457.tif 000021
【図１７】
2020095457.tif 000022
【図１８】
2020095457.tif 000023
【図１９】
2020095457.tif 000024
【図２０】
2020095457.tif 000025
【図２１】
2020095457.tif 000026
【図２２】
2020095457.tif 000027
【図２３】
2020095457.tif 000028
【図２４】
2020095457.tif 000029
【図２５】
2020095457.tif 000030
【図２６】
2020095457.tif 000031
【図２７】
2020095457.tif 000032
【図２８】
2020095457.tif 000033
【図２９】
2020095457.tif 000034
【図３０】
2020095457.tif 000035
【図３１】
2020095457.tif 000036