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