【文献】
丹下吉雄 他,省エネルギー事前検討のための需給バランスを考慮したエネルギー最適化問題の可視化,電気学会論文誌C 電子・情報・システム部門誌,日本,一般社団法人電気学会,2014年 1月 1日,Vol. 134, No. 1,pp. 78-84
(58)【調査した分野】(Int.Cl.,DB名)
配分の対象となる生産物が複数の段階を経て生産される系統において前記各生産者の生産量の配分を決定する際には、一の段階での各生産者について配分を決定した後、前記配分を元に前記一の段階の次の段階での各生産者について配分を決定する処理を順次繰り返すことにより、前記複数の段階における各生産者の生産量の配分を決定する
ことを特徴とする請求項6または7記載の最適生産配分決定プログラム。
前記一の段階では、最終的に前記生産物の供給を受ける需要家に生産物を供給する第1の生産者間での配分を決定し、前記一の段階の次の段階では、前記第1の生産者に生産物を供給する第2の生産者間での配分を決定する
ことを特徴とする請求項8記載の最適生産配分決定プログラム。
前記生産量配分計算部は、配分の対象となる生産物が複数の段階を経て生産される系統において前記各生産者の生産量の配分を決定する際には、一の段階での各生産者について配分を決定した後、前記配分を元に前記一の段階の次の段階での各生産者について配分を決定する処理を順次繰り返すことにより、前記複数の段階における各生産者の生産量の配分を決定する
ことを特徴とする請求項12または13記載の最適生産配分決定装置。
前記生産量配分計算部は、前記一の段階では、最終的に前記生産物の供給を受ける需要家に生産物を供給する第1の生産者間での配分を決定し、前記一の段階の次の段階では、前記第1の生産者に生産物を供給する第2の生産者間での配分を決定する
ことを特徴とする請求項14記載の最適生産配分決定装置。
【発明を実施するための形態】
【0022】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
<第1の実施形態>
図1は、本実施形態に係る最適生産配分決定装置1により、生産者ごとの生産量の配分を最適化する方法の概要を説明する図である。
【0023】
以下の説明においては、本実施形態に係る最適生産配分決定装置1が、複数の生産者のそれぞれが、資源や製品等の生産物を生産し、生産した生産物を全て需要家に対して供給する場合の各生産者の生産量や供給量の配分の最適化を行うこととする。すなわち、以下に説明する実施形態のいずれにおいても、生産者の生産量及び生産者による供給量が一致している。
【0024】
複数の生産者のそれぞれを、生産者i(i=1,2,…,n(nは2以上の整数))とする。生産者iの生産物は、その供給量に応じて限界コスト(marginal cost)C´iを要する。限界コストとは、ミクロ経済学の通例にならい、1単位を追加生産する際に必要なコストと定義する。生産者iの供給曲線モデルISCiは、生産者iの供給量と限界コストCiとの関係を表している。
【0025】
各生産者供給曲線モデルISCi(ISC1〜ISCn)に対し、総供給曲線モデルASCは、生産者1〜生産者nの生産量を合計した総生産量(=総供給量)と限界コストとの関係を表している。最適生産配分決定装置1は、各生産者供給曲線モデルISCiを合成することにより総供給曲線モデルASCを得ることができる。各生産者供給曲線モデルISCiより総供給曲線モデルASCを得る方法については、後述する。
【0026】
本実施形態に係る最適生産配分決定装置1は、ある需要量Lが与えられると、総供給曲線モデルASCよりこれに応じた量を供給する場合の限界コストである最適価格λを決定する。そして、各生産者供給曲線モデルISCiと決定した最適価格λとから、各生産者の生産量(=供給量)の配分(生産者iの供給量Si)を決定する。
【0027】
最適生産配分決定装置1は、例えば、パーソナルコンピュータ等の情報処理装置において、メモリ等からプログラムを読み出してこれを実行することにより、以下に説明するような生産者ごとの生産量の配分の最適化を実現する。次に、本実施形態に係る最適生産配分決定装置1が実行するプログラムの構成について具体的に説明する。
【0028】
図2は、本実施形態に係る最適生産配分決定装置1が実行する最適生産配分決定プログラム100の構成図であり、最適生産配分決定装置1が実行する処理フローを示す図である。
図1の最適生産配分決定装置1がメモリ等から最適生産配分決定プログラム100を読み出して実行することにより、コンピュータは、
図2の総供給曲線計算部11、最適価格探索部12及び各生産者配分計算部13として機能する。
【0029】
総供給曲線計算部11は、入力される各生産者供給曲線モデルISCi(ISC1〜ISCn)を合成して、総供給曲線モデルASCを計算する。
【0030】
図3は、総供給曲線計算部11の動作の詳細を説明する図である。
【0031】
図3の生産者iの供給曲線モデルISCiは、供給量Siと限界コストC´iとの関係をグラフ上に可視化した様子を記載している。総供給曲線計算部11は、
図3に示す一連の処理フローを実行する。すなわち、まず、生産者1〜生産者nのそれぞれについての供給曲線モデルISC1〜ISCnを用いて、限界コストλとし(
図3のステップ111)、このときの総供給量Sを以下の式により求める(ステップ112)。
【0033】
上式(1)において、C´i(Si)は、生産者iの供給量がSiであるときの限界コストC´を表している。
【0034】
総供給曲線計算部11は、上式(1)の総供給量Sと限界コストλとがとる値を実行可能解(feasible solution)として計算することにより、総供給曲線モデルASCを得る(ステップ113)。
図2に示すように、得られた総供給曲線モデルは、最適価格探索部12に与えられる。
【0035】
最適価格探索部12は、総供給曲線モデルASCと、与えられた需要量Lとから、最適価格の探索を行い、最適価格λを得る。
【0036】
図4は、最適価格探索部12の動作の詳細を説明する図である。
【0037】
最適価格探索部12は、総供給曲線計算部11が計算により得た総供給曲線モデルASCを用いて、最適価格λの探索を行う。具体的には、最適価格探索部12は、総供給曲線モデルASCの総供給量に関し、与えられた需要量Lと一致するときの対応する限界コストを求め、求めた限界コストを最適価格λとする。
図2に示すように、得られた最適価格λは、各生産者配分計算部13に与えられる。
【0038】
各生産者配分計算部13は、各生産者供給曲線モデルISCi(ISC1〜ISCn)と最適価格探索部12が探索により求めた最適価格λと、から、生産者iの生産物の生産量(=供給量)の候補を決定する。各生産者配分計算部13は、決定した生産量(供給量)の候補に基づき、生産者ごとの最適な生産量(=供給量)を得る。これについて、
図5〜
図9を参照して更に説明する。
【0039】
図5は、各生産者配分計算部13の動作の詳細を説明する図である。
図5は、各生産者配分計算部13が実行する処理フローを示している。
【0040】
各生産者配分計算部13は、最適価格λが入力されると、まず、複数の生産者を識別するiを初期化し、1を設定する(ステップ131)。そして、i番目の生産者に対して、「配分候補」を計算する(ステップ132)。i番目の生産者への配分候補とは、生産者iが最適価格λにて生産・供給を行う場合における生産量の候補をいう。以下、i番目の生産者への配分候補を、生産量候補(あるいは供給量候補)Siともいう。iの値がn未満であれば(ステップ133でNoの場合)、iに1加算して(ステップ134)、同様にi番目の生産者の配分候補を計算する。iの値がnになると(ステップ133でYesの場合)、ステップ135に進む。
【0041】
各生産者配分計算部13は、次に、「各生産者の生産組合せ」を決定する(ステップ135)。各生産者の生産組合せとは、生産者1〜nのそれぞれが生産、供給を行うか否かを表す情報をいい、実施例では、「xi」で表す。xi=1の場合、生産者iは生産、供給を行い、xi=0の場合、生産者iは生産、供給を行わないことを表すこととする。
【0042】
ステップ132〜ステップ134で求めた各生産者への配分候補すなわち生産量候補Siとステップ135で決定した各生産者の生産組合せxiとから、正味の総供給量をSとすると、総供給量Sは以下の式(2)で表される。
【0044】
各生産者配分計算部13は、式(2)と与えられた需要量Lとから、需給バランスΔを計算する(ステップ136)。需給バランスΔは、以下の(3)式で表される。
Δ=S-L…(3)
各生産者配分計算部13は、(3)式により求まる需給バランスΔに基づき、需給バランスが成り立つか否かを判定する(ステップ137)。具体的には、Δ=0であるか否かを判定する。Δ=0である場合は、各生産者配分計算部13は、上記のステップ132で求めた配分候補Siとステップ135で決定した生産組合せxiとから、各生産者の最適生産量を、{Si*xi}_{i=1,…,n}とする。一方Δ≠0である場合は、各生産者配分計算部13は、ステップ135に戻り、各生産者の生産組合せを変更し、Δ=0となるまで上記の処理を繰り返す。
【0045】
各生産者の生産組合せを変更するとき、計算の効率化の観点からは、一度試した組合せを除外する構成とすることが望ましい。また、このとき、配分候補Si=0である生産者iについては、xi=0としておくことで、更に計算時間を短縮できる。
【0046】
なお、
図5のステップ132のi番目の生産者への配分候補の求め方については、最適価格λと各生産者供給曲線モデルISCiにおける限界コストC´iとの大小関係に応じて、異なる決定方法を採用する。これについて、
図6〜
図9を参照して説明する。
【0047】
図6は、i番目の生産者への配分候補の求め方を決定する方法を説明する図である。
図6は、
図5のステップ132の詳細を示している。
【0048】
まず、
図2の最適価格探索部12にて求めた最適価格λと、生産者iの限界コストとを比較する(ステップ1321)。前述のとおり、生産者iの限界コストは、各生産者供給曲線モデルISCiにより表されている。
【0049】
最適価格λと各生産者供給曲線モデルISCiの限界コストC´iとを比較した結果、最適価格λが限界コストC´iの下限未満である場合(ステップ1322)は、配分決定法Aにより生産者iの配分候補を決定する(ステップ1323)。最適価格λが限界コストC´iの上下限の範囲内にある場合(ステップ1324)は、配分決定法Bによる(ステップ1325)。そして、最適価格λが限界コストC´iの上限を超過する場合(ステップ1326)は、配分決定法Cによる(1327)。
【0050】
配分決定法A〜Cの詳細をそれぞれ
図7〜
図9に示す。
【0051】
図7は、
図6のステップ1323の配分決定法Aの詳細を説明する図である。
【0052】
最適価格λが限界コストC´iの下限未満である場合、各生産者配分計算部13は、生産者iはコストに見合う生産、供給はできないと判断する。こうして、配分決定法Aによれば、i番目の生産者への配分候補として、「Si=0」を設定する。
【0053】
図8は、
図6のステップ1325の配分決定法Bの詳細を説明する図である。
【0054】
最適価格λが限界コストC´iの上下限の範囲内にある場合、各生産者配分計算部13は、生産者iはコストに見合った生産、供給ができると判断する。こうして、配分決定法Bによれば、i番目の生産者への配分候補として、「生産者iの供給曲線モデルISCiの最適価格λに対応する供給量Si」を設定する。
【0055】
図9は、
図6のステップ1327の配分決定法Cの詳細を説明する図である。
【0056】
最適価格λが限界コストC´iの上限を超過している場合、各生産者配分計算部13は、生産者iは最適価格λに応じた量の供給ができないと判断する。こうして、配分決定法Cによれば、i番目の生産者への配分候補として、「Si=0」を設定する。
【0057】
こうして、本実施形態によれば、各生産者供給曲線モデルISCiより総供給曲線モデルASCを計算により求め、これと与えられた需要量Lとから、総供給曲線モデルASCを探索して最適価格λを決定する。決定した最適価格λと各生産者供給曲線モデルISCiとから、生産者ごとに生産量候補Siを求め、各生産者の生産組合せxiにより、生産者ごとに生産を行うか否かを決定する。各生産者の生産量の合計Sが需要量Lと一致するように各生産者の生産組合せxiを設定することで、各生産者の生産量の配分の最適化を行う。
【0058】
以下においては、上記の生産者ごとに生産量の配分を最適化する処理について、具体的な需給系統を例に説明する。
【0059】
図10は、本実施形態に係る最適生産配分決定装置1が生産量の配分の最適化の対象とするプラントの機器構成を例示する図である。
【0060】
図10に示すプラントにおいては、ガス供給設備energy1から3基の蒸気発生設備supply1〜3に向けてガスを供給する。蒸気発生設備supply1〜3のそれぞれは、蒸気を発生させて蒸気輸送設備trans1に蒸気を集約させる。蒸気輸送設備trans1は集約させた蒸気を蒸気使用設備demand1に供給し、蒸気使用設備demand1は、供給された蒸気を消費する。
図10においては、各機器の蒸気(及び蒸気を発生させるために用いるガス)の出力端子を「y1」「y2」「u1」等のように記載している。
【0061】
3基の蒸気発生設備supply1〜3は、それぞれ蒸気を発生させる際にコストがかかる。蒸気輸送設備trans1が必要とする量の蒸気を供給するために、3基の蒸気発生設備supply1〜3への蒸気の生産配分を決定する方法について、具体例を挙げて説明する。
【0062】
図11は、各蒸気発生設備supply1〜3の供給曲線モデルISC1〜ISC3を示す図である。図の横軸は蒸気の供給量[kg/h]、縦軸は限界コスト[千円/kg]、すなわち、ある蒸気供給量のとき、蒸気を1単位(実施例では1kg)追加生産するのに必要な追加コストである。
【0063】
3基の蒸気発生設備supply1〜3は、蒸気の発生量がゼロ、コストがゼロ(
図11(a)〜
図11(c)の原点)であるか、あるいは、それぞれ一定の上下限の範囲内で蒸気を生産するかである。蒸気発生設備により、それぞれ生産可能な蒸気量の上下限や限界コストが異なっている。
【0064】
本実施形態に係る最適生産配分決定装置1の総供給曲線計算部11は、各蒸気発生設備supply1〜3の供給曲線モデルISC1〜ISC3を合成して、総供給曲線モデルASCを計算する。
【0065】
図12は、
図11の各蒸気発生設備supply1〜3の供給曲線モデルISC1〜ISC3を合成して得られる総供給曲線モデルASCを示す図である。
図11と同様に、横軸は、蒸気の供給量[kg/h]を、縦軸は、限界コスト[千円/kg]である。
【0066】
図12より、同一の総供給量であっても取り得る限界コストが複数あること、同一の限界コストであっても取り得る総供給量が複数あること、総供給量を変化させていくと、ところどころにおいて限界コストが離散的に変化すること等の特徴を有することがわかる。
【0067】
なお、
図12に示す総供給曲線モデルAXSCグラフにおいては、視認性の向上のため、
図11の各生産者供給曲線モデルISC1からISC3と比較して、供給曲線を太めに描画している。グラフに現れる複数の曲線のうちの一つについて見ると、ある供給量Sに対しては、限界コストC´は一意に決まる。このことは、以降の説明において参照する図面についても同様である。
【0068】
総供給曲線モデルASCがこれらの特徴を有する場合であっても、最適生産配分決定装置1は、3基の蒸気発生設備supply1〜3から蒸気輸送装置trans1に対してある量の蒸気を供給する際の各蒸気発生設備の蒸気の生産量の配分を最適化する。
【0069】
図13は、本設例において、
図12の総供給曲線モデルASCより最適価格λを決定する処理について説明する図である。
【0070】
本設例においては、与えられる蒸気の需要量Lは、L=4000[kg/h]であるとする。このとき、L=4000[kg/h]の蒸気を供給するときの限界コストは、
図13の総供給曲線モデルASCより、1.94[千円/kg]である。したがって、最適生産配分決定装置1の最適価格探索部12は、最適価格λを、λ=1.94とする。
【0071】
図14は、蒸気発生設備supply1〜3のそれぞれにつき、供給量候補S1〜S3を決定する方法について示す図である。
【0072】
最適生産配分決定装置1の各生産者配分計算部13は、最適価格探索部12にて決定した最適価格λに基づき、3基の蒸気発生設備supply1〜3のそれぞれの蒸気の供給量候補を決定する。
【0073】
3基の蒸気発生設備のうち、「supply1」の供給曲線モデルISC1を参照すると、最適価格λ=1.94と一致する限界コストが存在する。そこで、
図8の配分決定法Bにしたがって、最適価格λに一致する限界コストに対応する蒸気の供給量候補S1は、S1=1950[kg/h]と求まる。同様に、「supply2」についても、配分決定法Bにより、supply2の蒸気の供給量候補S2は、S2=2050[kg/h]と求まる。
【0074】
一方「supply3」の供給曲線モデルISC3によれば、最適価格λ=1.94と一致する限界コストが存在しない。最適価格λ=1.94が限界コストの上限を超過しているため、supply3の蒸気の供給量候補S3は、
図9の配分決定法Cにしたがって、S3=0[kg/h]となる。
【0075】
図15は、決定した供給量候補S1〜S3を用いて、各蒸気発生設備supply1〜3への生産量の配分を決定する処理を示す図である。
図15は、各生産者配分計算部13が実行する処理フローを示している。
図15に示す各ステップ132_1〜ステップ137は、
図5のステップ132〜137にそれぞれ対応している。
【0076】
ステップ132_1では、供給量候補S1〜S3を決定する。ここでの処理の詳細については、
図14を参照して説明したとおりである。
【0077】
ステップ135_1では、各生産者配分計算部13は、各生産者の生産組合せを決定する。具体的には、生産者である蒸気発生設備supply1〜3のそれぞれに対して、変数xi(i=1,2,3)を用いて、蒸気の生産を行う(xi=1)か否か(xi=0)を決定する。
図15に示す例では、supply1については「x1=1(使用)」、supply2は「x2=1(使用)」、supply3は「x3=0(不使用)」と決定している。
【0078】
ステップ136_1では、各生産者配分計算部13は、ステップ135_1で決定した生産組合せ「x1=1,x2=1,x3=0」を用いて、需給バランスΔを計算する。ここでは、総供給量Sは、
S=S1*x1+S2*x2+S3*x3=1950*1+2050*1+0*0=4000[kg/h]
である。最適生産配分決定装置1に与えられた需要量Lは、L=4000[kg/h]であるから、需給バランスΔは、
Δ=S-L=4000-4000=0
と求まる。
【0079】
ステップ137では、各生産者配分計算部13は、ステップ136_1で求めた需給バランスΔに基づき、需給バランスが成り立つか否か(Δ=0であるか否か)を判定する。
【0080】
上記の設例では、Δ=0である。このため、ステップ132_1の各供給量候補S1〜S3と、ステップ135_1で決定した生産組合せとから、蒸気発生設備(supply1〜3)のそれぞれへの蒸気の生産量の配分を決定する。すなわち、supply1の生産量は、S1*x1=1950[kg/h]、supply2及びsupply3のそれは、それぞれS2*x2=2050[kg/h]、S3*x3=0[kg/h]と決定する。
【0081】
なお、ここでは、需給バランスが成り立つ場合を例示しているので、記載を省略しているが、需給バランスが成り立たず、Δ≠0の場合は、
図5と同様に、ステップ137から135_1へと戻り、Δ=0となるまで生産組合せを変更して、上記の処理を繰り返す。
【0082】
更に、最適化対象となる機器の構成、各生産者の供給曲線モデルISCi、及び各生産者供給曲線モデルISCiより求まる総供給曲線モデルASCについては上記設例と同様であるが、需要量Lが異なる場合について、
図16〜
図18を参照して説明する。
【0083】
図16は、本設例において、
図12の総供給曲線モデルASCより最適価格λを決定する処理について説明する図である。
【0084】
本設例においては、蒸気の需要量Lは、L=1500[kg/h]であるとする。この場合、L=1500の蒸気を供給するときの限界コストは、1.4、1.5および0.8[千円/kg]の3つあるが、最小となる値は0.8である。これより、最適生産配分決定装置1の最適価格探索部12は、最適価格λを、λ=0.8とする。
【0085】
図17は、蒸気発生設備supply1〜3のそれぞれにつき、供給量候補を決定する方法について示す図である。
【0086】
最適生産配分決定装置1の各生産者配分計算部13は、各生産者供給曲線モデルISC1〜ISC3を参照し、最適価格λ=0.8[千円/kg]と限界コストが一致する場合には、その限界コストに対応する蒸気供給量を、供給量候補とする。
【0087】
本設例においては、3基の蒸気発生設備supply1〜3のうち、supply1については、
図8の配分決定法Bにより、供給量候補S1は、S1=1000[kg/h]、supply3の供給量候補S3は、S3=1500[kg/h]と求まる。supply2については、最適価格λ=0.8が供給曲線モデルISC2の限界コストの下限未満である。このため、
図7の配分決定法Aにより、supply2の供給量候補S2は、S2=0[kg/h]となる。
【0088】
図18は、決定した供給量候補S1〜S3を用いて、各蒸気発生設備supply1〜3への生産量の配分を決定する処理を示す図である。
図18は、各生産者配分計算部13が実行する処理フローを示している。
図18に示す各ステップ132_2〜137は、
図5のステップ132〜137にそれぞれ対応している。各ステップの詳細については、
図15を参照して先の説例の説明において述べたとおりである。
【0089】
なお、本設例では、ステップ135_2で、各蒸気発生設備supply1〜3の生産組合せとして、「x1=0,x2=0,x3=1」と決定している。このとき、ステップ132_2の処理で蒸気発生設備ごとに供給量候補Siを決定した際のsupply2の供給量候補S2はS2=0であるので、ステップ135_2では、このことを利用して生産組合せ決定するのが望ましい。すなわち、供給量候補がゼロであるsupply2については変数x2=0とし、残りのx1とx3とについて、組合せを決定するのが望ましい。x1とx3のとり得る値の組合せ(x1,x3)は、(1,1)、(1,0)、(0,1)、(0,0)の4とおりである。このうち、需給バランスΔがゼロとなる生産組合せを
図18においては記載している。
【0090】
こうして、本設例においても、各蒸気発生設備supply1〜3の蒸気の生産量の配分は、それぞれS1*x1=1000*0=0、S2*x2=0*0=0及びS3*x3=1500*1=1500[kg/h]と決定することができる。
【0091】
それぞれ
図10〜
図15及び
図16〜
図18を参照して説明したいずれの設例においても、各生産者供給曲線モデルISCより計算して求めた総供給曲線モデルASCを用いて最適価格λを求め、これに基づき各生産者の生産量候補を決定する。そして、需給バランスΔが取れるよう適宜各生産者の生産組合せxiを変更して、複数の生産者のそれぞれが生産、供給を行うか否かを決定し、各生産者の生産量の配分を決定している。
【0092】
かかる方法によれば、最適価格の探索を行った結果、総供給曲線モデルASCより需要量Lに対応する限界コストが存在する場合には、その需要量Lを満たす生産量の配分が可能であることがわかる。この場合、決定した最適価格λで生産量の配分をどのようにすればよいかを決定することで、各生産者の生産量が最適化される。一方、総供給曲線モデルASCにおいて需要量Lに対応する限界コストが存在しない場合には、その需要量Lを満たすよう生産を行うことが不可能であるとわかる。
【0093】
このように、本実施形態に係る最適生産配分決定装置1では、従来における生産量の配分の最適化方法のように、本実施形態においては、繰り返し探索によるアルゴリズムを採用していない。需給バランスΔ=0となる生産組合せを得るための繰り返し探索は、有限回であり、また、生産組合せは「使用」または「不使用」の2値をとることにより、解の大域的最適解の収束性が保障される、という効果がもたらされる。生産するかしないかを含めた0/1計画問題とした場合であっても、本実施形態によれば、容易に解を求めることが可能となる。
【0094】
更には、従来技術における最適化方法のように、最適な生産量の配分を決定する過程がブラックボックスで外部から不透明である、ということがなく、生産者間でどのように生産量が配分されるかが、最適価格と供給曲線との関係より明確である。場合によっては、複数の解が存在することもある。これは、例えば、ある需要量Lに対し、供給曲線モデル上に対応する限界コストが複数存在すること等による。しかし、この場合であっても、最も低い限界コストを最適価格λとすることで、どのようにして生産量の配分がなされるかが明確にされる。このようにして最適な生産量の配分を決定することで、最適価格を通して、各生産者等の本実施形態に係る最適生産配分決定装置1の利用者に対し、最適解として得られた最適配分について合理的に説明することが可能となる。そして、最適解として得られた最適配分に対し、各生産者がどの程度コストを改善すべきかの指標として、限界コストと最適価格との差を用いることも可能となる。
【0095】
なお、本実施形態に係る最適生産配分決定装置1によれば、上記の各生産者への生産量の配分を決定する過程を、総供給曲線モデルASCと各生産者供給曲線モデルISCとを用いて可視化する構成としてもよい。具体的には、
図13及び
図14、または、
図16及び17を、モニタ等の表示手段に表示する。これにより、最適生産配分決定装置1の利用者は、モニタ等を通じて、どのようにして最適価格λや各生産者の生産量の配分が決定されているかを確認し易くなる。
【0096】
加えて、本実施形態によれば、最適価格λに対して各生産者の生産量候補を決定してから、需給バランスΔが取れるよう適宜生産組合せxiを変更する処理により、最適解を得ることができる。定式化された問題を毎回解く場合と比較して、計算資源と計算時間を抑えることが可能となる。また、これにより、電力配分の決定等の非常に高速な応答性が求められる問題に対しても対応が可能となる。上記のとおり、必要な場合には生産組合せxiを有限回変更することで解が得られるため、解の集束時間の最大値を事前に見積もることも可能となる。
<第2の実施形態>
上記の実施形態においては、最適生産配分プログラム100の実行により、各生産者の供給曲線モデルISCiより総供給曲線モデルASCを計算し、得られた総供給曲線モデルASCを用いて、最適価格λの探索及び各生産者の生産量の配分の最適化を行っている。これに対し、本実施形態においては、最適生産配分決定プログラムは、別のプログラムにおいて求めた総供給曲線モデルを用いて、最適価格λの探索及び各生産者の配分の最適化を行う点で異なる。以下に、上記の第1の実施形態と異なる点について、
図19を参照して説明する。
【0097】
図19は、本実施形態に係る最適生産配分決定装置1が実行する最適生産配分決定プログラム110及び総供給曲線計算プログラム90の構成図である。
図19は、最適生産配分決定装置1が実行する処理フローを示している。
図19に示すように、本実施形態に係る最適生産配分決定装置1は、総供給曲線計算プログラム90と、最適生産配分決定プログラム110とをそれぞれメモリ等から読み出してこれらを実行する。
【0098】
総供給曲線計算プログラム90を実行することにより、コンピュータは、総供給曲線計算部11として機能する。総供給曲線計算部11の動作については、先の実施形態の説明において、
図2等を参照して述べたとおりである。総供給曲線計算プログラム90は、実行結果として、総供給曲線計算部11にて求めた総供給曲線モデルASCを出力する。
【0099】
最適生産配分決定プログラム110を実行することにより、コンピュータは、最適価格探索部12及び各生産者配分計算部13として機能する。最適価格探索部12及び各生産者配分計算部13の動作については、先の実施形態の説明において、
図2等を参照して述べたとおりである。
【0100】
最適生産配分決定プログラム110は、与えられた需要量Lに対し、別のプログラムである総供給曲線計算プログラム90において予め計算して求めておいた総供給曲線モデルASCを用いて最適価格λを決定する。そして、最適価格λと、総供給曲線計算プログラム90の総供給曲線計算部11においても用いた各生産者供給曲線モデルISCiとから、各生産者の生産量の配分を決定する。
【0101】
例えば、あるコンピュータで総供給曲線計算プログラム90を実行させて総供給曲線モデルASCを計算し、得られた総供給曲線モデルASCを他のコンピュータに入力し、最適生産配分決定プログラム110を実行させるような構成とすることもできる。
【0102】
本実施形態のような構成としても、上記の第1の実施形態と同様の効果を得ることができる。
<第3の実施形態>
上記の実施形態においては、ある需要家に対して複数の生産者が生産物の供給を行う系統を対象に、生産量の配分の最適化を行っている。すなわち、生産者から需要家への生産物の供給が1段階でなされる系統を最適化の対象とする。これに対し、本実施形態においては、生産者から最終的な需要家に生産物が供給されるまでに複数段階での生産、供給が行われる系統を最適化の対象としている点で異なる。
【0103】
以下に、本実施形態に係る最適生産配分決定装置1による各生産者への生産量の配分の決定方法について、上記の実施形態と異なる点を中心に説明する。
【0104】
図20は、本実施形態に係る最適生産配分決定装置1が最適化の対象とする系統の構成を模式的に示す図である。
【0105】
図20に例示する系統では、生産、供給が2段階で行われ、最終的には、需要家1−1に生産物が供給される。ここで、最終的に生産物の供給を受ける需要家1−1に対して生産・供給を行うことを、「1段目の生産・供給」、1段目では生産者に該当する者に対して生産・供給を行うことを「2段目の生産・供給」と定義する。以降においても同様の定義を用いて説明することとする。
【0106】
この定義によれば、1段目の生産・供給において生産者である「生産者1−1」は、2段目の生産・供給においては、「生産者2−1」及び「生産者2−2」から供給を受ける「需要家2−1」である。同様に、1段目の生産・供給において生産者である「生産者1−2」は、2段目の生産・供給においては、「生産者2−3」及び「生産者2−4」から供給を受ける「需要家2−2」である。
【0107】
図20においては、例えば生産者1−2の生産量を「S1−2」と表記し、生産者1−2による2段目の生産者に対する需要量を「D2−2」と表記している。
【0108】
これを一般化し、以下の説明においては、i段目において生産・供給を行う複数の生産者を識別するために、符号「j」を用い、生産者i−jの生産量を「Si−j」と表記し、生産者i−jの(i+1)段目の生産者に対する需要量を、「D(i+1)−j」と表記することとする。
【0109】
また、以下の説明においては、上述の1段階での生産物の生産、供給において生産量の配分を決定する場合と区別をするために、本実施形態に係る最適生産配分決定装置1が実行する最適生産配分決定プログラムを、「複数段最適生産配分決定プログラム120」とする。
【0110】
図21は、本実施形態に係る最適生産配分決定装置1が実行する複数段最適生産配分決定プログラム120の構成を説明する図である。
図21は、最適生産配分装置1が実行する処理フローを示している。
【0111】
図21にも示すように、複数段最適生産配分決定プログラム120は、
図2を参照して説明した最適生産配分決定プログラム100を用いて、各段階における生産量の配分を最適化していく。
【0112】
図21に示す一連の処理は、段階ごとの生産量の配分の最適化処理を制御する段階配分制御部10により実行される。最適生産配分決定装置1がメモリ等から複数段最適生産配分決定プログラム120を読み出して実行することにより、コンピュータは、段階配分制御部10として機能する。
【0113】
複数段最適生産配分決定プログラム120では、まず、ステップ121で、段階配分制御部10は、何段目の生産・供給であるかを表す「i」と、ある段階における生産者を識別する「j」とを初期化し、i=1、j=1を設定する。
【0114】
そして、ステップ122で、段階配分制御部10は、与えられた需要家1−1の需要量D1−1より、i段目の需要家i−jの需要量Di−jを設定する。i=j=1のとき、与えられた需要量D1−1をそのままi(=1)段目の需要家i−j(ここでは需要家1−1)の需要量Di−j(ここではD1−1)として設定する。
【0115】
次に、ステップ123で、段階配分制御部10は、上述の最適生産配分決定プログラム100を実行する。ステップ123で実行する処理については、先に
図2等を参照して説明したとおりである。
【0116】
ステップ124で、最適生産配分決定プログラム100の実行結果を用いて、需要家i−jに対して生産物を供給する各生産者の生産量Si−jを決定する。i=1のときは、
図20の生産者1−1の生産量S1−1及び生産者1−2の生産量S1−2を決定する。
【0117】
ステップ125で、段階配分制御部10は、更に次の段階の(i+1)段目において、ステップ124で最適生産量を設定した生産者i−jに対し、複数の生産者間で生産・供給が分配されるか否かを判定する。生産者i−jの生産物が(i+1)段目の複数の生産者からの生産・供給による場合には、ステップ126に進む。
【0118】
ステップ126で、段階配分制御部10は、ステップ124で設定したi段目の生産者i−jごとに配分された生産量を、(i+1)段目の需要家(i+1)−jの需要量として設定する。すなわち、需要量D(i+1)−jを、
D(i+1)-j=Si-j
とおく。
【0119】
そして、ステップ127で、段階配分制御部10は、iを1加算して、ステップ122に戻る。こうして、生産者i−jに対して次の段の生産者(i+1)−jが生産・供給を分配して行う場合には、次の(i+1)段目について同様の分配を再帰的に繰り返す。ステップ125において、段階配分制御部10は、生産者i−jに対しては、次の段階(i+1)段目の生産者間で生産・供給が分配されないと判定すると、ステップ128に進む。
【0120】
ステップ128で、段階配分制御部10は、最適化の対象となる系統の全段階において(i=1,2,…)、生産者ごとの(j=1,2,…)生産量の配分が決定したとして、処理を終了する。
【0121】
本実施形態においても、第1の実施形態の説明において
図10〜
図15や
図16〜
図18を参照して行ったと同様に、具体的な需給系統を例に、生産者ごとに生産量の配分を最適化する処理について説明することとする。
【0122】
図22は、本実施形態に係る最適生産配分決定装置1が商品の供給量の配分の最適化対象とする商品の生産・物流拠点の構成を例示する図である。
【0123】
図22に示す生産・物流拠点においては、3つの工場supply1〜3にて商品を生産する。このうち、supply2とsupply3の2つの工場で生産された商品は、物流拠点trans1に集約される。supply1で生産された商品と、物流拠点trans1の商品とが店舗demand1に集約され、店舗demand1にて販売される。
【0124】
各工場supply1〜3は、生産する商品の数量に応じて、コストがかかる。物流trans1は、2つの工場supply2、supply3から商品を購入して店舗demand1に配送するため、物流trans1においても、配送する商品の数量に応じて、コストがかかる。
【0125】
なお、各生産者から需要家に供給する商品の供給量、需要家として生産者に需要する商品の需要量、限界コストについても
図22に記載している。例えば、店舗demand1にが需要する商品の量を「d_d1」、物流拠点trans1が店舗demand1に供給する商品の量を「s_t1」等と記載している。後に、第5の実施形態において、これらを用いて実施形態の説明を行うこととする。
【0126】
図23は、各生産者の供給曲線モデルを示す図である。図の横軸は、商品の供給量[kg/日]、縦軸は限界コスト[千円/kg]とする。ここで、限界コストとは、ある商品供給量のとき、商品を1単位(実施例では1kg)追加生産するのに必要な追加コストである。
【0127】
3つの工場supply1〜3の供給曲線モデルについては、
図23(a)〜
図23(c)に示すように、供給量がゼロでコストもゼロ(
図23(a)〜
図23(c)の原点)であるか、あるいは、それぞれ一定の上下限の範囲内で商品を生産するかである。工場により、それぞれ生産・供給が可能な商品量の上下限や限界コストが異なっている。
【0128】
物流拠点trans1の供給曲線モデルについては、物流拠点trans1の役割により、他の生産者である工場supply1〜3とは異なる曲線を描いている。物流拠点trans1は、上記のとおり、物流拠点trans1は、商品の生産自体は行わず、2つの工場supply2、3から商品を集約させてこれを需要家である店舗demand1に配送する業務を行っている。このため、物流拠点trans1の供給曲線モデルは、供給量がゼロでコストもゼロ(
図23(d)の原点)であるか、あるいは、商品を1単位追加して配送する際に上乗せされる追加コストが発生するかである。
【0129】
本設例においては、複数段最適生産配分決定プログラム120により、まず、最終的に商品を需要する店舗demand1に対して商品の生産・供給を行う物流拠点trans1と工場supply1で生産量の配分を決定する。このとき、物流拠点trans1と工場supply1それぞれの供給曲線モデルISCから店舗demand1への総供給曲線モデルASCを計算する。計算して得られた店舗demand1への総供給曲線モデルASCを用いて最適価格を求め、最適価格より、生産者である物流拠点trans1及び工場supply1それぞれの生産量の配分を決定する。次に、物流拠点trans1に商品を供給する2つの工場supply2及びsupply3についての供給曲線モデルISCから、物流拠点trans1への総供給曲線モデルASCを計算する。そして、計算したtrans1への総供給曲線モデルASCを用いて、物流拠点trans1が需要する商品の生産・供給を行う工場supply2、3それぞれの生産量の配分を決定する。
【0130】
このように、複数段の生産配分の最適化を行うには、各段階の需要家に向けて供給される供給量と限界コストとの関係を表す総供給曲線モデルや、複数の生産者から商品の供給を受けてこれを需要家に供給する場合の供給曲線モデルを、
図23の各生産者の供給曲線モデルから計算する必要がある。これについて、
図24〜
図26を参照して説明する。
【0131】
図24は、工場supply1〜3及び物流拠点trans1から店舗demand1に供給される商品の供給量と限界コストとの関係を示した総供給曲線モデルASC_dmdを示す図である。
図23と同様に、横軸は、商品の供給量d_d1[kg/日]、縦軸は、限界コストp_d1[千円/kg]である。
【0132】
図24に示す総供給曲線モデルASC_dmdは、
図23の各生産者(工場supply1〜3及び物流拠点trans1)の供給曲線モデルを先述の方法で合成することにより得られる。
【0133】
図24より、同一の総供給量であってもとり得る限界コストが複数あること、同一の限界コストであってもとり得る総供給量が複数あること、総供給量を変化させていくと、ところどころにおいて限界コストが離散的に変化すること等の特徴を有することがわかる。
【0134】
図25は、物流拠点trans1から店舗demand1に供給される商品の供給量と限界コストとの関係を示した総供給曲線モデルASC_tns_1を示す図である。横軸は、商品の供給量s_t1[kg/日]、縦軸は、限界コストp_t1a[千円/kg]である。
【0135】
先に
図22の説明において述べたように、物流拠点trans1から店舗demand1への商品の供給に関しては、2つの工場supply2、3のそれぞれから物流拠点trans1に供給される商品の合計量が供給される。そして、物流拠点trans1を経由する際に、物流拠点trans1にて商品の配送に要する追加のコストが上乗せされる。このため、
図25に示す総供給曲線モデルASC_tns_1は、物流拠点trans1に商品を供給する2つの工場supply2、3の供給曲線モデル及び物流拠点trans1の供給曲線モデルを先述の方法で合成することにより得られる。
【0136】
図26は、2つの工場supply2、3から物流拠点trans1に供給される商品の供給量と限界コストとの関係を示した総供給曲線モデルASC_tns_2を示す図である。横軸は、商品の供給量p_t1[kg/日]、縦軸は、限界コストp_t1b[千円/kg]である。
【0137】
図26に示す総供給曲線モデルASC_tns_2は、2つの工場supply2、3の供給曲線モデルを先述の方法で合成することにより得られる。
【0138】
図23〜
図26に示す供給曲線モデルを用いて、本設例のように、複数段階で生産物である商品が需要家である店舗demand1に供給される場合における各生産者への生産量の配分を決定する方法について、
図27〜
図30を参照して説明する。
【0139】
図27は、本設例における
図24の総供給曲線モデルASC_dmdより、1段目の供給における最適価格p_d1を決定する処理について説明する図である。
【0140】
本設例においては、最適生産配分決定装置1に与えられる商品の需要量L1、すなわち店舗demand1が需要する商品の量は、L1=3500[kg/日]であるとする。このとき、L1=3500[kg/日]の商品を供給するときの限界コストは、
図27の店舗demand1への総供給曲線モデルASC_dmdより、1.6[千円/kg]である。したがって、最適生産配分決定装置1は、
図21の複数段最適生産配分決定プログラム120のステップ123において、最適価格探索部12は、1段目の店舗demand1への商品の供給における最適価格p_d1を、p_d1=1.6とする。
【0141】
図28は、店舗demand1に商品を供給する物流拠点trans1及び工場supply1のそれぞれにつき、配分候補を決定する方法について示す図である。
【0142】
ここでは、複数段最適生産配分決定プログラム120のステップ123において、各生産者配分計算部13は、第1の実施形態の説明において述べた方法と同様の方法により、1段目(i=1)の生産者の配分候補を決定する。本設例では、各生産者配分計算部13が、最適価格探索部12にて決定した最適価格p_d1に基づき、1段目(i=1)の生産者である物流拠点trans1及び工場supply1の供給量候補(配分候補)を決定する。
【0143】
まず、工場supply1については、
図23(a)のsupply1の供給曲線モデルを参照すると、最適価格p_d1=1.6と一致する限界コストが存在する。そこで、
図8の配分決定法Bにしたがって、商品の供給量候補S_supply1は、S_supply1=1667[kg/日]と求まる。同様に、物流拠点trans1についても、配分決定法Bにより、商品の供給量候補S_trans1は、S_trans1=1833[kg/日]と求まる。物流拠点trans1の供給量候補は、
図25の総供給曲線モデルASC_tns_1を用いて決定する。
【0144】
上記第1の実施形態において説明したように、求めた配分候補と各生産者の生産組合せとから、需給バランスΔがとれているかを判定する。そして、1段目の供給における生産者ごとの配分は、工場supply1が1667[kg/日]、物流拠点trans1が1833[kg/日]と決定できる。
【0145】
供給量の決定した生産者のうち、工場supply1については、工場supply1に商品を供給する生産者が存在しない。これに対し、物流拠点trans1については、2つの工場supply2、3が物流拠点trans1に商品を供給している。このため、2つの工場supply2、3について、更に、2段目の生産量の配分、すなわち、物流拠点trans1への商品の生産量の配分を決定する必要がある。
【0146】
図29は、本設例における
図26の総供給曲線モデルASC_tns_2より、2段目の供給における最適価格p_t1bを決定する処理について説明する図である。
【0147】
本設例においては、2段目の商品の需要量L2に応じて最適価格d_tlbを決定する。
図29を参照して説明したとおり、物流拠点trans1の商品の需要量L2は、L2=S_trans1=1833[kg/日]である。このとき、L2=1833[kg/日]の商品を供給するときの限界コストは、
図29の物流拠点trans1への総供給曲線モデルASC_tns_2より、1.27[千円/kg]である。したがって、最適生産配分決定装置1は、
図21の複数段最適生産配分決定プログラム120のステップ123において、最適価格探索部12は、2段目の物流拠点trans1への商品の供給における最適価格p_t1bを、p_t1b=1.27とする。
【0148】
図30は、物流拠点trans1に商品を供給する2つの工場supply2、3のそれぞれにつき、配分候補を決定する方法について示す図である。
【0149】
ここでは、複数段最適生産配分決定プログラム120のステップ123において、各生産者配分計算部13は、2段目(i=2)の生産者の配分候補を決定する。本設例では、各生産者配分計算部13が、最適価格探索部12にて決定した2段目の供給における最適価格p_t1bに基づき、2段目(i=2)の生産者である2つの工場supply2、3の供給量候補(配分候補)を決定する。
【0150】
決定した最適価格と各生産者の供給曲線モデルとから供給量候補(配分候補)を決定する方法については、先においても説明したとおりであるので、その詳細は省略する。工場supply2については、最適価格p_t1bが限界コストの下限未満であるので、供給量候補S_supply2=0[kg/日]と求まる。工場supply3については、最適価格p_t1bが限界コストの上下限の範囲内であるので、供給量候補S_supply3=1833[kg/日]と求まる。
【0151】
2段目の供給量候補についても、1段目と同様に、各生産者の生産組合せとから、需給バランスが取れているかを判定する。こうして、2段目の供給における生産者ごとの配分は、工場supply2が0[kg/日](生産しない)、工場supply3が1833[kg/日]と決定できる。
【0152】
2段目の供給を行う工場supply2、3のいずれについても、更にこれらの生産者が需要家として他の生産者から商品の供給を受けることはないため、以上の処理で全ての生産者について生産(供給)の配分が決定する。こうして、複数段最適生産配分決定プログラム120は、処理を終了することとなる。
【0153】
以上説明したように、本実施形態に係る最適生産配分決定装置1によれば、複数段階で生産、供給が行われる系統についても、上記の単一の段階で生産、供給が行われる系統についてと同様に、各生産者の生産量の配分を最適化することができる。
<第4の実施形態>
上記の実施形態の説明においては、総供給曲線計算部11は、各生産者の供給曲線モデルを合成して、総供給曲線モデルを得る旨を述べている。本実施形態において、具体的にどのようにして各生産者の供給曲線モデルから総供給曲線モデルを計算するかについて説明する。
【0154】
以下に、本実施形態における総供給曲線モデルの計算方法について、詳しく説明する。なお、以下に説明する総供給曲線モデルの計算方法を実行する最適生産配分決定装置1の構成等については、上記の実施形態と同様であるため、ここでは説明を省略する。
【0155】
図31は、本実施形態において、最適化の対象とする商品の生産・物流拠点の構成を例示する図である。
図31に示す構成は、第3の実施形態において参照した
図22の構成の一部がこれに該当する。
【0156】
2つの工場supply2、3が商品を生産し、生産された商品は、1箇所に集約される。各工場は、生産する商品量に応じてコストがかかる。工場supply2が生産・供給する商品量をs_s2、限界コストをp_s2とし、工場supply3が生産・供給する商品量をs_s3、限界コストをp_s3とする。
【0157】
図32〜
図34は、本実施形態において、最適生産配分決定プログラム100の総供給曲線計算部11が総供給曲線モデルASCを計算する処理について説明する図である。
【0158】
図32は、本実施形態における総供給曲線計算部11の動作の詳細を説明する図である。
【0159】
本実施形態では、各生産者の供給曲線モデルは、論理式の形で与えられる。上記のとおり、商品の供給量をs_s3、限界コストをp_s3とすると、工場supply3に関する論理式は、以下の式で与えられる。
(s_s3=0)
Or((500<=s_s3<=1500)And(0.6*(s_s3-500)-1000*(p_s3-0.2)=0))
Or((1500<s_s3<=2000)And(0.7*(s_s3-1500)-500*(p_s3-0.8)=0))
上記のとおり、商品の供給量をs_s2、限界コストをp_s2とすると、工場supply2に関する論理式は、以下の式で与えられる。
(s_s2=0)
Or((1500<=s_s2<=2000)And(0.4*(s_s2-1500)-500*(p_s2-1.5)=0))
Or((2000<s_s2<=2800)And(0.8*(s_s2-2000)-800*(p_s2-1.9)=0))
各生産者の供給曲線モデルISCが与えられると、最適生産配分決定装置1は、最適生産配分決定プログラム100を実行する。最適生産配分決定プログラム100の総供給曲線計算部11は、先にも
図3を参照して説明したように、総供給曲線における限界コストをp_tとし(
図32のステップ111_4)、総供給量をs_tとすると、総供給量s_t及び限界コストp_tは、以下を満たす(ステップ112_4)。
総供給量:s_t=s_s3+s_s2
限界コスト:p_t=p_s3(s_s3)=p_s2(s_s2)
但し、上の限界コストp_tが満たす式において、例えば「p_s3(s_s3)」とは、工場supply3の供給量がs_s3であるときの限界コストp_s3を表している。
【0160】
そして、総供給曲線計算部11は、総供給量s_tと限界コストp_tとの実行可能解を計算することにより、総供給曲線モデルASCを得る(ステップ113_4)。
【0161】
図33は、本実施形態において、
図32のステップ113_4の詳細、すなわち、総供給量s_tと限界コストp_tとの実行可能解を計算する処理の詳細を示す図である。
【0162】
総供給曲線計算部11は、
図32を参照して説明した総供給量s_t及び限界コストp_tが満たすべき関係式と、同様に
図32を参照して説明した2つの工場supply3、2に関する2つの論理式を論理和で結合する。そして、変数s_s3、p_s3、s_s2及びp_s2については、存在記号(∃)を付与して、一階述語論理式Ψを定義する。
【0164】
総供給曲線計算部11は、一階述語論理式Ψに対して限定記号消去法を適用し、論理式Φを得る。得られる論理式Φが、総供給曲線モデルASCである。
【0165】
図34は、本設例において得られる論理式Φを示す図である。
【0166】
図34に例示する論理式Φのように、一階述語論理式Ψに対し限定記号消去法を適用して得られる式は、それぞれ総供給量s_t及び限界コストp_tが満たすべき論理式の形で得られる。
図34の論理式Φについて、横軸に総供給量s_t、縦軸に限界コストp_tをとり、グラフ化すると、上記第3の実施形態の説明において用いた
図26の総供給曲線モデルASC_tns_2と一致する。
【0167】
総供給曲線計算部11が上記の計算によって求めた
図34の論理式Φで表される総供給曲線モデルASCは、先の実施形態の説明において述べたとおり、最適価格探索部12が、最適価格の探索に使用する。具体的には、与えられた需要量と一致する総供給量s_tに対応する限界コストp_tを論理式Φより求め、これを最適価格とする。
【0168】
図35は、
図34の論理式Φをソフトウェア開発言語の一つであるC言語で表現した例を示す図である。
図34の総供給量を表す変数s_tをxとおき、限界コストを表す変数p_tをyとおいて、論理式Φを表している。
【0169】
図35の(α)に示すブール型の演算子は、上から順にdouble型の変数xがある値に対して等しい(eq)、以上(ge)、以下(le)、等しくない(ne)、より大きい(gt)、より小さい(未満)(lt)ことを表している。そして、
図35のコメント文(β)に記載されているように、f1、f2、…は、
図34の論理式Φ中の等式や不等式の左辺に対応している。例えば、
f1=-y
f2=-x
f3=-100-1000*y
…
である。
【0170】
これより、変数(x,y)が論理式Φを満たす場合には、
図35の(γ)に示す関数bool eval_logicの戻り値は真(true)となり、満たさない場合には戻り値は偽(false)となる。したがって、
図35の関数bool eval_logicより、ある総供給量s_tと限界コストp_tの組(ある変数(x,y))が
図34の論理式Φを満たすか否かを判定することが可能となり、これを用いて、簡便に最適価格の探索等を行うことが可能となる。
<第5の実施形態>
上記第4の実施形態においては、ある需要家に対して複数の生産者が生産物を供給する系統について、各生産者の供給曲線モデルから総供給曲線モデルの計算を行っている。本実施形態においては、第3の実施形態で例示したように、複数段階で生産物の供給が行われる系統について、各生産者の供給曲線モデルから総供給曲線モデルを計算する。
【0171】
図36は、本実施形態に係る最適生産配分決定装置1が最適化の対象とする商品の生産・物流拠点の構成を例示する図である。
図36の生産・物流拠点の構成については、第3の実施形態の説明で用いた
図22のそれと同様であるので、ここでは詳細な説明は省略する。
【0172】
なお、上記第4の実施形態においては、
図36に示す構成のうち、物流拠点trans1への商品の供給についての総供給曲線モデルの計算方法を説明している。ここでは、店舗demand1への商品の供給についての総供給曲線モデルの計算方法について説明することとする。
【0173】
先に第3の実施形態の説明においても述べたように、店舗demand1に供給される商品の供給量と限界コストとの関係を表す総供給曲線モデルは、生産者(工場supply1〜3及び物流拠点trans1)の供給曲線モデルを合成することにより得られる。
【0174】
図37は、論理式で表した各生産者の供給曲線モデルを示す図である。
図37の上から順に、工場supply3の供給曲線モデルを表す論理式ex_s3、工場supply2の論理式ex_s2、工場supply1の論理式ex_s1、物流拠点trans1の論理式ex_t1を記載している。
【0175】
これらの論理式のうち、工場supply3、2についての論理式ex_s3、ex_s2については、第4の実施形態において
図32を参照して説明したとおりである。また、工場supply1の供給曲線モデルの論理式ex_s1についても、商品の供給量をs_s1、限界コストをp_s1とすることで、同様に
図37に示す式が与えられるため、ここでは説明を省略する。
【0176】
物流拠点trans1についての論理式ex_t1に関しては、商品を供給する2つの工場supply3、2のうち、supply3からの商品の供給量をs_s3、supply2からの商品の供給量をs_s2とおいている。これは、上記第4の実施形態と同様である。また、ここでは、supply3、2から供給された商品に対して物流拠点trans1において上乗せされる限界コストをp_t1、supply3、2から供給される際の限界コストをp_t1b、物流拠点trans1から店舗demand1に供給される際の限界コストをp_t1aとする。
【0177】
そして、物流拠点trans1において成立する関係を論理式として表現する。具体的には、(1)supply3、2への需要量d_t1の上下限の制約、(2)d_t1と上乗せされる限界コストp_t1との線形関係、(3)d_t1がsupply3、2からの供給量s_s3とs_s2の合計と等しい関係、(4)supply3、2から供給される商品の限界コストp_t1bと、supply3、2における限界コストp_s3及びp_s2との等式関係、(5)店舗demand1への供給量s_t1と工場supply3、2への需要量d_t1の等式関係、(6)店舗demand1に供給する際の限界コストp_t1aが、supply3、2が物流拠点trans1に供給する際の限界コストp_t1bと物流拠点trans1にて上乗せする限界コストp_t1との合計に等しい関係を、論理式として以下のように表現する。
((0<d_t1<=5000)
And(3/10*(d_t1-0)-5000*(p_t1-2/10))
And(d_t1=s_s3+s_s2)
And(p_t1b=p_s3=p_s2)
And(s_t1=d_t1)
And(p_t1a=p_t1b+p_t1)
図38は、本実施形態における総供給曲線計算部11の動作の詳細を説明する図である。入力される各生産者の供給曲線モデルを表した論理式については、
図37に示すとおりである。
【0178】
図38に示すように、1段目の総供給曲線における限界コストをp_d1とし(ステップ111_5)、商品の供給量すなわち総供給量をd_d1とすると、総供給量d_d1及び限界コストp_d1は、以下を満たす(ステップ112_5)。
総供給量:d_d1=s_t1+s_s1
限界コスト:p_d1=p_t1a=p_s1
そして、総供給曲線計算部11は、総供給量d_d1と限界コストp_d1との実行可能解を計算することにより、総供給曲線モデルを得る(113_5)。
【0179】
図39は、本実施形態において、
図38のステップ113_5の詳細、すなわち、総供給量d_d1と限界コストp_d1との実行可能解を計算する処理の詳細を示す図である。
【0180】
総供給曲線計算部11は、上記第4の実施形態と同様に、
図38の総供給量d_d1及び限界コストp_d1が満たすべき関係式と、工場supply3、2、1、物流拠点trans1に関する
図37の論理式とを論理和で結合する。そして、変数s_s3、p_s3、s_s2、p_s2、s_s1、p_s1、s_t1、d_t1、p_t1、p_t1a、p_t1bについて、存在記号(∃)を付与し、一階述語論理式Ψを定義する。一階述語論理式Ψの詳細については、
図39に示すとおりであり、ここでは、記載を一部省略する。
【0182】
図40は、本実施形態において、
図38のステップ113_5の詳細、すなわち、総供給量d_d1と限界コストp_d1との実行可能解を計算する処理の詳細を示す図であり、
図39の一階述語論理式Ψを定義した後の処理を説明する図である。
【0183】
総供給曲線計算部11は、上記の方法で一階述語論理式Ψを定義した後は、上記第4の実施形態と同様の処理を実行する。すなわち、一階述語論理式Ψに対して限定記号消去法を適用し、論理式Φを得る。得られる論理式Φが、総供給曲線モデルASC_dmdである。
【0184】
図41は、本設例において得られる論理式Φを示す図である。
図41に示すように、論理式Φは、それぞれ総供給量d_d1及び限界コストp_d1が満たすべき論理式の形で得られる。
【0185】
図42は、
図41に示す論理式Φをグラフ上に可視化した様子を示す図である。横軸は、総供給量d_d1[kg/日]、縦軸は、限界コストp_d1[千円/kg]である。これは、上記第3の実施形態の説明において用いた
図24の総供給曲線モデルASC_dmdに一致する。
【0186】
なお、物流拠点trans1から店舗demand1に供給される商品の供給量と限界コストとの関係を示した総供給曲線モデルについても、上記と同様の方法により計算により求めることができる。すなわち、限界コストをp_t1aとし、商品の総供給量をs_t1とおいて、総供給量s_t1及び限界コストp_t1aが満たす式を立て、総供給量s_t1と限界コストp_t1aとの実行可能解を計算し、総供給曲線モデルASC_tns_1を得る。総供給量s_t1と限界コストp_t1aとの実行解の計算においては、工場supply3、2から物流拠点trans1への商品の供給量の合計がs_t1に等しいこと等の物流拠点trans1において成立する関係を論理式として表現する。そして、これらを論理和で結合して、消去すべき変数に存在記号(∃)を付与して一階述語論理式Ψを生成する。生成した一階述語論理式Ψに限定記号消去法を適用して、論理式Φすなわち総供給曲線モデルASC_tns_1を得る。
【0187】
ところで、
図1の最適生産配分決定装置1は、例えば、
図43に示すような情報処理装置(コンピュータ)を用いて構成することができる。
図43の情報処理装置は、CPU(中央処理装置)1001、メモリ1002、入力装置1003、出力装置1004、外部記憶装置1005、媒体駆動装置1006、ネットワーク接続装置1007を備え、それらはバス1008により互いに接続されている。
【0188】
メモリ1002は、例えば、ROM(read only memory)、RAM(random access memory)等を含み、処理に用いられるプログラムおよびデータを格納する。CPU1001は、メモリ1002を利用してプログラムを実行することにより、必要な処理を行う。
【0189】
先述のとおり、
図1の最適生産配分決定装置1が実行する
図2、
図19及び
図21に示す本実施形態に係るプログラムのうち、総供給曲線計算部11、最適価格探索部12、各生産者配分計算部13及び段階配分制御部10は、メモリ1002に格納されたプログラムをCPU1001が読み出して実行することにより実現される機能に対応する。各生産者供給曲線モデルISC、総供給曲線モデルASC、最適価格λ及び各生産者最適生産量が、メモリ1002に格納されるデータに該当する。
【0190】
入力装置1003は、例えば、キーボード、ポインティングデバイス、タッチパネル等であり、利用者からの指示や情報の入力に用いられる。出力装置1004は、例えば、ディスプレイ、プリンタ、スピーカ等であり、処理結果等の出力等に用いられる。
【0191】
外部記憶装置1005は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。情報処理装置は、この外部記憶装置1005に、上記プログラムおよびデータを格納しておき、必要に応じて、それらをメモリ1002にロードして使用する。
【0192】
媒体駆動装置1006は、可搬記録媒体1009を駆動し、その記録内容にアクセスする。可搬記録媒体1009は、メモリカード、フレキシブルディスク、CD−ROM(compact disk read only memory )、光ディスク、光磁気ディスク等の任意のコンピュータ読み取り可能な記録媒体である。最適生産配分決定装置1の利用者は、この可搬記録媒体1009に上記プログラムおよびデータを格納しておき、必要に応じて、それらをメモリ1002にロードして使用する。
【0193】
ネットワーク接続装置1007は、LAN(local area network)、インターネット等の任意の通信ネットワークに接続され、通信に伴うデータ変換を行う。情報処理装置は、必要に応じて、上記プログラムおよびデータを外部の装置からネットワーク接続装置1007を介して受け取り、それらをメモリ1002にロードして使用する。
【0194】
図44は、
図43の情報処理装置にプログラムおよびデータを供給することのできるコンピュータ読み取り可能な記録媒体を示している。可搬記録媒体1009やサーバ1101のデータベース1103に格納されたプログラムおよびデータは、情報処理装置1102のメモリ1002にロードされる。サーバ1101は、そのプログラムおよびデータを搬送する搬送信号を生成し、ネットワーク上の任意の伝送媒体を介して情報処理装置1102に送信する。CPU1001は、そのデータを用いてそのプログラムを実行し、必要な処理を行う。
【0195】
本発明は上述した実施形態そのままに限定されるものではく、実施段階でのその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素を適宜組み合わせても良い。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。このような、発明の趣旨を逸脱しない範囲内において種々の変形や応用が可能であることは言うまでもない。