JP2003015704A - 最適化計算方法、最適化システムおよびプログラム - Google Patents

最適化計算方法、最適化システムおよびプログラム

Info

Publication number
JP2003015704A
JP2003015704A JP2001199452A JP2001199452A JP2003015704A JP 2003015704 A JP2003015704 A JP 2003015704A JP 2001199452 A JP2001199452 A JP 2001199452A JP 2001199452 A JP2001199452 A JP 2001199452A JP 2003015704 A JP2003015704 A JP 2003015704A
Authority
JP
Japan
Prior art keywords
optimization
variable
subsystem
calculation
price
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001199452A
Other languages
English (en)
Inventor
Koichi Shibao
紘一 芝尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AIE RES Inc
AIE RESEARCH Inc
Original Assignee
AIE RES Inc
AIE RESEARCH Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AIE RES Inc, AIE RESEARCH Inc filed Critical AIE RES Inc
Priority to JP2001199452A priority Critical patent/JP2003015704A/ja
Publication of JP2003015704A publication Critical patent/JP2003015704A/ja
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Complex Calculations (AREA)
  • Computer And Data Communications (AREA)
  • Feedback Control In General (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

(57)【要約】 【課題】 本発明の課題は、複雑で大規模な問題の解を
自律分散的に探索することができる技術を提供すること
にある。 【解決手段】 演算部(C−9)、記憶部(C−8、C
−10)、及び通信部を有する、そのような複数個のサ
ブシステムと、上記サブシステムを接続するネットワー
クとを備えたシステムに適用される最適化計算方法であ
り、最適化すべき問題の制約条件および目的が数式化さ
れた形態1の最適化問題を上記記憶部(C−8、C−1
0)に設定するステップ(S−1)と、上記演算部(C
−9)及び通信部を繰り返し動作させるステップ(S−
6、S−2からS−5)とを有し、上記システム全体の
利益の最大化またはコストの最小化の目的を実現する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のサブシステ
ムを有するシステムの最適化技術に関するものである。
【0002】
【従来の技術】従来から複数のサブシステムで構成され
たシステム全体を最適化する技術が提案されている。例
えば、化学工業等の複数の工程からなる製造プロセスに
おいては、各工程にコンピュータを分散配置し、全体の
製造プロセスを最適化する手法が提案されている。
【0003】しかし、従来手法ではシステム全体の演算
を管理するセクション、例えば、上記各工程のコンピュ
ータを統括する中央コンピュータが必要とされていた。
そして、各サブシステムはその中央コンピュータに従属
する形で演算が実行されていた。
【0004】このようなシステムでは、システムが大規
模になると、中央コンピュータの負荷、中央コンピュー
タと各サブシステムのコンピュータとのトラフィックが
過大となる。そのようなシステムでは、同時に各サブシ
ステムの状態を考慮して全体システムの最適化を図る必
要がある。そのため、全体システムの最適化は複雑で難
解な問題となることが多かった。
【0005】そのような問題を回避するため本発明者
は、分散最大値原理(Distributed Maximum Principl
e)を提案してきた(例えば、H.Asama, T.Fukuda, T.Ar
ai, I.Endo 著、"Distributed Autonomous Robotic Sy
stems" Springer-Verlag(1994)出版P.29-P40参照)。
分散最大値原理とは、一括して表現された大きな問題
(主問題)に対して最適化計算を実行することと、最適
化価格と呼ばれる乗数を用いて表現された小さな問題
(サブ問題)の集合に対して個々に最適化計算を実行す
ることが等価であるという一種の分解原理である。
【0006】分散最大値原理を適用すると、サブ問題の
集合に対して個々に最適化計算を実行することで主問題
の最適解が求められる。また、分散最大値原理をシステ
ムの最適化に適用すると、複数のサブシステムからなる
システムにおいて、各サブシステムの最適化を図ること
により全体システムの最適化を図ることができる。
【0007】分散最大値原理では、各サブシステムをネ
ットワークで接続し、ネットワークを介して情報を共有
するモデルによりシステムを構成する。ここで、情報
は、各サブシステムが取り扱う物の量、例えば原料の
量、製品の量等である。
【0008】各サブシステムは、固有の最適化の目的関
数を有している。目的関数とは、各サブシステムの最適
化の程度を示す関数である。各サブシステムは、目的関
数の値を最適にする変数の値、すなわち、最適解を探索
する。
【0009】分散最大値原理では、各サブシステムの目
的関数は、そのサブシステムが固有に有する目的関数
に、そのサブシステムの関係する他のサブシステムから
の最適化価格によって構成される項を加えた形式をと
る。このような目的関数を仮想目的関数という。
【0010】従来の分散最大値原理では、そのような変
数値(量)と最適化価格とを各サブシステムが交換しつ
つ、各仮想目的関数により最適化を図る方法の概念が提
案されていた。しかし、従来の提案では、各サブシステ
ム間の連携手順や各サブシステムで授受すべき情報が必
ずしも明確にされていなかった。このため、分散最大値
原理に基づく最適化技法をコンピュータ上の実用的なシ
ステムとして実現できていなかった。
【0011】
【発明が解決しようとする課題】本発明は上記の従来技
術の課題を解決するためになされたものである。本発明
の課題は、分散最大値原理に基づく最適化システムをコ
ンピュータ上の実用的なシステムとして提供することに
ある。
【0012】また、本発明の課題は、このような最適化
システムにより、複雑で大規模な問題の解を自律分散的
に探索することができる技術を提供することにある。
【0013】
【課題を解決するための手段】上記目的を達成するため
に本発明は、以下の手段を採用した。すなわち、本発明
は、演算部(C−9)、記憶部(C−8、C−10)、
及び通信部(C−6)を有する、そのような複数個のサ
ブシステムと、上記サブシステムを接続するネットワー
クとを備えたシステムに適用される最適化計算方法であ
り、最適化すべき問題の制約条件および目的が数式化さ
れた形態1の最適化問題を上記記憶部(C−8、C−1
0)に設定するステップ(S−1)と、上記演算部(C
−9)及び通信部(C−6)を繰り返し動作させるステ
ップ(S−6、S−2からS−5)とを有し、上記シス
テム全体の利益の最大化またはコストの最小化の目的を
実現することを特徴とするものである。
【0014】このようなサブシステムは、例えば、ネッ
トワークに接続されるコンピュータである。上記各ステ
ップは、このコンピュータ上の処理ステップとして実現
される。
【0015】好ましくは、上記システム全体の利益の最
大化またはコストの最小化は、分散最大値原理を応用し
て実現してもよい。
【0016】好ましくは、上記繰り返し動作させるステ
ップ(S−6、S−2からS−5)は、各サブシステム
を管理する管理ステップを必要とせず、上記各サブシス
テムを非同期的に動作させることで、上記システム全体
の利益の最大化またはコストの最小化の目的を実現して
もよい。
【0017】好ましくは、上記形態1の最適化問題は内
部変数及び共有変数を含み、この内部変数は各サブシス
テムが保有する形態1の最適化問題固有の変数であり、
上記共有変数は各サブシステムが保有する形態1の最適
化問題の間で関連する変数であり、上記繰り返し動作さ
せるステップ(S−6、S−2からS−5)は、演算の
為の初期設定を実行するステップ(S−2−1)と、他
の関連するサブシステムとデータの通信をするステップ
(S−6、S−5)と、数値演算を実行するステップ
(S−2−4)と、演算の終了を判定するステップ(S
−2−6、S−4)と、を自律的に繰り返し実行しても
よい。
【0018】好ましくは、上記形態1の最適化問題は内
部変数及び共有変数を含み、上記内部変数は各サブシス
テムが保有する形態1の最適化問題固有の変数であり、
上記共有変数は各サブシステムが保有する形態1の最適
化問題の間で関連する変数であり、上記最適化計算方法
は、計算の為の初期設定を実行する第1のステップ(S
−1)、他の関連するサブシステムからデータを受信す
る第2のステップ(S−6)、上記形態1の最適化問題
から形態2の最適化問題を生成するために、受信したデ
ータを保存する第3のステップ(S−2−1)、形態2
の最適化問題を生成して最適化計算を実行する第4のス
テップ(S−2−2、S−2−4)、最適化価格を計算
する第5のステップ(S−3)、他の関連するサブシス
テムにデータを送信する第6のステップ(S−5)、ま
たは、ネットワークの収斂状況を確認する第7のステッ
プ(S−4)のいずれか1以上をさらに含むものでもよ
い。
【0019】その場合に、上記第2のステップ(S−
6)及び第6のステップ(S−5)で送受信されるデー
タは、 上記第4のステップ(S−2−2、S−2−
4)において算出された最適解の共有変数値と、上記第
5のステップ(S−3)において算出された上記最適化
価格とを含んでもよい。
【0020】そして、上記最適化計算方法は、上記第1
から第7のステップのいずれか1以上を各サブシステム
に自律的に実行させ、システム全体の最適解を算出して
もよい。なお、上記第3(S−2−1)のステップは、
上記第2のステップ(S−6)に含まれていてもよい。
【0021】好ましくは、上記第1のステップは、サブ
システム固有の形態1の最適化問題を設定するステップ
(S−1−1)と、当該サブシステムの共有変数と他の
サブシステムの共有変数との対応関係を設定するステッ
プ(S−1−2)と、上記共有変数が他のサブシステム
から数値を指定される変数か、または当該サブシステム
において自在に調整可能な変数であるかを設定するステ
ップ(S−1−3)と、当該サブシステムにおける計算
結果及び他のサブシステムから受信したデータを格納す
るデータテーブルを設定するステップ(S−1−4)
と、最適化計算の初期条件を生成するステップ(S−1
―5)と、他のサブシステムと対応関係にある共有変数
の定義域(S−1−6)を他のサブシステムと等しく設
定するステップとを有してもよい。
【0022】好ましくは、上記最適化計算方法は、他の
サブシステムより受信した共有変数値を用いて、保有す
る最適化問題の共有変数毎に定義域及び分割領域を構成
するステップ(S−2−1−4)と、上記分割領域毎に
他のサブシステムより受信した上記最適化価格を割り当
てるステップ(S−2−1−4)と、上記分割領域にお
いて、割り当てられた上記最適化価格を合計するステッ
プ(S−2−1−4)と、上記合計を外部最適化価格と
して設定するステップ(S−2−1−4)とを有しても
よい。
【0023】好ましくは、上記最適化計算方法は、上記
第1のステップ(S−1)において設定された初期解も
しくは前回の最適化計算において算出された最適解を初
期解とするステップ(S−2−1−1)と、上記分割領
域うち、共有変数の前記初期解が属する分割領域におけ
る前記外部最適化価格を求めるステップ(S−2−2−
3)と、共有変数が上記第1のステップにおいて他のサ
ブシステムから数値を指定される共有変数として設定さ
れているときに、その数値をもって定数として設定する
ステップ(S−2−1−6)と、共有変数が上記第1の
ステップにおいて当該サブシステムにおいて数値を自在
に調整可能な共有変数として設定されているときに、そ
の共有変数の初期解が属する分割領域を形態2の定義域
として設定するステップ(S−2−1−4)と、上記形
態1の最適化問題において定義されていた制約式、上記
分割領域における外部最適化価格、上記定数、または上
記形態2の定義域を含む形態2の最適化問題を構成する
ステップ(S−2−2−4)と、上記形態2の最適化問
題に対して最適化計算を実行する最適化計算ステップ
(S−2−4)と、上記最適化計算ステップより得られ
た新規最適解の共有変数値が分割領域の境界上に達した
場合には、新規最適解を初期解とし、隣接する分割領域
を次期探索領域として設定するステップ(S−2−1−
4、S−2−2−2)と、上記最適化計算ステップにお
いて逐次得られる新規最適解の更新が認められない場合
には上記第4のステップにおける演算を終了させるステ
ップ(S−2−6)とを有し、上記形態2の最適化問題
の最適解を算出してもよい。
【0024】この場合、上記外部最適化価格は、事前に
上記分割領域ごとに算出しておいてもよい。その場合に
は、共有変数の上記初期解が属する分割領域が決定され
た時点で算出しておいた外部最適化価格を参照すればよ
い。また、上記初期解が属する分割領域が決定された時
点で、その分割領域における外部最適化価格を算出して
もよい。
【0025】好ましくは、上記形態2の最適化問題の目
的関数は、
【0026】
【数16】
【0027】で定義されるものであってもよい。
【0028】好ましくは、上記第4のステップ(S−2
−2、S−2−4)は、形態1の最適化問題が最大化問
題であり且つ上記第3のステップ(S−2−1)により
設定された分割領域の上記外部最適化価格が単調減少す
る場合、または、形態1の最適化問題が最小化問題であ
り且つ上記第3のステップ(S−2−1)により設定さ
れた分割領域の上記外部最適化価格が単調増加する場合
において、複数の上記分割領域に対して、各分割領域に
対応する変数とその定義域並びに制約式を追加し、分割
領域毎に設定される 複数個の形態2の最適化問題を一
括して表現した形態3の最適化問題を設定し、上記形態
3の最適化問題の最適解を算出してもよい。
【0029】好ましくは、上記形態3の最適化問題は、
【0030】
【数17】
【0031】で定義される形態3の目的関数と、
【0032】
【数18】
【0033】で定義される制約条件の追加とによって設
定されるものでもよい。
【0034】好ましくは、上記第5のステップは、上記
最適化価格を共有変数毎に計算するステップを有し、上
記最適化価格は、分散最大値原理において定義される限
界コスト又は限界効用であってもよい。
【0035】好ましくは、上記最適化価格は、上記第4
のステップ(S−2−2、S−2−4)において算出さ
れた最適解の共有変数値より大きい領域における第1の
最適化価格(+)と、上記第4のステップ(S−2−
2、S−2−4)において算出された最適解の共有変数
値より小さい領域における第2の最適化価格(−)と、
を含み、上記第5(S−3)のステップは、第1の共有
変数の値を上記第4のステップにおいて計算される最適
値から変化させたときに、上記形態2の目的関数の変化
を最小にする、そのような第2の共有変数の変化に基づ
く目的関数の方向微分係数を求めるステップ(S−3−
2)と、上記方向微分係数より上記外部最適化価格を減
算して最適化価格を算出するステップ(S−3−3)と
を有し、上記方向微分係数は、上記第1の共有変数値を
増加させる場合の第1の方向微分係数と上記第1の共有
変数値を減少させる場合の第2の方向微分係数とを含
み、上記第1の方向微分係数より第1の最適化価格
(+)を算出し、第2の方向微分係数より第2の最適化
価格(−)を算出してもよい。
【0036】好ましくは、上記方向微分係数は、
【0037】
【数19】
【0038】で定義され、上記最適化価格は、
【0039】
【数20】 で定義されるものでもよい。
【0040】最適化問題が最小化問題である場合には、
その目的関数に−1を乗じたものを目的関数として数1
9を適用して、上記最適化価格を求めてもよい。
【0041】好ましくは、上記方向微分係数は、
【0042】
【数21】
【0043】で定義され、上記最適化価格は、
【0044】
【数22】 で定義されるものでもよい。
【0045】最適化問題が最大化問題である場合には、
その目的関数に−1を乗じたものを目的関数として数2
1を適用して、上記最適化価格を求めてもよい。
【0046】好ましくは、上記最適化価格は、上記第4
のステップにおいて算出された最適解の共有変数値より
大きい領域での第1の最適化価格(+)と、上記第4の
ステップにおいて算出された最適解の共有変数値より小
さい領域での第2の最適化価格(−)と、を含み、上記
第5のステップ(S−3)は、
【0047】
【数23】
【0048】で定義される最適化価格を算出してもよ
い。
【0049】最適化問題が最小化問題である場合には、
その目的関数に−1を乗じたものを目的関数として数2
3を適用して、上記最適化価格を求めてもよい。
【0050】好ましくは、上記最適化価格は、上記第4
のステップにおいて算出された最適解の共有変数値より
大きい領域での第1の最適化価格(+)と、上記第4の
ステップにおいて算出された最適解の共有変数値より小
さい領域での第2の最適化価格(−)と、を含み、上記
第5のステップ(S−3)は、
【0051】
【数24】
【0052】で定義される最適化価格を算出してもよ
い。
【0053】最適化問題が最大化問題である場合には、
その目的関数に−1を乗じたものを目的関数として数2
4を適用して、上記最適化価格を求めてもよい。
【0054】好ましくは、上記第5のステップ(S−
3)は、第1の最適化価格(+)の値を算出するため
に、上記第4のステップ(S−2−2、S−2−4)に
おいて最適解が発見された分割領域に割り付けられてい
た形態2の最適化問題に対し、上記共有変数を最適解よ
り微小値増加することによって得られる変移最適解を求
め、第2の最適化価格(−)の値を算出するために、上
記第4のステップ(S−2−2、S−2−4)において
最適解が発見された分割領域に割り付けられていた形態
2の最適化問題に対し、上記共有変数を最適解より微小
値減少することによって得られる変移最適解を求め、上
記第4のステップ(S−2−2、S−2−4)で得られ
た最適解近傍における、共有変数の変化に対する条件付
最適値の変化率を算出する感度分析手法を適用して最適
化価格を算出してもよい。
【0055】好ましくは、上記第5のステップは、上記
第4のステップ(S−2−2、S−2−4)における最
適化計算後のシンプレックスタブローが得られる場合に
おいて、そのシンプレックスタブロー上の数値情報を用
いて最適化価格を算出してもよい。
【0056】上記第7のステップ(S−4)は、上記ネ
ットワークのサブシステムの演算状況を監視するステッ
プと、各サブシステムに対して計算の収斂を通報するス
テップとを有し、システムとしての計算の収斂を判断し
てもよい。
【0057】好ましくは、上記システムは、上記ネット
ワークを通じて上記各サブシステムがアクセス可能な記
録部をさらに備えており、上記第7のステップ(S−
4)は、定期的あるいは数値変動の状況に応じて計算状
況を上記記録部に書き込むステップと、上記記録部から
関連する他サブシステムの計算状況を読み出すステップ
とを有し、システムとしての計算の収斂を判断してもよ
い。
【0058】好ましくは、上記第7のステップ(S−
4)は、上記通信部(C−6)により、関連するサブシ
ステム間で計算状況を直接伝達するステップを有し、シ
ステムとしての計算の収斂を判断してもよい。
【0059】また、本発明は、演算部(C−9)、記憶
部(C−8、C−10)、通信部(C−6)、及び制御
部(C−1、C−4、C−5)を有する、そのような複
数個のサブシステムと、上記サブシステムを接続するネ
ットワークとを備え、上記制御部(C−1、C−4、C
−5)は、最適化すべき問題の制約条件および目的が数
式化された形態1の最適化問題を上記記憶部(C−8)
に設定する手段(C−3)と、上記サブシステムの演算
部及び通信部(C−6)を繰り返し動作させる手段(C
−4、C−5)とを有し、システム全体の利益の最大化
またはコストの最小化の目的を実現することを特徴とす
る最適化システムであってもよい。
【0060】また、本発明は、ネットワークにより最適
化計算を実行するシステムに組み込まれ、演算部(C−
9)、記憶部(C−8、C−10)、通信部(C−
6)、及び制御部(C−1、C−4、C−5)を有する
サブシステムであり、上記制御部(C−1、C−4、C
−5)は、最適化すべき問題の制約条件および目的が数
式化された形態1の最適化問題を上記記憶部(C−8)
に設定する手段と、上記演算部及び通信部を繰り返し動
作させる手段とを有し、上記システム全体の利益の最大
化またはコストの最小化の目的を実現するものでもよ
い。
【0061】また、本発明は、コンピュータに、以上の
いずれかの機能を実現させるプログラムであってもよ
い。また、そのようなプログラムをコンピュータ読み取
り可能な記録媒体に記録してもよい。
【0062】ここで、コンピュータ読み取り可能な記録
媒体とは、データやプログラム等の情報を電気的、磁気
的、光学的、機械的、または化学的作用によって蓄積
し、コンピュータから読み取ることができる記録媒体を
いう。このような記録媒体の内コンピュータから取り外
し可能なものとしては、例えばフロッピー(登録商標)
ディスク、光磁気ディスク、CD-ROM、CD-R/W、DVD、DA
T、8mmテープ、メモリカード等がある。
【0063】また、コンピュータに固定された記録媒体
としてハードディスクやROM(リードオンリーメモ
リ)等がある。
【0064】
【発明の実施の形態】以下に図面を参照して、この発明
の好適な実施の形態を説明する。
【0065】《第1実施形態》図1から図62を参照し
て、本発明の第1実施形態に係る自律分散最適化システ
ムについて説明する。ここで、自律分散最適化とは、シ
ステムを構成するサブシステムが他のサブシステムと連
携しつつ、自律的に自身が関わる最適化問題を処理する
ことによりシステム全体の最適化を図ることをいう。<
最適化システムのモデル例>図1に、自律分散最適化シ
ステムのモデル例を示す。このシステムは、工場Aと工
場Bとから構成される。この工場Aと工場Bが各々サブ
システムとなる。
【0066】本実施形態では、サブシステムとは、演算
機能と最適化問題を有し、外部からの指示なしで自律的
に最適化計算を実行する能力を持つモジュールをいう。
なお、本実施形態では、複数のサブシステムのうち、説
明の対象となっているサブシステムを特に、自システム
という。また、各サブシステムが有する最適化問題をサ
ブ問題という。
【0067】工場Aは購入した材料m1、m2及び在庫材料
m3用いて中間製品p1を生成する。また、工場Bは中間材
料m5及び在庫の材料m6を用いて製品p2を製造する。
【0068】このシステムでは、工場Aの生成した中間
製品p1を工場Bが中間材料m5として使用する。このよう
なサブシステム間で共通に用いられる物の量や状態を表
すための変数を共有変数という。
【0069】一方、在庫の材料m3やm6の量や状態を表す
変数は、外部のサブシステムと直接関係がない。このよ
うな外部サブシステムと直接関係のない変数を内部変数
という。
【0070】購入材料m1・m2を表す変数は、工場Aと取
引するサブシステムがあれば共有変数となる。
【0071】工場間で整合性が取れていれば、工場Aの
生成する中間製品p1は工場Bが使用する中間材料m5と一
致する。このときの工場Aの中間製品p1と工場Bの中間材
料m5は共有関係にあるという。
【0072】サブシステム間で共有関係にある中間製品
や材料については、取引の価格を決定する必要がある。
そのような価格の決定の手順としては、以下の2種類の
ものがある。
【0073】第1の手順では、工場Aがp1の量及びp1に
関する最適化価格を計算し、工場Bに計算値を通知す
る。工場Bはその結果を考慮してm5の量及びm5に関する
最適化価格を計算し、工場Aに計算値を通知する。
【0074】この交渉に似た動作を繰り返すことで工場
Aと工場Bのトータルの利益が最大になるような価格およ
び共有変数値、すなわち、取引量が求められる(この
時、p1=m5)。
【0075】このように、各サブシステムが共有変数値
を決定する権利を持つようなシステムを完全自律型シス
テムという。また、そのような変数値の算出手順を完全
自律型の計算法という。完全自律型のシステムでは、サ
ブシステム間の相互交渉で価格および変数値が決定され
る。
【0076】これに対して、共有変数値の決定権が、事
前に設定されたある特定のサブシステムにあるようなシ
ステムを自律型のシステムという。また、そのような変
数値の算出手順を自律型の計算法という。
【0077】自律型のシステムにおいては、共有変数値
の決定権を持つ工場が事前に設定される。仮にこれを工
場Aとした場合、工場Aがp1の量及びp1に関する最適化
価格を計算し、工場Bにその計算値を通知する。
【0078】この時、例えば、p1=10.0ならば工場Bは
その結果を考慮してm5=10.0とし、m5に関する最適化価
格を計算して工場Aに計算値を通知する。従って、工場
Bはm5の値を工場Aに依存することとなる。
【0079】完全自律型、自律型、いずれの場合におい
ても、各サブシステムは受信データを用いて自律的に最
適化計算を実行する。このようなサブシステムの処理を
自律分散最適化処理という。また、このようなサブシス
テムからなる全体の最適化システムを自律分散最適化シ
ステムという。
【0080】<最適化問題の定式化>一般に、最適化問
題は以下の数25から数27のように定式化される。
【0081】
【数25】目的:f(x1,x2,...,xn)の最小化(または最
大化)
【0082】
【数26】不等式条件:gi(x1,x2,...,xn) ≦0 (i=
1,2,...,p)
【0083】
【数27】等式条件:hj(x1,x2,...,xn) =0 (j=1,
2,...,q) 最適化問題は、上記数2あるいは数3で規定される条件
の基で、関数f(x)を最小または最大にする変数x1,x
2,...,xnを求める。このf(x1,x2,...,xn)を目的関数と
いう。
【0084】一方、一般には、システムは、複数のサブ
システムから構成される。例えば、図1に示したプラン
トは、工場Aと工場Bとからなる。また、各サブシステ
ムは固有の最適化問題を有している。例えば、工場Aで
は、購入材料m1、m2、在庫材料m3から中間品製品p1を生
産、販売し、利益f1(m1,m2,m3,p1)を最大にすることを
目的にする。
【0085】また、例えば、工場Bでは、購入材料m5
(中間品p1と同一)および在庫材料m6から中間品製品p2
を生産、販売し、利益f2(m5,m6,p2)を最大にすることを
目的にする。
【0086】本実施形態の自律分散最適化システムは、
このようなプラントにおいて、プラント全体の利益f1(m
1,m2,m3,p1)+f2(m5,m6,p2)を最大するという最適化問
題を以下のようなサブシステムごとの最適化問題に分割
し、サブシステムごとの最適化を図ることでシステム全
体の最適化を達成する。
【0087】まず、本自律分散最適化システムは、工場
Aの目的関数を以下の数28および数29により表現す
る。
【0088】
【数28】目的:f1(m1,m2,m3,p1) + λB・p1の最大化
(または最小化)
【0089】
【数29】λB:外部最適化価格 同様に、本分散最適化システムは、工場Bの目的関数を
以下の数30および数31により表現する。
【0090】
【数30】目的:f2(m5,m6,p2) + λA・m5の最大化(ま
たは最小化)
【0091】
【数31】λA:外部最適化価格 数29に示したλBは、工場Bにおける目的関数の共有
変数m5に関する最適解近傍で計算された外部最適化価格
である。したがって、数28は、工場Aにおける本来の
目的関数に、外部最適化価格で構成される線形項を加算
した形式を採る。
【0092】この数28を工場Aにおける仮想目的関数
という。同様に、数30を工場Bにおける仮想目的関数
という。
【0093】以上のように、本実施形態における分散最
適化システムでは、システム全体の目的関数f1+f2を探
索する代わりに、サブシステムごとの部分的な目的関数
を処理の対象とする。このサブシステムごとの目的関数
は、そのサブシステム本来の目的関数と関連する外部サ
ブシステムの最適化価格で構成される項とを加算する形
式を採る。
【0094】各サブシステムは、共有変数(上記p1また
はm5)の値を調整し、自身の仮想目的関数を最適化(最
小化または最大化)する条件(共有変数の値と価格)を
算出する。そして、自身の仮想目的関数が最適になる条
件を相手のサブシステムに通知する。
【0095】各サブシステムは、外部サブシステムから
与えられた条件で再度、自身の仮想目的関数の最適条件
を求める。本分散最適化システムは、このような処理を
繰り返し、共有変数の値の前回算出値からの差が所定値
以下となったときに、最適条件が得られたとして、処理
を終了する。また、すべてのサブシステムの処理が終了
するとシステム全体の最適化が終了する。
【0096】<システム構成> [ネットワーク構成]図2に、本実施形態におけるネッ
トワークの概念図を示す。本実施形態における最適化対
象のシステムは、複数のサブシステムをネットワークで
接続して構成される。また、各サブシステムは演算機能
と記憶機能を有している。演算機能は、最適化計算を実
行する。また、記憶機能は、最適化問題(サブ問題)を
記憶する。
【0097】本実施形態では、このようなサブシステム
が相互に接続されてネットワークが形成される。各サブ
システムは相互に「最適化価格」を送受信し、逐次保有
する問題を修正して最適化計算を実行する。
【0098】本手法では、各サブシステムが非同期的に
動作するため、各サブシステム間の共有関係(図2の例
では、サブシステム4はサブシステム5と変数を共有して
いる等)さえ正しく設定されていれば良い。
【0099】そのため、実装の際にはネットワークを1
台の計算機内で仮想的に構成してもよい。また、サブシ
ステム毎に別々の計算機を充当してLANあるいはInterne
tを経由したネットワーク上でシステムを構成してもよ
い。このように、本発明の実施は、ネットワークの種類
や実装方法には依存しない。
【0100】サブシステムは、計算機と、計算機で実行
されるプログラムにより構成される。このような計算機
の構成要素そのものは、CPU、メモリ、通信インター
フェース等であり、一般的に広く知られている。
【0101】[サブシステムの基本動作]図3に、サブ
システムの基本動作を示す。サブシステムは、図3に示
したS−1からS−5の各演算手順にしたがい、自律分散最
適化処理を実行する。本実施形態のシステムでは、個々
のサブシステムが図3に示した演算を自律的に実行する
ことにより、システム全体の最適化が実現される。
【0102】まず、サブシステムは、初期設定を実行す
る(ステップS−1、以下単にS−1のように省略す
る)。
【0103】次に、サブシステムは、外部サブシステム
からのデータを受信する(S−6)。ここで、データと
は、外部サブシステムが指定した共有変数値と、その共
有変数値に対する価格である。
【0104】次に、サブシステムは、最適化計算を実行
する(S−2)。次に,サブシステムは、最適化計算に
基づき,最適化価格を計算する(S−3)。
【0105】次に、サブシステムは、最適化計算がネッ
トワーク上のシステム全体で収斂したか否かを判定する
(S−4)。最適化計算が収斂していない場合、サブシ
ステムは、外部サブシステムへデータを送信する(S−
5)。その後、サブシステムは、S−6の処理へ制御を
戻す。一方、最適化計算が収斂した場合、サブシステム
は、処理を終了する。
【0106】[サブシステムの内部構成]図4に、サブ
システムの構成要素の主要な機能を示す。また、図5
に、サブシステムの内部構成を示す。図5で実線の矢印
は、データフローであり、点線の矢印は、演算指示であ
り、一点鎖線の矢印は、作用、例えばデータの書き込み
等を示している。このようなサブシステムの各機能は、
CPUと、CPUで実行されるプログラム、およびプロ
グラムやデータを記憶するメモリにより実現される。
【0107】図4、図5に示すように、サブシステム
は、エンジン部と問題・解法部とを有している。エンジ
ン部は、他のサブシステムとデータを交換し、最適化処
理を実行する。また、問題・解法部は、最適化問題と最
適化ロジックとを記憶する。
【0108】エンジン部は、サブシステム統制部(C−
1)、初期設定部(C−2)、データ操作部(C−
3)、最適化計算統制部(C−4)、最適化価格計算統
制部(C−5)、データ送受信部(C−6)、収斂判定
部(C−7)およびデータ格納部(C−8)を有してい
る。
【0109】また、問題・解法部は、最適化ロジック部
(C−9)およびサブ問題格納部(C−10)を有して
いる。問題・解法部は任意の最適化ロジックあるいは最
適化問題を保持できる。
【0110】サブシステム統制部(C−1)は、データ
の受信、最適化計算、最適化価格計算、データの送信ま
での一連の手順を統制する。
【0111】初期設定部(C−2)は、外部サブシステ
ムとの共有関係の設定等、ネットワーク上での最適化計
算を実行するために必要な初期設定を行う。図5に示す
ように、初期設定の結果は、データ格納部(C−8)に
格納される。
【0112】データ操作部(C−3)は、データ送受信
部(C−6)を介した他のサブシステムからの受信デー
タをデータ格納部(C−8)に格納する。また、データ
操作部(C−3)は、最適化計算統制部(C−4)およ
び最適化価格計算統制部(C−5)による自サブシステ
ムの計算結果をデータ格納部(C−8)に格納する。さ
らに、データ操作部(C−3)は、他のサブシステムか
らの照会に応じて各種データをデータ格納部(C−8)
から検索し、データ送受信部(C−6)を通じて他のサ
ブシステムに提示する。
【0113】最適化計算統制部(C−4)は、システム
全体の最適解を求めるための最適化問題の修正及び最適
化計算指示を実行する。すなわち、最適化計統制部(C
−4)は、データ操作部(C−3)に所定のデータを照
会し、最適化問題を修正し、最適化ロジック部(C−
9)へ計算を指示する。
【0114】最適化価格計算制御部(C−5)は、デー
タ操作部(C−3)に所定のデータを照会し、最適化問
題を修正し、最適化ロジック部(C−9)へ計算を指示
する。この機能は、上記最適化計算統制部(C−4)と
類似する。
【0115】しかし、最適化計算統制部(C−4)の処
理は、ネットワーク全体の最適解を求めるための処理で
あるのに対し、最適化価格計算統制部(C−5)の処理
は、最適化価格を計算する際の最適化問題の修正及び最
適化計算指示である。
【0116】データ送受信部(C−6)は、他のサブシ
ステムからデータを受信し、受信したデータのデータ操
作部(C−3)への格納を指示する。また、データ送受
信部(C−6)は、他のサブシステムへ送信するデータ
をデータ操作部(C−3)に照会し、送信する。
【0117】収斂判定部(C−7)は、ネットワークの
収斂状況を確認し、確認結果をサブシステム統制部(C
−1)へ通知する。
【0118】データ格納部(C−8)は、初期設定デー
タ、他のサブシステムとの接続情報、他のサブシステム
からの受信データ、計算結果等の各種データを格納す
る。データ格納部(C−8)は、いわゆるメモリであ
る。
【0119】最適化ロジック部(C−9)は、一般の任
意の最適化手法をコンピュータプログラムに組み込んだ
ものである。ここで、最適化ロジック部に組み込まれる
最適化手法は、例えば、線形計画法、整数計画法、動的
計画法、非線形計画法等である。
【0120】サブ問題格納部(C−10)は、サブシス
テム固有の最適化問題を格納する。サブ問題格納部(C
−10)も、データ格納部(C−8)と同様、いわゆる
メモリにより構成される。また、サブシステム固有の最
適化問題とは、例えば、複数の工場からなる生産システ
ムにおける1工場の最適材料購入量、最適生産量の決定
等である。
【0121】サブ問題格納部(C−10)が格納する問
題をサブ問題という。サブ問題は、最適化計算統制部
(C−4)および最適化価格計算統制部(C−5)によ
り、ネットワーク全体の最適化計算が収斂するまで所定
のサイクルで繰り返して修正される。 <自律分散最適化システムの処理>ここでは、本最適化
システムの具体的な処理手順について説明する。以下、
図3に示したサブシステムの基本動作と構成要素のフロ
ーチャートの順序に従って説明する。
【0122】S−1「初期設定」 S−1「初期設定」では、初期設定部(C−2)が、本手
法の特徴であるネットワーク上での自律分散最適化処理
を実行する上で必要な各種設定を実行する。図6に、S
−1「初期設定」のフローチャートを示す。以下、図6
にしたがい、初期設定処理を説明する。
【0123】S−1−1「サブ問題の設定」 図6のように、初期設定では、まず、サブ問題が設定さ
れる。サブ問題は各サブシステムに設定される固有の問
題である。例えば、ネットワークで接続されたシステム
上で都市にかかわる問題を取り扱う場合、各サブシステ
ムは都市問題に内在する廃棄物問題、電力問題といった
異種分野に対応する問題を保持する。従って、サブ問題
としては、そのサブシステムが担当する分野の特性に応
じた問題が設定される。本実施形態では各サブシステム
に対して廃棄物問題、電力問題といった具体的な問題は
対応させていない。本実施形態では、そのような個別具
体的な問題に代えて、有制約最適化問題一般に対する最
適化処理を説明する。
【0124】サブ問題の設定では、そのような有制約最
適化問題の制約条件、例えば、変数の定義域や目的関数
が設定される。ここで、目的関数とは、最適化問題にお
ける最適化の対象を数値化した関数をいう。最適化問題
は、目的関数の最大値または最小値を求める問題として
定式化される。
【0125】S−1−2「接続情報の設定」 次に、初期設定では、接続情報が設定される。ネットワ
ーク上で分散最適化計算を実行するためには、ネットワ
ークの構成、すなわち、サブシステムの接続関係を最適
化計算前に設定しなければならない。
【0126】本自律分散最適化システムでは、各サブシ
ステムは、変数を用いて定式化されるサブ問題を保有す
る。サブシステムの接続関係は、そのような各サブシス
テムの各変数が他のサブシステムのどの変数と関連する
かにより記述される。
【0127】このようなサブシステムの接続関係の設定
方法としては、例えば、ネットワーク設定部(サーバ)
を設置し、ユーザがネットワークの構成を一括してサー
バに定義できるようにすればよい。この設定結果に基づ
いて、ネットワークを介して接続情報が各サブシステム
に通知されればよい。
【0128】また、このようなサーバによらず、各サブ
システムから、そのサブシステムが接続すべき外部サブ
システムにアクセスして所要の設定を行ってもよい。す
なわち、共有関係を有するサブシステム間で個別に接続
情報が設定されるようにしてもよい。いずれの設定方法
を採る場合も、ネットワークの接続関係設定後は各サブ
システムの自律的な演算に移行する。
【0129】ネットワークの接続関係設定後の自律的な
演算に移行させるために、各サブシステムの初期設定部
(C−2)は、自サブシステムのサブ問題における変数
と外部サブシステムのサブ問題における変数との共有関
係を記憶する。この変数の共有関係は、データ格納部
(C−8)内に設けた接続情報テーブルに設定される。
このテーブルは、外部から受信したデータと自サブシス
テム内のデータの関連付けが必要な時や外部にデータを
送信する際等に参照される。
【0130】図7に、接続情報テーブルのデータ構造を
示す。ここで、接続情報テーブルの1行目の“接続先識
別番号”には、各接続関係に割り付けられる識別番号が
格納される。この識別番号は、例えば、各接続関係の通
し番号である。また、図7でNcは外部接続先の個数で
ある。
【0131】接続情報テーブルの2行目“変数番号”に
は、自サブシステムのサブ問題で定義された変数を識別
する番号が格納される。
【0132】接続情報テーブルの3行目“外部接続先”
の“サブシステム番号”には、当該サブシステムと共有
関係にある外部サブシステムを識別する番号が格納され
る。この外部サブシステムは、2行目“変数番号”に該
当する変数を介して当該サブシステムとデータを授受
し、共有関係を構成する。
【0133】接続情報テーブルの4行目“外部接続先”
の“変数番号”は、2行目“変数番号”に該当する変数
と共有関係にある外部サブシステムで定義された変数番
号を格納する。
【0134】[接続情報の設定例]図8に、ネットワー
クにおける変数の共有関係の設定例を示す。ここで、各
変数の上付きのインデックスはサブシステム番号を示
し、下付きインデックスは各サブシステムで定義された
変数番号を示している。
【0135】図8に示すように、サブシステム1の共有
変数はx1 1とx1 2、内部変数はx1 3である。また、サブ
システム2の共有変数はx2 1とx2 2、内部変数はx2 3
ある。また、サブシステム3の共有変数はx3 1、内部変
数はx3 2とx3 3である。
【0136】図8では、例えば、サブシステム1の2番
目の変数x1 2は、サブシステム2の1番目の変数x2 1
共有関係にある。また、サブシステム1の1番目の変数
1 1サブシステム2の2番目の変数x2 2、およびサブシ
ステム3の1番目の変数x3 1は互いに共有関係にある。
【0137】図8におけるサブシステム1の外部との接
続先を以下のように定義する。
【0138】接続先識別番号1:x1 1(サブシステム1の
変数1番)⇔x2 2(サブシステム2の変数2番) 接続先識別番号2:x1 1(サブシステム1の変数1番)⇔
3 1(サブシステム3の変数1番) 接続先識別番号3:x1 2(サブシステム1の変数2番)⇔
2 1(サブシステム2の変数1番) 初期設定部(C−2)は、このような接続先の定義にし
たがい、接続情報テーブルを生成し、接続関係をデータ
格納部(C−8)に登録する。
【0139】図9に、図8のサブシステム1における接
続情報テーブルの例を示す。図9では、例えば、接続先
識別番号1番(下線部)は、買Tブシステム1の変数1番
(波線部)は外部サブシステム2番(2重線部)の変数2
番(点線部)と接続関係にある。狽アとを意味する。
【0140】初期設定部(C−2)は、同様の手順でサ
ブシステム2、3について接続テーブルが設定する。図1
0および図11に図8のサブシステム2、3における接続
情報テーブルの例を示す。
【0141】S−1−3「変数情報の設定」 次に初期設定部(C−2)は、変数情報を設定する(図
6参照)。変数情報の設定とは、サブシステムが使用す
る変数の種類の設定をいう。本実施形態におけるサブシ
ステムは、3種類の変数、すなわち、内部変数、可動共
有変数および不可動共有変数を使用する。 (1) 内部変数 内部変数とは、S−1−2「接続情報の設定」において、
外部のサブシステムと接続されなかった変数である。従
って、内部変数は、外部サブシステムと直接的な関係の
ない変数である。 (2) 可動共有変数 可動共有変数とは、S−1−2「接続情報の設定」におい
て、外部サブシステムのある変数と共有関係にあると設
定された変数である。従って、可動共有変数は、外部サ
ブシステムと直接関係する変数である。 (3) 不可動共有変数 不可動共有変数とは、S−1−2「接続情報の設定」にお
いて、外部サブシステムのある変数と共有関係にあると
設定された変数である。従って、不可動共有変数は、外
部サブシステムと直接関係する変数である。
【0142】ただし、不可動共有変数の管理は事前に設
定された特定の外部サブシステムに依存する。すなわち
不可動変数の値は特定の外部サブシステムによって設定
され、他のサブシステムは、指定された数値をそのまま
使用しなければならない。このため、不可動共有変数
は、この特定のサブシステム以外のサブシステムにおけ
る最適化計算においては、定数として扱われる。
【0143】尚、共有変数は、可動共有変数、不可動共
有変数ともに、ネットワークにおける分散最適化計算が
実行された後には、自サブシステムとその接続先の外部
サブシステムとの間で同値になる変数である。
【0144】初期設定部(C−2)は、自サブシステム
のサブ問題が保有する変数が上記3種類のどれに該当す
るかを設定するため変数情報テーブルをデータ格納部
(C−2)に生成し、各変数の種類(分類属性という)
を登録する。また、初期設定部(C−2)は、不可動共
有変数に対しては外部サブシステムの何番の共有変数値
に依存するかを指定するための接続先識別番号を登録す
る。
【0145】図12に、変数情報テーブルのデータ構造
を示す。変数情報テーブルは、“変数番号”、“分類属
性”、および“接続先識別番号”の各行を有している。
変数情報テーブルの1行目の“変数番号”には、自サブ
システムのサブ問題で定義された変数を識別する番号を
格納する。図12において、は自サブシステムのサブ問
題が保有する変数の個数である。変数情報テーブルの2
行目の“属性分類”には、変数の分類属性を登録する。
分類属性としては、内部変数I(Insi de variableの
略)、可動共有変数MS(Movable Shared variableの
略)、不可動共有変数IS(Immovable Shared variable
の略)のいずれかが設定される。
【0146】変数情報テーブルの3行目の“接続先識別
番号”には、当該変数が不可動共有変数の場合、その変
数が数値を依存する外部接続先の接続先識別番号(S−1
−2「接続情報の設定」にて定義済み)が格納される。
ただし、内部変数及び可動共有変数については、3行目
の“接続先識別番号”の欄は空欄である。したがって、
共有変数の値を外部サブシステムに全く依存しない完全
自律型のシステムでは、このテーブルの接続先識別番号
は全て空欄となる。
【0147】S−1−2「接続情報の設定」においてすで
にネットワークの構造が決定しているため、このテーブ
ルにデータを登録するときには内部変数と共有変数の分
類は決定している。完全自律型のシステム場合には、不
可動共有変数は存在しないため、直ちに変数情報テーブ
ルにデータを登録することができる。
【0148】一方、自律型のシステムの場合は、各共有
関係に対して共有変数値の決定権を有するサブシステム
が決定される。初期設定部(C−2)は、そのサブシス
テム番号と変数番号の組を指定し、上記変数情報テーブ
ルに登録する。このように共有変数値の決定権を有する
サブシステムを決定権者と呼ぶ。
【0149】[変数情報の設定例]以下,図13に示す
分散最適化システムにおける変数情報テーブルの設定例
を示す。ここで、各変数の上付きインデックスはサブシ
ステム番号を、下付きインデックスは各サブシステムで
定義した変数番号を示す。図13では、2つの共有関係
が明示されている。
【0150】共有関係1は、サブシステム1の1番目の
変数x1 1、サブシステム2の2番目の変数x2 2およびサ
ブシステム3の1番目の変数x3 1における共有関係であ
る。また、共有関係2は、サブシステム1の2番目の変
数x1 2およびサブシステム2の1番目の変数x2 1におけ
る共有関係である。
【0151】自律型のシステムの場合、共有変数値の決
定権者(サブシステム番号と変数番号の組によって定義
される)は各共有関係に1つ指定される。図13の例で
は、共有関係1の共有変数値の決定権者はサブシステム1
の共有変数1番であり、共有関係2の共有変数値の決定
権者はサブシステム2の共有変数1番である。
【0152】S−1−2「接続情報の設定」において、サ
ブシステム1では、 x1 1⇔x2 2の接続 → 接続先識別番号1番; x1 1⇔x3 1の接続 → 接続先識別番号2番; x1 2⇔x2 1の接続 → 接続先識別番号3番; と定義されているとする(S−1−2「接続情報の設定」
例、図9と同じである)。
【0153】サブシステム1はx1 1(変数1番)の値を決
定でき、x1 2(変数2番)の値をサブシステム2のx
2 1(接続先識別番号3番)の値に依存している。図14
に、この場合の変数情報テーブルの設定例を示す。
【0154】同様にして、サブシステム2の接続情報テ
ーブルが x2 1⇔x1 2の接続 → 接続先識別番号1番; x2 2⇔x1 1の接続 → 接続先識別番号2番; x2 2⇔x3 1の接続 → 接続先識別番号3番; と定義されているとする(S−1−2「接続情報の設定」
例、図10と同じである)。サブシステム2はx2 1(変
数1番)の値を決定でき、x2 2(変数2番)の値をサブシ
ステム1のx1 1の値に依存している。図15に、この場
合の変数情報テーブルの設定例を示す。
【0155】また、サブシステム3の接続情報テーブル
が、 x3 1⇔x1 1の接続 → 接続先識別番号1番; x3 1⇔x2 2の接続 → 接続先識別番号2番; と定義されているとする(S−1−2「接続情報の設定」
例、図11と同じである)。図16に、この場合の変数
情報テーブルの設定例を示す。
【0156】一方、完全自律型のシステムの場合、各々
のサブシステムが共有変数値の決定権を持つので、依存
先は全くない。従って、図14から図16に示した接続
先識別番号は、すべて空欄に設定される。
【0157】S−1−4「データテーブルの生成」 次に,初期設定部(C−2)は、データテーブルを生成
する(図6参照)。ここでは、データテーブルとして受
信データテーブルと計算結果テーブルが生成される。
【0158】[受信データテーブルの作成]本実施形態
のサブシステムは、自律分散最適化計算において、外部
から受信した最適化価格及び最適解(外部サブシステム
から受信した共有変数値)を利用する。
【0159】初期設定部(C−2)は、受信したデータ
を格納するための受信データテーブルをデータ格納部
(C−8)内に生成する。このテーブルはリングバッフ
ァ構造になっており、所定容量までの受信データを保持
する。また、保持された受信データの容量が所定容量を
超えると、受信履歴の古いデータが削除される。
【0160】図17に受信データテーブルの構造を示
す。受信データテーブルは、“接続先識別番号”、“共
有変数値”、“最適化価格(−)”および“最適化価格
(+)”の各行を有している。受信データテーブル第1
行目の“接続先識別番号”には、接続情報テーブルで定
義された接続先識別番号が格納される。Ncは、外部接
続先の個数(この場合、接続先識別番号の最大値にな
る)である。
【0161】受信データテーブル第2行目の“共有変数
値”には、第1行目“接続先識別番号”の示す外部接続
先から受信した変数値が格納される。
【0162】受信データテーブル第3行目の“最適化価
格(−)”には、第1行目の接続先識別番号の示す外部
接続先から受信した最適化価格(−側で計算されたも
の)が格納される。
【0163】すでに述べたように、最適化価格は、目的
関数の最適値近傍の変化率である。“−側“とは、最適
値より負側の変数領域をいう。また、”+側“とは、最
適値より正側の変数領域をいう。
【0164】受信データテーブル第4行目の行目の“最
適化価格(+)”には、第1行目の“接続先識別番号
“の示す外部接続先から受信した最適化価格(+側で計
算されたもの)が格納される。
【0165】[計算結果テーブルの生成]また、初期設
定部(C−2)は、自サブシステムにおいて実行された
最適化計算及び最適化価格計算の結果を格納するための
計算結果テーブルをデータ格納部(C−8)内に生成す
る。このテーブルも受信データテーブルと同様にリング
バッファになっている。図18に計算結果テーブルの構
造を示す。
【0166】計算結果テーブルは、“変数番号”、“変
数値”、“最適化価格(−)”、“最適化価格
(+)”、“最終使用外部最適化価格”、“目的関数
値”および“仮想目的関数値”の各行を有している。計
算結果テーブル第1行目の“変数番号”には、自サブシ
ステムのサブ問題で定義された変数の番号が格納され
る。Nvは、自サブシステムのサブ問題が保有する変数
の個数である。
【0167】計算結果テーブル第2行目の“変数値”に
は、第1行目の“変数番号”で示される変数の変数値が
格納される。
【0168】計算結果テーブル第3行目の“最適化価格
(−)”には、第1行目の変数番号に該当する変数のうち
の共有変数について、計算した最適化価格(−側で計算
されたもの)が格納される(価格については後述)。
【0169】計算結果テーブル第4行目の“最適化価格
(+)”には、第1行目の変数番号に該当する変数のうち
の共有変数について計算した最適化価格(+側で計算さ
れたもの)が格納される。
【0170】計算結果テーブル第5行目の“最終使用外
部最適化価格”には、最適化計算の際、第1行目の“変
数番号”に該当する変数のうちの共有変数に対して最終
的に使用された外部最適化価格が格納される(外部最適
化価格については後述)。
【0171】計算結果テーブル第6行目の“目的関数
値”には、自サブシステムのサブ問題で定義された目的
関数に2行目の変数値を代入して得た数値が格納され
る。
【0172】計算結果テーブル第7行目の“仮想目的関
数値”には、最終的に生成された仮想目的関数に2行目
の変数値を代入して得た数値が格納される。
【0173】尚、内部変数に指定された変数の“最適化
価格(−)”、“最適化価格(+)”、および“最終使用外
部最適化価格”の欄は空欄である。
【0174】S−1−5「初期条件の設定」 次に、図6のS−1−5「初期条件の設定」を説明する。
一般的に、最適化計算を実行する際は初期条件として、
初期解(変数の初期値)が必要である。特に非線形計画
問題の場合、最適解近傍の良好な初期解を設定すること
が計算結果の質を左右する。それと同様に、本自律分散
最適化システムにおいては、サブシステムにおいて良好
な最適化価格を設定することが計算効率や計算結果の質
を左右する。
【0175】これらの初期解や初期最適化価格は過去の
計算結果から得られる一種の「知識」であり、再利用可
能な状況(例えば、過去に取り扱った問題と大きな変更
がない問題を取り扱う場合等)であれば初期条件として
設定することで最適化計算を有利に展開することが可能
となる。
【0176】データ操作部(C−3)は、最適化計算が
実行される前にデータ格納部(C−8)に対して計算結
果及び受信データの読み取りを実行するため、初期解及
び初期最適化価格をそれぞれ以下の場所に格納する。
【0177】初期解:計算結果テーブルの変数値の欄; 初期最適化価格:受信データテーブルの最適化価格の
欄; 初期外部共有変数値:受信データテーブルの共有変数値
の欄; S−1−6「上下限値の設定」 次に,初期設定部(C−2)は、変数の上下限値を生成
する。当初、各サブシステムには、固有の問題が定義さ
れているので、サブシステムごとの変数の上下限値もま
た固有の値に設定されている。
【0178】しかし、外部サブシステムと連携して分散
最適化計算を実施する際には、各共有変数の上下限の範
囲が重複する範囲が実際の探索範囲となる。
【0179】図19に、上下限値の設定例を示す。例え
ば,サブシステム1の変数x1 1とサブシステム2の変数x
2 1が共有関係にあり、これらの上下限の範囲は当初別々
に定義されているとする(図19上図)。
【0180】変数x1 1、x2 1は分散最適化計算を実行
後、同じ値にならなければならないので、実際の最適解
の探索範囲は、図19下図の“解が存在しうる範囲”と
示された範囲である。
【0181】従って、最適化計算を実行する前の準備と
して、サブシステムは、サブシステム相互に共有変数の
上下限値を通報するあるいは問い合わせることで共有変
数の上下限値を再設定する。
【0182】[データ操作部(C−3)の機能]ここで
は、図3に示した最適化計算(S−2)以降の説明に入
る前に、初期設定(S−1)で設定された各種データテー
ブルの操作手順について説明する。
【0183】本実施形態のサブシステムにおいて、デー
タ操作部(C−3)は、データ格納機能およびデータ検
索・提示機能を有している。
【0184】(1)データ格納機能 データ格納機能は、データ送受信部(C−6)、最適化
計算統制部(C−4)、最適化価格計算統制部(C−
5)からの要請で、データ操作部(C−3)が受信デー
タ及び計算結果をデータ格納部(C−8)に格納する機
能である。
【0185】ここでは、図9に示す接続情報テーブルの
設定の元でデータ格納機能について例示する。
【0186】(1−1)受信データの格納例 データ操作部(C−3)は、データ送受信部(C−6)
から受信データ格納の要請を受ける。その受信データに
は、以下のように受信先および送信元のサブシステム番
号とその変数番号が付与されている。 受信データ:(1, 1, 3, 1, 12.0, 3.4, ‐2.
3);ここで、受信データの並び順は、受信サブシステ
ム番号, 受信サブシステムにおける変数番号, 送信サ
ブシステム番号, 送信サブシステムにおける変数番号,
変数値, 最適化価格(−), 最適化価格(+)の順
序である。
【0187】データ操作部(C−3)は、接続情報テー
ブル(図9参照)上でサブシステム番号3番の変数番号1
番に対応する外部接続先を検索し、その接続先識別番号
2番を得る(図9の接続情報テーブルにおける第2列目
のデータ)。
【0188】次に,データ操作部は、受信データテーブ
ル(図17参照)上の接続先識別番号2番に対応する列
にデータ(変数値, 最適化価格(−), 最適化価格
(+))を格納する。この格納結果を図20に示す。
【0189】(1−2)計算結果の格納例 データ操作部(C−3)は、最適化計算統制部(C−
4)から格納の要請を受け、計算結果を格納する。すな
わち、データ操作部(C−3)は、変数・最終使用外部
最適化価格等、データの種類別に変数番号順のベクトル
で計算結果を格納する。以下に、変数1、2番が共有変数
であり、3〜5番が内部変数である場合の例を示す。
【0190】[例] 変数:(3.0, 5.0, 10.0, 13.0, 6.0);最終使用
外部最適化価格:(4.0, 3.4, ×, ×, ×);ここ
で×はデータ無しを意味する。
【0191】データ操作部(C−3)は、計算結果テー
ブル(図18)の所定欄にこれらのデータを格納する。
図21に、この場合の計算結果テーブルへの格納結果を
示す。データ操作部(C−3)は、同様に、最適化価格
(+、−)、目的関数値及び仮想目的関数値を計算結果
テーブルに格納する。
【0192】(2)データ検索・提示機能 データ検索・提示機能とは、データ操作部(C−3)が
最適化計算統制部(C−4)等からの要求にしたがい、
受信データ・計算結果をデータ格納部(C−8)内で検
索し、要求元に提示する機能である。
【0193】以下、図9に示す接続情報テーブルの設定
に基づきデータ検索・提示機能について例示する。
【0194】(2−1)受信データの検索・提示 今、受信データテーブルには、図22に示すデータが設
定されていると仮定する。まず、最適化計算統制部(C
−4)及び最適化価格計算統制部(C−5)は受信デー
タの照会をする際、変数番号を指定する。
【0195】今、変数番号1番が指定されたとすると、
データ操作部(C−3)は接続情報テーブル上で変数番
号1番に対応する接続先識別番号を検索し、接続先識別
番号1・2番を得る(図9に示す接続情報テーブルの第1
列および第2列のデータ)。
【0196】データ操作部(C−3)は受信データテー
ブル上の接続先識別番号1・2番に対応するデータを提示
する(受信データテーブルの下線部、すなわち、第1列
および第2列のデータ)。この場合は該当する2つの受
信データが提示される。
【0197】受信データ1:(2.3, 4.4, ‐3.0); 受信データ2:(12.0, 3.4, ‐2.3);ここで、デー
タの並び順は共有変数値・最適化価格(−)・最適化価
格(+)である。
【0198】(2−2)計算結果の提示処理 この処理では、まず、最適化計算統制部(C−4)、最
適化価格計算統制部(C−5)等は、計算結果データの
種類(内部変数値・共有変数値・最適化価格等)を指定
し、データ操作部(C−3)に計算結果データを照会す
る。
【0199】すると、データ操作部(C−3)は、計算
結果テーブルから該当データを検索し、照会元に提示す
る。
【0200】(2−3)送信データの検索・提示処理 送信データの検索・提示とは、データ操作部(C−3)
が計算結果テーブルから送信データを検索して、データ
送受信部(C−6)に提示する処理である。今、計算結
果データテーブルには、図23に示すデータが設定され
ていると仮定する。
【0201】まず、データ送受信部(C−6)は、送信
データをデータ操作部(C−3)に照会する。すると、
データ操作部(C−3)は、接続情報テーブル(図9参
照)を順次参照して下記の送信データテンプレートを準
備する。
【0202】送信データ1:(2, 2, 1, 1, , ,
) → 接続先識別番号1番に対する送信データ; 送信データ2:(3, 1, 1, 1, , , ) → 接続
先識別番号2番に対する送信データ; 送信データ3:(2, 1, 1, 1, , , ) → 接続
先識別番号3番に対する送信データ; ここで、データの並び順は、受信サブシステム番号,
受信サブシステムにおける変数番号, 送信サブシステ
ム番号, 送信サブシステムにおける変数番号,変数値,
最適化価格(−), 最適化価格(+)の順序である。
【0203】次に、データ操作部(C−3)は、接続情
報(図9)と計算結果テーブル(図23)を参照して送
信データテンプレートにデータを入力しデータ送受信部
(C−6)に提示する。
【0204】例えば、接続情報テーブル(図9)より、
接続先識別番号1番に対応する自サブシステム(サブシ
ステム1)の変数番号は1番であり、外部接続先は、サ
ブシステム2、その変数番号は2であるので、計算結果
テーブル(図23)下線部のデータにより、送信データ
1:(2, 2, 1, 1, 3.0, 1.3, ‐2.2);となる。
【0205】(2−4)可動共有変数の判定処理 可動共有変数の判定処理とは、データ操作部(C−3)
が変数の種類を判定する処理である。以下、図14に示
す変数情報テーブルの設定に基づいて、可動共有変数の
判定について例示する。
【0206】最適化計算統制部(C−4)及び最適化価
格計算統制部(C−5)は変数番号を指定して、データ
操作部(C−3)に自サブシステムにおける変数の種類
(内部変数、可動共有変数、不可動共有変数)を照会す
る。
【0207】今、変数番号1番が指定されたとすると、
データ操作部(C−3)は変数情報テーブル上で変数番
号1に対応する分類属性を参照し、可動共有変数である
旨の判定を提示する。
【0208】また、変数番号2番が指定されたとする
と、データ操作部(C−3)は同テーブル上で変数番号
2番に対応する分類属性を参照し、不可動共有変数であ
る旨の判定を提示する。ここで、分類属性の記号は I :内部変数(Internal Variable) MS:可動共有変数(Movable Shared Variable) IS:不可動共有変数(Immovable Shared Variable) を意味する。
【0209】(2−5)共有変数値依存先の受信データ
の検索・提示 以下、図22に示す受信データテーブル及び図14に示
す変数情報テーブルの設定の下で不可動共有変数に対応
するの受信データの検索・提示について例示する。
【0210】最適化計算統制部(C−4)及び最適化価
格計算統制部(C−5)は不可動共有変数の受信データ
を照会する際、変数番号を指定する。
【0211】今、変数番号2番が指定されたとすると、
データ操作部(C−3)は変数情報テーブル上で変数番
号2番に対応する接続先識別番号を参照し、接続先識別
番号3番を得る(図14の変数情報テーブルの第2列目
のデータ)。
【0212】次に受信データテーブル上で接続先識別番
号3番に対応する受信データ(図22に示した受信デー
タテーブルの第3列目のデータ)を提示する。
【0213】受信データ:(0.0, 0.3, ‐2.5);こ
こで、データの並び順は共有変数値, 最適化価格
(−), 最適化価格(+)である。
【0214】S−2「最適化計算」 最適化計算では、最適化計算統制部(C−4)が、受信
データ(最適化価格、共有変数値)を用いて、自サブシ
ステムの保有するサブ問題を修正した仮想問題を生成
し、最適化計算を実行する。この最適化計算のフローチ
ャートを図24に示す。
【0215】まず、最適化計算統制部(C−4)は、最
適化計算準備を実行する(S−2−1)。この処理で
は、最適化計算で使用する記憶領域(ドメインテーブル
という)の分割等が実行される。
【0216】次に、最適化計算統制部(C−4)は、最
適化問題格納部(C−10)に指令し、最適化問題を修
正する(S−2−2)。この処理では、変数の上下限値
および仮想目的関数が設定される。
【0217】次に、最適化計算統制部(C−4)は、最
適化計算ロジック部(C−9)に対して最適化計算を指
示する(S−2−3)。これにより、最適化計算ロジッ
ク部(C−9)は、最適化計算を実行する。
【0218】次に、最適化計算統制部(C−4)は、最
適化計算ロジック部(C−9)から最適解を取得する
(S−2−5)。
【0219】次に、最適化計算統制部(C−4)は、追
探索が必要化否かを判定する(S−2−6)。追探索と
は、最適解が見出されるまで、繰り返し最適化計算を実
行することをいう。
【0220】追探索が必要な場合、最適化計算統制部
(C−4)は、現在の最適解により最適化計算開始点テ
ーブルを更新する(S−2−7)。その後、最適化計算
統制部(C−4)は、制御をS−2−2の最適化問題の
修正に戻す。
【0221】一方、追探索が必要ない場合、最適化計算
統制部(C−4)は、最適解をデータ操作部(C−3)
に記録させる(S−2−8)。
【0222】以下、最適化計算(図24のS−2−1からS
−2−8)の各処理の詳細について順次説明する。
【0223】S−2−1「最適化計算準備」 分散最大値原理に基づく自律分散最適化計算では、各サ
ブシステムは、新規データを受信する毎に新規の仮想問
題を生成し、それに対して最適化計算を実行する。そし
て、各サブシステムは、ネットワーク全体のシステムが
収斂するまで何度も最適化計算を実行する。
【0224】そのため、最適化計算前にはその都度、所
要の準備を実行する。この準備を最適化計算準備とい
う。図25に、この最適化計算準備のフローチャートを
示す。
【0225】まず、最適化計算統制部(C−4)は、デ
ータ操作部(C−3)に依頼し、最適化計算開始点テー
ブルを生成する(S−2−1−1)。
【0226】次に、最適化計算統制部(C−4)は、デ
ータ操作部(C−3)に依頼し、問題修正テーブルを生
成する(S−2−1−2)。
【0227】次に、最適化計算統制部(C−4)は、変
数番号jを1からNvまで変更して、S−2−1−3か
らS−2−1−7に示した処理を繰り返す(図25にlo
op Aと記載)。
【0228】このloop Aでは、まず、最適化計算統制部
(C−4)は、変数番号jの変数(以下、変数j番とも
いう)が共有変数か否かをデータ操作部(C−3)に照
会する。そして、最適化計算統制部(C−4)は、変数
j番が共有変数か否かを判定する(S−2−1−3)。
【0229】変数j番が共有変数であるとき、最適化計
算統制部(C−4)は、ドメインテーブルを設定する
(S−2−1−4)。
【0230】次に、最適化計算統制部(C−4)は、変
数j番が可動共有変数か否かを判定する(S−2−1−
5)。変数j番が可動共有変数である場合、最適化計算
統制部(C−4)は、変数j番の計算開始点(初期値)
を設定する(S−2−1−7)。
【0231】一方、変数j番が可動変数でない場合、変
数j番は不可動変数である。そこで、最適化計算統制部
(C−4)は、変数j番の定数化処理を実行する(S−
2−1−6)。
【0232】また、S−2−1−3の判定で、変数j番
が共有変数でない場合、変数j番は、内部変数である。
そこで、最適化計算統制部(C−4)は、変数j番の計
算開始点(初期値)を設定する(S−2−1−7)。
【0233】最適化計算統制部(C−4)は、以上の処
理(S−2−1−3からS−2−1−7)をサブシステ
ムの変数の数Nvだけ繰り返す。その後、最適化計算統
制部(C−4)は、最適化計算準備を終了する。
【0234】以下、最適化計算準備の各処理(図25の
S−2−1−1からS−2−1−7)の詳細を説明す
る。
【0235】S−2−1−1「最適化計算開始点テーブルの
生成」 最適化計算開始点テーブルとは、最適化計算を実行する
際に使用する内部変数、共有変数の初期値を登録するテ
ーブルである。最適化計算統制部(C−4)は、データ
操作部(C−3)に対して内部変数と共有変数の個数を
照会する。そして、最適化計算統制部(C−4)は、デ
ータ操作部(C−3)を介して、最適化計算開始点テー
ブルをデータ格納部(C−8)に生成する。
【0236】図26に最適化計算開始点テーブルのデー
タ構造を示す。図26のように、最適化計算開始点テー
ブルは、変数番号と、その変数番号に対する変数値とを
対にして有している。図26で、Nvは、当該サブシス
テムのサブ問題が保有する変数の個数(変数番号の最大
値)である。
【0237】最適化計算開始点テーブルのサイズは、変
数の個数が変化しない限り不変である。従って、変数の
個数が変化しない間は1度生成したテーブルのデータを
更新するだけで済み、再度テーブルを生成する必要はな
い。
【0238】S−2−1−2「問題修正テーブルの生成」 問題修正テーブルとは、受信データ(外部接続先の共有
変数値、最適化価格)を用いて自サブシステムが保有す
るサブ問題を修正するためのデータを登録するテーブル
である。最適化計算統制部(C−4)は、データ操作部
(C−3)に対して共有変数の個数を照会する。そし
て、最適化計算統制部(C−4)は、データ操作部(C
−3)を介して、問題修正テーブルをデータ格納部(C
−8)に生成する。
【0239】図27に、問題修正テーブルのデータ構造
を示す。本実施形態のサブシステムでは、問題修正テー
ブルは、共有変数の上下限値、外部最適化価格を有して
いる。また、図27のように、問題修正テーブルの列数
は、Ns、すなわち、自サブシステムにおける共有変数
(可動共有変数+不可動共有変数)の個数である。
【0240】問題の修正は共有変数にかかわる部分のみ
であるので、1行目の“変数番号”には共有変数として
分類された変数の番号が登録される。
【0241】問題修正テーブルのサイズは、共有変数の
個数が変化しない限り不変である。従って、共有変数の
個数が変化しない間は1度生成したテーブルのデータを
更新するだけであり、問題修正テーブルを再度生成する
必要はない。
【0242】問題修正テーブルのデータは、最適化問題
の修正処理(図24のS−2−2)において設定され、
使用される。
【0243】S−2−1−4「ドメインテーブルの設定」 ドメインテーブルとは、外部接続先の共有変数値を用い
て自サブシステムが保有するサブ問題の共有変数の定義
域(下限値〜上限値)を分割し、外部接続先の最適化価
格、外部最適化価格及び最適化計算の実行予定領域を登
録するためのテーブルである。従って、このテーブルは
共有変数の個数だけ生成される。ドメインテーブルは、
以下に示すStep.1〜Step.4により設定される。
【0244】Step.1(ドメインテーブルの生成) まず、最適化計算統制部(C−4)は、データ操作部
(C−3)に対して自サブシステムが保有するサブ問題
の変数 j 番に対応する受信データ(接続先識別番号・
最適化価格(−)・最適化価格(+)・共有変数値)を
照会する。
【0245】データ操作部(C−3)は、変数 j 番の
外部接続先がNc個ある場合には、Nc個の最新の受信
データ(接続先識別番号・最適化価格(−)・最適化価
格(+)・共有変数値の組で1個と数える)を提示す
る。
【0246】最適化計算統制部(C−4)は、提示され
た受信データに応じてドメインテーブルを生成する。図
28に、あるサブシステムにおけるj番目の変数に対す
るドメインテーブルのデータ構造を示す。図28におい
て、Ncは、自サブシステムのサブ問題における変数 j
番の外部接続先の個数である。
【0247】図28に示すように、ドメインテーブルの
第1行目の“テーブル番号”(j)は変数番号(j)と
同じ値である。ドメインテーブルのサイズは、外部接続
先の個数が変化しない限り不変である。従って、外部接
続先の個数が変化しない間は1度生成したテーブルのデ
ータを更新するだけで済み、ドメインテーブルを再度生
成する必要はない。
【0248】また、ドメインテーブルの第2行目の“上
下限値および接続先共有変数値”には、当該変数j番の
上下限値と外部接続先ごとの共有変数値が格納される。
ドメインテーブルは、この上下限値および接続先共有変
数値”により、変数j番の定義域を分割する。また、各
分割された定義域をドメインと呼ぶ。そのドメインテー
ブルの第3行目以下には、ドメインごとの情報が設定さ
れる。
【0249】Step.2(受信データの割り付け) 最適化計算統制部(C−4)は、変数 j 番の上下限値
とStep.1で照会したNc個の受信データを、図29に示
すようにドメインテーブルに割り付ける。ここで、ドメ
インテーブルの2行目“上下限値及び接続先共有変数
値”の欄は変数 j 番の定義域上の数直線を示してい
る。以下にドメインテーブルに対するデータの割付処理
の手順を示す。
【0250】Step.2.1 まず、最適化計算統制部(C−
4)は、変数 j 番の上限値を2行目“上下限値及び接続
先共有変数値”欄の右端に割り付ける。
【0251】Step.2.2 次に、最適化計算統制部(C−
4)は、変数 j 番の下限値を2行目“上下限値及び接続
先共有変数値”欄の左端に割り付ける。
【0252】Step.2.3 次に、最適化計算統制部(C−
4)は、Nc個の受信データを受信データ集合の要素と
する。
【0253】Step.2.4 次に、最適化計算統制部(C−
4)は、受信データ集合の中で、共有変数値が最小の受
信データを選出する。
【0254】Step.2.5 次に、最適化計算統制部(C−
4)は、選出した受信データの共有変数値を2行目「上
下限値及び接続先共有変数値」欄の空欄に左詰で割り付
ける。
【0255】Step.2.6 次に、最適化計算統制部(C−
4)は、選出した受信データの最適化価格を4行目以降
の「接続先最適化価格」の空の行に上詰で割り付ける。
その際、最適化計算統制部(C−4)は、Step.2.5で割
り付けた共有変数値よりも小の領域(左側)には最適化
価格(−)を、大の領域(右側)には最適化価格(+)
を割り付ける。
【0256】Step.2.7 次に、最適化計算統制部(C−
4)は、選出した受信データを受信データ集合から除外
する。
【0257】Step.2.8 次に、最適化計算統制部(C−
4)は、受信データ集合が空集合ならば、ドメインテー
ブルに対するデータの割付処理を終了する。一方、受信
データ集合が空集合でないならば、最適化計算統制部
(C−4)は、Step.2.4へ制御を戻す。
【0258】Step.3 外部最適化価格の割り付け 外部最適化価格は、ドメインテーブルに割り付けられた
接続先最適化価格の列方向(縦方向)の合計である。従
って、図30に示すように、その合計値を割り付ける。
【0259】^λk jを自サブシステムのサブ問題におけ
る変数 j 番に対応する、ドメイン k番での外部最適化
価格(k=0,...,Nc)とすると、外部最適化価格は以下の
ように定義される。
【0260】
【数32】外部最適化価格 ^λ0 j = ^λc1- j +...+ ^λcNc- j; ^λ1 j = ^λc1+ j +...+ ^λcNc- j; ......... ^λNc-1 j = ^λc1+ j +...+ ^λcNc- j; ^λNc j = ^λc1+ j +...+ ^λcNc+ j; ここで、^λc1- j ,...,^λcNc- j, ^λc1+ j ,...,^λ
cNc+ jは、図28のドメインテーブルの第3行以下にお
いて、設定された接続先最適化価格である。
【0261】Step.4(次回探索ドメインの割り付け) ドメインテーブルの次回探索ドメインの欄は、次回の最
適化計算を実行するドメインを記録するための欄であ
る。従って、各最適化計算過程で逐次更新される(更新
規則については後述)。初期段階では最適化計算を実行
するドメインは未定ないので、図31に示すように全て
の欄にFalseを割り付ける。
【0262】この完成されたドメインテーブルより、自
サブシステムが保有するサブ問題の変数 j 番(xj)
に対する外部最適化価格(^λj)を数式で表現すると、
以下の数33のようになる。
【0263】
【数33】外部最適化価格(^λj) ^λj =^λ0 j (lj ≦xj≦ xc1*); ^λj =^λ1 j (xc1* ≦xj≦ xc2*); ......... ^λj =^λNc-1 j (xcNc-1* ≦xj≦ xcNc*); ^λj =^λNc j (xcNc* ≦xj≦uj); ここで、ljは、変数j番の下限値であり、ujは、変数j
番の上限値である。
【0264】[ドメインテーブルの設定]ここでは、ド
メインテーブルの設定例を示す。
【0265】(1)変数1番の外部接続先が1個(Nc
=1)の場合 今、自サブシステムのサブ問題における変数1番(x1)
が共有変数であり、定義域が(0.0〜20.0)であるとす
る。この変数についてデータ操作部に受信データを照会
した結果、以下のとおりであったとする。
【0266】受信データ1=(13.5 , 12.3 , ‐10.
0);ここで、データの並び順は(共有変数値、最適化
価格(−)、最適化価格(+))である。従ってドメイ
ンテーブルは図32のように設定される。図32より、
変数1番(x1)に対する外部最適化価格(^λ1)は数3
4のようになる。
【0267】
【数34】^λ1 = 12.3 (0.0 ≦x1≦ 13.5) ^λ1 = -10.0 (13.5 ≦x1≦ 20.0) (2)変数1番の外部接続先が2個(Nc=2)の場合 今、変数1番(x1)が共有変数であり、定義域が(0.0〜
20.0)であるとする。この変数についてデータ操作部
(C−3)に受信データを照会した結果、以下のとおり
であったとする。
【0268】受信データ1=(13.5 , 12.3 , ‐10.
0); 受信データ2=(7.3 , 16.5 , ‐15.0); ここで、データの並び順は(共有変数値、最適化価格
(−)、最適化価格(+))である。
【0269】外部接続先が複数個あるので、まず共有変
数値の小さい受信データ2が選択されて受信データ(図
33の第3行目の波線部)がドメインテーブルに割り付
けられる。次いで受信データ1の受信データ(図33の
第4行目の下線部)がドメインテーブルに割り付けら
れ、図33のように設定される。
【0270】この図33より、変数1番(x1)にとって
の外部最適化価格(^λ1)は以下の数35のようにな
る。
【0271】
【数35】^λ1 = 28.8 (0.0 ≦x1≦ 7.3) ^λ1 = -2.7 (7.3 ≦x1≦ 13.5) ^λ1 = -25 (13.5 ≦x1≦ 20.0) S−2−1−6「定数化処理」 S−2−1−4のドメインテーブルの設定処理において不可
動共有変数であると判定された変数 j 番は、最適化ロ
ジック部(C−9)が定数として取り扱うように設定さ
れる。この処理を定数化処理という。
【0272】この定数化処理は、以下の手順に示すよう
に、問題修正テーブル及び最適化計算開始点テーブルに
データを登録するときに実行される。
【0273】Step.1 最適化計算統制部(C−4)は、
変数j番が共有変数値を依存する外部接続先の受信デー
タをデータ操作部(C−3)に照会する。この場合、該
当する受信データは必ず1個である。
【0274】Step.2 最適化計算統制部(C−4)は、
該当する受信データの共有変数値(xc*)を図34に示
すように最適化計算開始点テーブルの変数 j 番に該当
する列に登録する。
【0275】Step.3 図35に示すように、最適化計算
統制部(C−4)は、問題修正テーブルに変数番号 j
番を登録する。また、最適化計算統制部(C−4)は、
受信データの共有変数値を同列の“上限値”、“下限
値”として登録する。
【0276】Step.4 最適化計算統制部(C−4)は、
S−2−1−4の処理で生成したドメインテーブルの“上
下限値及び接続先共有変数値”の行を参照してxc*を包
含するドメインを選択する。
【0277】Step.5 最適化計算統制部(C−4)は、
Step.4で選択したドメインに割り振られた外部最適化価
格を図35に示すように問題修正テーブルの変数 j 番
に対応する列の「外部最適化価格」の欄に登録する。
【0278】S−2−1−7「計算開始点の設定」 この処理では、内部変数又は可動共有変数である変数 j
番の計算開始点が、以下の手順で最適化計算開始点テ
ーブルに登録される。
【0279】Step.1 最適化計算統制部(C−4)は、
変数 j 番の前回の最適解(最適化計算を1度も実行し
ていなければ初期解が登録されている)をデータ操作部
(C−3)に照会する。
【0280】Step.2 図36に示すように、最適化計算
統制部(C−4)は、最適化計算開始点テーブルの変数
j 番に対応する列の“変数値”の欄に前回の最適解を
登録する。
【0281】以上、S−2−1の最適化計算準備において
設定が完了した内容は、以下の通りである。 (1)該当サブシステムの保有する各共有変数に対応す
るドメインテーブルの生成及びデータ登録 (2)最適化計算開始点テーブルの生成及びデータ登録 (3)問題修正テーブルの生成及び不可動共有変数に対
応するデータ登録 S−2−2「最適化問題の修正」 本自律分散最適化システムでは、各サブシステムは、受
信データを用いてサブ問題を修正した仮想問題を生成す
る。図37に、最適化問題の修正処理のフローチャート
を示す。
【0282】この処理では、最適化計算統制部(C−
4)は、S−2−2−1からS−2−2−3の処理を変
数番号jを1からNvまで変更して繰り返す(図25にl
oop Aと記載)。
【0283】このループにおいて、最適化計算統制部
(C−4)は、まず、変数j番が可動共有変数か否かを
データ操作部(C−3)に照会する。そして、最適化計
算統制部(C−4)は、変数j番が可動共有変数か否か
を判定する(S−2−2−1)。
【0284】変数j番が可動共有変数であるとき、最適
化計算統制部(C−4)は、変数j番について最適化計
算を実行するドメインを選択する(S−2−2−2)。
【0285】次に、最適化計算統制部(C−4)は、選
択されたドメインに応じて問題修正テーブルを変更する
(S−2−2−3)。
【0286】最適化計算統制部(C−4)は、以上の処
理(S−2−2−1からS−2−2−3)をサブシステ
ムの変数の数Nvだけ繰り返す。
【0287】次に、最適化計算統制部(C−4)は、問
題修正テーブルを参照して、サブ問題格納部(C−1
0)の最適化問題(サブ問題)を修正する。その後、最
適化計算統制部(C−4)は、最適化問題の修正処理を
終了する。
【0288】以下、最適化問題の修正(図37のS−2
―2−2からS−2−2−4)の各処理の詳細を説明す
る。
【0289】S−2−2−2「変数 j 番の最適化計算ドメ
インの選択」 この処理では、S−2−1「最適化計算準備」において設
定されたドメインテーブル上の、どのドメインについて
最適化計算を実行するかが決定される。ドメインの選択
は以下の手順で実行される。
【0290】Step.1 最適化計算統制部(C−4)は、
最適化計算開始点テーブルの変数 j番に対応する列の計
算開始点を参照する。
【0291】Step.2.1 最適化計算統制部(C−4)
は、その計算開始点を変数 j 番のドメインテーブルの
「上下限値及び接続先共有変数値」の行と照合し、計算
開始点が包含されるドメインを選択する。
【0292】Step.2.2 計算開始点がドメインの境界線
上にある場合は、最適化計算統制部(C−4)は、同ド
メインテーブルの「次回探索ドメイン」の行を参照し、
Falseの側のドメインを選択する。
【0293】ここで、「次回探索ドメイン」の欄がFals
eであるということは、前回の最適化計算において未探
索の領域であることを示し、Trueであるということは、
前回の最適化計算において探索した領域であることを示
している。
【0294】Step.3 Step2.1またはStep2.2において選
択したドメインに対応する「次回探索ドメイン」の欄を
Trueとし、その他をFalseとする。
【0295】[最適化計算ドメインの選択の処理例]こ
こでは、S−2−2−2に示した最適化計算ドメインの選択
処理の例を示す。
【0296】(1)計算開始点がドメインの境界上にな
い場合 ここでは、最適化計算開始点テーブルが図38のよう
に、また、ドメインテーブルが図39のように設定され
ているとする。今、変数1番が共有変数であり、この変
数に関して最適化計算開始点テーブルを参照した結果、
図38に示すように、計算開始点が10.0であったとす
る。
【0297】ここで、変数1番に対応するドメインテー
ブル(図39)の“上下限値及び接続先共有変数値”行
を参照すると、計算開始点は7.3から13.5の間であるの
で、ドメイン1番のドメインが選択される。
【0298】また、それに対応する「次回探索ドメイ
ン」欄をTrueとし、それ以外Falseとする(図39参
照)。これは、次に最適化計算を実行する領域はドメイ
ン番号1のドメインであることを意味する。
【0299】(2)算開始点がドメインの境界上である
場合 ここでは、最適化計算開始点テーブルが図40のよう
に、また、ドメインテーブルが図39のように設定され
ているとする。今、変数1番が共有変数であり、この変
数に関して最適化計算開始点テーブルを参照した結果、
計算開始点が13.5であったとする。
【0300】ここで、変数1番に対応するドメインテー
ブルの“上下限値及び接続先共有変数値”行を参照する
と、計算開始点と同じ数値の13.5が存在し、ちょうどド
メインの境界上である。そこで、“次回探索ドメイン”
行が参照されてFalseのドメイン2番が選択される。
【0301】ここで、ドメイン1番がTrueであるという
ことは、前回の最適化計算が実行されたドメインが1番
であった、つまり下限値7.3、上限値13.5の範囲で最適
化計算が実行されたことを意味する。
【0302】最後に、選択したドメイン2番に対応する
「次回探索ドメイン」欄をTrueとし、それ以外をFalse
とすることで、次の最適化計算を実行する領域はドメイ
ン2番であることを指定する。これにより、ドメインテ
ーブルは、図41のように設定される。
【0303】S−2−2−3「問題修正テーブルの更新」 共有変数 j 番の最適化計算ドメインの選択(S−2−2−
2)において選択されたドメインの内容を参照して問題
修正テーブルにデータを登録する。問題修正テーブルの
更新は以下の手順で実行される。
【0304】Step.1 最適化計算統制部(C−4)は、
変数 j 番に対応するドメインテーブル上において選択
されたドメインの上限、下限及び外部最適化価格を参照
する。
【0305】Step.2 最適化計算統制部(C−4)は、
データ操作部(C−3)に依頼し、参照した内容を問題
修正テーブルの変数 j 番に該当する列の「上限値」、
「下限値」、「外部最適化価格」に登録する。
【0306】なお、本実施形態では、外部最適化価格
は、分割領域ごとに事前に算出しておき、ドメインテー
ブルに保存していた。しかし、これに代えて、ドメイン
が選択された時点で、外部最適化価格を算出するように
してもよい。
【0307】[問題修正テーブルの更新処理の例]ここ
では、S−2−2−3「問題修正テーブルの更新」の例を示
す。今、変数1番が共有変数であり、この変数の計算開
始点が10.0であり、S−2−2−2において選択されたドメ
インが図39のドメインテーブルのドメイン1であった
とする。
【0308】図39に示すように、ドメイン番号1のド
メインは7.3〜13.5の範囲のドメインであるので、7.3を
下限値、13.5を上限値とする。また、ドメイン番号1の
ドメインに属する外部最適化価格は‐2.7であるので、
これらのデータを問題修正テーブルの変数1番に該当す
る列に登録する。
【0309】このときの問題修正テーブルの設定例を図
42に示す。次回、最適化計算が実行される際は問題修
正テーブルに登録された上下限値の範囲内で実行され
る。
【0310】S−2−2−4「最適化問題の修正」 問題修正テーブルの更新(S−2−2−3)において問題修
正テーブルのデータは全て設定されているので、最適化
計算統制部(C−4)は、最適化問題格納部(C−1
0)のサブ問題の計算開始点、上下限値、目的関数に修
正を加える。
【0311】Step.1(計算開始点の修正) 最適化計算統制部(C−4)は、最適化問題格納部(C
−10)のサブ問題の計算開始点を最適化計算開始点テ
ーブルの“変数値”に修正する。
【0312】Step.2(上下限値の修正) 最適化計算統制部(C−4)は、最適化問題格納部(C
−10)のサブ問題の共有変数に関する上下限値を問題
修正テーブルの上限値及び下限値に修正する。
【0313】Step.3(目的関数の修正) 最適化計算統制部は、最適化問題格納部のサブ問題の目
的関数(f(x))を「問題修正テーブル」の「外部最適化
価格」を用いて図43のように修正する。この修正され
た目的関数を仮想目的関数という。
【0314】図43に示すように、仮想目的関数F(x)
は、当該サブシステムが保有するサブ問題の元の目的関
数f(x)に、共有変数xjとその共有変数xjに対する外部最
適化価格^λjの一次式(^λ1・x1+^λ2・x2+...λNs
・xNs)を加えたものである。
【0315】外部最適化価格は^λjは、各サブシステム
の目的関数の共有変数に対する変化率を関連するサブシ
ステムについて加算したものである(図30)。
【0316】[最適化問題の修正処理の例]今、変数1
番及び3番が共有変数であり、最適化計算開始点テーブ
ル及び問題修正テーブルを参照した結果、図44および
図45の通りであったとする。また、サブ問題が図46
のとおりであったとする。
【0317】最適化計算開始点テーブル、問題修正テー
ブルより、計算開始点は(x1, x2, x3, x4) = (7.6, 3.
4, 8.5, 12.0)である。また、共有変数(変数1・3番)
の上限値は(u1, u3) = (13.3, 12.3 )である。また、共
有変数(変数1・3番)の下限値は(l1, l3) = (7.3, 3.
4)である。
【0318】さらに、外部最適化価格は(^λ1, ^λ1)=
(-2.7, 2.3)であるので、これらのデータでサブ問題を
修正すると、図47に示す仮想問題となる(修正部は下
線部で示されている)。最適化計算統制部(C−4)の
指示を受けて、最適化ロジック部(C−9)は、この仮
想問題に対して最適化計算を実行する。
【0319】S−2−6「追探索判定」 以下、再び図24を参照して、追探索判定処理について
説明する。最適化計算(S−2−4)において実行された
最適化問題は、1ドメインの範囲内で実行された計算で
ある。このドメインは、S−2−2「最適化問題の修正」
において共有変数毎に選択される。ドメイン毎に外部最
適化価格が異なるので最適化計算は逐次ドメインを更新
して実行する必要がある。
【0320】このドメインの更新は、S−2−2−2「変数
j番の最適化計算ドメインの選択」において逐次実行さ
れる。このドメインの更新に対して、本追探索判定処理
では前回の最適解と今回の最適解を比較し、同じ最適解
であれば追探索の必要なしと判断し、同じ最適解でなけ
れば追探索の必要ありと判断される。
【0321】[本判定の根拠]ある変数 j 番の最適化
計算前の点と最適点が図48上段のとおりであったとす
る。
【0322】この場合、まず最適化計算はドメイン2に
対して実行される。しかし、最適点はドメイン3にある
ので、計算した結果、変数 j 番の値は図48中段のよ
うに移動する。
【0323】次に最適化計算はドメイン3に対して実行
され、変数 j 番の値は図48下段のように移動する。
【0324】S−2−2−2「変数 j 番の最適化計算ドメ
インの選択」のドメイン選択機能により、再度ドメイン
3が選択されるので、3回目の最適化計算の結果もやは
り上図と同じ点になる。従って、これ以上の追探索の必
要はなしと判断される。
【0325】S−3「最適化価格の計算」 以下、再び図3を参照して、最適化価格の計算について
説明する。最適化価格の定義は、“最適解近傍点におけ
る共有変数に対する条件付き最大値の変化率”である。
【0326】最適化価格の計算法は何種類か存在する
が、ここでは汎用性の高い感度分析による方法について
説明する。図49に最適化価格計算のフローチャートを
示す。
【0327】この処理では、最適化価格計算統制部(C
−5)は、変数番号jを1からNv(Nvは自サブシス
テムが有するサブ問題の変数の個数)まで変更して、S
−3−1からS−3−4の処理を繰り返す(図49にlo
op Aと表示)。
【0328】このループにおいて、まず、最適化価格計
算統制部(C−5)は、変数j番が共有変数か否かを判
定する(S−3−1)。変数j番が共有変数でない場
合、最適化価格計算統制部(C−5)は、次の変数jの
ループへ制御を進める。
【0329】一方、変数j番が共有変数の場合、最適化
価格計算統制部(C−5)は、変数j番に対する最適化
価格(−)を計算する(S−3−2)。また、最適化価
格計算統制部(C−5)は、変数j番に対する最適化価
格(+)を計算する(S−3−3)。
【0330】次に、最適化価格計算統制部(C−5)
は、データ操作部(C−3)に依頼し、上記で算出した
変数j番の最適化価格(−側および+側)を記録させる
(S−34)。
【0331】その後、最適化価格計算統制部(C−5)
は、次の変数のループへ制御を進める。すべてのループ
が終了すると、最適化価格計算統制部(C−5)は、最
適化価格計算を終了する。
【0332】以下、最適化価格計算の処理(図49のS
−3−2からS−3−4)の詳細を説明する。
【0333】S−3−2、S−3−3「変数 j 番に対する最
適化価格計算」 最適化価格は共有変数毎に計算される。図50に、変数
j 番に対する最適化価格計算処理を示すフローチャー
トを示す。
【0334】S−3−2−1「最適化問題の修正」 最適化価格は、S−2で求められた最適点を用いて、共有
変数毎に感度分析により求められる。感度分析では、変
数 j 番を最適点から微小幅ずらすことで得られた最適
解を使用する。この最適点から微小幅ずれた位置の最適
解を変移最適解と呼ぶ。
【0335】最適化計算ロジック部(C−9)に変移最
適解を計算させるため、最適化価格計算統制部(C−
5)は変数 j 番に対し、以下の数36による規則で定
数化処理を実行する。
【0336】
【数36】xj = xj* + δ xj*:S−2で求められた変数 j 番の最適解 変数 j 番に対する最適化価格(+)を計算する場合
→ 変数 j 番に対する最適化価格(−)を計算する場合
→ 定数化処理の方法、ドメイン選択等の最適化計算の方法
(S−3−2−1からS−3−2−3)はS−2における
手順と同一であるので、その説明は省略する。ただし、
計算すべき問題は、図51から図52のように修正され
ることになる。
【0337】この修正された問題(図52)によって得
られる解は、変数 j 番をS−2で求めた解(xj*)から微
小幅(δ)ずらした場合の最適解、つまり変移最適解で
ある。
【0338】S−3−2−5「最適化価格の計算」 今、最適化問題が最大化問題であるとき、x*、x**(j)、
max F(x**)、^λjを以下の数13のように定義する。
【0339】x*:S−2で計算された最適解ベクトル; x**(j):S−3−2の処理で、変数 j 番を変移させて計
算された変移最適解ベクトル; maxF(x**(j)):変数j番を最適解x*jから変位させた値x
* j +δに固定したとき、他の変数(xj以外の変数)を
変化させたときの仮想目的関数F(x)の最大値;^λj:S
−3−4で最終的に使用された、変数 j 番に対応する外
部最適化価格;ここでは、最適化問題は、最大化問題を
仮定しているため、maxF(x**(j))は、変数j番を最適解
x*jから変位させた値x* j +δに固定したときに、仮想
目的関数F(x)の変化量のが最も少ない変数ベクトルxに
おける仮想目的関数値に相当する。この場合の仮想目的
関数の変化率を方向微分とも解釈できる。
【0340】変数 j 番に対する最適化価格(λj)は、
最適解近傍における変数 j 番に対する条件付最大値
の変化率であるから、以下の数37で計算される。
【0341】
【数37】λj = (maxF(x**(j))- F(x*))/δ - ^λj ここで、F(x)は仮想目的関数であり、最終的に使用され
た外部最適化価格により元の目的関数(f(x))を修正し
た関数である。従って、変数 j 番に関する修正分の影
響を排除するために^λjを差し引いている。
【0342】同様に最適化問題が最小化問題であると
き、変数 j 番に対する最適化価格(λj)は、最適解近
傍における変数 j 番に対する条件付最小値の変化率で
あるから、以下の数38で計算される。
【0343】
【数38】λj = (minF(x**(j))- F(x*))/δ - ^λj ここで、minF(x**(j))は、変数j番を最適解x*jから変
位させた値x* j +δに固定したとき、他の変数(xj以外
の変数)を変化させたときの仮想目的関数F(x)の最小値
である。
【0344】ここで、最適化問題が最大化問題である場
合、minF(x**(j))は、変数j番を最適解x*jから変位さ
せた値x* j +δに固定したときに、仮想目的関数F(x)の
変化量のが最も少ない変数ベクトルxにおける仮想目的
関数値に相当する。この場合の仮想目的関数の変化率を
方向微分と呼ぶ。
【0345】以上のように、変数 j 番に対する最適化
価格(+)と最適化価格(−)は、図53の数式で表現
できる。このような最適化価格を限界効用、または限界
コストともいう。また、図53に示したような数式(方
向微分)による情報の分析手法を感度分析ともいう。
【0346】S−4「ネットワークの収斂判定」 本実施形態における自律分散最適化システムでは、ネッ
トワークの収斂について、静的最適化完了と動的最適化
完了の2種を考慮している。
【0347】静的最適化完了とは、ネットワークを構成
する全てのサブシステムの間の共有変数がある一定値に
収斂し、ネットワーク全体の最適化が終了したことを示
す。
【0348】一方、動的最適化とは、ネットワーク内の
一部のサブグループまたはサブグループの集合(これを
クラスタという)内でのみ最適化が完了した状態を示
す。これらの収斂状況を判断する方法については様々な
方法が適用可能である。以下に、3通りの判断方法を示
す。
【0349】(1)計算開始指示とネットワークの収斂
状況の監視、及び計算終了指示を出す管理部(最適化計
算の過程には関与しない)を設置し、各サブシステムの
収斂判定部に信号を送信させる。
【0350】(2)各サブシステムがネットワーク全体
の状況を確認できる掲示板機能を設ける。各サブシステ
ムの収斂判定部が定期的にその掲示板にアクセスして収
斂状況を確認する。
【0351】(3)関連する外部サブシステムに自サブ
システムの共有変数が全て収斂したか否かを常時あるい
は定期的に通報する。全てのサブシステムは直接あるい
は間接的に接続しているので、その信号はネットワーク
全体に波及するため、収斂の判断が可能になる。
【0352】S−5「データの送受信」 図3を再び参照してデータ送受信を説明する。データ送
受信部(C−6)は、新しいデータを受信したことをサ
ブシステム統制部(C−4)に通知し、データ操作部
(C−3)に対して受信データの格納を要請する。
【0353】また、サブシステム統制部(C−4)から
の指示でデータ操作部(C−3)に対して送信データの
提示を要請し、外部サブシステムへ送信する。データ送
受信部(C−6)は、データ通信方式、通信媒体に応じ
た所定の処理を実施する。
【0354】本自律分散最適化システムにおける計算法
は、共有変数の値と最適化価格が所定のサブシステム間
で正確に送受信されれば良いため、データの通信方式に
は依存しない。
【0355】例えば、対象とするネットワークが1台の
マシン内に構成されている場合には、サブシステム番号
と変数番号の組、つまり接続情報テーブル上の接続先識
別番号があればサブシステム間のデータ通信は容易に実
施可能である。この場合、データ送受信部(C−6)
は、例えば、単一の計算機内で実行される複数のプログ
ラムまたは複数のプロセス(タスクともいう)の間の通
信機能(一般にはプロセス間通信と呼ばれる)により実
現される。
【0356】また、個々のサブシステムが別々の計算機
内に構成され、これらの計算機が通信線によってLANを
構成しているのであれば、図54のような接続先識別番
号と計算機のアドレスを登録した対応表を準備してデー
タと送信先を対応させることができる。
【0357】この場合、データ送受信部(C−6)は、
例えば、ネットワークにアクセスする基板、基板にアク
セスするデバイスドライバおよびOSを介してドライバ
に指令するアプリケーションプログラムにより実現され
る。
【0358】この場合、データ送受信部は送信データに
アドレスを付与する操作を実施する。さらに、インター
ネットを経由するような大規模なネットワーク上で計算
を実施するのであれば、そのネットワーク上のアドレス
を用いればよい。
【0359】いずれのネットワーク形態にせよ、正確に
データを送受信できるように、アドレスと接続先識別番
号との対応を定義しておけばよい。送受信部を構成すれ
ばよい。
【0360】以上述べたように、本実施形態の分散最適
化システムでは、最適化問題が複数複数の部分問題に分
割されてサブシステムに保持される。この部分的な最適
化問題は、サブシステム固有の目的関数に、そのサブシ
ステム以外の外部サブシステムから受信した最適化価格
により構成される項を追加した仮想目的関数により定式
化されている。
【0361】このため、各サブシステムの最適化を実行
すると、外部サブシステムの最適化に対する目的関数が
反映される。
【0362】また、本実施形態の分散最適化システムで
は、互いに変数を共有するサブシステムがその共有変数
の定義域に関する情報を交換する。そして、互いの定義
域が重複する範囲で最適解を求める。また、各サブシス
テムは、最適化計算を実行するごとに、共有変数の最適
値および最適化価格を授受し、自身の最適化問題を修正
し、再度最適化計算を実行する。
【0363】このため、変数を共有する複数のサブシス
テムが独立に最適化処理を実行しても、同一の最適解に
収斂する可能性が高くなる。
【0364】この場合、各サブシステムの最適化問題に
は、仮想目的関数の変更と、共有変数の定義域の変更と
により、外部サブシステムの最適化問題が反映される。
このため、各サブシステムは、他のサブシステムから自
律的に最適化計算を進めることができる。
【0365】本実施形態の分散最適化システムでは、例
えば、サブシステム間で共有する変数(例えば、製品生
産量など、)について計算した最適化価格及びその変数
値を相互に伝達することにより、全体の最適化が実現さ
れる。
【0366】また、本実施形態の分散最適化システムで
は、システムが複合した大規模問題でも、人間が扱いや
すい適当な大きさのサブシステムに分割し、それらの相
互作用として最適化できる。そのため、各々のサブシス
テムに対応するモデルの開発や検証が容易である。ま
た、サブシステムは独立して最適化計算されるので、サ
ブシステム単位で詳細な状態、挙動を知ることができ
る。
【0367】<変形例>上記実施形態においては、送信
データあるいは受信データは、受信サブシステムとその
変数番号および送信サブシステムとその変数番号を保持
する。このように送信側と受信側双方のサブシステムお
よび変数を特定する情報を送信データあるいは受信デー
タに含めることで受信データの妥当性を受信側で確認す
ることができる。
【0368】しかし、これに代えて、送信データあるい
は受信データには受信サブシステムとその変数番号のみ
を含めてもよい。
【0369】また、送信データあるいは受信データには
送信サブシステムとその変数番号のみを含めてもよい。
その場合、受信サブシステムの番号や変数番号は、受信
サブシステムが接続情報テーブル(図9)から求めても
よい。
【0370】<追探索判定の変形>上記S−2−4「最適
化計算」において実行された最適化計算は、S−2−2
「最適化問題の修正」において共有変数毎に選択された
1ドメインの範囲内で実行される。上記実施形態のシス
テムでは、ドメイン毎に外部最適化価格が異なるので最
適化計算は逐次ドメインを更新して、さらに最適化計算
を実行する。
【0371】その場合、上記実施形態のシステムでは、
最適化計算後、さらに追探索の必要があるか否かを判定
し、必要があると判定された場合に、無限に探索を繰り
返した(図24のS−2−2からS−2−6の処理)。
【0372】しかし、この追探索処理に制御パラメータ
を導入し、追探索の回数に制限を設けても良い。図55
から図58に基づき、そのような処理の例を説明する。
【0373】上記S−2−2−2「変数 j 番の最適化計算
ドメインの選択」において逐次ドメインを更新する仕組
みがある。そこで、その処理ブロックにおいて、収斂判
定のための制御パラメータ(SD)及び前回の最適解と
今回の最適解の比較により、追探索の必要性の有無を判
断すればよい。
【0374】ここで、制御パラメータとは、最適化計算
実行前の点が属するドメインから+−方向にいくつまで
のドメインを探索範囲とするかを指定するパラメータで
あり、指定がなければ、下限値から上限値までのすべて
のドメインが探索対象となる。一方、例えば、SD=1
が指定された場合、計算開始点から1つ目までのドメイ
ンが探索される。
【0375】まず、比較例として、図55に、制御パラ
メータの指定がない場合の追探索判定の例を示す(これ
は、上記第1実施形態のS−2−6の処理である)。図
55は、下限(lsj)から上限(usj)までの領域をドメ
イン1から3に分割した分割領域を示している。また、
図55では、最適化計算の結果が、状態1から状態3ま
で変化することを示している。
【0376】今、ある変数j番(共有変数)の最適化計
算前の点が図55の状態1に示される位置(最適化計算
前の点)であったとする。すなわち、計算開始点は、ド
メイン2に存在する。この場合、まず、ドメイン2に対
して最適化計算が実行される。その結果、変数j番の値
が変更され、図55の状態2に示す位置(1回目の最適
化計算後の点)に変数j番が移動したと仮定する。
【0377】状態2における変数j番の位置は、ドメイ
ン2とドメイン3の境界上の点cである。この場合、上
記第1実施形態で述べたように、次の計算は隣接するド
メイン3に設定される。また、図55の場合、制御パラ
メータSDは、指定されていない。このため、次の最適
化計算はドメイン3において実行される。その結果、さ
らに、変数j番の値が変更され、図55の状態3に示す
位置(2回目の最適化計算後の点)に変数j番が移動し
たと仮定する。
【0378】この場合、最適化計算後のドメインは、や
はりドメイン3である。そして、S−2−2「変数j番
の最適化計算ドメインの選択」で述べたように、次のド
メインとして、やはりドメイン3が選択される。
【0379】そして、次の最適化計算においても、変数
j番は、状態3の位置(2回目の最適化計算後の点)に
算出される。その結果、追探索の必要なしと判定され
る。
【0380】図56に制御パラメータとしてSD=1が
指定された場合の例を示す。ただし、図56の状態1で
は、計算開始前の点は、ドメイン2内に存在する。した
がって、この場合、最適化計算は、ドメイン2に対して
実行される。
【0381】最適化計算の結果、変数j番は、図56の
状態2のように移動したと仮定する。状態2の位置は、
ドメイン2とドメイン3の境界上の点cである。したが
って、上記第1実施形態のS−2−2「変数j番の最適
化計算ドメインの選択」では、次のドメインとして、ド
メイン3が選択される。
【0382】しかし、本変形例のシステムでは、SD=
1が指定されている。SD=1とは、最適化計算実行前
の初期解が属するドメインから1つ目までのドメインを
探索範囲とする指定である。図56の場合、ドメイン2
が1つ目のドメインとカウントされるため、これ以上の
探索は必要なしと判断される。
【0383】図57に制御パラメータとしてSD=1が
指定された、他の計算例を示す。この図57の状態1で
は、計算開始前の点は、ドメイン1とドメイン2の境界
上の点bに存在する。そして、1回目の最適化計算が、
ドメイン2に対して実行されたと仮定する。
【0384】そして、最適化計算の結果、変数j番は、
図57の状態2のように移動したと仮定する。この例で
は、移動先の位置は、ドメイン2の内部の点(1回目の
最適化計算後の点)である。この場合、ドメイン2が1
つ目のドメインとカウントされるているため、これ以上
の探索は必要なしと判断される。
【0385】図58に制御パラメータとしてSD=1が
指定された、他の計算例を示す。この図58の状態1で
は、計算開始前の点は、ドメイン1とドメイン2の境界
上の点bに存在する。そして、1回目の最適化計算が、
ドメイン2に対して実行されたと仮定する。
【0386】そして、最適化計算の結果、変数j番は、
図58の状態2のように移動したと仮定する。この例で
は、移動先の位置は、再びドメイン1とドメイン2の境
界上の点bである。
【0387】この場合、ドメイン2に対する計算は意味
がなかったと判断する必要がある。すなわち、本変形例
のシステムでは、計算開始点がドメイン境界上にあり、
最適化計算の対象としていずれかのドメインが選択さ
れ、最適化計算の結果元のドメイン境界上に戻った場
合、当該ドメインにおける最適化計算は意味がなかった
と判定される。そして、次の最適化計算をドメイン1に
対して実行するように設定される。
【0388】このような制御パラメータを導入すること
により、無制限に探索を繰り返すことを防止できる。ま
た、図58に示したように、ドメイン境界から出発して
元に戻った場合、その最適化計算の意味がなかったとす
ることにより、ドメインの探索漏れを防止できる。
【0389】《第2実施形態》図59〜図64に基づい
て本発明の第2実施形態を説明する。上記第1実施形態
では、複数のサブ問題を含む最適化問題を汎用的に処理
する自律分散最適化システムについて説明した。本実施
形態では、上記自律分散最適化システムを具体的な最適
化問題に適用した応用例を説明する。
【0390】本実施形態におけるシステムの構成および
作用は第1実施形態におけるシステムと同一である。そ
こで、同一の構成部分については同一の符号を付して、
その説明は省略する。また、必要に応じて図1から図5
4の図面を参照する。
【0391】本実施形態のサブシステムは、各々最適化
問題とその解法アルゴリズムの組を有している。以下に
その一例を示す。
【0392】<工場の最適生産計画問題への応用>サブ
システムとして、材料を購入して製品を生産し、販売す
る工場の生産管理システムを想定する。図59に、その
ような工場における入出力関係を示す。図59に示すよ
うに、この工場は、材料M1および材料M2を購入し、
加工し、製品Pを製造している。工場は下記に例示する
目的及び制約を持つ。
【0393】[目的]工場は販売による売上利益から諸
経費(材料の購入コストや生産にかかるコスト等)を差
し引いた純利益を最大化するという目的を持つ。
【0394】[制約] (1)工場は、その経済的能力により材料の購入費等諸
経費の制限を有する。 (2)工場は、物流や工場自身の大きさ等の都合によ
り、材料の購入可能量の制限を有する。 (3)1単位の製品を生産するためには、所定量の材料
が必要である。
【0395】上記のような目的を数式で表現したものが
目的関数である。また、上記のような制約を数式で表現
したものが制約式である。
【0396】一般的に、ある原料が加工されて商品にな
るまでには複数の原材料・作業工程・生産工場が関与す
る。そのような工程や工場が有機的に結合されて商品が
生産される。
【0397】また、ある工場の製品あるいは産業廃棄物
が別の工場の材料であったりする。これらの関係を原材
料の販売市場モデル及び商品の販売市場モデルも含めて
モデル化した一例を図60に示す。
【0398】図60において、矢印は材料・製品のフロ
ーを示している。例えば、工場Cの製品は工場Dの材料で
ある。
【0399】本実施形態における最適化システムでは、
図60に示した材料・製品の量が共有変数の値に相当す
る。サブシステムは、最適化計算の過程においてこれら
共有変数の値及び最適化価格を更新する。
【0400】各サブシステムは、更新された共有変数の
値及び最適化価格に基づき、さらに最適化計算を実行す
る。
【0401】以下、化学プラントのミニモデルを用いて
最適生産計画問題の数値計算例を示す。
【0402】<化学プラントモデルの構成>図61に、
本実施形態において最適化の対象となる化学プラントモ
デルの構成を示す。図61に示すように、本実施形態に
おいて最適化の対象となるモデルは、エチレンプラント
モデル・ポリエチレンプラントモデル・販売/市場モデ
ルの3つのサブシステムから構成される。
【0403】エチレンプラントモデルは、原料としてナ
フサを購入し、エチレンを生産する。ポリエチレンプラ
ントモデルは、原料としてエチレンを購入し、ポリエチ
レンを生産する。このポリエチレンは、販売/市場モデ
ルに供給される。
【0404】本実施形態では、第1実施形態で説明した
最適化システムをこの化学プラントモデルに適用する。
この最適化システムは、与えられた市場に対しこの化学
プラントモデルの利益を最大にする生産計画を算出す
る。
【0405】[エチレンプラントモデル]エチレンプラ
ントモデルは原料のナフサからエチレンを生産するプラ
ントモデルである。
【0406】エチレンプラントモデルの入力(共有変数
値)はナフサの購入量であり、出力(共有変数値)は、
エチレンの生産量である。このプラントモデルを数式で
表現した例を以下の数39〜数41に示す。
【0407】
【数39】max f(xN) = -3.0xN ここでxNはナフサの購入量である。
【0408】
【数40】s.t. -0.3xN + xE = 0.0 ここで、xEは、エチレンの生産量である。
【0409】
【数41】0.0 ≦ xN ≦ 50.0 数39は、エチレンプラントモデルにおける目的関数で
ある。この目的関数は、ナフサ1トン当たりの購入コス
トが3万円であることを示しており、コストの最小化を
目的する。
【0410】数40は、制約式である。この制約式は、
ナフサ1トン当たりエチレンの生産量が0.3トンであるこ
とを示している。
【0411】数41は、上下限値を示す制約式である。
この制約式は、ナフサの購入可能量が0.0トンから50
トンの範囲であることを示している。
【0412】[ポリエチレンプラントモデル]エチレン
プラントモデルはエチレンを原料としてポリエチレンを
生産するプラントモデルである。
【0413】ポリエチレンプラントモデルの入力(共有
変数値)はエチレンの購入量であり、出力(共有変数
値)は、ポリエチレンの生産量である。このプラントモ
デルを数式で表現した例を以下の数42〜数43に示
す。なお、このポリエチレンモデルには目的関数はな
い。
【0414】
【数42】s.t. xE-1.3xPE = 0.0 ここで、xPEは、ポリエチレンの生産量である。
【0415】
【数43】0.0 ≦ xE ≦ 20.0 ここで、xEは、エチレンの購入量である。
【0416】数42は、制約式である。この制約式は、
ポリエチレン1トンの生産に必要なエチレンは1.03トン
であることを示している。
【0417】数43は、上下限値を示す制約式である。
この制約式は、エチレンの購入可能量が0.0トンから20
トンあることを示している。
【0418】[販売/市場モデル]販売/市場モデルは
ポリエチレンを購入する市場を表現するモデルである。
このモデルの入力(共有変数値)はポリエチレンの生産
量であり、出力はない。図62に、この市場モデルを示
す。
【0419】図62は、ポリエチレンを1トン当たり90
万円で購入する市場(以下市場4と呼ぶ)が4トン分、8
0万円購入する市場が6トン分、70万円購入してくれる市
場が8トン分、60万円購入する市場が6トン分あるとい
う、区分した市場を表現している。通常は高く購入する
市場(図62では市場4)から順に販売する。数44か
ら数49に、この販売/市場モデルの数式による表現を
示す。
【0420】
【数44】max 60.0xPE1 + 70.0xPE2 + 80.0xPE3 + 9
0.0xPE4
【0421】
【数45】s.t. xPE-xPE1-xPE2-xPE3-xPE4 = 0.0
【0422】
【数46】0.0 ≦ xPE1 ≦ 6.0
【0423】
【数47】0.0 ≦ xPE2 ≦ 8.0
【0424】
【数48】0.0 ≦ xPE3 ≦ 6.0
【0425】
【数49】0.0 ≦ xPE4 ≦ 4.0 ここで、xPEは、ポリエチレンの生産量である。また、x
PE1は、市場1へのポリエチレンの販売量である。また、
xPE2は、市場2へのポリエチレンの販売量である。ま
た、xPE3は、市場3へのポリエチレンの販売量である。
また、xPE4は、市場4へのポリエチレンの販売量であ
る。
【0426】数44は、目的関数である。この目的関数
は、ポリエチレン1トン当たりの販売価格は市場1では60
万円、市場2では70万円、市場3では80万円、市場4では9
0万円であることを示し、総売上を最大化することを目
的とする。
【0427】数45から数49は、制約式である。図2
1の制約式は、市場1〜4に販売するポリエチレンの合計
はポリエチレン総生産量であることを示している。
【0428】数46の制約式は、市場1のポリエチレン
の需要は0.0トンから6.0トンであることを示している。
数47の制約式は、市場2のポリエチレンの需要は0.0ト
ンから8.0トンであることを示している。数48の制約
式は、市場3のポリエチレンの需要は0.0トンから6.0ト
ンであることを示している。数49の制約式は、市場4
のポリエチレンの需要は0.0トンから4.0トンであること
を示している。
【0429】<化学プラントの最適生産計画問題の数値
計算結果>本最適化システムによる数値計算結果を図6
3および図64に示す。図63および図64より、ナフ
サを50.0トン購入し、エチレンを15.0トン、ポリエチレ
ンを14.56トン製造すれば、モデル全体の最大の売上げ1
009.4万円が得られるという結果が算出されている。
【0430】ナフサの可能購入量の上限は50.0トンであ
るので、現状の市場においてはナフサを可能な限り購入
してエチレン・ポリエチレンを製造するのが最善策であ
ることが示されている。
【0431】以上述べたように本実施形態の最適化シス
テムは、化学プラントを構成する工場(エチレンプラン
トモデルおよびポリエチレンプラントモデル)および市
場(販売/市場モデル)を各々サブシステムとして含ん
でいる。
【0432】そして、各サブシステムの最適化問題を計
算することで、化学プラント全体の最適化が図ることが
できる。すなわち、化学プラントの全体における売上げ
の最大化を実現する製品の生産量及び販売価格が決定さ
れる。
【0433】このようなモデルでは、物流に関するサブ
システム間のインターフェースが整合されているなら
ば、各工場・材料購入市場・製品販売市場のモデルは各
々個別に設計できる。
【0434】すなわち、サブシステムごとに、異なる専
門家や担当者が独自に設計でき、その他のサブシステム
の問題を同時に考える必要は無い。このため、モデル構
築及び最適化が容易になる。
【0435】《第3実施形態》図65から図67を参照
して本発明の第3実施形態を説明する。上記第2実施形
態では、第1実施形態に示した分散最適化システムを化
学プラントに適用し、化学プラント全体の売上げを最大
にする生産計画を作成した。本実施形態では、さらに、
環境負荷問題を考慮した工場の最適生産計画問題への分
散最適化システムの応用例を示す。
【0436】他の構成および作用については第2実施形
態の場合と同様である。そこで同一の構成要素について
は同一の符号を付してその説明を省略する。また、必要
に応じて図1から図64の図面を参照する。
【0437】<環境負荷モデルの例>例えば、製品の生
産の際に二酸化炭素(CO2)が発生すると仮定する。そ
して、複数の工場からなるプラント全体に対し、発生す
るCO2の量を規制する条例が設定されたとする。このと
き、次のような目的及び制約をもつ環境負荷モデルを考
える。
【0438】[目的]なし [制約] (1) 工場における1単位の製品生産によって発生す
るNOXの量 (2) CO2の総量の制限 この場合には環境モデルの持つ問題は最適化問題ではな
く、充足問題になる。
【0439】<環境負荷を考慮した化学プラントモデル
>今、第2実施形態で示した化学プラント地域に対して
二酸化炭素の発生量を規制する条例が設定されたとする
と、この化学プラントはその規制の範囲内で最適生産を
実行しなければならない。今、この化学プラントが第2
実施形態で求められた最適解で運用されており、行政か
ら二酸化炭素の発生量を20%削減するように指示があっ
たとする。
【0440】ナフサからエチレンを生産する際、二酸化
炭素は材料から発生する分や、燃料の燃焼で発生する分
などがある。これらを全て換算すると、ナフサからエチ
レンを1トン生産する際の二酸化炭素の発生量は0.063ト
ンである。同様にして、エチレンからポリエチレンを1
トン生産する際の二酸化炭素の発生量は0.117トンであ
る。
【0441】第2実施形態で求められた最適解による
と、エチレンの生産量は15.0トン、ポリエチレンの生産
量は14.56トンであるので、この化学プラントにおける
二酸化炭素の総発生量は
【0442】
【数50】15.0(トン)×0.063+14.56(トン)×0.117≒
2.65(トン) である。従って、二酸化炭素の許容発生量は
【0443】
【数51】2.65×(100%−20%) ≒2.12(トン) である。
【0444】<環境負荷モデル>環境負荷モデルはエチ
レン及びポリエチレンの生産に伴う二酸化炭素の発生量
を制限するモデルである。環境負荷モデルを図65に示
す。環境負荷モデルの入力(共有変数)は、エチレンお
よびポリエチレンの生産量であり、出力はない。
【0445】この環境負荷モデルを数式で表現すれば以
下のとおりである。
【0446】
【数52】s.t. -0.063xE - 0.117xPE + xCO2 = 0.0
【0447】
【数53】0.0 ≦ xCO2 ≦ 2.12 ここで、xEは、エチレンの生産量である。また、x
PEは、ポリエチレンの生産量である。また、xCO2は、二
酸化炭素の総発生量である。
【0448】数52は、制約式である。この制約式は、
エチレン1トンの生産に伴う二酸化炭素の発生量は0.063
トン、ポリエチレン1トンの生産に伴う二酸化炭素の発
生量は0.117トンであり、二酸化炭素の総発生量は、そ
の合計であることを示している。
【0449】数53は、上下限値を示す制約式である。
この制約式は、条例により、二酸化炭素の許容発生量は
0.0トンから2.12トンに制限されていることを示してい
る。
【0450】環境負荷を考慮した化学プラントの最適生
産計画問題の数値計算結果を図66および図67に示
す。
【0451】図66および図67に示した計算結果よ
り、ナフサを40.02トン購入し、エチレンを12.01トン、
ポリエチレンを11.66トン製造すれば、二酸化炭素の総
発生量を20%削減してモデル全体の最大利益835.83万円
が得られるという結果が算出されている。
【0452】ここで、第2実施形態の結果と比較する
と、二酸化炭素の総発生量は20%削減されているが、モ
デル全体の売上げは
【0453】
【数54】1.0−835.83/1009.4≒17.2(%) の削減になっている。
【0454】モデル全体を一括して計算する従来の方法
では、二酸化炭素を発生する構成要素を全て修正し、最
適化計算を再度実行しなければならない。第2実施形態
に示したような小さなモデルであれば影響は小さい。し
かし、一般に化学プラントのような大規模生産システム
は複雑且つ膨大な数の構成要素から構成される。このた
め、このような変更作業は非常に大きな負荷となる。
【0455】一方、本実施形態に示した最適化システム
は、サブシステムごとの自律分散最適化計算により、シ
ステム全体の最適化を達成するという特徴を有してい
る。そのため、元の第2実施形態に示したモデルに対し
て単に環境負荷モデルを追加し、共有変数の定義をすれ
ばよい。
【0456】このように、本実施形態に示した最適化シ
ステムは、モデルの変更に対して柔軟に対応できので、
特にシステムの設計段階やシステムの計画段階での効果
が大きい。
【0457】以上述べたように、本計算法は、モデルの
構築及びネットワーク全体の最適化を容易に実現できる
という特徴を有する。このため、上述のような複数の工
場からなるプラントにおける最適生産計画に環境負荷問
題のような異種分野のモデルを追加しても最適化システ
ムを容易に構築することができる。
【0458】《第4実施形態》図68から図73に基づ
き、本発明の第4実施形態を説明する。図68は、本実
施形態におけるドメインテーブルの設定例であり、図6
9は、本実施形態における最適化計算の手順を示すフロ
ーチャートであり、図70は、本実施形態におけるサブ
問題の例であり、図71は、図70のサブ問題における
変数1番に対するドメインテーブルの例であり、図72
は、図71のサブ問題における変数3番に対するドメイ
ンテーブルの例であり、図73は、本実施形態における
サブ問題から仮想最適化問題を導出する例である。
【0459】第1実施形態で述べた分散最大値原理に基
づく自律分散最適化計算では、共有変数として授受され
る受信データを用いてサブ問題を修正した仮想問題を生
成した。そして、第1実施形態では、サブ問題の最適化
計算、最適化価格の計算、およびデータのサブシステム
間での授受をシステム全体が収斂するまで繰り返した。
この繰り返し計算において、各サブシステムでは、共有
変数により分割されたドメインの分割領域が順次探索領
域として選択された。
【0460】本実施形態では、このような分割領域を逐
次探索する代わりに、すべての分割領域において一括し
て最適化計算を実行する自律分散最適化システムについ
て説明する。他の構成および作用は第1実施形態の場合
と同様である。そこで、同一の構成要素については、同
一の符号を付してその説明を省略する。また、必要に応
じて図1から図54の図面を参照する。
【0461】第1実施形態のS−2−1「最適化計算準
備」において設定された外部最適化価格が以下の条件を
満たす場合においては、ドメインの逐次更新をすること
なく、最適化計算を一括して実行することが可能であ
る。 (条件)「最適化問題が最大化問題且つ各ドメインの外
部最適化価格が単調減少する。」または、「最適化問題
が最小化問題且つ各ドメインの外部最適化価格が単調増
加する。」例えば、図25に示したS−2−1最適化計
算準備のステップS−2−1−4において、変数j番のドメ
インテーブルが図68のように設定されているとする。
この時、最適化問題が最大化問題であり、且つ ^λ0 j > ^λ1 j >,..., > ^λNc-1 j >^λNc j
満足していれば、ドメインを逐次更新することなく一括
して計算することができる(例えば、「線形計画法とそ
の周辺」ダンツィーク著、小山昭雄訳、HBJ出版局(1983
年)を参照)。
【0462】この条件が満足される場合においては、第
1実施形態に示したS−2「最適化計算」の替わりに図6
9(S−2A最適化計算(一括計算))に示す演算手順で
最適化計算をすることが可能になる。
【0463】ここで、図69中のS−2−1、S−2−3、S
−2−4、およびS−2−8は、図24の場合と同じ演算で
ある。そこで、以下、図69中のS−2A−2「最適化問題
の修正」について説明する。
【0464】S−2A−2「最適化問題の修正」 Step.1(計算開始点の修正) 最適化計算統制部は、最適化問題格納部のサブ問題の計
算開始点を「最適化計算開始点テーブル」の「変数値」
に修正する。
【0465】Step.2(変数の追加) 図25のS−2−1−4(変数j番のドメインテーブルの設
定)において、分割されたドメイン数だけ変数を追加定
義する。この場合、変数j番の分割されたドメイン数をN
cj +1個とすると、追加変数は1共有変数当たりXk j(k
=0, Ncj)となる。
【0466】Step.3(目的関数の設定) Step.2で追加された変数及び分割されたドメインに割り
付けられていた外部最適化価格を用いて次の数55の仮
想目的関数を設定する。
【0467】
【数55】 Step.4(制約条件の設定) Step.2における変数の追加に伴い、以下の数56の制約
条件を設定する。
【0468】
【数56】 Step.5(仮想最適化問題の設定) サブシステム固有の最適化問題の目的関数をStep.3で求
めた仮想目的関数とし、さらにStep.4で求めた制約条件
を追加することで仮想最適化問題として設定する。
【0469】[最適化問題の修正例]今、サブ問題、つ
まりサブシステム固有の最適化問題が図70の通りであ
るとする。
【0470】また、変数1番および3番が共有変数であ
り、共有変数のドメインテーブルを参照した結果、図7
1および図72の通りであったとする。この場合、最適
化問題が最大化問題であり、かつ外部最適化価格が単調
に減少するという特徴があるため、一括して最適化計算
を実行できる。
【0471】図71のドメインテーブルより、変数1番
のドメイン数は3個である。また図72のドメインテー
ブルより、変数3番のドメイン数は2個である。そこで、
上記Step.2により、以下のように新しい変数を設定す
る。 x1(変数1番)のドメイン0番→X0 11(変数1番)のドメイン1番→X1 11(変数1番)のドメイン2番→X2 13(変数3番)のドメイン0番→X0 33(変数3番)のドメイン1番→X1 3 (ここで、上付きインデックスはドメイン番号、下付き
インデックスは変数番号を示している。) Step.3により、各ドメインの外部最適化価格を用いて以
下のように仮想目的関数を設定する。
【0472】
【数57】 Step.4により、追加する制約条件を設定する。ドメイン
テーブルより、 変数1番のドメイン0番は0.0〜7.3、 変数1番のドメイン1番は7.3〜13.5、 変数1番のドメイン2番は13.5〜20.0、 変数3番のドメイン0番は0.0〜5.3、 変数3番のドメイン1番は5.3〜8.0、 であるので、 X0 1(変数1番のドメイン0番の変数)の幅はw0 1 = 7.3-
0.0 = 7.3、 X1 1(変数1番のドメイン1番の変数)の幅はw1 1 = 13.5
-7.3 = 6.2、 X2 1(変数1番のドメイン2番の変数)の幅はw2 1 = 20.0
-13.5 = 6.5、 X0 3(変数3番のドメイン0番の変数)の幅はw0 3 = 5.3-
0.0 = 5.3、 X1 3(変数3番のドメイン1番の変数)の幅はw1 3 = 8.0-
5.3 = 2.7、 と計算される。従って、追加する制約条件を下式のよう
に設定する。
【0473】x1= X0 1 + X1 1 + X2 1 x3= X0 3 + X1 3 0.0 < X0 1 < 7.3 0.0 < X1 1 < 6.2 0.0 < X2 1 < 6.5 0.0 < X0 3 < 5.3 0.0 < X1 3 < 2.7 以上の手続きにより、サブ問題は図73のように修正さ
れる。以上述べたように、本実施形態の分散最適化シス
テムによれば、各サブシステムにおいて、逐次計算によ
ることなく、数55に示した仮想目的関数と数56に示
した制約条件により、複数の分割領域に対して一括して
最適解を求めることができる。
【0474】《第5実施形態》図74から図77に基づ
き、本発明の第5実施形態を説明する。図74は、本実
施形態における変数j番に対する最適化価格計算手順の
フローチャートであり、図75は、本実施形態の最適化
問題を示す図であり、図76は、図75の仮想最適化問
題から得られるシンプレックスタブローの例であり、図
77は、図76のシンプレックスタブローを最適化した
後に得られるシンプレックスタブローである。
【0475】第1実施形態で述べた分散最大値原理に基
づく自律分散最適化計算では、各サブシステムは、図5
3に示した価格の定義式(最大化問題に対する「最適解
近傍点における共有変数に対する条件付き最大値の変化
率」、最小化問題に対する「最適解近傍点における共有
変数に対する条件付き最小値の変化率」)に基づき最適
化価格を算出した。また、この変化率は、感度分析によ
り求めた。
【0476】本実施形態では、このような方法に代え
て、線形計画法の解法においてよく知られたシンプレッ
クスタブローを用いて最適化価格を算出する処理を説明
する。
【0477】他の構成および作用は第1実施形態の場合
と同様である。そこで、同一の構成要素については、同
一の符号を付してその説明を省略する。また、必要に応
じて図1から図54の図面を参照する。
【0478】なお、線形計画法およびシンプレックスタ
ブローについては、以下の公知文献に詳述されている。 文献1:「線形計画法とその周辺」、ダンツィーク著、
小山昭雄訳、HBJ出版局(1983年) 文献2:「線形システムの最適化」、坂和正敏著、森北
出版(1984年) 文献3:「線形計画法」、今野浩著、日科技連(1987年) 文献4:「最適化の手法」、茨木俊秀、福島雅夫著、共
立出版(1993年) S−3−2(3)「変数 j 番に対する最適化価格計算」(タ
ブローの利用) 上述のように最適化価格は、「最適解近傍点における共
有変数に対する条件付き最大値の変化率」を用いて計算
する。さらに、最適化問題が線形計画法により最適化計
算される場合は、その算法としてシンプレックスタブロ
ーが用いられる場合がある。線形計画問題における最適
化価格は、このシンプレックスタブローより容易に算出
することができる。
【0479】線形計画問題の各不等式制約条件式に変数
を導入することで、等式の制約条件式に変換できる。例
えば、線形計画問題を 目的関数cTx => 最大、 制約条件Ax ≦ b, x ≧ 0、 ここで、cT:目的関数の係数ベクトル、A:制約式の係
数行列、b:定数ベクトル、x:変数ベクトル、と表
す。
【0480】この制約条件は、スラック変数ベクトルx
sを用いて、 [[A][I]][[x][xs]]T =b, x ≧ 0, xs ≧ 0 と表現できる。このようにして、スラック変数を導入し
て記述した線形計画問題の目的関数と制約条件の係数行
列をシンプレックスタブロー(以下単にタブロー)とい
う。
【0481】最適化計算終了時のタブローを以下の説明
のため、基底変数と非基底変数に分類して整理する。例
えば、変数x1, x3, x5が基底変数、変数x2, x4, x6が非
基底変数であるならば、各々の添字を、基底変数を示す
添字B及び非基底変数を示す添字Nを用いて以下のように
書き直す。 x1 → xB1; x2 → xN1; x3 → xB3; x4 → xN2; x5 → xB5; x6 → xN3; また、同様にしてタブローの目的関数係数及び制約式係
数の添字も書き直し、順番を整理すると以下の形式が得
られる。
【0482】
【数58】 0 0 . . . 0 ~cN1 ... ~cNn-m ←目的関数係数(相対係数) xB1 +~a1N1xN1 +... + ~a1Nn-mxNn-m =~b1 xB2 +~a2N1xN1 +... + ~a2Nn-mxNn-m =~b2 . . . xBi + ~aiN1xN1 +... + ~aiNn-mxNn-m =~bi ←制約式(相対係数 ) . . . xBm + ~amN1xN1 +... + ~amNn-mxNn-m =~bm xB1〜xBmは基底変数、xN1〜xNn-mは非基底変数である。
また、nは変数の個数、mは制約式の個数である。シンプ
レックスタブロー、基底変数、非基底変数等は、線形計
画法で広く知られた概念である。これらについては、上
述の文献1〜4に解説されている。ここで、変数j番(x
j)が基底変数であり、上記形式上における添字番号がB
iである場合、つまりxj=xBjであると仮定して最適化価
格の計算について説明する。
【0483】ここで、基底変数である変数j番(xj)の
最適化価格の計算について説明する。上記タブローよ
り、xj(xBj)を基底とする制約式i番は
【0484】
【数59】 xBi + ~aiN1xN1 + + ~aiNn-mxNn-m =~bi であり、最適解を(x*1, x*2,..., X*n)とすると、こ
れを代入しても当然等式は成立する。
【0485】最適化価格は、仮想最適化問題における、
共有変数の変化に対する条件付最大値の変化率より外部
最適化価格を減算した値であるので、共有変数の変化に
伴う条件付最大値の変化量を求める必要がある。
【0486】今、xj(xBj)が共有変数であると仮定して
δ(>0)だけ増加させると、数59を成立させるために
~aiN1x*N1 ~aiNn-mx*Nn-mのいずれか1つ項の値をδ
分だけ減少させる必要が生じる。この時の各非基底変数
の変化量をrNr(r =1,...n-m)とすると、
【0487】
【数60】~ai Nr x* Nr - ~aiNr (x*Nr + rNr) = δ
(r=1 ∨...∨ n-m) であるので、
【0488】
【数61】r Nr = -δ/~aiNr となる。従って、非基底変数xNrによる、基底変数xj(x
Bj)の変化量δの吸収に伴う目的関数値の変化量は~cNrr
Nrである。また、数60より、~aiNr= 0の場合は、非基
底変数xNrによる基底変数xj(xBj)の変化量δの吸収は明
らかに不可能であるので、非基底変数の選択条件
【0489】
【数62】~aiNr ≠0 が導出される。
【0490】一方、現在最適解が得られている状態にあ
るので、変数の変動による目的関数値の増加はありえな
い。従って、
【0491】
【数63】~ciNrriNr ≦0 である。したがって、~ciNrriNr > 0とするような非基
底変数によって基底変数xj(xBj)の変化量δを吸収させ
ることは、制約条件の逸脱を意味する。
【0492】従って、数61、数63及びδ>0より、
【0493】
【数64】~cNr/~aiNr ≧0 という、基底変数xj(xBj)の変化量δを吸収させる非基
底変数の選択条件が導出される。
【0494】最適化価格は条件付最大値の変化率の算出
を必要とするため、非基底変数の選択条件(数62、数
64)を満足し、かつ目的関数の減少量|~cNrrNr|を最
小にするような非基底変数を選択することが必要であ
る。ここで~cNrrNr≦0であるので、目的関数の減少量|~
cNrrNr|を最小にすることは、最大の~cNrrNrを選択する
ことと同等である。
【0495】数5、数7及びδ>0より、 ~cNrrNr = -~cNr/~aiNr であるので、基底変数xj(xBj)が増加する際の条件付最
大値の変化率は
【0496】
【数65】max(-~cNr/~aiNr | ~aiNr≠0 ∧ ~cNr/~a
iNr≧0 ) で与えられる。ここでmax(value|conditon)は、conditi
onで指定される条件下でのvalueの最大値を意味する。
【0497】最適化価格=(条件付最大値の変化率)−
(外部最適化価格) であるので、共有変数が増加する場合の最適化価格
(+)は数65を満足する~cNr、~aiNrによって下式の
ように計算される。
【0498】λ+ j =-~cNr/~aiNr - ^λj また、δ<0を仮定すれば最適化価格(−)についても同
様に算出できる。以下に示すアルゴリズムの説明では、
上記説明のような基底変数・非基底変数に分類した添字
表記は使用しない。ただし、下記アルゴリズムを実行す
るプログラムでは、基底変数か否かを不図示のフラグに
より識別する。
【0499】図74にシンプレックスタブローを利用す
る場合の最適化価格計算のフローチャートを示す。この
処理では、最適化価格計算統制部(C−5)は、まず、
タブローを照会し、変数j番が基底変数か否かを判定す
る(S−3−2−1)。
【0500】変数j番が基底変数の場合、最適化価格計
算統制部(C−5)は、基底変数用の最適化価格の計算
を実行する(S−3―2−2)。その後、最適化価格計
算統制部(C−5)は、最適化価格計算を終了する。
【0501】一方、変数j番が基底変数でない場合、最
適化価格計算統制部(C−5)は、非基底変数用最適化
価格の計算を実行する(S−3―2−3)。その後、最
適化価格計算統制部(C−5)は、最適化価格計算を終
了する。以下、基底変数用の最適化価格の計算を実行す
る(S−3―2−2)および非基底変数用最適化価格の
計算の詳細を説明する。以下は、最適化問題が最大化問
題である場合について説明するが、最小化問題の場合、
目的関数全体にマイナス(負号)を付加することによ
り、最大化問題に変換できる。
【0502】S−3−2−2「基底変数用最適化価格の計
算」 S−3−2−1の判定において変数j番について照会した結
果、基底変数であった場合、最適化価格は以下の手順に
より算出される。
【0503】Step.1 最適化計算終了時の仮想目的関
数の係数ベクトル(~c1,~c2,...cNv(Nvは変数の個
数))をタブローより参照する。
【0504】Step.2 基底変数である変数j番に対応
する制約式i番を選択する。
【0505】Step.3 最適化計算終了時の制約式i番
の係数ベクトル(~ai1,~ai2,... aNv)をタブローより
参照する。
【0506】Step.4 ~aik≠0かつ~ck/~aik≧0を満た
す、最大の-~ck/~aikを与える非基底変数の変数番号k
を選択する。
【0507】Step.5 Step.4の手順で該当する変数番
号kがなければ最適化価格(+)の値はない。また、そ
のような変数番号kが存在すれば、変数j番に対応する
外部最適化価格(^λj)を参照し、下式に従い、変数j
番に対応する最適化価格(+)を計算する。
【0508】λ+ j =-~ck/~aik - ^λj Step.6 ~aik≠0かつ~ck/~aik≦0を満たす、最大の~
ck/~aikを与える非基底変数の変数番号kを選択する。
【0509】Step.7 Step.6の手順で該当する変数番
号kがなければ最適化価格(−)の値はない。また、そ
のような変数j番に対応する外部最適化価格(^λj)を
参照し、下式に従い、変数j番に対応する最適化価格
(−)を計算する。
【0510】λ- j = -~ck/~aik - ^λj S−3−2−3「非基底変数用最適化価格の計算」 S−3−2−1において変数j番について照会した結果、非
基底変数であった場合、最適化価格は以下の手順により
算出される。
【0511】S tep.1 変数j番に対応する仮想目的関
数の係数(~cj)をタブローより参照する。
【0512】Step.2.1 変数j番が下限値に到達してい
る場合 λ+ j = ~cj - ^λj λ- jの値無し Step.2.2 変数j番が上限値に到達している場合 λ+ jの値無し λ- j = ~cj - ^λj [変数 j 番に対する最適化価格計算(シンプレックス
タブローの利用)の計算例]以下にシンプレックスタブ
ローから最適化価格を算出する例を示す。今、サブシス
テム固有の問題が図75上部であると仮定する。
【0513】また、変数2番・3番が共有変数であり、x2
およびx3に対応する外部最適化価格及びその有効範囲が
図75の中段の通りであると仮定する。この時、仮想最
適化問題は図75下部ように設定されるこの仮想最適化
問題をシンプレックスタブロー上で表現すると図76の
とおりである。ここで、x4〜x6はスラック変数である。
また、この状態において (x1 x2 x3 x4 x5 x6)=(0 0 0 4 5 7) 目的関数値=0 である。
【0514】最適化計算後は上記タブローは図77の通
りになる。この状態において (x1 x2 x3 x4 x5 x6)=(2.5 1.5 0 0 0 0.5) 目的関数値=10.5である。 まず、上記タブローより、x2に対応する最適化価格を算
出する。上記タブローより、最適化計算後の目的関数の
係数ベクトルは (~c1 ~c2 ~c3 ~c4 ~c5 ~c6)=(0 0 -1 -2 -
0.5 0) である。また、共有変数x2は基底変数である。これに対
応する制約式は1番(タブローの2行目)であり、その係
数ベクトルは (~a11 ~a12 ~a13 ~a14 ~a15 ~a16)=(0 1 1 1
-0.5 0) である。非基底変数はx3,x4,x5であるので、これより、 ~c3/~a13 = -1 ~c4/~a14 = -2 ~c5/~a15 = 1 であり、~aik≠0かつ~ck/~aik≧0を満たす、最大の-~c
k/~aikを与える非基底変数の変数番号kは、 k = 5 従って、x2に対応する最適化価格(+)は λ+ 2 = -~c5/~a15 - ^λ2 = 2 また、~aik≠0かつ~ck/~aik≦0 を満たす、最大の~ck
/~aikを与える非基底変数の変数番号kは、 k = 3 従って、x2に対応する最適化価格(−)は λ- 2 = -~c3/~a13 - ^λ2 = 0 となる。
【0515】次に、x3に対応する最適化価格を算出す
る。x3は非基底変数であり、かつ下限値(0)に到達し
ているため、 λ+ 3 = ~c3 - ^λ3 = -2 λ- 3は無し となる。
【0516】以上述べたように、本実施形態の分散最適
化システムでは、シンプレックスタブローを利用し、簡
易な数値計算で最適化価格を算出することができる。
【0517】《第6実施形態》本実施形態では、第1実
施形態で説明した分散最適化システムを大規模プラント
の設計へ適用する適用例を示す。本実施形態では、適用
される問題が異なるのみであり、システム構成や処理手
順は、第1実施形態と同様であるので、その説明を省略
する。
【0518】大規模プラントの設計のように、最適化の
対象範囲が大きく非線形性の強い場合は、一度に全体の
プロセスを最適化計算する、又は最適計画を作るのは困
難である。しかしながら、大きなシステムを幾つかのサ
ブシステムにより構成された複合システムと見なせる場
合が多い。そのような場合、本計算手法を適用すること
は容易である。
【0519】図78に複合システムの分割例を示す。
【0520】本例では、オレフィン・プラント(System
-2)の分解炉から出た分解ガスが、クエンチ塔(T−
2)において循環油(Q.Oil)により冷却される。その
結果、昇温した循環油は熱媒として利用され冷却され
る。
【0521】循環油で冷却された分解ガスは更にクエン
チ塔で循環水と接触し熱交換して冷却される。循環水は
分解ガスと熱交換して暖められ温水になり比較的低温の
熱媒として利用出来る。図78のプラントの場合、温水
は敷地の外にある樹脂プラント(System-1)まで配管で
輸送され、蒸留塔(T−1)の熱媒として利用されてい
る。
【0522】図78では簡単化されているが、実際のプ
ロセスは複雑である。そのため、オレフィン・プラント
の熱循環水系のように、E−3に相当する部分は、単一
の熱交換器でなく多数の熱交換器が複雑に絡み合って構
成され、種々の用途に使用されている。
【0523】また、E−3の循環水の入出温度とT−1
の塔底圧力・温度等の多数のエンジニアリング設計条件
が存在する。そして、一つの条件の変更が他の広い範囲
の条件に影響を及ぼす。
【0524】そのため、本例のようにオレフィン・プラ
ントや樹脂プラントのような大規模プラントが組み合わ
せられた場合、全体的の利益が最大になるようにプロセ
ス条件を決定することは困難である。
【0525】しかし、図78のSystem-1では、熱媒と
して利用する温水の最適化価格が分かりさえすれば、そ
の最適設計の難度が軽減される。すなわち、適当な大き
さのサブシステムが対象であると、設備投資に伴う償却
費・金利や保守費用等の固定費・冷却水や熱媒等の用役
変動費の総和が最小になるような設計点を比較的容易に
求める事ができる(図79参照)。
【0526】すなわち、Sysyem-1の最適設計のために
はSysyem-2から供給される熱水の最適化価格がわかれ
ばよい。これと同様にSysyem-1で熱媒として使用され
る熱水の最適化価格がわかれば、Sysyem-2の最適設計
が可能である。そのため、Sysyem-1とSysyem-2との間
における最適化価格の相互授受により、2つのプラント
の利益が最大になるような最適設計が出来る。
【0527】《第7実施形態》本実施形態では、第1実
施形態で説明した分散最適化システムを段階的設計や意
思決定へ適用する適用例を示す。段階的設計や意思決定
とは、例えば、プロセス設計−基本設計−詳細設計と言
うように、段階的に詳細化および具体化して設計や意思
決定が進められる場合である。本実施形態では、適用さ
れる問題が異なるのみであり、システム構成や処理手順
は、第1実施形態と同様であるので、その説明を省略す
る。
【0528】すなわち、上記各段階での設計(意思決
定)過程を一つのサブシステムと見立て、本計算手法を
適用することで、コンカレント・エンジニアリングを可
能にする。つまり、詳細設計段階の情報を利用してより
合理的なプロセス設計や基本設計を行う。逆に、プロセ
ス設計段階の情報を利用してより、顧客サイドに立った
基本設計や詳細設計が可能になる。
【0529】以下に、化学プロセス・プラントのプロセ
ス設計・機能設計(機器設計)・詳細設計を行う場合の例
を示す。
【0530】通常、プロセス設計では、プロセス・シミ
ュレータを用いて設計を行い、物質・熱収支を計算す
る。そこで決まった流量や温度,圧力などのプロセス条
件から、機能設計で配管のサイズやポンプの吐出量や吐
出圧力など配管や機器の仕様が決められる。ついで、配
管の物理的な配置、つまり配管ルートなど物理的な詳細
設計が行われる(図80、図81参照)。
【0531】そこで本計算手法を適用する。プロセス設
計では、機能設計段階で計算される流量や、圧力差の最
適化価格をベースにプロセス全体の利益が最大になるよ
うに物質・熱収支を最適化し、流量(Q)や圧力差(ΔP)
の最適値を計算し、プロセス側での最適化価格を計算す
る(図82参照)。
【0532】基本設計段階では、プロセス設計段階に得
られた流量と圧力差の最適化価格と、詳細設計段階で得
られる配管長の最適化価格をベースに最適配管径(D)を
計算する。
【0533】詳細設計では、具体的な配管ルートを設
計、配管長(L)を算出し、配管長の最適化価格(1単位
コスト)を計算する(図82参照)。
【0534】計算された最適化価格を各設計サブシステ
ム間で相互授受することにより、全体の最適設計が可能
になる。
【0535】また、以上述べたように、本実施形態の分
散最適化システムは、連続的な数量的最適化の他、製造
方法など方式やプロセスの選択等、離散的な変数・要素
を持つ最適化問題にも適用可能である。
【0536】《第8実施形態》本実施形態では、第1実
施形態で説明した分散最適化システムを経済、社会的な
システムの設計に適用する例を説明する。したがって、
本実施形態では、適用される問題が異なるのみであり、
システム構成や処理手順は、第1実施形態と同様である
ので、その説明を省略する。
【0537】長期に渡って社会に提供される製品を持続
して開発するには、製品のライフ・サイクルを通じての
環境負荷を考慮し、資源の消費を削減するLCE(Life Cyc
le Engineering)を実現する必要がある。また、環境負
荷により発生した社会的コストをどう分担するかなど、
経済、社会的な解決を図る必要がある。
【0538】リソース(資源)の採掘、それを原料にし
た製品の製造・加工、製品の利用・消費、製品を廃棄物
として分別・回収、廃棄物のリサイクル・焼却など、マ
テリアルがサイクルし最終的には燃焼、埋め立てなどで
社会から消失する。
【0539】その過程で、人間の必要とする様々な機能
やサービスが発生し、人間に提供されている。しかし、
同時に、二酸化炭素やダイオキシンなどの環境負荷等の
本質的コストが発生している。
【0540】また、単一の機能やサービスを提供する製
品であっても、その製造技術やプロセス・ルートは多岐
に亘り、全体として複雑なモデルになる(図83参
照)。
【0541】このような問題に対しては、マテリアル・
フローのサイクルだけを考えていただけでは不十分であ
る。すなわち、人間生活に豊かさを与える機能・サービ
スを最大にし、環境負荷の発生や資源の消費のような本
質的コストを最小にすると言う視点が不可欠である。つ
まり、地球的生産性(グローバル・プロダクティビテ
ィ)を最大化する、という視点が必要である。
【0542】しかし、地球的生産性を取り入れたライフ
・サイクル評価(LCA)や、効果的なライル・サイクル・
エンジニアリング(LCE)を実現するには、従来の計算
技術では困難を極める。国家・地域・産業・企業が関連
した、地球規模且つ複雑に絡み合っている事象を取り扱
う必要があるからである。このような大規模複雑な問題
に対し、本計算手法は有効な解析手段・最適化手段とし
て適用できる。
【0543】図84は、環境問題への本自律分散最適化
システムの応用を示すシステム構成図である。以下に人
間の必要とする要求機能を満たしながら、資源の消費、
環境負荷の発生を最小化する本システムの計算手法の概
念を示す。以下、この概念にしたがい、本システムの計
算手法の手順を示す。
【0544】Step.1(機能・サービスの定義) 人間に必要な機能・サービス、例えば住居・食料・教育
・医療・福利・娯楽などの機能・サービスの量の年間必
要量を所与として定義する。
【0545】Step.2(物理モデルの作成) Step.1で定義した機能・サービス毎に、これを出力とし
て実現するために必要な物理的な製品・原材料・エネル
ギー・労働力等の物理量を入力とする物理モデルを作成
する(単位プロセス・モデル)。
【0546】Step.3(プロセス構成モデルの作成) 製品製造・使用・輸送などの単位プロセス・モデルの入
出力を結合(接続)して産業セクターや廃棄物回収・処
理を行う地域単位のプロセス・モデルを構成する。また
は、そのような地域単位のプロセス・モデルを更に構成
要素として結合した全体的な統合プロセス・モデルを構
成する。
【0547】Step.4(プロセス・モデルの最適化計算) Step.1で定義した機能・サービスを所与とし、Step.2
・Step.3で定義したモデルに対して、二酸化炭素等の環
境負荷量を系全体として最小化するため、本システムを
適用する。この際、共有変数に対する最適化価格が過去
の事例として蓄積されていれば、計算の初期値として利
用することが可能である。
【0548】Step.5 詳細LCE最適化設計 Step.4における、マクロなプロセス・モデルで計算した
最適化価格をベースに、個々の構成要素である単位プロ
セスの詳細プロセス・シミュレーション・モデルを利用
して詳細設計の最適化を行う。逆に,詳細シミュレーシ
ョン・モデルを利用して計算した最適化価格を利用し
て、マクロなプロセス・モデルの全体最適化に反映する
ことも可能である。
【0549】以上述べたように、本実施形態の分散最適
化システムは、サブシステム間で共通する変数を共有変
数として定義することで、企業利益と言うような単一領
域の問題だけでなく、環境問題や交通問題も含めた社会
便益の最適化のような、複数の領域に関係する複雑な問
題にも対応できる。そして、本分散最適化システムは、
社会便益を最大にするように全体問題を最適化すること
が出来る。
【0550】
【発明の効果】以上説明したように、本発明によれば、
分散最大値原理に基づく実用的な最適化システムがコン
ピュータ上に実現される。また、これにより、複雑で大
規模な問題の解を簡単化された小規模の問題の集合によ
り探索することができる。
【図面の簡単な説明】
【図1】 自律分散最適化システムのモデル例
【図2】 ネットワークの概念図
【図3】 サブシステムの基本動作を示す図
【図4】 サブシステムの構成要素の主要な機能を示す
【図5】 サブシステムの内部構成を示す図
【図6】 S−1「初期設定」のフローチャート
【図7】 接続情報テーブルのデータ構造を示す図
【図8】 ネットワークにおける変数の共有関係の設定
【図9】 サブシステム1における接続情報テーブルの
【図10】サブシステム2における接続情報テーブルの
【図11】サブシステム3における接続情報テーブルの
【図12】変数情報テーブルのデータ構造を示す図
【図13】ネットワークにおける変数の共有関係の設定
【図14】サブシステム1における変数情報テーブルの
設定例
【図15】サブシステム2における変数情報テーブルの
設定例
【図16】サブシステム3における変数情報テーブルの
設定例
【図17】受信データテーブルの構造を示す図
【図18】計算結果テーブルの構造を示す図
【図19】共有変数の上下限値の設定例
【図20】受信データテーブルの設定例
【図21】計算結果テーブルの設定例
【図22】受信データテーブルの設定例
【図23】計算結果テーブルの設定例
【図24】最適化計算のフローチャート
【図25】最適化計算準備のフローチャート
【図26】最適化計算開始点テーブルのデータ構造を示
す図
【図27】問題修正テーブルのデータ構造を示す
【図28】ドメインテーブルのデータ構造
【図29】ドメインテーブルへの受信データの割り付け
【図30】ドメインテーブルへの外部最適化価格の割り
付けを示す図
【図31】外部最適化価格定義および次回探索ドメイン
の割り付けを示す図
【図32】ドメインテーブルの設定例
【図33】ドメインテーブルの設定例
【図34】定数化処理における最適化計算開始点テーブ
ルの設定例
【図35】定数化処理における問題修正テーブルの設定
【図36】前回計算における最適解の最適化計算開始点
テーブルへの設定例
【図37】最適化問題の修正処理のフローチャート
【図38】最適化計算開始点テーブルの設定例
【図39】ドメインテーブルの設定例
【図40】最適化計算開始点テーブルの設定例
【図41】ドメインテーブルの設定例
【図42】問題修正テーブルの設定例
【図43】仮想目的関数の例を示す図
【図44】最適化計算開始点テーブルの設定例
【図45】問題修正テーブルの設定例
【図46】サブ問題の例
【図47】修正されたサブ問題(仮想問題)の例
【図48】追探索処理を示す図
【図49】最適化価格計算のフローチャート
【図50】変数 j 番に対する最適化価格計算処理を示
すフローチャート
【図51】修正前の仮想問題を示す図
【図52】変数jに対する変移最適解を求めるための修
正仮想問題を示す図
【図53】価格の定義を示す図
【図54】接続先識別番号と計算機のアドレスとの対応
表の例
【図55】制御パラメータの指定がない場合の追探索判
定処理
【図56】制御パラメータの指定がある場合の追探索判
定処理
【図57】制御パラメータの指定があり、最適化計算前
の点がドメインの境界上である場合の追探索判定処理
(1)
【図58】制御パラメータの指定があり、最適化計算前
の点がドメインの境界上である場合の追探索判定処理
(2)
【図59】工場の入出力関係を示す図
【図60】工場ネットワークモデルを示す図
【図61】化学プラントモデルを示す図
【図62】販売市場/モデルを示す図
【図63】第2実施形態における最適生産計画の数値計
算結果
【図64】第2実施形態における最適生産計画の数値計
算結果
【図65】環境負荷を考慮した化学プラントモデルを示
す図
【図66】第3実施形態における最適生産計画の数値計
算結果
【図67】第3実施形態における最適生産計画の数値計
算結果
【図68】第4実施形態におけるドメインテーブルの設
定例
【図69】第4実施形態における最適化計算の手順を示
すフローチャート
【図70】第4実施形態におけるサブ問題の例
【図71】変数1番に対するドメインテーブルの例
【図72】変数3番に対するドメインテーブルの例
【図73】サブ問題から仮想最適化問題を導出する例
【図74】第5実施形態における変数j番に対する最適
化価格計算手順のフローチャート
【図75】第5実施形態の最適化問題を示す図
【図76】最適化前のシンプレックスタブローの例
【図77】最適化後のシンプレックスタブローの例
【図78】複合システムの分割例
【図79】簡単な最適化例
【図80】段階的設計過程
【図81】設計の各段階における設計内容
【図82】設計段階における共有変数・最適化価格の定
【図83】プロダクト・ライフ・サイクル・モデル
【図84】環境問題への応用を示す図
【符号の説明】
C−1 サブシステム統制部 C−2 初期設定部 C−3 データ操作部 C−4 最適化計算統制部 C−5 最適化価格計算統制部 C−6 データ送受信部 C−7 収斂判定部 C−8 データ格納部 C−9 最適化ロジック部 C−10 サブ問題格納部

Claims (61)

    【特許請求の範囲】
  1. 【請求項1】 演算部、記憶部、及び通信部を有する、
    そのような複数個のサブシステムと、前記サブシステム
    を接続するネットワークとを備えたシステムに適用され
    る最適化計算方法であり、 最適化すべき問題の制約条件および目的が数式化された
    形態1の最適化問題を前記記憶部に設定するステップ
    と、 前記サブシステムの演算部及び通信部を繰り返し動作さ
    せるステップとを有し、前記システム全体の利益の最大
    化またはコストの最小化の目的を実現することを特徴と
    する最適化計算方法。
  2. 【請求項2】 前記システム全体の利益の最大化または
    コストの最小化は、分散最大値原理を応用して実現され
    る請求項1記載の最適化計算方法。
  3. 【請求項3】 前記繰り返し動作させるステップは、各
    サブシステムを管理する管理ステップを必要とせず、前
    記各サブシステムを非同期的に動作させることで、前記
    システム全体の利益の最大化またはコストの最小化の目
    的を実現することを特徴とする請求項1または2記載の
    最適化計算方法。
  4. 【請求項4】 前記形態1の最適化問題は内部変数及び
    共有変数を含み、前記内部変数は各サブシステムが保有
    する形態1の最適化問題固有の変数であり、前記共有変
    数は各サブシステムが保有する形態1の最適化問題の間
    で関連する変数であり、 前記繰り返し動作させるステップは、 演算の為の初期設定を実行するステップと、 他の関連するサブシステムとデータの通信をするステッ
    プと、 数値演算を実行するステップと、 演算の終了を判定するステップと、を自律的に繰り返し
    実行する請求項1乃至3のいずれか1項に記載の最適化
    計算方法。
  5. 【請求項5】 前記形態1の最適化問題は内部変数及び
    共有変数を含み、 前記内部変数は各サブシステムが保有する形態1の最適
    化問題固有の変数であり、 前記共有変数は各サブシステムが保有する形態1の最適
    化問題の間で関連する変数であり、 計算の為の初期設定を実行する第1のステップと、 他の関連するサブシステムからデータを受信する第2の
    ステップと、 前記形態1の最適化問題から形態2の最適化問題を生成
    するために、受信したデータを保存する第3のステップ
    と、 形態2の最適化問題を生成して最適化計算を実行する第
    4のステップと、 最適化価格を計算する第5のステップと、 他の関連するサブシステムにデータを送信する第6のス
    テップと、 ネットワークの収斂状況を確認する第7のステップと、
    を有し、 前記第2のステップ及び第6のステップで送受信される
    データは、 前記第4のステップにおいて算出された最適解の共有変
    数値と、 前記第5のステップにおいて算出された前記最適化価格
    と、を含み、 前記第1から第7のステップを各サブシステムに自律的
    に実行させ、システム全体の最適解を算出することを特
    徴とする請求項1乃至3のいずれか1項に記載の最適化
    計算方法。
  6. 【請求項6】 前記第1のステップは、 サブシステム固有の形態1の最適化問題を設定するステ
    ップと、 当該サブシステムの共有変数と他のサブシステムの共有
    変数との対応関係を設定するステップと、 前記共有変数が他のサブシステムから数値を指定される
    変数か、または当該サブシステムにおいて自在に調整可
    能な変数であるかを設定するステップと、 当該サブシステムにおける計算結果及び他のサブシステ
    ムから受信したデータを格納するデータテーブルを設定
    するステップと、 最適化計算の初期条件を生成するステップと、 他のサブシステムと対応関係にある共有変数の定義域を
    他のサブシステムと等しく設定するステップと、を有す
    ることを特徴とする請求項5記載の最適化計算方法。
  7. 【請求項7】 他のサブシステムより受信した共有変数
    値を用いて、保有する最適化問題の共有変数毎に定義域
    及び分割領域を構成するステップと、 前記分割領域毎に他のサブシステムより受信した前記最
    適化価格を割り当てるステップと、 前記分割領域において、割り当てられた前記最適化価格
    を合計するステップと、 前記合計を外部最適化価格として設定するステップと、
    をさらに有することを特徴とする請求項5の最適化計算
    方法。
  8. 【請求項8】 前記第1のステップにおいて設定された
    初期解もしくは前回の最適化計算において算出された最
    適解を初期解とするステップと、 前記分割領域うち、共有変数の前記初期解が属する分割
    領域における前記外部最適化価格を求めるステップと、 共有変数が前記第1のステップにおいて他のサブシステ
    ムから数値を指定される共有変数として設定されている
    ときに、その数値をもって定数として設定するステップ
    と、 共有変数が前記第1のステップにおいて当該サブシステ
    ムにおいて数値を自在に調整可能な共有変数として設定
    されているときに、その共有変数の前記初期解が属する
    分割領域を形態2の定義域として設定するステップと、 前記形態1の最適化問題において定義されていた制約
    式、前記分割領域における外部最適化価格、前記定数、
    または前記形態2の定義域を含む形態2の最適化問題を
    構成するステップと、 前記形態2の最適化問題に対して最適化計算を実行する
    最適化計算ステップと、 前記最適化計算ステップより得られた新規最適解の共有
    変数値が分割領域の境界上に達した場合には、新規最適
    解を初期解とし、隣接する分割領域を次期探索領域とし
    て設定するステップと、 前記最適化計算ステップにおいて逐次得られる新規最適
    解の更新が認められない場合には前記第4のステップに
    おける演算を終了させるステップと、を有し、 前記形態2の最適化問題の最適解を算出することを特徴
    とする請求項7記載の最適化計算方法。
  9. 【請求項9】 前記形態2の最適化問題の目的関数は、 【数1】 で定義される請求項8記載の最適化計算方法。
  10. 【請求項10】 前記第4のステップは、 形態1の最適化問題が最大化問題であり且つ前記分割領
    域の前記外部最適化価格が単調減少する場合、 または、形態1の最適化問題が最小化問題であり且つ前
    記分割領域の前記外部最適化価格が単調増加する場合に
    おいて、 複数の前記分割領域に対して、各分割領域に対応する変
    数とその定義域並びに制約式を追加し、分割領域毎に設
    定される 複数個の形態2の最適化問題を一括して表現
    した形態3の最適化問題を設定し、 前記形態3の最適化問題の最適解を算出することを特徴
    とする請求項7記載の最適化計算方法。
  11. 【請求項11】 前記形態3の最適化問題は、 【数2】 で定義される形態3の目的関数と、 【数3】 で定義される制約条件の追加とによって設定される請求
    項10記載の最適化計算方法。
  12. 【請求項12】 前記第5のステップは、 前記最適化価格を共有変数毎に計算するステップを有
    し、 前記最適化価格は、分散最大値原理において定義される
    限界コスト又は限界効用であることを特徴とする請求項
    5記載の最適化計算方法。
  13. 【請求項13】 前記最適化価格は、 前記第4のステップにおいて算出された最適解の共有変
    数値より大きい領域における第1の最適化価格(+)
    と、 前記第4のステップにおいて算出された最適解の共有変
    数値より小さい領域における第2の最適化価格(−)
    と、を含み、 前記第5のステップは、 第1の共有変数の値を前記第4のステップにおいて計算
    される最適値から変化させたときに、前記形態2の目的
    関数の変化を最小にする、そのような第2の共有変数の
    変化に基づく目的関数の方向微分係数を求めるステップ
    と、 前記方向微分係数より前記外部最適化価格を減算して最
    適化価格を算出するステップとを有し、 前記方向微分係数は、前記第1の共有変数値を増加させ
    る場合の第1の方向微分係数と前記第1の共有変数値を
    減少させる場合の第2の方向微分係数とを含み、 前記第1の方向微分係数より第1の最適化価格(+)を
    算出し、前記第2の方向微分係数より第2の最適化価格
    (−)を算出する請求項7記載の最適化計算方法。
  14. 【請求項14】 前記最適化価格は、 前記第4のステップにおいて算出された最適解の共有変
    数値より大きい領域での第1の最適化価格(+)と、 前記第4のステップにおいて算出された最適解の共有変
    数値より小さい領域での第2の最適化価格(−)と、を
    含み、 前記第5のステップは、 【数4】 で定義される最適化価格を算出することを特徴とする請
    求項7記載の最適化計算方法。
  15. 【請求項15】 前記最適化価格は、 前記第4のステップにおいて算出された最適解の共有変
    数値より大きい領域での第1の最適化価格(+)と、 前記第4のステップにおいて算出された最適解の共有変
    数値より小さい領域での第2の最適化価格(−)と、を
    含み、 前記第5のステップは、 【数5】 で定義される最適化価格を算出することを特徴とする請
    求項7記載の最適化計算方法。
  16. 【請求項16】 前記第5のステップは、 第1の最適化価格(+)の値を算出するために、前記第
    4のステップにおいて最適解が発見された分割領域に割
    り付けられていた形態2の最適化問題に対し、前記共有
    変数を最適解より微小値増加することによって得られる
    変移最適解を求め、 第2の最適化価格(−)の値を算出するために、前記第
    4のステップにおいて最適解が発見された分割領域に割
    り付けられていた形態2の最適化問題に対し、前記共有
    変数を最適解より微小値減少することによって得られる
    変移最適解を求め、前記第4のステップで得られた最適
    解近傍における、共有変数の変化に対する条件付最適値
    の変化率を算出する感度分析手法を適用して最適化価格
    を算出することを特徴とする請求項7記載の最適化計算
    方法。
  17. 【請求項17】 前記第5のステップは、前記第4のス
    テップにおける最適化計算後のシンプレックスタブロー
    が得られる場合において、 そのシンプレックスタブロー上の数値情報を用いて最適
    化価格を算出することを特徴とする請求項5記載の最適
    化計算方法。
  18. 【請求項18】 前記第7のステップは、前記ネットワ
    ークのサブシステムの演算状況を監視するステップと、 各サブシステムに対して計算の収斂を通報するステップ
    とを有し、 システムとしての計算の収斂を判断する請求項5記載の
    最適化計算方法。
  19. 【請求項19】 前記システムは、前記ネットワークを
    通じて前記各サブシステムがアクセス可能な記録部をさ
    らに備えており、 前記第7のステップは、定期的あるいは数値変動の状況
    に応じて計算状況を前記記録部に書き込むステップと、
    前記記録部から関連する他サブシステムの計算状況を読
    み出すステップとを有し、 システムとしての計算の収斂を判断する請求項5記載の
    最適化計算方法。
  20. 【請求項20】 前記第7のステップは、前記通信部に
    より、関連するサブシステム間で計算状況を直接伝達す
    るステップを有し、システムとしての計算の収斂を判断
    する請求項5の最適化計算方法。
  21. 【請求項21】 演算部、記憶部、通信部、及び制御部
    を有する、そのような複数個のサブシステムと、前記サ
    ブシステムを接続するネットワークとを備え、 前記制御部は、最適化すべき問題の制約条件および目的
    が数式化された形態1の最適化問題を前記記憶部に設定
    する手段と、前記サブシステムの演算部及び通信部を繰
    り返し動作させる手段とを有し、 前記システム全体の利益の最大化またはコストの最小化
    の目的を実現することを特徴とする最適化システム。
  22. 【請求項22】 前記制御部は、前記システム全体の利
    益の最大化またはコストの最小化を分散最大値原理の応
    用により実現する請求項21記載の最適化システム。
  23. 【請求項23】 前記繰り返し動作させる手段は、各サ
    ブシステムを管理する管理手段を必要とせず、前記各サ
    ブシステムを非同期的に動作させることで、前記システ
    ム全体の利益の最大化またはコストの最小化の目的を実
    現することを特徴とする請求項21または22記載の最
    適化システム。
  24. 【請求項24】 前記形態1の最適化問題は内部変数及
    び共有変数を含み、前記内部変数は各サブシステムが保
    有する形態1の最適化問題固有の変数であり、前記共有
    変数は各サブシステムが保有する形態1の最適化問題の
    間で関連する変数であり、 前記繰り返し動作させる手段は、 演算の為の初期設定を実行する手段と、 他の関連するサブシステムとデータの通信をする手段
    と、 数値演算を実行する手段と、 演算の終了を判定する手段とを自律的に繰り返し機能さ
    せる請求項21乃至23のいずれか1項に記載の最適化
    システム。
  25. 【請求項25】 前記形態1の最適化問題は内部変数及
    び共有変数を含み、 前記内部変数は各サブシステムが保有する形態1の最適
    化問題固有の変数であり、 前記共有変数は各サブシステムが保有する形態1の最適
    化問題の間で関連する変数であり、 計算の為の初期設定を実行する第1の手段と、 他の関連するサブシステムからデータを受信する第2の
    手段と、 前記形態1の最適化問題から形態2の最適化問題を生成
    するために、受信したデータを保存する第3の手段と、 前記形態2の最適化問題を生成して最適化計算を実行す
    る第4の手段と、 最適化価格を計算する第5の手段と、 他の関連するサブシステムにデータを送信する第6の手
    段と、 ネットワークの収斂状況を確認する第7の手段とを有
    し、 前記第2の手段及び第6の手段で送受信されるデータ
    は、 前記第4の手段において算出された最適解の共有変数値
    と、 前記第5の手段において算出された前記最適化価格と、
    を含み、 前記第1から第7の手段を各サブシステムに自律的に機
    能させ、システム全体の最適解を算出することを特徴と
    する請求項21乃至23のいずれか1項に記載の最適化
    システム。
  26. 【請求項26】 前記第1の手段は、 サブシステム固有の形態1の最適化問題を設定する手段
    と、 当該サブシステムの共有変数と他のサブシステムの共有
    変数との対応関係を設定する手段と、 前記共有変数が他のサブシステムから数値を指定される
    変数か、または当該サブシステムにおいて自在に調整可
    能な変数であるかを設定する手段と、 当該サブシステムにおける計算結果及び他のサブシステ
    ムから受信したデータを格納するデータテーブルを設定
    する手段と、 最適化計算の初期条件を生成する手段と、 他のサブシステムと対応関係にある共有変数の定義域を
    他のサブシステムと等しく設定する手段とを有すること
    を特徴とする請求項25記載の最適化システム。
  27. 【請求項27】 他のサブシステムより受信した共有変
    数値を用いて、保有する最適化問題の共有変数毎に定義
    域及び分割領域を構成する手段と、 前記分割領域毎に他のサブシステムより受信した前記最
    適化価格を割り当てる手段と、 前記分割領域において、割り当てられた前記最適化価格
    を合計する手段と、 前記合計を外部最適化価格として設定する手段と、を有
    することを特徴とする請求項25の最適化システム。
  28. 【請求項28】 前記第1の手段において設定された初
    期解もしくは前回の最適化計算において算出された最適
    解を初期解とする手段と、 前記分割領域うち、共有変数の前記初期解が属する分割
    領域における前記外部最適化価格を求める手段と、 共有変数が前記第1の手段において他のサブシステムか
    ら数値を指定される共有変数として設定されているとき
    に、その数値をもって定数として設定する手段と、 共有変数が前記第1の手段において当該サブシステムに
    より数値を自在に調整可能な共有変数として設定されて
    いるときに、その共有変数の前記初期解が属する分割領
    域を形態2の定義域として設定する手段と、 前記形態1の最適化問題において定義されていた制約
    式、前記分割領域における外部最適化価格、前記定数、
    または前記形態2の定義域を含む形態2の最適化問題を
    構成する手段と、 前記形態2の最適化問題に対して最適化計算を実行する
    最適化計算手段と、 前記最適化計算手段より得られた新規最適解の共有変数
    値が前記分割領域の境界上に達した場合には、新規最適
    解を初期解とし、隣接する分割領域を次期探索領域とし
    て設定する手段と、 前記最適化計算手段において逐次得られる新規最適解の
    更新が認められない場合には前記第4の手段における演
    算を終了させる手段と、を有し、 前記形態2の最適化問題の最適解を算出することを特徴
    とする請求項27記載の最適化システム。
  29. 【請求項29】 前記形態2の最適化問題の目的関数
    は、 【数6】 で定義される請求項28記載の最適化システム。
  30. 【請求項30】 前記第4の手段は、 形態1の最適化問題が最大化問題であり且つ前記分割領
    域の前記外部最適化価格が単調減少する場合、 または、形態1の最適化問題が最小化問題であり且つ前
    記分割領域の前記外部最適化価格が単調増加する場合に
    おいて、 複数の前記分割領域に対して、各分割領域に対応する変
    数とその定義域並びに制約式を追加し、分割領域毎に設
    定される 複数個の形態2の最適化問題を一括して表現
    した形態3の最適化問題を設定し、 前記形態3の最適化問題の最適解を算出することを特徴
    とする請求項27記載の最適化システム。
  31. 【請求項31】 前記形態3の最適化問題は、 【数7】 で定義される形態3の目的関数と、 【数8】 で定義される制約条件の追加とによって設定される請求
    項30記載の最適化システム。
  32. 【請求項32】 前記第5の手段は、前記最適化価格を
    共有変数毎に計算し、前記最適化価格は、分散最大値原
    理において定義される限界コスト又は限界効用であるこ
    とを特徴とする請求項25記載の最適化システム。
  33. 【請求項33】 前記最適化価格は、 前記第4の手段において算出された最適解の共有変数値
    より大きい領域における第1の最適化価格(+)と、 前記第4の手段において算出された最適解の共有変数値
    より小さい領域における第2の最適化価格(−)と、を
    含み、 前記第5の手段は、 第1の共有変数の値を前記第4の手段により計算される
    最適値から変化させたときに、前記形態2の目的関数の
    変化を最小にする、そのような第2の共有変数の変化に
    基づく目的関数の方向微分係数を求める手段と、 前記方向微分係数より前記外部最適化価格を減算して最
    適化価格を算出する手段とを有し、 前記方向微分係数は、前記第1の共有変数値を増加させ
    る場合の第1の方向微分係数と前記第1の共有変数値を
    減少させる場合の第2の方向微分係数とを含み、 前記第1の方向微分係数より第1の最適化価格(+)を
    算出し、前記第2の方向微分係数より第2の最適化価格
    (−)を算出する請求項27記載の最適化システム。
  34. 【請求項34】 前記最適化価格は、 前記第4の手段において算出された最適解の共有変数値
    より大きい領域での第1の最適化価格(+)と、 前記第4の手段において算出された最適解の共有変数値
    より小さい領域での第2の最適化価格(−)と、を含
    み、 前記第5の手段は、 【数9】 で定義される最適化価格を算出することを特徴とする請
    求項27記載の最適化システム。
  35. 【請求項35】 前記最適化価格は、 前記第4の手段において算出された最適解の共有変数値
    より大きい領域での第1の最適化価格(+)と、 前記第4の手段において算出された最適解の共有変数値
    より小さい領域での第2の最適化価格(−)と、を含
    み、 前記第5の手段は、 【数10】 で定義される最適化価格を算出することを特徴とする請
    求項27記載の最適化システム。
  36. 【請求項36】 前記第5の手段は、 第1の最適化価格(+)の値を算出するために、前記第
    4の手段において最適解が発見された分割領域に割り付
    けられていた形態2の最適化問題に対し、前記共有変数
    を最適解より微小値増加することによって得られる変移
    最適解を求め、 第2の最適化価格(−)の値を算出するために、前記第
    4の手段において最適解が発見された分割領域に割り付
    けられていた形態2の最適化問題に対し、前記共有変数
    を最適解より微小値減少することによって得られる変移
    最適解を求め、前記第4の手段で得られた最適解近傍に
    おける、共有変数の変化に対する条件付最適値の変化率
    を算出する感度分析手法を適用して最適化価格を算出す
    ることを特徴とする請求項27記載の最適化システム。
  37. 【請求項37】 前記第5の手段は、前記第4の手段に
    おける最適化計算後のシンプレックスタブローが得られ
    る場合において、そのシンプレックスタブロー上の数値
    情報を用いて最適化価格を算出することを特徴とする請
    求項25記載の最適化システム。
  38. 【請求項38】 前記第7の手段は、前記ネットワーク
    のサブシステムの演算状況を監視する手段と、 各サブシステムに対して計算の収斂を通報する手段とを
    有し、 システムとしての計算の収斂を判断する請求項25記載
    の最適化システム。
  39. 【請求項39】 前記ネットワークを通じて前記各サブ
    システムがアクセス可能な記録部をさらに備えており、 前記第7の手段は、定期的あるいは数値変動の状況に応
    じて記録部に計算状況を書き込む手段と、前記記録部か
    ら関連する他サブシステムの計算状況を読み出す手段と
    を有し、 システムとしての計算の収斂を判断する請求項25記載
    の最適化システム。
  40. 【請求項40】 前記第7の手段は、前記通信部によ
    り、関連するサブシステム間で計算状況を直接伝達する
    手段を有し、システムとしての計算の収斂を判断する請
    求項25の最適化システム。
  41. 【請求項41】 演算部、記憶部、及び通信部を有する
    コンピュータを、最適化計算を実行するシステムに含ま
    れるサブシステムとして機能させるプログラムであり、 最適化すべき問題の制約条件および目的が数式化された
    形態1の最適化問題を前記記憶部に設定するステップ
    と、 前記演算部及び通信部を繰り返し動作させるステップと
    を有し、前記システム全体の利益の最大化またはコスト
    の最小化の目的を実現させることを特徴とするプログラ
    ム。
  42. 【請求項42】 前記システム全体の利益の最大化また
    はコストの最小化は、分散最大値原理を応用して実現さ
    れる請求項41記載のプログラム。
  43. 【請求項43】 前記繰り返し動作させるステップは、
    各サブシステムを管理する管理ステップを必要とせず、
    前記各サブシステムを非同期的に動作させることで、前
    記システム全体の利益の最大化またはコストの最小化の
    目的を実現させることを特徴とする請求項41または4
    2記載のプログラム。
  44. 【請求項44】 前記形態1の最適化問題は内部変数及
    び共有変数を含み、前記内部変数は各サブシステムが保
    有する形態1の最適化問題固有の変数であり、前記共有
    変数は各サブシステムが保有する形態1の最適化問題の
    間で関連する変数であり、 前記繰り返し動作させるステップは、 演算の為の初期設定を実行するステップと、 他の関連するサブシステムとデータの通信をするステッ
    プと、 数値演算を実行するステップと、 演算の終了を判定するステップと、を自律的に繰り返し
    実行させる請求項41乃至43のいずれか1項に記載の
    プログラム。
  45. 【請求項45】 前記形態1の最適化問題は内部変数及
    び共有変数を含み、 前記内部変数は各サブシステムが保有する形態1の最適
    化問題固有の変数であり、 前記共有変数は各サブシステムが保有する形態1の最適
    化問題の間で関連する変数であり、 計算の為の初期設定を実行する第1のステップと、 他の関連するサブシステムからデータを受信する第2の
    ステップと、 前記形態1の最適化問題から形態2の最適化問題を生成
    するために、受信したデータを保存する第3のステップ
    と、 形態2の最適化問題を生成して最適化計算を実行する第
    4のステップと、 最適化価格を計算する第5のステップと、 他の関連するサブシステムにデータを送信する第6のス
    テップと、 ネットワークの収斂状況を確認する第7のステップと、
    を有し、 前記第2のステップ及び第6のステップで送受信される
    データは、 前記第4のステップにおいて算出された最適解の共有変
    数値と、 前記第5のステップにおいて算出された前記最適化価格
    と、を含み、 前記第1から第7のステップを自律的に実行させ、シス
    テム全体の最適解を算出させることを特徴とする請求項
    41乃至43のいずれか1項に記載のプログラム。
  46. 【請求項46】 前記第1のステップは、 サブシステム固有の形態1の最適化問題を設定するステ
    ップと、 当該サブシステムの共有変数と他のサブシステムの共有
    変数との対応関係を設定するステップと、 前記共有変数が他のサブシステムから数値を指定される
    変数か、または当該サブシステムにおいて自在に調整可
    能な変数であるかを設定するステップと、 当該サブシステムにおける計算結果及び他のサブシステ
    ムから受信したデータを格納するデータテーブルを設定
    するステップと、 最適化計算の初期条件を生成するステップと、 他のサブシステムと対応関係にある共有変数の定義域を
    他のサブシステムと等しく設定するステップとを有する
    ことを特徴とする請求項45記載のプログラム。
  47. 【請求項47】 他のサブシステムより受信した共有変
    数値を用いて、保有する最適化問題の共有変数毎に定義
    域及び分割領域を構成するステップと、 前記分割領域毎に他のサブシステムより受信した前記最
    適化価格を割り当てるステップと、 前記分割領域において、割り当てられた前記最適化価格
    を合計するステップと、 前記合計を外部最適化価格として設定するステップとを
    有することを特徴とする請求項45記載のプログラム。
  48. 【請求項48】 前記第1のステップにおいて設定され
    た初期解もしくは前回の最適化計算において算出された
    最適解を初期解とするステップと、 前記分割領域うち、共有変数の前記初期解が属する分割
    領域における前記外部最適化価格を求めるステップと、 共有変数が前記第1のステップにおいて他のサブシステ
    ムから数値を指定される共有変数として設定されている
    ときに、その数値をもって定数として設定するステップ
    と、 共有変数が前記第1のステップにおいて当該サブシステ
    ムにおいて数値を自在に調整可能な共有変数として設定
    されているときに、その共有変数の前記初期解が属する
    分割領域を形態2の定義域として設定するステップと、 前記形態1の最適化問題において定義されていた制約
    式、前記分割領域における外部最適化価格、前記定数、
    または前記形態2の定義域を含む形態2の最適化問題を
    構成するステップと、 前記形態2の最適化問題に対して最適化計算を実行する
    最適化計算ステップと、 前記最適化計算ステップより得られた新規最適解の共有
    変数値が前記分割領域の境界上に達した場合には、新規
    最適解を初期解とし、隣接する分割領域を次期探索領域
    として設定するステップと、 前記最適化計算ステップにおいて逐次得られる新規最適
    解の更新が認められない場合には前記第4のステップに
    おける演算を終了させるステップと、を有し、 前記形態2の最適化問題の最適解を算出させることを特
    徴とする請求項47記載のプログラム。
  49. 【請求項49】 前記形態2の最適化問題の目的関数
    は、 【数11】 で定義される請求項48記載のプログラム。
  50. 【請求項50】 前記第4のステップは、 形態1の最適化問題が最大化問題であり且つ前記分割領
    域の前記外部最適化価格が単調減少する場合、 または、形態1の最適化問題が最小化問題であり且つ前
    記分割領域の前記外部最適化価格が単調増加する場合に
    おいて、 複数の前記分割領域に対して、各分割領域に対応する変
    数とその定義域並びに制約式を追加し、分割領域毎に設
    定される 複数個の形態2の最適化問題を一括して表現
    した形態3の最適化問題を設定し、 前記形態3の最適化問題の最適解を算出させることを特
    徴とする請求項47記載のプログラム。
  51. 【請求項51】 前記形態3の最適化問題は、 【数12】 で定義される形態3の目的関数と、 【数13】 で定義される制約条件の追加とによって設定される請求
    項50記載のプログラム。
  52. 【請求項52】 前記第5のステップは、前記最適化価
    格を共有変数毎に計算するステップを有し、前記最適化
    価格は、分散最大値原理において定義される限界コスト
    又は限界効用であることを特徴とする請求項45記載の
    プログラム。
  53. 【請求項53】 前記最適化価格は、 前記第4のステップにおいて算出された最適解の共有変
    数値より大きい領域における第1の最適化価格(+)
    と、 前記第4のステップにおいて算出された最適解の共有変
    数値より小さい領域における第2の最適化価格(−)
    と、を含み、 前記第5のステップは、 第1の共有変数の値を前記第4のステップにおいて計算
    される最適値から変化させたときに、前記形態2の目的
    関数の変化を最小にする、そのような第2の共有変数の
    変化に基づく目的関数の方向微分係数を求めるステップ
    と、 前記方向微分係数より前記外部最適化価格を減算して最
    適化価格を算出するステップとを有し、 前記方向微分係数は、前記第1の共有変数値を増加させ
    る場合の第1の方向微分係数と前記第1の共有変数値を
    減少させる場合の第2の方向微分係数とを含み、 前記第1の方向微分係数より第1の最適化価格(+)を
    算出させ、前記第2の方向微分係数より第2の最適化価
    格(−)を算出させる請求項47記載のプログラム。
  54. 【請求項54】 前記最適化価格は、 前記第4のステップにおいて算出された最適解の共有変
    数値より大きい領域での第1の最適化価格(+)と、 前記第4のステップにおいて算出された最適解の共有変
    数値より小さい領域での第2の最適化価格(−)と、を
    含み、 前記第5のステップは、 【数14】 で定義される最適化価格を算出させることを特徴とする
    請求項47記載のプログラム。
  55. 【請求項55】 前記最適化価格は、 前記第4のステップにおいて算出された最適解の共有変
    数値より大きい領域での第1の最適化価格(+)と、 前記第4のステップにおいて算出された最適解の共有変
    数値より小さい領域での第2の最適化価格(−)と、を
    含み、 前記第5のステップは、 【数15】 で定義される最適化価格を算出させることを特徴とする
    請求項47記載のプログラム。
  56. 【請求項56】 前記第5のステップは、 第1の最適化価格(+)の値を算出するために、前記第
    4のステップにおいて最適解が発見された分割領域に割
    り付けられていた形態2の最適化問題に対し、前記共有
    変数を最適解より微小値増加することによって得られる
    変移最適解を求め、 第2の最適化価格(−)の値を算出するために、前記第
    4のステップにおいて最適解が発見された分割領域に割
    り付けられていた形態2の最適化問題に対し、前記共有
    変数を最適解より微小値減少することによって得られる
    変移最適解を求め、前記第4のステップで得られた最適
    解近傍における、共有変数の変化に対する条件付最適値
    の変化率を算出する感度分析手法を適用して最適化価格
    を算出させることを特徴とする請求項47記載のプログ
    ラム。
  57. 【請求項57】 前記第5のステップは、前記第4のス
    テップにおける最適化計算後のシンプレックスタブロー
    が得られる場合において、 そのシンプレックスタブロー上の数値情報を用いて最適
    化価格を算出させることを特徴とする請求項45記載の
    プログラム。
  58. 【請求項58】 前記第7のステップは、前記ネットワ
    ークのサブシステムの演算状況を監視するステップと、 各サブシステムに対して計算の収斂を通報するステップ
    とを有し、 システムとしての計算の収斂を判断させる請求項45記
    載のプログラム。
  59. 【請求項59】 前記システムは、前記ネットワークを
    通じて前記各サブシステムがアクセス可能な記録部をさ
    らに備えており、 前記第7のステップは、定期的あるいは数値変動の状況
    に応じて計算状況を前記記録部に書き込むステップと、
    前記記録部から関連する他サブシステムの計算状況を読
    み出すステップとを有し、 システムとしての計算の収斂を判断させる請求項45記
    載のプログラム。
  60. 【請求項60】 前記第7のステップは、前記通信部に
    より、関連するサブシステム間で計算状況を直接伝達す
    るステップを有し、システムとしての計算の収斂を判断
    させる請求項45のプログラム。
  61. 【請求項61】 ネットワークにより最適化計算を実行
    するシステムに組み込まれ、演算部、記憶部、通信部、
    及び制御部を有するサブシステムであり、 前記制御部は、最適化すべき問題の制約条件および目的
    が数式化された形態1の最適化問題を前記記憶部に設定
    する手段と、前記記演算部及び通信部を繰り返し動作さ
    せる手段とを有し、 前記記システム全体の利益の最大化またはコストの最小
    化の目的を実現することを特徴とするサブシステム。
JP2001199452A 2001-06-29 2001-06-29 最適化計算方法、最適化システムおよびプログラム Pending JP2003015704A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001199452A JP2003015704A (ja) 2001-06-29 2001-06-29 最適化計算方法、最適化システムおよびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001199452A JP2003015704A (ja) 2001-06-29 2001-06-29 最適化計算方法、最適化システムおよびプログラム

Publications (1)

Publication Number Publication Date
JP2003015704A true JP2003015704A (ja) 2003-01-17

Family

ID=19036748

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001199452A Pending JP2003015704A (ja) 2001-06-29 2001-06-29 最適化計算方法、最適化システムおよびプログラム

Country Status (1)

Country Link
JP (1) JP2003015704A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008292615A (ja) * 2007-05-23 2008-12-04 Jasco Corp 回折格子設計プログラム
JP2016167278A (ja) * 2010-10-01 2016-09-15 ザ・ボーイング・カンパニーThe Boeing Company 領域分割法によるプロセッサ特性の最適化と大規模システムの最適化
CN109995062A (zh) * 2019-03-22 2019-07-09 广东工业大学 一种微网储能设备投资配比优化方法
US10817304B2 (en) 2018-03-09 2020-10-27 Kabushiki Kaisha Toshiba Calculating device
JPWO2021053775A1 (ja) * 2019-09-18 2021-03-25
WO2023062953A1 (ja) * 2021-10-14 2023-04-20 株式会社日立製作所 連携管理システム及び連携管理方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008292615A (ja) * 2007-05-23 2008-12-04 Jasco Corp 回折格子設計プログラム
JP2016167278A (ja) * 2010-10-01 2016-09-15 ザ・ボーイング・カンパニーThe Boeing Company 領域分割法によるプロセッサ特性の最適化と大規模システムの最適化
US10817304B2 (en) 2018-03-09 2020-10-27 Kabushiki Kaisha Toshiba Calculating device
US11640303B2 (en) 2018-03-09 2023-05-02 Kabushiki Kaisha Toshiba Calculating device
CN109995062A (zh) * 2019-03-22 2019-07-09 广东工业大学 一种微网储能设备投资配比优化方法
JPWO2021053775A1 (ja) * 2019-09-18 2021-03-25
WO2021053775A1 (ja) * 2019-09-18 2021-03-25 日本電信電話株式会社 学習装置、推定装置、学習方法、推定方法及びプログラム
JP7251642B2 (ja) 2019-09-18 2023-04-04 日本電信電話株式会社 学習装置、推定装置、学習方法、推定方法及びプログラム
WO2023062953A1 (ja) * 2021-10-14 2023-04-20 株式会社日立製作所 連携管理システム及び連携管理方法

Similar Documents

Publication Publication Date Title
Fu et al. Two-agent stochastic flow shop deteriorating scheduling via a hybrid multi-objective evolutionary algorithm
Sangaiah et al. Robust optimization and mixed-integer linear programming model for LNG supply chain planning problem
Kundu et al. A method to solve linear programming problem with interval type-2 fuzzy parameters
Rangaiah Multi-objective optimization: techniques and applications in chemical engineering
Bard Practical bilevel optimization: algorithms and applications
Zhang et al. A systematic decision-making method for evaluating design alternatives of product service system based on variable precision rough set
Deliktas et al. A flexible job shop cell scheduling with sequence‐dependent family setup times and intercellular transportation times using conic scalarization method
Mathirajan et al. A design of distribution network and development of efficient distribution policy
Bagheri et al. Solving the fully fuzzy multi-objective transportation problem based on the common set of weights in DEA
Ma et al. Hybrid particle swarm optimization and differential evolution algorithm for bi-level programming problem and its application to pricing and lot-sizing decisions
Li et al. A new methodology for the general multiparametric mixed-integer linear programming (MILP) problems
Alinaghian et al. A bi-objective fleet size and mix green inventory routing problem, model and solution method
Santibañez-Aguilar et al. A mixed-integer dynamic optimization approach for the optimal planning of distributed biorefineries
Schmitt et al. Multi-objective model predictive control for microgrids
Singh et al. Multi-objective permutation and non-permutation flow shop scheduling problems with no-wait: a systematic literature review
Moradgholi et al. A genetic algorithm for a bi-objective mathematical model for dynamic virtual cell formation problem
Behmanesh et al. A memetic algorithm with extended random path encoding for a closed-loop supply chain model with flexible delivery
Song et al. Multistakeholder conflict minimization–based layout planning of construction temporary facilities
Liu et al. A multiobjective memetic algorithm for integrated process planning and scheduling problem in distributed heterogeneous manufacturing systems
Isafiade Heat exchanger network retrofit using the reduced superstructure synthesis approach
Kasas et al. Suitable modeling for process flow sheet optimization using the correct economic criterion
Vincent et al. The multi-vehicle cyclic inventory routing problem: formulation and a metaheuristic approach
JP2003015704A (ja) 最適化計算方法、最適化システムおよびプログラム
Dalfard et al. A new pricing constrained single-product inventory-production model in perishable food for maximizing the total profit
Yazıcı et al. Analysis of operations research methods for decision problems in the industrial symbiosis: a literature review