JP7115059B2 - 最適化装置、最適化方法、およびプログラム - Google Patents

最適化装置、最適化方法、およびプログラム Download PDF

Info

Publication number
JP7115059B2
JP7115059B2 JP2018118300A JP2018118300A JP7115059B2 JP 7115059 B2 JP7115059 B2 JP 7115059B2 JP 2018118300 A JP2018118300 A JP 2018118300A JP 2018118300 A JP2018118300 A JP 2018118300A JP 7115059 B2 JP7115059 B2 JP 7115059B2
Authority
JP
Japan
Prior art keywords
optimization
polynomial model
model
unit
feasible region
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.)
Active
Application number
JP2018118300A
Other languages
English (en)
Other versions
JP2019220028A (ja
Inventor
宏明 反町
宏亮 西野
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2018118300A priority Critical patent/JP7115059B2/ja
Publication of JP2019220028A publication Critical patent/JP2019220028A/ja
Application granted granted Critical
Publication of JP7115059B2 publication Critical patent/JP7115059B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、最適化装置、最適化方法、およびプログラムに関する。
リアルタイムオプティマイゼーション(RTO)により、運転中のプラント等の最適な運転条件を求める技術が用いられている。リアルタイムオプティマイゼーションの技術では、例えば生産プラントにおける原料の組成や負荷が変わる都度、最適な運転条件をリアルタイムに計算する。これを実現するために、プロセスデータやラボ分析値を用いたプロセスシミュレーションと、最適な運転条件(最適解)を求めるための最適化アルゴリズムとが用いられる。
また、プラント運転はリアルタイムに行われ、プラント側からリアルタイムに温度・圧力等のプロセスデータ、異常を知らせるアラーム等が送られてくる。このようなリアルタイムなプラント運転に迅速に追従するために、リアルタイムオプティマイゼーションを駆使して短時間で最適な運転条件を求められることが望ましい。
リアルタイムオプティマイゼーションの実施において求められる性質は、(1)精度の高いシミュレーションを行うこと、(2)短い時間で最適値を見つけられること、(3)大域的最適解を見つけること、の3点である。
これらの点が重要である理由は、プラントの挙動が非線形であること、非線形な関数の最適化においては局所解に陥りがちであることである。また、原料の組成やプラントの負荷などが数時間から数日といった期間において変わるためそれらの変化に応じてプラントの最適な運転条件(最適解)も変わるためである。
従来技術によるリアルタイムオプティマイゼーションでは、使用するモデルと最適化アルゴリズムに関して、主に、次の3つの方法が用いられてきた。
第1の方法では、プロセスシミュレーションとして線形多項式モデルを用いて、線形計画問題を解くことにより最適解を求める。
第2の方法では、プロセスシミュレーションとして非線形多項式モデル(主に2次)を用いて、非線形最適化問題を解くことにより最適解を求める。
第3の方法では、プロセスシミュレーションとしてリゴラス(Rigorous)な物理モデルを用い、非線形計画問題を解くことにより最適解を求める。
従来技術として、例えば特許文献1~4に開示されたプロセスシミュレーション技術が知られている。
特開2009-157550号公報 特開2009-169771号公報 特開2013-109711号公報 特許第5561519号公報
しかしながら、従来の技術では、前述の求められる性質を、すべて充分に満足することができなかった。即ち、(1)精度の高いシミュレーションを行うこと、(2)短い時間で最適値を見つけられること、(3)大域的最適解を見つけること、とい3つを同時に高いレベルで満たすことができなかった。
その理由は、次の通りである。
(1)線形多項式モデルを用いる場合には、最適化問題を高速に解けるものの、プロセスの非線形な挙動を表すことができないので精度のよいシミュレーションができない。線形最適化問題では、大域的最適解を求めることができるが、そもそも実プロセスが有する非線形性を表しておらず、その意味において本来の大域的最適解を求めることができない。
(2)非線形多項式モデルを用いる場合には、線形モデルを用いる場合に比べて精度の高いシミュレーションを行うことができる。しかしながら、実際のプラントはより高次の非線形性を含むのに対して、非線形多項式モデルは、その高次の非線形性を表現できない。また、非線形最適化問題を解くアルゴリズムは、リゴラスモデルの場合に比べれば高速に実行できる。しかしながら、得られる最適解は必ずしも大域的最適解であることが保証されない。複数の初期解から探索を開始して最適化問題を解くことで大域的最適解を得る試みも可能であるが、それでもなお常に大域的最適解が得られるわけではなく、不完全である。
(3)リゴラスモデルを用いる場合には、精度の高いシミュレーションを行うことができるが、最適化のアルゴリズムを実行するための計算コストが大きい。適用対象が限られた狭い範囲であれば実用に耐える場合もあり得るが、例えば複数のプラントを統合した場合など、適用対象の規模が大きくなると、最適化処理が実用的な計算量に収まらない。さらに、非線形多項式モデルの場合と同様に、大域的最適解を得るために複数の初期解から最適化問題を解くことを試みる場合があるが、計算コストが大きいため、多くの初期解から計算を行うことは現実的ではない。
本発明は、上記の課題認識に基づいて行なわれたものであり、シミュレーションの精度がよく、且つ最適化計算の時間を短縮することのでき、大域的最適解を見つけることができる最適化装置、最適化方法、およびプログラムを提供しようとするものである。
[1]上記の課題を解決するため、本発明の一態様による最適化装置は、最適化対象に関して与えられるデータに基づき探索空間内の実行可能領域を推定し、推定された実行可能領域に対応する多項式モデルを作成する多項式モデル作成部と、前記多項式モデル作成部によって作成された前記多項式モデルを用いて、与えられる目的関数の最適化を行い、前記多項式モデルにおける第1最適解を求める多項式モデル最適化部と、前記多項式モデル最適化部から渡される前記第1最適解に基づき、前記最適化対象に関するリゴラスモデルを用いて、与えられる目的関数の最適化を行い、前記リゴラスモデルにおける第2最適解を求めるリゴラスモデル最適化部とを具備する。
上記の構成によれば、多項式モデル最適化部が最適化を行うことにより、短縮された計算時間で厳密な最適解に近付くことができる。最適解を開始ポイントとして、リゴラスモデル最適化部が厳密な最適解を算出することにより、高精度な解を得ることができる。これにより最適化装置は、全体として短い計算時間(少ない計算量)で、厳密な最適解を算出することができる。
[2]また、本発明の一態様は、上記の最適化装置において、前記多項式モデル作成部は、前記探索空間内の所定の開始ポイントから、前記探索空間内において隣接探索方向との間で均等な角度を成す複数の探索方向への探索を行い、前記探索方向上の所定のポイントが前記最適化対象に関して与えられる条件に基づいて実行可能領域の内側あるいは外側のいずれであるかを判断することにより、境界ポイントを特定し、得られた複数の前記境界ポイントに基づいて前記実行可能領域を推定するものである。
上記の構成によれば、多項式モデル作成部は、投入する計算資源を、探索空間内の各方向への探索に均等に振り向けることができる。また、その探索に基づいて、実行可能領域を推定することができる。
[3]また、本発明の一態様は、上記の最適化装置において、前記所定の開始ポイントは、外部から与えられる、前記最適化対象の現在の状態に対応するポイントである、とするものである。
上記の構成によれば、最適化対象の現実に則した開始ポイントに対応して、実行可能領域を推定することができる。
[4]また、本発明の一態様は、上記の最適化装置において、前記多項式モデル作成部は、第1回目の範囲探索処理を、所定の開始ポイントから行うことによって暫定的実行可能領域を推定し、第m回目(m≧1)の前記範囲探索処理によって推定された前記暫定的実行可能領域に基づく第2開始ポイントから、第(m+1)回目の範囲探索処理を行うことによってさらに暫定的実行可能領域を推定し、所定条件を満たすまで前記範囲探索処理を繰り返して得られた前記暫定的実行可能領域を、推定された前記実行可能領域とするものである。
上記の構成によれば、複数回の範囲探索処理の繰り返しにより、段階的に暫定的実行可能領域の精度を上げ(現実の実行可能領域に近付くことが期待され)、最終的には良好に実行可能領域を推定することができる。
[5]また、本発明の一態様は、上記の最適化装置において、第(m+1)回目(m≧1)の前記範囲探索処理における前記第2開始ポイントは、第m回目の前記範囲探索処理で推定された前記暫定的実行可能領域の重心である、とするものである。
上記の構成によれば、前回推定された暫定的実行可能領域の中の、偏りのないポイントから次の範囲探索処理を開始できる。これにより、良好な範囲探索処理を期待することができる。
[6]また、本発明の一態様は、上記の最適化装置において、第(m+1)回目(m≧1)の前記範囲探索処理は、前記第2開始ポイントから、第m回目の前記範囲探索処理によって推定された前記実行可能領域のすべての端点を含む凸包に含まれる所定の面の上の1点に向かう探索方向への探索を行い、前記探索方向上の所定のポイントが前記最適化対象に関して与えられる条件に基づいて実行可能領域の内側あるいは外側のいずれであるかを判断することにより、境界ポイントを特定し、得られた前記境界ポイントに基づいて前記暫定的実行可能領域を推定するものである。
上記の構成によれば、上記凸包に含まれる面の方向に探索するため、当該面を暫定的な境界面としている状況から、より詳細に暫定的実行可能領域を推定することができる。即ち、当該面よりも、第2開始ポイントに近い側あるいは遠い側のどちらに本来の境界ポイントがあるかを特定することができる。
[7]また、本発明の一態様は、上記の最適化装置において、前記所定の面は、前記凸包に含まれる面のうち最もサイズの大きい面であるものである。
上記の構成によれば、最もサイズの大きい面を選択することにより、当該面よりも、第2開始ポイントに近い側あるいは遠い側のどちらに本来の境界ポイントがあるかを特定した結果として、1回の処理で、最も体積の大きい領域について、暫定的実行可能領域に含まれるか否かを判定できることが期待される。
[8]また、本発明の一態様は、上記の最適化装置において、所定の面の上の1点は、当該所定の面の重心であるものである。
上記の構成によれば、当該面の重心に向かう方向に探索を行うため、範囲探索処理の結果として、偏りが少ない状態で、暫定的実行可能領域を更新できる。
[9]また、本発明の一態様は、上記の最適化装置において、前記多項式モデル作成部は、推定された前記実行可能領域に関する条件の少なくとも一部を、前記探索空間内の楕円を表す数式で近似した条件として前記多項式モデルを作成するものである。
上記の構成によれば、多項式モデルを単純化することができ、多項式モデル最適化部は、より短い計算時間で(より少ない計算量で)、第1最適解を求めることができる。また、そのようにして得られた第1最適解も、最終的に求める第2最適解の近傍に存在することが期待されるため、リゴラスモデル最適化部による最適化処理の計算時間がそれほど長くなることなく、精度の高い第2最適解を求められることが期待される。
[10]また、本発明の一態様は、上記の最適化装置において、前記多項式モデル作成部は、推定された前記実行可能領域に関する条件の少なくとも一部を、前記探索空間内の凸多面体を表す数式で近似した条件として前記多項式モデルを作成するものである。
上記の構成によれば、多項式モデルを単純化することができ、前述の、推定された実行可能領域に関する条件を、探索空間内の楕円を表す数式で近似する場合と同様の効果を得られる。また、実行可能領域に関する条件の少なくとも一部を、探索空間内の凸多面体を表す数式で近似する場合、前述の楕円での近似の場合よりも、近似の度合いはより良い可能性が高い。
[11]また、本発明の一態様は、上記の最適化装置において、前記多項式モデル最適化部は、複数の初期解を開始ポイントとして、前記多項式モデルに関する最適化を行うものである。
上記の構成によれば、大域的最適解を得られる可能性が高くなる。
[12]また、本発明の一態様は、上記の最適化装置において、前記リゴラスモデル最適化部は、複数の前記第1最適解を開始ポイントとして、前記リゴラスモデルにおける複数の第2最適解候補を求め、これら複数の第2最適解候補のうちの最良の解を前記第2最適解として求めるものである。
上記の構成によれば、大域的最適解を得られる可能性が高くなる。
[13]また、本発明の一態様は、上記の最適化装置において、前記最適化対象は、生産プロセスであり、前記最適化対象に関して与えられるデータは、前記生産プロセスを制御する制御システムから与えられるものであり、前記リゴラスモデル最適化部によって求められた前記第2最適解は、前記制御システムに渡されるものである。
上記の構成によれば、生産プロセスを、リアルタイムに且つ最適に制御できる。これにより、生産設備をより効果的に使用できることが期待できる。
[14]また、本発明の一態様は、最適化対象に関して与えられるデータに基づき探索空間内の実行可能領域を推定し、推定された実行可能領域に対応する多項式モデルを作成する多項式モデル作成過程と、前記多項式モデル作成過程によって作成された前記多項式モデルを用いて、与えられる目的関数の最適化を行い、前記多項式モデルにおける第1最適解を求める多項式モデル最適化過程と、前記多項式モデル最適化過程で求められた前記第1最適解に基づき、前記最適化対象に関するリゴラスモデルを用いて、与えられる目的関数の最適化を行い、前記リゴラスモデルにおける第2最適解を求めるリゴラスモデル最適化過程とを含む最適化方法である。
[15]また、本発明の一態様は、コンピューターを、上記[1]から[13]までのいずれか一項に記載の最適化装置、として機能させるためのプログラムである。
本発明によれば、短い計算時間(少ない計算量)で、厳密な最適解を高精度に算出することができる。
本発明の実施形態による運転支援装置の概略機能構成を示す機能ブロック図である。 同実施形態による運転支援装置の全体的な処理の手順を示すフローチャートである。 同実施形態による多項式モデル作成部が多項式モデルを作成する処理の、より詳細な手順を示すフローチャートである。 同実施形態による多項式モデル作成部が多項式モデルを作成する処理の中の、実行可能領域の探索の処理を示す概略図(探索空間の2次元グラフ)である。 同実施形態による多項式モデル最適化部が、多項式モデルにおける最適化を行う処理の、より詳細な手順を示すフローチャートである。 同実施形態によるリゴラスモデル最適化部が、リゴラスモデルにおける最適化を行う処理の、より詳細な手順を示すフローチャートである。
[実施形態]
次に、本発明の一実施形態について、図面を参照しながら説明する。
本実施形態による運転支援装置10は、リゴラスモデル(rigorous model,厳密モデル)のプロセスシミュレーターと、多項式モデルのプロセスシミュレーターとを組み合わせることにより、精度の高いシミュレーションを行いながら最適化計算の時間を短縮するものである。
なお、運転支援装置10は、本実施形態による最適化方法を実行するものであり、「最適化装置」とも呼ばれる。
具体的には、運転支援装置10は、リゴラスモデルのプロセスシミュレーターにより、精度の高い多項式モデルを作成する。そして、運転支援装置10は、作成した多項式モデル上で、計算コストの低い最適化計算を行い、その最適解を得る。そして、運転支援装置10は、多項式モデルで得られた最適解を、リゴラスモデルの初期値(初期解)として与え、リゴラスモデル上で最適化計算を行う。この手順により、本実施形態の運転支援装置10は、計算時間を短縮しながら、運転条件に関する精度のよいシミュレーションを行う。
図1は、運転支援装置10の概略機能構成を示す機能ブロック図である。図示するように、運転支援装置10は、多項式モデル作成部11と、多項式モデル最適化部12と、リゴラスモデル最適化部13と、プロセスシミュレーション部14と、プロセスデータ記憶部21と、最適化結果記憶部22とを含んで構成される。これらの各機能部は、例えば、電子回路を用いて実現される。また、各機能部は、必要に応じて、半導体メモリーや磁気ハードディスク装置などといった記憶手段を内部に備えてよい。また、各機能を、コンピューターおよびソフトウェアによって実現するようにしてもよい。
図中の制御システム30は、例えば不図示のプラント等の稼働を制御するシステムである。制御システム30は、例えば、APC(高度プロセス制御,Advanced Process Control)やDCS(分散型制御システム,Distributed Control System)の機能を有するものである。制御システム30は、例えば、プラントに設けられたフィールド機器からプロセスデータを取得するとともに、得られたプロセスデータに基づいてそのプラントにおけるアクチュエーターなどを制御する。フィールド機器の具体例は、温度を測定してその値のデータを出力する温度計や、圧力を測定してその値のデータを出力する圧力計や、流量を測定してその値のデータを出力する流量計などである。なお、制御システム30自体は、従来技術により実現される。
運転支援装置10には、シミュレーションのための目的関数や制約条件を設定することができる。目的関数や制約条件の設定は、例えば、ユーザー(管理者、エンジニア等。以下においても同様。)が入力手段から入力する方法や、目的関数や制約条件を表すパラメーターデータを一括してローディングする方法などにより、行うことができるようにする。
そして、運転支援装置10は、制御システム30からプロセスデータを取得し、このプロセスデータに基づくシミュレーションを行う。具体的には、運転支援装置10は、得られたプロセスデータを前提として、また制約条件を前提として、プラント等に関して所定の運転制御を行った場合のプラントの挙動をシミュレーションする。また、運転支援装置10は、シミュレーション結果として、シミュレートされたプロセスデータを求める。そして、運転支援装置10は、上記のシミュレーション結果に基づいて目的関数値を求める。運転支援装置10は、様々な運転制御を行った場合についてそれぞれシミュレーションを行い、各場合における目的関数値を比較し、目的関数が最適値をとるための最適解を求める。運転支援装置10は、得られた最適解を制御システム30に渡す。
運転支援装置10は、探索空間内の探索を行う。本実施形態において「探索」とは、探索空間内の各ポイントを評価しながら探索空間内を移動していく処理である。探索空間内における初期ポイントは、適宜与えられる。運転支援装置10は、実行可能領域を特定(ないしは推定)するために求めるために探索を行ったり、実行可能領域における最適解を求めるために探索を行ったりする。
実行可能領域を特定するために探索を行う場合、その移動の方向は、例えば、所定の角度間隔でなるべく多くの方向をカバーするように予め与えられる。あるいは、探索空間の多次元の座標軸の方向を移動の方向としてもよい。
最適解のポイントに辿り着くために探索を行う場合、その移動の方向は、例えば、目的関数値の勾配に基づいて決定される。あるいは、ランダムな方向を移動の方向としてもよい。
なお、目的関数や制約条件に関するデータは、プロセスデータ記憶部21に格納される。また、シミュレーションによって得られた最適解(最適化結果)は、最適化結果記憶部22に格納される。
以下では、運転支援装置10を構成する各機能ブロックについてより説明する。
多項式モデル作成部11は、プロセスデータ記憶部21から、現在のプロセスデータ(シミュレータの入力条件)や、目的関数や、制約条件を取得し、リゴラスなモデルに基づくシミュレーションを行う。これにより、多項式モデル作成部11は、目的関数および制約項目について、精度の高い多項式モデルを作成する。多項式モデル作成部11は、作成した多項式モデルを、多項式モデル最適化部12に渡す。具体的には、多項式モデル作成部11は、作成した多項式モデルのパラメーター値を、多項式モデル最適化部12に渡す。
つまり、多項式モデル作成部11は、最適化対象に関して与えられるデータに基づき探索空間内の実行可能領域を推定し、推定された実行可能領域に対応する多項式モデルを作成する。実行可能領域は、対象とする問題におけるすべての変数の組み合わせで表される空間内の部分空間である。実行可能領域の範囲は、設定される制約条件等により定まる。制約条件は、変数および定数を用いた等式または不等式の集合として表されるものであり、一般に複雑である。実行可能領域は、プラントを適切に制御した場合におけるそのプラントの運転可能領域に対応するものである。
なお、多項式モデル作成部11は、プロセスシミュレーション部14に、プロセスシミュレーション処理の実施を要求する。その際、多項式モデル作成部11は、シミュレーション入力条件をプロセスシミュレーション部14に渡す。また、多項式モデル作成部11は、シミュレーション結果をプロセスシミュレーション部14から受け取る。
多項式モデル最適化部12は、多項式モデル作成部11によって作成された多項式モデルを用いてプロセスシミュレーションを行い、その多項式モデルにおける最適解を求めるための最適化計算を行う。多項式モデル最適化部12が最適化計算によって得る多項式モデルの最適解(「第1最適解」とも呼ぶ)を、リゴラスモデル最適化部13に渡す。
つまり、多項式モデル最適化部12は、多項式モデル作成部11によって作成された多項式モデルを用いて、与えられる目的関数の最適化を行い、多項式モデルにおける第1最適解を求める。
なお、多項式モデル最適化部12は、プロセスシミュレーション部14に、プロセスシミュレーション処理の実施を要求する。その際、多項式モデル最適化部12は、シミュレーション入力条件をプロセスシミュレーション部14に渡す。また、多項式モデル最適化部12は、シミュレーション結果をプロセスシミュレーション部14から受け取る。
リゴラスモデル最適化部13は、多項式モデル最適化部12から渡された最適解を初期解として、リゴラスモデルにより、プロセスシミュレーションを行う。リゴラスモデル最適化部13は、このプロセスシミュレーションによって得られた最適解(「第2最適解」とも呼ぶ)を、最適化結果記憶部22に書き込む。
つまり、リゴラスモデル最適化部13は、多項式モデル最適化部12から渡される第1最適解に基づき、最適化対象に関するリゴラスモデルを用いて、与えられる目的関数の最適化を行い、リゴラスモデルにおける第2最適解を求める。
なお、リゴラスモデル最適化部13は、プロセスシミュレーション部14に、プロセスシミュレーション処理の実施を要求する。その際、リゴラスモデル最適化部13は、シミュレーション入力条件をプロセスシミュレーション部14に渡す。また、リゴラスモデル最適化部13は、シミュレーション結果をプロセスシミュレーション部14から受け取る。
プロセスシミュレーション部14は、多項式モデル作成部11や、多項式モデル最適化部12や、リゴラスモデル最適化部13からの要求に基づき、シミュレーションを行う。プロセスシミュレーション部14は、要求元である多項式モデル作成部11や多項式モデル最適化部12やリゴラスモデル最適化部13からの要求に応じたシミュレーションを行う。そのため、プロセスシミュレーション部14は、リゴラスなプロセスシミュレーターと、多項式モデルのプロセスシミュレーターとの、両方の機能を備える。
プロセスデータ記憶部21は、制御システム30から収集されたプロセスデータを記憶するものである。また、プロセスデータ記憶部21は、ユーザーなどによって入力された、目的関数や制約条件のパラメーターの値を記憶する。
最適化結果記憶部22は、リゴラスモデル最適化部13によって求められた最適解を記憶するものである。
前述の通り、プロセスデータ記憶部21や最適化結果記憶部22は情報を記憶する媒体を備えている。プロセスデータ記憶部21や最適化結果記憶部22は、コンピューターのメモリー空間上の領域として実現されてもよく、コンピューターのファイルシステムによって管理されるファイルとして実現されてもよい。また、データベース管理システム(DBMS)を用いてプロセスデータ記憶部21や最適化結果記憶部22を実現するようにしてもよい。
プロセスデータ記憶部21や最適化結果記憶部22は、一例として、運転支援装置10と制御システム30とで共有される記憶手段として実現される。この場合、制御システム30は所定のタイミングで(例えば、所定のシミュレーション周期ごとに)プロセスデータをプロセスデータ記憶部21に書き込む。また、制御システム30は所定のタイミングで(例えば、シミュレーションによる最適化結果が得られる都度)最適解を最適化結果記憶部22から読み出す。
あるいは、プロセスデータ記憶部21や最適化結果記憶部22は、運転支援装置10内に閉じた記憶領域として実現される。この場合、運転支援装置10内の不図示の送受信部は、所定のタイミングでプロセスデータを制御システム30から受信してプロセスデータ記憶部21に書き込む。また、その送受信部は、所定のタイミングで最適解を最適化結果記憶部22から読み出して制御システム30に送信する。また、この最適解の情報は、制御システム30に渡される。
なお、運転支援装置10内の各部間でのデータの流れをまとめると、次のとおりである。
多項式モデル作成部11と多項式モデル最適化部12とリゴラスモデル最適化部13の各部は、プロセスデータ記憶部21から、シミュレーション情報を読み出す。シミュレーション情報は、入力条件や、目的関数や、制約条件のデータを含む。
多項式モデル作成部11からプロセスシミュレーション部14へは、シミュレーション入力条件のデータが渡される。プロセスシミュレーション部14から多項式モデル作成部11へは、多項式モデルのシミュレーション結果が返される。
多項式モデル作成部11は、作成した多項式モデルのパラメーターを、多項式モデル最適化部12に渡す。
多項式モデル最適化部12からプロセスシミュレーション部14へは、シミュレーション入力条件のデータが渡される。プロセスシミュレーション部14から多項式モデル最適化部12へは、多項式モデルのシミュレーション結果が返される。
多項式モデル最適化部12は、多項式モデルについて求めた最適解のデータを、リゴラスモデル最適化部13に渡す。
リゴラスモデル最適化部13からプロセスシミュレーション部14へは、シミュレーション入力条件のデータが渡される。プロセスシミュレーション部14からリゴラスモデル最適化部13へは、リゴラスモデルのシミュレーション結果が渡される。
リゴラスモデル最適化部13は、リゴラスモデルに関して求めた最適解のデータを、最適化結果記憶部22に書き込む。
図2は、運転支援装置10全体による処理の手順を示すフローチャートである。なお、このフローチャートは、運転支援装置10による1サイクル分の最適化処理の手順を示すものである。プラント等の運転のためには、所定の時間間隔ごと(例えば、数秒ごと、数十秒ごと、数分ごと、数十分ごと、数時間ごと、数日ごとなど。ただし、これらの時間間隔に限られない。)に、ステップS1からS6までの処理が繰り返し実行される。
ステップS1において、多項式モデル作成部11は、探索空間内における実行可能領域を探索する。
ステップS2において、多項式モデル作成部11は、ステップS1で求められた実行可能領域に基づき、多項式モデルを作成する。多項式モデル作成部11は、得られた多項式モデルの情報を多項式モデル最適化部12に渡す。
ステップS3において、多項式モデル最適化部12は、多項式モデル作成部11から渡された多項式モデルの最適化処理を行う。言い換えれば、多項式モデル最適化部12は、与えられた多項式モデルの制約下で、目的関数の値が最良(例えば、最大あるいは最小)となる解を探索する。なお、多項式モデル最適化部12が最適化処理を行う際の初期解としては、例えば、制御システム30から得られた最新のプロセスデータに対応する探索空間内のポイントである現在の運転ポイントを用いる。運転支援装置10は、制御システム30から、現在の運転ポイントの情報を得て、プロセスデータ記憶部21に格納している。多項式モデル最適化部12は、得られた最適解(当該多項式モデルの最適解)を、リゴラスモデル最適化部13に渡す。
ステップS4において、リゴラスモデル最適化部13は、多項式モデル最適化部12から渡された最適解を基に、最適化処理を行う。言い換えれば、リゴラスモデル最適化部13は、与えられたリゴラスモデルの制約下で、目的関数の値が最良(例えば、最大あるいは最小)となる解を探索する。
ステップS5において、リゴラスモデル最適化部13は、ステップS4で得られた最適解(リゴラスモデルの最適解)を、最適化結果記憶部22に書き込む。
ステップS6において、最適化結果記憶部22に記憶されている最適解が、制御システム30に転送される。具体的には、例えば、最適化結果記憶部22に新たな最適解が書き込まれたことをトリガーとして、不図示の送受信部がその最適解を制御システム30に送信するようにする。あるいは、例えば、最適化結果記憶部22が制御システム30によっても共有されるデータベースであり、所定のトリガーに基づいて制御システム30が最新の最適解を最適化結果記憶部22から読み出すようにする。これにより、制御システム30は、求められた最適解に基づいてプラントを運転する。具体的には、制御システム30は、プラントが所望の状態になるように、プラント内のアクチュエーター等を制御する。
なお、図2に示した処理のうち、ステップS1およびS2の処理と、S2の処理と、S3の処理とのそれぞれでは、多項式モデル作成部11、多項式モデル最適化部12、リゴラスモデル最適化部13が、プロセスシミュレーション部14に対してシミュレーション処理を要求する。その際、多項式モデル作成部11、多項式モデル最適化部12、リゴラスモデル最適化部13の各々は、プロセスシミュレーション部14に対してシミュレーション入力条件を渡す。プロセスシミュレーション部14は、渡された入力条件に従い、要求されたシミュレーションの計算を、多項式モデルあるいはリゴラスモデルを用いて行う。そして、プロセスシミュレーション部14は、求めたシミュレーション結果を、要求元(多項式モデル作成部11、多項式モデル最適化部12、リゴラスモデル最適化部13のいずれか)に返す。
図3は、多項式モデル作成部11が多項式モデルを作成する処理(図2のステップS1)の、より詳細な手順を示すフローチャートである。以下、このフローチャートに沿って説明する。
ステップS11において、多項式モデル作成部11は、プロセスデータ記憶部21から、プロセスデータ(シミュレーション入力条件)や、目的関数(項目(変数等)、パラメーター)や、制約条件(項目(変数等)、項目の上下限値)を取得する。
ステップS12において、多項式モデル作成部11は、リゴラスモデルを用いて、探索空間内における実行可能領域を探索する。実行可能領域はプラント等の運転制約をすべて満たす領域である。具体的には、多項式モデル作成部11は、プロセスデータ記憶部21から取得したプロセスデータに基づく現在の運転ポイントを開始ポイントとして、探索空間内の各方向への探索を行うことによって、実行可能領域を推定する。この現在の運転ポイントは、言い換えれば、外部から与えられる、最適化対象の現在の状態に対応するポイントである。多項式モデル作成部11は、得られた実行可能領域の端点に基づき、多項式モデルにおける制約条件を生成する。一例として、多項式モデル作成部11は、得られた端点集合の凸包(convex hull)を表す不等式を、多項式モデルの制約条件として生成する。なお、端点は、前述の境界ポイントである。また、「端点集合の凸包」は、当該端点集合に含まれるすべての点を含む最小の凸集合である。
なお、具体的には、多項式モデル作成部11は、これらの制約条件を、線形多項式あるいは非線形多項式で表す。本ステップの処理(特に、実行可能領域の探索)については、図4においても説明する。
このように、実行可能領域を推定することにより、モデル作成範囲を限定することができる。言い換えれば、リゴラスモデルに基づく実行可能領域を厳密に求める代わりに、例えば端点集合の凸包等で近似し、その近似された領域を多項式で表すことにより、モデル作成の時間を短縮することができる。
ステップS13において、多項式モデル作成部11は、リゴラスモデルを用いて、多項式モデルを計算する。具体的には、多項式モデル作成部11は、実験計画法を適用し、ステップS12で推定した実行可能領域内のサンプル点を決定する。そして、多項式モデル作成部11は、リゴラスモデルを用いて、サンプル点のシミュレーションを行う。そして、多項式モデル作成部11は、サンプル点のシミュレーション値から、多項式モデルを求める。ここで多項式モデル作成部11が作成する多項式モデルは、目的関数および制約条件とで構成されるものである。即ち、その多項式モデルは、制約条件の下で、目的関数の最適化(関数の最大値または最小値を求める)を行うためのものである。
なお、多項式モデル作成部11は、多項式モデルを求める際に、AIC(Akaike's Information Criterion,赤池情報量基準)や分散分析を用いて変数選択を行うようにしてもよい。
上記の処理手順によれば、予め実行可能領域を得るので、多項式モデル作成部11は、範囲を広げすぎず、必要十分な範囲におけるサンプル点を決定することができる。また、多項式モデル作成部11は、正確なモデルを短時間に作成することができる。
図4は、図3のステップS12における、実行可能領域の探索の処理を示す概略図(探索空間の2次元グラフ)である。図示する空間は、探索対象の空間であり、運転条件を規定する多数の座標軸で構成される多次元空間である。ただし、図4では、探索対象の空間を2次元の空間に射影して(あるいは、3次元目以上の座標軸を省略して)示している。図示する座標軸を、便宜的に、x軸およびy軸と名付ける。同図において、丸印で示すポイントは、現在の運転ポイントであり、このポイントを探索の開始ポイントとする。図内の矢印破線は、上記開始ポイントを起点とする探索方向を示す。図示する例では、2次元の探索空間内に、8方向の探索方向(放射状)が存在する。なお、探索方向の数は任意であり、より多くてもよい。多項式モデル作成部11は、リゴラスモデルに従い、各探索方向への探索を行いながら、探索中の各ポイントが実行可能領域内であるか否かを判断する。それらの判断の結果、多項式モデル作成部11は、各探索方向において、実行完了領域の内側と外側との境界ポイントを発見する。図内の星印で表すポイントが、境界ポイントである。多項式モデル作成部11は、これらの境界ポイントに基づき、実行可能領域を推定することができる。
上では、図4を参照しながら、探索空間が2次元である場合の例を説明した。
探索空間が3次元である場合、開始ポイントからの探索方向は、一例として、方向ベクトル(x,x,x)により表される。ただし、x,x,xは、それぞれ、-1,0,1の3通りのいずれかの値を取り得る。ただし、方向ベクトル(0,0,0)を除外する。この例では、3次元空間において、26通り(3^3-1。ただし、「^」はべき乗演算子。)の方向に探索する。これらは、放射状の方向への探索である。
一般化して、探索空間がN次元(Nは、2以上の整数。)である場合、開始ポイントからの探索方向は、一例として、方向ベクトル(x,x,・・・,x)により表される。ただし、x,x,・・・,xは、それぞれ、-1,0,1の3通りのいずれかの値を取り得る。ただし、方向ベクトル(0,0,・・・,0)(零ベクトル)を除外する。この例では、N次元空間において、(3^N-1)通りの方向に探索する。これらは、放射状の方向への探索である。
なお、N次元の探索空間における探索方向の方向ベクトルを(x,x,・・・,x)とするとき、必ずしもx,x,・・・,xの値を-1,0,1の3通りに限定する必要はない。N次元の探索空間において、他の方向ベクトルで表される方向を、探索方向としてもよい。
つまり、これらの場合、多項式モデル作成部11は、探索空間内の所定の開始ポイントから、探索空間内において偏りのない多数の探索方向への探索を行い、探索方向上の所定のポイントが最適化対象に関して与えられる条件に基づいて実行可能領域の内側あるいは外側のいずれであるかを判断することにより、境界ポイントを特定し、得られた複数の境界ポイントに基づいて前記実行可能領域を推定する。
図5は、多項式モデル最適化部12が、多項式モデルにおける最適化を行う処理(図2のステップS2)の、より詳細な手順を示すフローチャートである。以下、このフローチャートに沿って説明する。
ステップS21において、多項式モデル最適化部12は、プロセスデータ記憶部21から、プロセスデータ(シミュレーション入力条件)や、目的関数(項目(変数等)、パラメーター)や、制約条件(項目(変数等)、項目の上下限値)を取得する。また、多項式モデル最適化部12は、多項式モデル作成部11から多項式モデルを取得する。
ステップS22において、多項式モデル最適化部12は、多項式モデル作成部11から渡された多項式モデルでの最適解を探索する。具体的には、多項式モデル最適化部12は、既知の最適化アルゴリズム(例えば、内点法)を実行することにより、多項式モデル作成部11から渡された多項式モデルを最適化する。例として示した内点法は、実行可能領域の内部を通って最適解へ近づくアルゴリズムである。
ステップS23において、多項式モデル最適化部12は、ステップS22で得られた解の最適性を判断する。その解が最適であると判断された場合(ステップS23:YES)、多項式モデル最適化部12は、本フローチャートの処理を終了し、その解を最適解として出力する。その解が最適ではない判断された場合(ステップS23:NO)、多項式モデル最適化部12は、ステップS22の処理に戻る。なお、解が最適であるか否かを判断する基準は様々であるが、代表的な基準は、解に対する目的関数の勾配がフラットであること、即ち少なくともその解の近傍にはより良い解が存在しないことや、与えられた制約条件が守られていることである。
なお、ここに示した多項式モデル最適化の処理手順の変形例として、複数の初期解から探索を開始して、それぞれの初期解に対応して、多項式モデルに関する最適化計算を行うようにしてもよい。
複数の初期解から最適解の探索を行う場合、得られた複数の解のうち、最も良い解(目的関数の値が最良の解)を最適解として出力する。あるいは、複数の解が得られた場合、それら複数の解を出力するようにしてもよい。
また、運転支援装置10による1サイクル分の処理の処理時間を見積り、処理時間に余裕がある場合に限って、複数の初期解から上記の最適化計算を行うようにしてもよい。また、上記の処理時間の見積りに基づき、処理時間の余裕の度合いに応じた数の初期解から、上記の最適化計算を行うようにしてもよい。
また、多項式モデル作成部11から渡された多項式モデルの性質に基づき、局所解の存在が疑われる場合にのみ複数の初期解から上記の最適化計算を行うようにしてもよい。
これらの処理形態により、多項式モデル最適化部12が局所解を最適解として出力してしまう可能性を減らすことができる。
図6は、リゴラスモデル最適化部13が、リゴラスモデルにおける最適化を行う処理(図2のステップS3)の、より詳細な手順を示すフローチャートである。以下、このフローチャートに沿って説明する。
ステップS31において、リゴラスモデル最適化部13は、プロセスデータ記憶部21から、プロセスデータ(シミュレーション入力条件)や、目的関数(項目(変数等)、パラメーター)や、制約条件(項目(変数等)、項目の上下限値)を取得する。また、リゴラスモデル最適化部13は、多項式モデル最適化部12から最適解を取得する。
ステップS32において、リゴラスモデル最適化部13は、多項式モデル最適化部12から渡される最適解を初期解として、リゴラスモデルを用いて、最適化アルゴリズム(ステップS22と同じく、例えば、内点法)を実行する。
ステップS33において、リゴラスモデル最適化部13は、ステップS32で得られた解の最適性を判断する。その解が最適であると判断された場合(ステップS33:YES)、リゴラスモデル最適化部13は、本フローチャートの処理を終了し、その解を最適解として出力する。その解が最適ではない判断された場合(ステップS33:NO)、リゴラスモデル最適化部13は、ステップS32の処理に戻る。なお、解が最適であるか否かを判断する基準は様々であるが、例えば、ステップS23と同様に、解に対する目的関数の勾配がフラットであることや、与えられた制約条件が守られていることを基準として用いることができる。
なお、ここに示したリゴラスモデル最適化の処理手順の変形例として、複数の初期解から開始して、それぞれの初期解に対応する最適化計算を行うようにしてもよい。複数の初期解からの最適化計算を行うか否かの基準は、例えば、多項式モデル最適化部12において説明した基準と同様のものであってよい。
複数の初期解からリゴラスモデルの最適化を行う場合、一例として、多項式モデル最適化部12が出力する複数の解(第1最適解)を、それぞれ初期解として用いてもよい。
リゴラスモデル最適化部13が複数の初期解から最適解の探索を行った場合、得られた複数の解(第2最適解候補)のうち、最も良い解(目的関数の値が最良の解)を最適解(第2最適解)として出力する。
以上、説明したように、本フローチャートによるリゴラスモデル最適化部13の処理は、多項式モデル最適化部12から渡される最適解を初期解として用いる。つまり、多項式モデル最適化部12が行った最適化処理により、多項式モデル最適化部12が出力する最適解(リゴラスモデル最適化部13にとっては初期解)は、リゴラスモデル最適化部13が求めるべき初期解の近傍に存在する可能性が高い。言い換えれば、リゴラスモデル最適化部13が求めるべき最適解は、与えられる初期解の近傍にあると期待される。したがって、リゴラスモデル最適化部13は、他の初期解から最適化計算を開始する場合と比較して、少ない計算量で最適化計算を行うことができる。リゴラスモデルによる最適化処理は、そもそも計算量が多い処理であり、この部分の処理時間を短縮できることは、運転支援装置10の処理全体の時間短縮に大きく貢献する。
[適用例]
本実施形態の運転支援装置10の適用例を説明する。
運転支援装置10は、プラントを制御する制御システム30と協調動作する。プラントは、例えば、原料やエネルギーを投入することによって生産物を生産するシステムである。運転支援装置10は、例えば、次に列挙する項目を扱うことによってプラントの運転のための最適解を求める。なお、項目は、モデルを構成する数式等における値(変数値や定数値)に対応付けられる。
項目は、プラントに投入する原料の種類ごとの、性状や、量や、価格(単価)等を含んでもよい。また、項目は、投入するエネルギー(電気や燃料等)の種類ごとの、性状や、量や、価格(単価)等を含んでもよい。なお投入原料と投入エネルギーとを併せて「投入資源」と呼ぶ場合がある。
また、項目は、生産物(中間生産物あるいは副産物を含む)の種類ごとの、性状や、量や、価格(単価)等を含んでもよい。
なお、上記の「性状」は、物の、成分や、硬度や、粘度や、透明度や、色相や、物理的あるいは化学的性質を示す数値情報等を含んでもよい。
また、項目は、投入原料の輸送費の価格や、生産物の輸送費の価格等を含んでもよい。
なお、投入資源(投入原料や投入エネルギー)に関して、価格とは、調達価格である。また、生産物に関して、価格とは、販売価格である。
上記の調達価格や販売価格は、取引実績価格や、現物相場価格や、先物相場価格等を含んでもよい。また、これらの価格の情報に関して、価格相場の見通しや、投入資源あるいは生産物の需給バランス見通しに関する数値を項目として含んでもよい。
また、項目は、資金コスト(資金調達金利)や、手形の割引率や、設備の減価償却費等を含んでもよい。
また、項目は、プラントの各プロセスにおける状態を含んでもよい。状態とは、温度や、圧力や、流量や、バルブ開量等を含む。
モデルに含まれる制約条件は、上記の各項目間の関係を表す等式あるいは不等式で構成される。より具体的には、次の通りである。
制約条件は、プラント内のプロセスごとの投入資源の量と、生産される生産物の量との関係を表す数式を含んでもよい。
また、制約条件は、プラント内のプロセスごとの運転条件に関する数式を含んでもよい。
また、制約条件は、投入資源の量と、コスト(金額)との関係を表す数式を含んでもよい。
また、制約条件は、生産物の量と、売上(金額)との関係を表す数式を含んでもよい。
また、制約条件は、コスト(資金コストも含む)と、売上と、収益との関係を表す数式を含んでもよい。
また、モデルに含まれる目的関数は、最適化することによって望まれる対象である数値を出力する関数である。典型的には、例えば、プラント等の生産設備が生み出す収益(言い換えれば、付加価値)の値に関する目的関数を用いることができる。
つまり、上記適用例では、最適化対象は、生産プロセスである。具体的には、運転支援装置10は、目的関数(収益)を最適化するために、生産プロセスにおけるアクチュエーター等の制御値の集合を最適化する。また、その最適化対象に関して運転支援装置10が取得するデータは、生産プロセスを制御する制御システム30から与えられるものである。また、リゴラスモデル最適化部13によって求められた最適解(第2最適解)は、制御システム30に渡される。
次に、上記実施形態のさらなる変形例について説明する。下記の変形例により運転支援装置を実施することも可能である。なお、組み合わせることが可能な限りにおいて、以下で説明する複数の変形例を組み合わせて実施してもよい。
[第1変形例]
上記の実施形態では、多項式モデル作成部11による実行可能領域の探索を1度だけ行い、多項式モデル最適化部12がその実行可能領域に基づいて作成された多項式モデルの最適化を行った。そして、多項式モデル最適化部12が求めた最適解を、リゴラスモデルの最適化の初期解とした。そして、リゴラスモデル最適化部13がリゴラスモデルの最適化を行った。
本変形例では、代わりに、多項式モデル作成部11による実行可能領域の探索を複数回行うようにする。つまり、多項式モデル作成部11は、第m回目(m≧1)の実行可能領域の探索によって得られた領域に基づき、第(m+1)回目の実行可能領域の探索を行う。これにより、合計M回(M≧2であり、Mの値は適宜定められる。)の実行可能領域の探索を行い、M回で得られた実行可能領域に対応する多項式モデルを作成する。
あるいは、上記の回数Mを予め定める代わりに、第m回目(m≧1)の探索によって求められた実行可能領域と、第(m+1)回目の探索によって求められた実行可能領域との差の量が所定量以下になるまで、実行可能領域の探索を繰り返すようにしてもよい。これは、言い換えれば、求める実行可能領域が収束するまで、実行可能領域の探索を続ける方式である。ここで、2つの実行可能領域の間の差の量(指標値)は、予め定められた計算式等によって算出されるものである。
つまり、多項式モデル作成部11は、第1回目の範囲探索処理を、所定の開始ポイントから行うことによって暫定的実行可能領域を推定し、第m回目(m≧1)の範囲探索処理によって推定された暫定的実行可能領域に基づく第2開始ポイントから、第(m+1)回目の範囲探索処理を行うことによってさらに暫定的実行可能領域を推定し、所定条件を満たすまで範囲探索処理を繰り返して得られた暫定的実行可能領域を、推定された実行可能領域とするものである。
なお、実行可能領域を求めた後の処理は、既に述べた通りである。つまり、本変形例は、実行可能領域の精度を逐次的に上げていくことを意図する。
本変形例によって実行可能領域の推定を行う際、前回の探索で得られた実行可能領域に基づいて定まる所定のポイントを、探索の開始ポイントとする。つまり、第m回目(m≧1)の探索によって求められた実行可能領域に基づき、第(m+1)回目の探索の開始ポイントを次のように定める。
探索の開始ポイントの定め方(その1):第m回目の探索によって求められたN次元(N≧2)の実行可能領域(暫定的実行可能領域)の重心を、第(m+1)回目の探索の開始ポイント(第2開始ポイント)とする。
探索の開始ポイントの定め方(その2):第m回目の探索によって求められたN次元(N≧2)の実行可能領域の各次元における最大値および最小値の中点を、第(m+1)回目の探索の開始ポイントの各次元における座標値とする。即ち、第m回目の探索によって求められた実行可能領域が存在する第i次元(1≦i≦N)の最小値と最大値とをそれぞれx(i,min)およびx(i,max)とする。このとき、第i次元における上記の中点x(i,mid)は、x(i,mid)=(x(i,min)+x(i,max))/2 である。そして、第(m+1)回目の探索の開始ポイントは、(x(1,mid),x(2,mid),・・・,x(N,mid))である。
ただし、いずれの方法を用いる場合も、第1回目の探索の開始ポイントは、現在の運転ポイント、あるいは他の適宜選択されたポイントとする。
[第2変形例]
第1変形例と組み合わせて、この第2変形例を用いてもよい。
既に述べたように、第m回目(m≧1)の探索により得られた実行可能領域に基づいて、新たな探索を行うことによって、第(m+1)回目の探索による実行可能領域を求める。このとき、第(m+1)回目の探索の方向は次の通りである。即ち、第m回目までの探索で既に求まっている実行可能領域のすべての端点を含む凸包の面のうち、最大の大きさ(面積)の面を選択する。そして、探索の開始ポイントは、前回探索の開始ポイントと同一のポイント、前回得られている実行可能領域の重心のポイント、あるいは前回得られている実行可能領域の各座標方向における中点(前述)を座標とするポイント等とする。そして、探索の方向は、上記開始ポイントから、上で選択した最大の大きさの面の中心(例えば、重心)への方向とする。
つまり、上記の第(m+1)回目(m≧1)の範囲探索処理は、第2開始ポイントから、第m回目の前記範囲探索処理によって推定された実行可能領域のすべての端点を含む凸包に含まれる所定の面の上の1点に向かう探索方向への探索を行い、その探索方向上の所定のポイントが最適化対象に関して与えられる条件に基づいて実行可能領域の内側あるいは外側のいずれであるかを判断することにより、境界ポイントを特定し、得られた境界ポイントに基づいて暫定的実行可能領域を推定する。
また、上記の所定の面は、凸包に含まれる面のうち最もサイズの大きい面である。
また、上記の所定の面の上の1点は、当該所定の面の重心である。
なお、第2変形例において、探索の回数は任意に定めることができる。
また、探索の回数を予め定めず、所定の基準を満たすまで探索を繰り返すようにしてもよい。その基準とは、例えば、次の(a)または(b)である。
(a)新たな探索によっても上記凸包の体積が増加しない状態になった。
(b)上記凸包を構成する面のうち、最大の面の大きさが所定の閾値よりも小さくなった。
なお、凸包の体積や、凸包を構成する面の大きさは、計算可能である。
[第3変形例]
本変形例では、多項式モデル作成部11が作成する多項式モデルに特徴がある。
上記実施形態でも述べたように、多項式モデル作成部11は、推定された実行可能領域の端点に基づき、多項式モデルにおける制約条件を生成する。本変形例では、多項式モデル作成部11は、実行可能領域の範囲を表す面を、楕円(超楕円)や凸多面体(超多面体)で近似することにより多項式モデルの制約条件を生成する。
多項式モデル作成部11が実行可能領域を楕円(超楕円)で近似表現することにより、実行可能領域が凸になるとともに、多項式モデルのパラメーターを比較的簡単に求められるという利点がある。
多項式モデル作成部11が実行可能領域を凸多面体(凸超多面体)で近似表現する場合も、実行可能領域が凸になる。また、凸多面体で表現する場合には、楕円で表現する場合よりも精密に実行可能領域を表現できる。ただし、凸多面体で表現する場合には、楕円で表現する場合よりも、式の数(制約条件の数)が多くなり、最適化計算等により多くの時間がかかる可能性もある。
つまり、多項式モデル作成部11は、推定された実行可能領域に関する条件の少なくとも一部を、探索空間内の楕円(超楕円)を表す数式で近似した条件として多項式モデルを作成してもよい。
また、多項式モデル作成部11は、推定された実行可能領域に関する条件の少なくとも一部を、探索空間内の凸多面体(凸超多面体)を表す数式で近似した条件として多項式モデルを作成してもよい。
また、多項式モデル作成部11は、実行可能領域を楕円で近似表現した制約条件と、凸多面体で近似表現した制約条件と、その他の多項式で表現した制約条件とが混在する多項式モデルを生成してもよい。
本変形例では、多項式モデル作成部11は、実行可能領域を、楕円または凸多面体で近似表現した制約条件を少なくとも含んだ多項式モデルを生成するため、多項式モデル最適化部12による最適化計算が速くなるという利点がある。実行可能領域を近似表現することにより、多項式モデル最適化部12が求めた最適解が真の最適解から遠ざかる可能性はあるが、その場合にも、後段のリゴラスモデル最適化部13が厳密な最適化を求めて出力する。よって、より短時間の計算で、精度の高い最適解が得られる場合がある。
ただし、多項式モデル最適化部12における計算時間の短縮と、リゴラスモデル最適化部13における計算時間の増加とのトレードオフとなる状況もあり得るため、適宜、望ましい形態を選択して実施するようにする。
上述した実施形態および変形例において、制御システム30は、運転支援装置10から渡される最適解のデータに基づいて、生産プロセス(一例として、石油化学工場)を制御する。具体的には、制御システム30は、取得した最適解のデータに基づいて、バルブの開閉等を行ったり熱源の発熱量を増加ないしは減少させたりすることにより、生産プロセス内の各種材料等の圧力や流量や温度などが所望の状態になるように制御する。
なお、上述した実施形態および変形例における運転支援装置の少なくとも一部の機能をコンピューターで実現するようにしても良い。その場合、この機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピューターシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM、DVD-ROM、USBメモリー等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、一時的に、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリーのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
以上説明したように、本実施形態およびその変形例によれば、運転支援装置10は、多項式モデル作成部11が多項式モデルを作成し、多項式モデル最適化部12がその多項式モデルを最適化する。これにより、短縮された計算時間で厳密な最適解に近付くことができる。また、多項式モデル最適化部12が出力した最適解を開始ポイントとして、リゴラスモデル最適化部13は、厳密な最適解を算出する。多項式モデル最適化部12から与えられる最適解(リゴラスモデル最適化部13にとっては初期解)が、厳密な最適解に近いことが期待されるため、リゴラスモデル最適化部13による最適化処理に要する時間は比較的短く済む。これらにより、運転支援装置10は、全体として短い計算時間で、厳密な最適解を算出することができる。これにより、運転支援装置10は、より短いターンアラウンド時間で、厳密な、精度の高い最適解を制御システム30に返すことができる。
また、本実施形態およびその変形例によれば、運転支援装置10は、例えば複数の初期解から最適化を行うことにより、大域的最適解を得られる可能性を高めることができる。
また、本実施形態およびその変形例において、運転支援装置10は、実行可能領域を楕円または凸多面体に近似することにより、大域的最適解を得られる可能性を高めることができる。
つまり、運転支援装置10は、最適な運転条件を提供することができる。
これにより、制御システム30は、精度のよい最適解を用いて制御対象(プラント等)を制御することができる。また、制御システム30は、望まれる時間内に確実に上記最適解を得ることができる。また、制御システム30は、必要に応じてより高い頻度で、言い換えればより高いリアルタイム性を以て、最適化制御のサイクルを回すことが可能となる。あるいは、制御システム30は、例えば、プラントワイド最適化など、リアルタイムオプティマイゼーションの対象範囲を広げることが可能となる。ひいては、制御システム30の制御対象(プラント等)は、より良好に稼働する。例えば最適化の目的関数が収益である場合、制御対象がより高収益を上げることが可能となる。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
また、実施形態の説明において、探索空間内の部分空間(あるいは部分領域、部分集合)を説明する際に、楕円、多面体などといった用語を用いている部分があるが、これは、部分空間を便宜的に2次元ないしは3次元の空間に例えた表現である。楕円、多面体等の用語は、探索空間の次元数(N次元。Nは2以上。)に合わせて、超楕円、超多面体等と解釈されるべきものである。
また、特許請求範囲の記載におけるこれらの用語の解釈についても、同様である。
本発明は、例えば、工業的過程の制御に利用可能である。一例として、化学プラントに利用可能である。ただし、本発明の適用分野は、ここに例示したものには限定されない。
10…運転支援装置(最適化装置)、11…多項式モデル作成部、12…多項式モデル最適化部、13…リゴラスモデル最適化部、14…プロセスシミュレーション部、21…プロセスデータ記憶部、22…最適化結果記憶部、30…制御システム

Claims (15)

  1. 最適化対象に関して与えられるデータに基づき、前記最適化対象に関するリゴラスモデルを用いて探索空間内の実行可能領域を推定し、推定した前記実行可能領域内のサンプル点を決定し、前記リゴラスモデルを用いて前記サンプル点のシミュレーションを行うことにより、推定された実行可能領域に対応する多項式モデルを作成する多項式モデル作成部と、
    前記多項式モデル作成部によって作成された前記多項式モデルを用いて、与えられる目的関数の最適化を行い、前記多項式モデルにおける第1最適解を求める多項式モデル最適化部と、
    前記多項式モデル最適化部から渡される前記第1最適解に基づき、前記リゴラスモデルを用いて、与えられる目的関数の最適化を行い、前記リゴラスモデルにおける第2最適解を求めるリゴラスモデル最適化部と、
    を具備する最適化装置。
  2. 前記多項式モデル作成部は、前記探索空間内の所定の開始ポイントから、前記探索空間内において隣接探索方向との間で均等な角度を成す複数の探索方向への探索を行い、前記探索方向上の所定のポイントが前記最適化対象に関して与えられる条件に基づいて実行可能領域の内側あるいは外側のいずれであるかを判断することにより、境界ポイントを特定し、得られた複数の前記境界ポイントに基づいて前記実行可能領域を推定する、
    請求項1に記載の最適化装置。
  3. 前記所定の開始ポイントは、外部から与えられる、前記最適化対象の現在の状態に対応するポイントである、
    請求項2に記載の最適化装置。
  4. 前記多項式モデル作成部は、
    第1回目の範囲探索処理を、所定の開始ポイントから行うことによって暫定的実行可能領域を推定し、
    第m回目(m≧1)の前記範囲探索処理によって推定された前記暫定的実行可能領域に基づく第2開始ポイントから、第(m+1)回目の範囲探索処理を行うことによってさらに暫定的実行可能領域を推定し、
    所定条件を満たすまで前記範囲探索処理を繰り返して得られた前記暫定的実行可能領域を、推定された前記実行可能領域とするものである、
    請求項1に記載の最適化装置。
  5. 第(m+1)回目(m≧1)の前記範囲探索処理における前記第2開始ポイントは、第m回目の前記範囲探索処理で推定された前記暫定的実行可能領域の重心である、
    請求項4に記載の最適化装置。
  6. 第(m+1)回目(m≧1)の前記範囲探索処理は、前記第2開始ポイントから、第m回目の前記範囲探索処理によって推定された前記実行可能領域のすべての端点を含む凸包に含まれる所定の面の上の1点に向かう探索方向への探索を行い、前記探索方向上の所定のポイントが前記最適化対象に関して与えられる条件に基づいて実行可能領域の内側あるいは外側のいずれであるかを判断することにより、境界ポイントを特定し、得られた前記境界ポイントに基づいて前記暫定的実行可能領域を推定する、
    請求項4または5に記載の最適化装置。
  7. 前記所定の面は、前記凸包に含まれる面のうち最もサイズの大きい面である、
    請求項6に記載の最適化装置。
  8. 所定の面の上の1点は、当該所定の面の重心である、
    請求項6または7に記載の最適化装置。
  9. 前記多項式モデル作成部は、推定された前記実行可能領域に関する条件の少なくとも一部を、前記探索空間内の楕円を表す数式で近似した条件として前記多項式モデルを作成する、
    請求項1から8までのいずれか一項に記載の最適化装置。
  10. 前記多項式モデル作成部は、推定された前記実行可能領域に関する条件の少なくとも一部を、前記探索空間内の凸多面体を表す数式で近似した条件として前記多項式モデルを作成する、
    請求項1から9までのいずれか一項に記載の最適化装置。
  11. 前記多項式モデル最適化部は、複数の初期解を開始ポイントとして、前記多項式モデルに関する最適化を行う、
    請求項1から10までのいずれか一項に記載の最適化装置。
  12. 前記リゴラスモデル最適化部は、複数の前記第1最適解を開始ポイントとして、前記リゴラスモデルにおける複数の第2最適解候補を求め、これら複数の第2最適解候補のうちの最良の解を前記第2最適解として求める、
    請求項11に記載の最適化装置。
  13. 前記最適化対象は、生産プロセスであり、
    前記最適化対象に関して与えられるデータは、前記生産プロセスを制御する制御システムから与えられるものであり、
    前記リゴラスモデル最適化部によって求められた前記第2最適解は、前記制御システムに渡される、
    請求項1から12までのいずれか一項に記載の最適化装置。
  14. 最適化対象に関して与えられるデータに基づき、前記最適化対象に関するリゴラスモデルを用いて探索空間内の実行可能領域を推定し、推定した前記実行可能領域内のサンプル点を決定し、前記リゴラスモデルを用いて前記サンプル点のシミュレーションを行うことにより、推定された実行可能領域に対応する多項式モデルを作成する多項式モデル作成過程と、
    前記多項式モデル作成過程によって作成された前記多項式モデルを用いて、与えられる目的関数の最適化を行い、前記多項式モデルにおける第1最適解を求める多項式モデル最適化過程と、
    前記多項式モデル最適化過程で求められた前記第1最適解に基づき、前記リゴラスモデルを用いて、与えられる目的関数の最適化を行い、前記リゴラスモデルにおける第2最適解を求めるリゴラスモデル最適化過程と、
    を含む最適化方法。
  15. コンピューターを、
    請求項1から13までのいずれか一項に記載の最適化装置、
    として機能させるためのプログラム。
JP2018118300A 2018-06-21 2018-06-21 最適化装置、最適化方法、およびプログラム Active JP7115059B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018118300A JP7115059B2 (ja) 2018-06-21 2018-06-21 最適化装置、最適化方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018118300A JP7115059B2 (ja) 2018-06-21 2018-06-21 最適化装置、最適化方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2019220028A JP2019220028A (ja) 2019-12-26
JP7115059B2 true JP7115059B2 (ja) 2022-08-09

Family

ID=69097037

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018118300A Active JP7115059B2 (ja) 2018-06-21 2018-06-21 最適化装置、最適化方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP7115059B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002230514A (ja) 2000-11-14 2002-08-16 Honda R & D Europe (Deutschland) Gmbh 進化的最適化方法
JP2010152851A (ja) 2008-12-26 2010-07-08 Yamaha Motor Co Ltd 多目的最適化装置、多目的最適化方法および多目的最適化プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002230514A (ja) 2000-11-14 2002-08-16 Honda R & D Europe (Deutschland) Gmbh 進化的最適化方法
JP2010152851A (ja) 2008-12-26 2010-07-08 Yamaha Motor Co Ltd 多目的最適化装置、多目的最適化方法および多目的最適化プログラム

Also Published As

Publication number Publication date
JP2019220028A (ja) 2019-12-26

Similar Documents

Publication Publication Date Title
US11288602B2 (en) Computer-based systems, computing components and computing objects configured to implement dynamic outlier bias reduction in machine learning models
US10846643B2 (en) Method and system for predicting task completion of a time period based on task completion rates and data trend of prior time periods in view of attributes of tasks using machine learning models
Holmes et al. Fast nonparametric conditional density estimation
US8275762B2 (en) Reverse mapping of feature space to predict execution in a database
Gonon et al. Deep ReLU network expression rates for option prices in high-dimensional, exponential Lévy models
Kawai et al. Kriging-model-based uncertainty quantification in computational fluid dynamics
US10074142B1 (en) Computational architecture and method for a time-varying control system
US20220137565A1 (en) Tuning pid parameters using causal models
Wilkens et al. Quantum computing for financial risk measurement
Geoga et al. Fitting Matérn smoothness parameters using automatic differentiation
US20200097439A1 (en) Systems and methods for improving the interpretability and transparency of machine learning models
JP2023537697A (ja) 等式制約を代数モデルに課すための射影方法
Rubio et al. Real-time data assimilation and control on mechanical systems under uncertainties
JP7115059B2 (ja) 最適化装置、最適化方法、およびプログラム
Dellnitz et al. Efficient time-stepping for numerical integration using reinforcement learning
Giribone et al. Option pricing via radial basis functions: Performance comparison with traditional numerical integration scheme and parameters choice for a reliable pricing
Alqezweeni et al. Solution of partial differential equations on radial basis functions networks
US8423334B2 (en) Distributed model identification
Kvasnica et al. Real-time implementation of explicit model predictive control
Han et al. A kriging-based active learning algorithm for contour estimation of integrated response with noise factors
Djeumou et al. Task-guided inverse reinforcement learning under partial information
Bisong et al. Linear Regression
Wang Optimal Bayesian demand learning over short horizons
JP6999207B1 (ja) データ解析方法、データ解析装置、及び、データ解析プログラム
Blanchet et al. Malliavin-based multilevel Monte Carlo estimators for densities of max-stable processes

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220401

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220628

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220711

R150 Certificate of patent or registration of utility model

Ref document number: 7115059

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150