パイプライン・オプティマイザ・システム
【課題】パイプライン・オプティマイザ・システムを提供することである。
【解決手段】
本発明の一実施形態は、遺伝的アルゴリズムを使用することによって、パイプライン動作の様々な様相を最適化する方法を提供する。概して、遺伝的アルゴリズムは、終了条件が満足されるまで、連続した世代にわたって実現可能なソリューションの集団を進化させるために使用される。各ソリューションは、パイプラインシステムの実現可能な動作状態を指定する。現存するソリューションは連続した世代にわたって修正され、集団内の識別されたソリューションは各々の連続世代で除去される。反復された世代にわたって、集団内のソリューションは改善される。一度、最適化生成ソリューションが生成されると、直接圧力最適化プロセスを使用して、最適化圧力ソリューションが生成されてもよい。
【解決手段】
本発明の一実施形態は、遺伝的アルゴリズムを使用することによって、パイプライン動作の様々な様相を最適化する方法を提供する。概して、遺伝的アルゴリズムは、終了条件が満足されるまで、連続した世代にわたって実現可能なソリューションの集団を進化させるために使用される。各ソリューションは、パイプラインシステムの実現可能な動作状態を指定する。現存するソリューションは連続した世代にわたって修正され、集団内の識別されたソリューションは各々の連続世代で除去される。反復された世代にわたって、集団内のソリューションは改善される。一度、最適化生成ソリューションが生成されると、直接圧力最適化プロセスを使用して、最適化圧力ソリューションが生成されてもよい。
【発明の詳細な説明】
【技術分野】
【0001】
一般的に、パイプラインシステムは、1つの点から他の点、通常は1つ(又は複数)の生産又は処理点から他の点又は使用点へ液体又は気体の原材料を運送する連続パイプ導管を提供する。パイプ導管は、機器、例えば、弁、圧縮機ステーション、通信システム、及び計量器で完結する。例えば、図1は、気体窒素パイプライン及び並行して走る気体酸素パイプラインの双方を含む二重パイプラインシステムを示す。パイプライン・ルートに沿った様々な場所で多数のプラントが示され、空気分離器、圧縮機、昇圧機、調整器、及び他の機器要素(equipment elements)が、原材料をパイプラインの中へ導入するように動作する。
【背景技術】
【0002】
図1で示されるようなパイプラインシステムの動作を最適化することは、複雑な仕事である。特に、パイプラインシステムを最適化して、様々なノードの電力コスト、再構成可能な要素(reconfigurable elements)(例えば、パイプラインの特定のノードで圧力又は流れを増加するか、圧力又は流れを減少するように働くことのできるパイプライン要素)、及び様々なノードにおける契約義務出力及び圧力要件を説明することは、困難な仕事であることを証明した。市販されているパイプライン最適化システムは、概して、複雑なパイプラインシステムを構成するための満足なソリューションを提供することができなかった。特に、市販されているパイプライン最適化システムは、パイプラインを動作させるときの動作コストに大きな影響を与える様々な要因を説明することができなかった。例えば、現在利用可能な最適化システムは、2つ以上の原材料を運送するように構成されたパイプラインシステム(例えば、図1で示される二重パイプラインシステム)を説明しなかった。それらの最適化システムは、クライアント契約の全ての特徴(例えば、パイプライン動作の生産面からの「テーク・オア・ペイ契約」及びパイプライン動作の配送面からの最小圧力/流量の双方)を説明しなかった。また、それらの最適化システムは、再構成可能なネットワーク要素の構成を最適化しなかった。その代わりに、そのようなシステムは、しばしば、多様なこれらの変数を制約し、パイプライン動作の隔離された様相(aspect)を最適化することを求め、他の様相が独立に最適化されることを仮定する。しばしば、これは次善のソリューションを導いてきた。更に、現在のシステムが高品質のソリューションを識別できることを証明したときでも、しばしば、合理的な時間量の中でそれを行うことはできない。
【発明の開示】
【0003】
したがって、パイプラインシステムの動作を最適化する手法の必要性が残る。典型的には、最適化プロセスはパイプライン動作の許容状態を識別するために使用されるべきである。このような許容状態は、動作要件、物理的能力を満足させ、動作コスト、最も注目すべきものとして電力消費を最小にする。
【0004】
一実施形態において、本発明はパイプライン動作をシミュレーション及び最適化することに関する。本発明の一実施形態は、パイプラインシステムの動作を最適化する方法を含む。方法は、概して、入力データを読み取ことであって、入力データが最適化されるべきパイプラインシステムを記述することと、ソリューションの集団を生成することであって、集団内のソリューションの各々がパイプラインシステムについて実現可能な状態を指定することとを含む。方法は、概して、更に、入力データによって指定された終了条件が満足されるまで、集団の上で遺伝的最適化プロセスを実行することと、集団内のソリューションに対して、最良の評価を有する最適化生産ソリューションを選択することとを含む。
【0005】
一度、最適化された生産ソリューションが生成されると、方法は、概して、更に、最適化された生産ソリューションのために、直接圧力最適化プロセスを使用して、パイプラインシステムの1つ以上の配送点に存在する出力圧力及びパイプラインシステムの1つ以上の生産ノードにおける入力圧力を指定する最適化圧力ソリューションを生成することを含む。
【0006】
遺伝的最適化プロセスを実行することは、概して、集団内の少なくとも1つのソリューションによって指定された実現可能な動作状態の少なくとも1つの様相(aspect)を修正すること、修正されたソリューションによって指定された動作状態に従って、パイプラインシステムの動作をシミュレーションすること、及び修正されたソリューションのパフォーマンスを評価することを含む。最適化プロセスは、概して、更に、修正されたソリューションを集団へ追加すること、及び最悪の評価を有するソリューションを集団から除去することを含む。
【0007】
特定の実施形態において、ソリューションの初期集団は、第1の群のソリューション及び第2の群のソリューションを含んでもよい。概して、第1の群のソリューションは発見的規則に従って生成されてもよく、第2の群のソリューションはランダム・プロセスを使用して生成されてもよい。
【0008】
特定の実施形態において、ソリューションによって指定された実現可能動作状態の少なくとも1つの様相を修正することは、概して、ソリューション修正手法を選択することと、選択されたソリューション修正手法に従って修正すべき少なくとも1つのソリューションを集団から選択することとを含んでもよい。
【0009】
任意の数のソリューション修正手法が使用されてもよい。例えば、1つのソリューション修正手法は集団内のソリューションをランダムに修正することを含み、他の手法は発見的規則に基づいてソリューションを修正することを含み、第3の手法は2つ以上のソリューションを交雑することを含む。更に、入力データは、使用されるときに現実世界のパイプラインシステムへ関連づけられてもよいので、入力データは、パイプラインシステムの現在の現実世界動作状態を記述するシステム状況データベースから来てもよい。入力データは、構造化形式、例えば、データを記述するために広く使用される拡張可能マークアップ言語(XML)で提供されてもよい。
【0010】
他の実施形態は、パイプラインシステムの動作を最適化する方法を含む。方法は、概して、遺伝的アルゴリズム最適化手法を使用し、パイプラインシステムへ供給される原材料の生産について、最適化された生産ソリューションを生成し、シード・ソリューションの集団を最適化することを含む。遺伝的アルゴリズム最適化手法は、シード・ソリューションの集団を最適化し、前述した手法に従って、最適化された生産ソリューションを生成するように構成されてもよい。方法は、概して、更に、最適化された生産ソリューションのために、直接圧力最適化手法を使用して、パイプラインシステムの1つ以上の配送点に存在する出力圧力及びパイプラインシステムの1つ以上の生産ノードで生成すべき入力圧力を指定する最適化圧力ソリューションを生成することを含む。
【0011】
特定の実施形態において、1つ以上の配送点の出力圧力は、それぞれの配送点の要求最小配送圧力と、パイプラインシステムのそれぞれの生産ノードに許容される最大入力圧力との中にある。
【0012】
本発明の性質及び目的を更に理解するためには、添付の図面と結びつけて下記の詳細な説明を参照すべきである。図面において、同様の要素は、同一又は類似の参照数字を与えられる。
【図面の簡単な説明】
【0013】
【図1】既存のパイプラインシステムを示す地図である。
【図2】本発明の一実施形態に従って、パイプラインシステムの動作的様相を最適化するために使用されるシステムを示す。
【図3A】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3B】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3C】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3D】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3E】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3F】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3G】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図4】本発明の一実施形態に従って、図2で示されるパイプライン最適化アプリケーションの中に含まれる入力モジュールの収集物を示す。
【図5】本発明の一実施形態に従って、図2で示されるパイプライン最適化アプリケーションの中に含まれる最適化モジュールの収集物を示す。
【図6】本発明の一実施形態に従って、パイプラインの動作の様相を最適化する方法を示す。
【図7】本発明の一実施形態に従って、パイプラインの動作の様相を最適化するために使用される最適化プロセスを実行する方法を示す。
【図8】本発明の一実施形態に従って、パイプラインの動作をシミュレーションする方法を示す。
【図9】本発明の一実施形態に従って、直接圧力最適化モジュールの動作を示す。
【発明を実施するための形態】
【0014】
本発明の実施形態は、パイプライン動作の様々な様相を最適化するために使用されるコンピュータ化された最適化システムを提供する。一般的に、「最適化」の用語は、本明細書では、通常、電力又は他の動作コストに関して、パイプライン動作の他の状態よりも優れた状態の変化を記述するために使用される。本発明の実施形態は、パイプラインの動作制約を満足させる問題に対して、低コスト・ソリューションを識別するために使用される最適化システムを提供する。しかし、本発明の実施形態は、パイプライン構成に対して、最適又は最良ソリューションを識別するようには要求されないことに注意すべきである。その代わりに、最適化の用語は、一般的に、困難な問題に対して、合理的な時間量の中で、許容できるソリューションを発見することを意味する。
【0015】
一実施形態において、最適化システムは、最適化問題の高品質ソリューションを探索するように構成されたソフトウェア・アプリケーションである。パイプラインシステムの場合、最適化システムは機器の設定及び構成を探索する。これらの機器の設定及び構成は、顧客及び動作要件を満足させ、同時に電力コストを最小にする
最適化システムによって識別又は生成される最適化の例は、異なるプラント間で生産を移行することによって電力コストを低減すること、圧縮機の設定を最適化すること、多数の機能を実行するパイプライン要素の構成、及びシステム動作上の制約を満足させることを含む。こうして、最適化システムは、パイプラインを作動させるために必要な電力コストを最小にし、同時にパイプラインの様々なノードに位置する顧客へ契約義務吐き出し圧力(原材料の流れ)を提供するために使用されてもよい。
【0016】
一実施形態において、動作制約は、「ハード」制約及び「ソフト」制約の双方を含む。ハード制約は、ソリューションが実現可能と見なされるとすれば、最適化問題のソリューションが満足させなければならない要件である。例えば、ソリューションは要求された圧力で生産物をクライアントへ配送し、同時にパイプラインのいずれかの部分で最大圧力のハード制約を超過する場合がある。ハード制約の妨害は、ソリューションを実現不可能にする。ハード制約の追加の例は、パイプラインの区分における最小及び最大の圧力と流れ、調整器の弁の最大開放、プラントのオン又はオフを要求する制約、及び圧縮機モデルの物理的制限を含む。
【0017】
ソフト制約は、満足させることが望ましいパイプライン・パフォーマンス上の制約であるが、ソリューションを実現可能にするためにソフト要件を満足させることは要求されない。例えば、ソフト制約は、プラントにおけるガス抜きを低減することであってもよい。ガス抜きが起こらなければならない多くの状況が存在するが、ガス抜きがソリューションを無効にしない限り、ガス抜きを最小にする要件は、ハード制約ではなくソフト制約である。ソフト制約の他の例は、「テーク・オア・ペイ」協定である。その場合、パイプライン作業者は、使用したか否かに関わらず、利用可能な生産物又は原材料について支払わなければならない。ソフト制約の場合、特定のパイプライン構成の他の効率が、生じたペナルティを補償するならば、そのような構成は許容できるか、好ましくさえもある。
【0018】
本発明の実施形態は、本明細書において、気体酸素(GOX又はO2)及び気体窒素(GAN又はN2)の双方を運送するために構成された二重パイプライン・ネットワークの動作に関して説明される。即ち、本発明の実施形態は、図1の地図で示されたパイプラインシステムに関して説明される。しかし、当業者は、本発明の実施形態が、O2又はN2以外の原材料を含む3つ以上(又は1つ以下)の原材料を運送するために構成されたパイプライン・ネットワークのパイプライン動作を最適化するように適合されてもよいことを認識するであろう。
【0019】
図2は、本発明の一実施形態に従ってパイプラインシステムの動作的様相を最適化するために使用されるシステム200を示すブロック図である。一般的に、システム200で例示されたコンポーネントは、既存のコンピュータ・システム、例えば、デスクトップ・コンピュータ、サーバ・コンピュータ、ラップトップ・コンピュータ、タブレット・コンピュータなどのために構成されたコンピュータ・ソフトウェア・アプリケーションとして実現されてもよい。しかし、本明細書で説明されるソフトウェア・アプリケーションは、特定のコンピューティング・システムに限定されず、利用可能となったときの新しいコンピューティング・システムを利用するように適応されてもよい。更に、システム200は、マルチプロセッシング環境、例えば、複数のCPUを有するシステム、及び分散及び並列システム、例えば、コンピューティング・クラスタ又はグリッドで使用するように適応されてもよい。
【0020】
更に、システム200で例示されるソフトウェア・アプリケーションは、ローカルエリアネットワーク又は大型広域ネットワーク、例えば、インターネットを含むコンピュータ・ネットワーク上で通信する分散システムで実行していてもよい。更に、一実施形態において、システム200のコンポーネントは、コンピュータ可読媒体、例えば、CD−ROM、DVD−ROM、フラッシュメモリ・モジュール、又は他の有形記憶媒体の上に記憶された1つのアプリケーション・プログラム(又は複数のプログラム)として提供されてもよい。
【0021】
一般的に、本発明の実施形態を実現するために実行されるルーチンは、オペレーティング・システム又は具体的アプリケーションの一部分、コンポーネント、プログラム、モジュール、オブジェクト、又は命令シーケンスであってもよい。本発明のコンピュータ・プログラムは典型的には複数の命令を備え、これらの複数の命令は、ネイティブ・コンピュータによって機械読み取り可能形式、したがって実行可能命令へ変換される。更に、プログラムは変数及びデータ構造を備え、これらの変数及びデータ構造は、プログラムに対してローカルに常駐するか、メモリ又は記憶デバイスの中に見出される。更に、この後で説明される様々なプログラムは、本発明の具体的な実施形態で実現されるアプリケーションに基づいて識別されてもよい。しかし、理解すべきこととして、この後で現れる具体的なプログラム名称は単なる便宜のために使用され、したがってそのような名称によって識別及び/又は暗示される特定のアプリケーションの中でのみ使用するように本発明を限定すべきではないことである。
【0022】
図示されるように、システム200は最適化アプリケーション210、パイプライン状況データベース215、入力ファイル220、及び出力ファイル255を含む。入力ファイル220はパイプラインシステム・モデル225を含む。パイプラインシステム・モデル225は、最適化されるべきパイプライン、パイプライン制約、最適化目標、及び最適化プロセスのパラメータをを記述する。この情報は、更に、異なるプラントの現在の状況、圧縮機の設定、多機能パイプライン要素の現在の構成などを含んでもよい。例示されるように、パイプラインシステム・モデル225は、パイプライン・ネットワーク・モデル235及びプラント・モデル230を含む。パイプライン・ネットワーク・モデル235は、最適化されるべきパイプラインシステムのトポロジを記述し、プラント・モデル230は、パイプラインシステム・モデル235によって記述されるパイプラインシステムへ接続された1つ以上の生産プラントを記述する。図1で例示されるパイプラインシステムにおいて、プラントは空気分離器(ASU)、気化装置、及びパイプライン内への気体の圧力及び流れを増加する圧縮機を含んでもよい。もちろん、他のパイプライン・ネットワークについては、他の要素が使用されて、原材料及び圧力をパイプラインの中へ導入してもよい。
【0023】
一実施形態において、パイプラインシステム・モデル225は、拡張可能マークアップ言語(XML)を使用して編成されてもよい。XMLは、マークアップ言語を作成するために広く使用される標準であって、データ構造を記述するために使用される。XMLによって、作成者は自分自身のマークアップ・タグ及びドキュメント構造を定義することができる。更に、様々なXMLファイル・ビューア及びエディタが市販される。そのようなエディタを使用して、ユーザはパイプラインシステム・モデル225を作成、保存、及び修正してもよい。図3A〜図3Gは、更に、例示的なXML文法を使用してプラント・モデル230及びパイプ・ネットワーク・モデル235の要素を例示する。
【0024】
パイプライン状況データベース215は、パイプラインシステムの現在の動作状態に関する情報を提供する。一実施形態において、入力ファイル220は、パイプライン状況データベース215から得られる情報を使用して生成されてもよい。言い換えれば、パイプラインシステム・モデル225は、既存のパイプライン(例えば、図1で示されるパイプラインシステム)の実際の動作状況を反映してもよい。代替として、ユーザは、様々な仮定的パイプライン・トポロジ及び構成を定義してもよい。そうすることによって、既存のパイプラインへの潜在的変更の「仮定」分析を実行するようにシステム200を使用することができる。例えば、ユーザはパイプラインシステム・モデル225を作成して、特に、機器のアップグレードによって取得可能な利点を研究し、新しい顧客を追加するコストを研究し、新しい設備を追加する利点を研究してもよい。
【0025】
最適化アプリケーション210は、入力ファイル220によって記述されたパイプラインシステムの構成に対する高品質ソリューションを識別するように構成されてもよい。そのようなソリューションは、パイプラインシステムの各構成可能な要素について設定を指定してもよく、ソリューションは、更に、入力ファイル220によって指定された動作制約を満足させてもよい。一実施形態において、最適化アプリケーション210は多数のモジュールを含み、これらのモジュールは、最適化プロセスに関連した異なる機能を実行するように構成される。図示されるように、最適化アプリケーション210は入力モジュール240、ユーザ・インタフェース・モジュール260、最適化モジュール245、及び出力モジュール250を含む。
【0026】
ユーザ・インタフェース・モジュール260によって、ユーザは最適化アプリケーション210と対話することができる。例えば、ユーザ・インタフェース・モジュール260はグラフィカル・ユーザ・インタフェース(GUI)を提供してもよい。GUIによって、パイプライン・ネットワーク・モデル235、プラント・モデル230、及びパイプライン・コンポーネントに関連づけられたパラメータを図形で編集することができ、更に、ユーザは最適化の結果を検査することができる。入力モジュール240の様相は、更に、図4を参照して説明される。
【0027】
最適化モジュール245は、入力ファイル220を使用して最適化実行を達成するように構成されてもよい。一実施形態において、最適化実行の出力は、時間及び他の制約が入力ファイル220の中に含まれるものと仮定して、最適化モジュール245によって識別されるパイプライン構成に対する最良ソリューションである。最適化モジュール245の様相は、更に、図5を参照して説明される。出力モジュール250は、最適化モジュール245によって達成される最適化実行の結果を処理するように構成されてもよい。例えば、出力モジュール250は、所与の最適化実行の結果を呈示する多数のレポートを生成するように構成されてもよく、これらのレポートはユーザへ呈示される(例えば、出力ファイル255)。
【0028】
一実施形態において、出力モジュール250は、最適化実行中に発見された最良ソリューション、及びこのソリューションの評価を記述するXMLファイルを生成するように構成される。例えば、最適化モジュール245は要約ファイルを生成する。この要約ファイルは、実行がどれくらいの時間を取ったか、どのような最適化パラメータが使用されたか、どのようなパイプラインシステムが入力ファイル220の中に含められたかなど、及び最適化実行中に起こった異常条件又は疑わしいデータ誤りを記述する。
【0029】
図3A〜図3Gは、本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。図示されるように、これらの図は、パイプラインシステム・モデル225を記述する例示的XML文法の図形表現を提供する。図3A〜図3Gのデータ要素は、図1で示されるパイプラインシステムを表現するように適応される。しかし、XML文法は、任意の数の異なるパイプラインシステムを記述するために定義されてもよいことを、当業者は認識するであろう。したがって、下記で説明される具体的XML要素は、システム・モデル225の実施形態の例として提供され、他のパイプラインシステムについては、異なるXML要素が定義されてもよい。更に、公知のように、XMLドキュメントは、単一のルート要素から始めて、データ要素を階層構造へ組織する。各要素は、1つ以上の副要素(sub−element)及び/又は属性を含んでもよい。図3A〜図3Gにおいて、各要素はラベル付きボックスとして表現され、ラベル付きボックスは副要素を表示するように拡張されてもよい。
【0030】
最初に、図3Aは、パイプラインシステム・モデル300から始まる例示的XML文法のルート要素を示す。パイプラインシステム・モデル300は2つの副要素、即ち、パイプラインシステム335及びプラント要素330を含む。パイプラインシステム335及びプラント要素330の左にある拡張ボックスは、これらのデータ要素が副要素を含み得ることを示す。更に、範囲データ305は、所与のシステム・モデル300の中の所与のタイプの要素の数に対する制限を示してもよい。したがって、この例において、パイプラインのデータ・モデルは単一のシステム・モデル300(即ち、単一のルート要素)、1つ又は2つのパイプラインシステム要素335を含み、任意の数のプラント要素330を含み得る。図3B〜図3Dは、更に、プラント要素330を示し、図3E〜図3Gは、更に、パイプラインシステム要素335を示す。
【0031】
図3Bは、更に、プラント要素330を示す。図示されるように、プラント要素330はプラント要素337を含む。プラント要素337は、原材料が生成されてパイプラインの中へ挿入される現実(又は仮定)の生産プラントを表してもよい。プラント要素330は任意の数のプラント要素337を含んでもよく、プラント要素337は所与のデータ・モデルの中のプラントを表す。プラント要素337のダッシュ線は、この要素が有効なシステム・モデル300には要求されないことを示すために使用される。言い換えれば、プラント要素337を含まないシステム・モデル要素300が作成されてもよい。図示されるように、各プラント要素337はプラントID339及びガス特定データ341を含む。更に、各プラント要素337は、空気分離器(ASU)340を表す副要素を含んでもよい。一般的に、ASUは大気からO2又はN2を精製及び取得するために使用される1個の機器である。
【0032】
図3Cは、記述される例示的XMLに従って、ASU要素340に指定されてもよい副要素を示す。図示されるように、ASU要素340は基本機器特性341を含む。この例において、基本機器特性341は最大の流れ、最小の流れ、電力コスト、及びASU340の動作状況を指定及び記述する副要素343を含む。更に、ASU340は係数の集合345を含んでもよい。集合345はASU340を表す馬力を記述するために使用される。下記で詳細に説明するように、これらの係数はパイプラインシステム・モデル225のシミュレーション段階及び最適化段階の双方で使用されてもよい。
【0033】
図3Dは、ガス特定データ要素341のために、記述される例示的XML文法の一部分として指定されてもよい副要素を示す。図示されるように、ガス特定データ要素341はノード要素342を含む。データ・モデルのこの要素は、プラントの出力がパイプラインシステムへ入るパイプラインシステムのノードを示すために使用されてもよい。ノードは、更に、図3Eとの関連でパイプラインシステム335の要素として記述される。記号345は、データ・モデルの中のガス特定データ要素341のインスタンスが、2つの分岐の1つからの要素を含んでもよい(又は2つの分岐のいずれからの要素も含まない)ことを示す。この例において、ガス特定データ要素341は、入力圧力要素及び圧縮機モデル349又は代替の供給要素350及びコスト要素351を含んでもよい。上方分岐は、入力圧力要素347及び圧縮機要素349についてのデータ要素を含み、これらのデータ要素は、所与の空気分離器によって使用される機器の特性を記述するために使用される。下方分岐は、代替の供給源を示す。幾つかの場合、原材料が購入され、パイプラインの中に含められてもよい。そのような場合、代替の供給要素350及びコスト要素351は、代替供給の特徴を記述する。例えば、代替の供給要素350は「テーク・オア・ペイ」供給源を記述してもよい。その場合、パイプラインによって実際に使用されたか否かに関わらず、パイプライン作業者は生産物について支払う。代替の供給要素350はプラント330の副要素として示されるが、代替の供給要素350はパイプラインシステム要素335の副要素であってもよい。
【0034】
図3Eは、記述される例示的XML文法の一部分として、パイプラインシステム要素335の最上レベル構造を示す。図示されるように、パイプラインシステム・モデル300は1つ又は2つのパイプラインシステム要素335を含んでもよい。例えば、2つのパイプラインシステム335の存在は、GOXパイプ・ネットワーク及びGANパイプ・ネットワークの双方を含む図1のパイプラインに対応する。こうして、この現実世界のパイプラインシステムを完全にモデル化するためには、パイプラインシステム・モデル300は、2つのパイプラインシステム要素335、即ち、GOXパイプ・ネットワーク及びGANパイプ・ネットワークに1つずつを含む。更に、各パイプラインシステム要素335は、典型的には、少なくとも1つのパイプ要素355及び2つのノード要素353を含む。言い換えれば、最も簡単なパイプラインシステム335は、2つのノード要素353を接続する単一のパイプ要素353を含む。
【0035】
図3Fは、記述される例示的XML文法の一部分として、ノード要素353の副要素を示す。一実施形態において、ノード要素353は、多様なデータ要素によって特徴づけられてもよい。図示されるように、ノード要素353は、流量、ガスの温度、ガスの比重、実際の圧力、最大圧力及び最小圧力、ノードの相対位置を指定する高度及び座標を記述する要素359を含む。
【0036】
図3Gは、記述される例示的XML文法の一部分として、パイプライン要素355の副要素を示す。図示されるように、パイプライン要素355は要素ID361を含む。パイプライン要素355は、ID361を使用して相互から区別されてもよい。一実施形態において、各パイプライン要素355は多様な共通パイプライン機器コンポーネントを表すために使用されてもよく、これらのコンポーネントは2つのノード要素を接続するために使用される。
【0037】
例示されるように、パイプライン要素355は、パイプ360の1つ、昇圧機又は圧縮機363、圧力調整器365、弁367、又は多要素ノード369の1つを表すように使用されてもよい。一般的に、パイプ要素361は2つのノードを接続するパイプの導管を表す。パイプライン要素361は、更に、サイズ、圧力などを記述する副要素によって特徴づけられてもよい。昇圧機/圧縮機要素363は、パイプライン内の圧力を増加するために使用されるパイプ要素を表す。昇圧機/圧縮機要素363は、更に、昇圧機要素が提供する圧力量、要素を作動させるコストなどを記述する副要素によって特徴づけられてもよい。圧力調整器要素365は、1つのパイプラインシステム又は要素と他のパイプラインシステム又は要素との間の圧力を調整するパイプ要素を表す。弁要素367は、原材料が1つのパイプラインシステム又は要素と他のパイプラインシステム又は要素との間で移動されるノード接続要素を表す。
【0038】
最後に、スマート・ノード接続要素(NCE)369は、複数の構成を取ることのできるパイプライン要素360を表す。スマートNCEは、異なる機能を実行するように再構成されるパイプラインシステム300の中の要素を表す。例えば、スマートNCEは、既に説明した要素361、363、365、367の任意の1つ又は組み合わせであるように構成されてもよい。例えば、図1に示されるパイプラインシステムは、パイプライン作業者が、使用する遠隔制御センターから構成することのできるスマートNCEを含む。パイプライン内にスマートNCEを含めることによって、パイプラインの構成は迅速に遠隔から修正可能であり、パイプライン作業者は、パイプライン動作の変化が起こるとき、現実世界の条件に従ってそれらの変化に適応してもよい。同時に、パイプライン最適化問題の中にスマートNCE要素369が存在することは、数学的手法が、異なるスマートNCE構成の全てを試行することなく問題を解決することを困難にする。なぜなら、単一のスマートNCE要素369の中の単一の変化は、パイプラインの流体特性を劇的に変更することができるからである。
【0039】
図4は、本発明の一実施形態に従って、図2で示されるパイプライン最適化アプリケーション210に含まれる入力モジュール240の収集物を示す。一実施形態において、入力モジュール240は、パイプラインの記述、ユーザ要件、ユーザ提供選好、及び最適化アルゴリズムのユーザ構成を読み込むように構成されてもよい。例えば、入力モジュール410によって読み込まれた入力ファイル220は、最適化ファイルを含んでもよい。この最適化ファイルは、最適化パラメータ、例えば、最適化実行の長さ、ソリューションを提供するときに維持されなければならない制約、及び過去に生成されたソリューションが読み込まれて、この最適化実行中に使用されなければならないかどうかを指定する。入力モジュール410は、更に、パイプラインのトポロジ、パイプラインの状況、及びパイプライン動作の制約を記述する入力ファイル220を読み込む。入力ファイル220は、前述したような例示的XML形式であってもよい。
【0040】
データ確認モジュール415は、可能な誤り及び潜在的問題(例えば、入力データ220によって表される問題が、ハード制約に妨害することなしには解決され得ないかどうか)について、入力データをチェックするように構成されてもよい。データ確認モジュール415は、更に、入力データ220を使用して様々な問題を識別してもよい。そのような問題には、例えば、次のようなものが含まれる。
【0041】
・ 無効なXMLドキュメント(例えば、複数のルート要素、又は閉じられていない要素)
・ ゼロよりも小さいか等しいプラント電力コスト
・ ノード要素の最小及び最大定格の外にある現実又は所望のノード圧力
・ ノード名とパイプライン要素データとの間の不一致
・ 複数の要素における重複した参照ID
・ 要素データの不一致(例えば、要素が、同じ入及び出のノードを有する)
・ パイプラインの誤り(例えば、切り離されたパイプライン)
・ 実現不可能な最適化目標(例えば、入力圧力よりも大きな出力圧力)
もちろん、当業者は、追加のデータ確認が実行されてもよいことを認識するであろう。一実施形態において、データ確認モジュール415が、入力ファイル220が無効であることを決定すると、それは最適化実行を打ち切り、どのような問題が識別されたかをユーザに通知する。代替として、普通ではないが実現可能であり得る条件の場合、例えば、負の電力コストの場合、データ確認モジュール415は、ユーザ・インタフェース及び実行ログ・ファイルへ警告を送るが、必ずしも最適化実行を打ち切らない。
【0042】
入力データ220の集合を使用して最適化実行を始める前に、前処理モジュール420は、最適化プロセスの効率を増加するため、多数の予備計算を実行してもよい。例えば、前処理モジュール420は集中計算の結果をキャッシュし、それらの計算の結果が、冗長なやり方で再計算される代わりに、将来必要となったとき検索されるようにする。例えば、前処理モジュール420は、プラントが取得しなければならない流れ及び圧力の目標集合が与えられたと仮定して、プラント構成のについて最適設定をキャッシュしてもよい。この場合の最適設定の初期計算は非常に時間を消費するが、最適設定に対する後続の要求(同一目標の流れ及び圧力が与えられたと仮定する)は、キュッシュから最適解答をルックアップする時間だけが必要である。
【0043】
図5は、本発明の一実施形態に従って、図2で例示されたパイプライン最適化アプリケーション210に含まれる最適化モジュール245の収集物を示す。図示されるように、最適化モジュール245はソリューション探索モジュール510、シミュレーション・モジュール515、直接圧力最適化(DPO)モジュール530、及び評価モジュール520を含む。集約的に、最適化モジュール245は、パイプライン動作に対する高品質ソリューションを識別するため、パイプラインシステム・モデル225を分析及び評価するように構成されてもよい。
【0044】
ソリューション探索モジュール510は最適化アルゴリズムを実行するように構成されてもよい。最適化アルゴリズムは、入力モジュール240によって読み込まれたパイプラインシステム・モデル225の動作を最適化するために使用される。一実施形態において、ソリューション探索モジュール510は、進化理論によって示唆される遺伝的アルゴリズム−シード・ソリューションの収集物(「集団」と呼ばれる)を修正するプロセス−を使用することによって動作する。
【0045】
一般的に、当業者に知られるように、遺伝的アルゴリズムは試験的ソリューションの集団を生成する。試験的ソリューションの各々は評価され(適性値を生成するため)、試験的ソリューションのよいものから新しい世代が作り出される。一実施形態において、ソリューションの評価は評価モジュール520によって達成される。プロセスは何千という世代にわたって継続される。その目的は、集団が時間と共に益々良好なソリューションを含むように「進化」することである。遺伝的アルゴリズムは、時には「コンピュータ上の進化」として特徴づけられる最適化手法である。典型的には、遺伝的アルゴリズムは、「突然変異」及び「交雑」のプロセスによって現在の集団から新しいソリューションを生成する。発見された最良ソリューションは、最悪ソリューションよりも多くの子孫を生成する可能性が高く、したがってソリューション集団は、アルゴリズムが進行するにつれて益々良くなる傾向がある。
【0046】
遺伝的アルゴリズムは、典型的には、ディジタル記号の(しばしば固定長の)文字列としてソリューションを表し、親の適性(又は、適性の或る近似値)に比例して現在の集団から親を選択し、集団の新しい構成員を作り出す優性手段として「交差」−異なるソリューション間の要素の交換−の或るメカニズムを使用する。ソリューションの初期集団は、典型的には、ランダムに、又は或る既知の開始点から作り出される。
【0047】
一実施形態において、遺伝的アルゴリズムが解決する問題は、プラントを含むパイプライン内の各要素について動作コストの合計を最小にし、また、ソフト制約に妨害するソリューションによって課されるペナルティの合計を最小にすることである。動作コストは、典型的には、全てのプラント及び圧縮機のコストの合計を含み、パイプラインシステム内の制約の大部分はハード制約である。ソリューションは、ハード制約に妨害しない限り実現可能である。こうして、一般的に、所与のソリューションの「適性」は、このソリューションの現実の動作コストである。下記で説明される図6は、ソリューション探索モジュール510の動作の実施形態を例示する。
【0048】
表1は、図1で示されるパイプラインシステムの動作に対するソリューションの一般的構造の例を示す。もちろん、他のパイプラインシステムについては、ソリューションは、下記で列挙される要素とは異なる要素を含むであろう。
【表1】
【0049】
表1は、最適化モジュール245の制御下にある変数の集合を列挙する。これらの変数の各々について値を決定することが、最適化プロセスの目標である。例えば、プラント流れのリストは、入力ファイル220に含まれる各プラント要素について、出力流れのリストを提供する。プラント流れのリストは、ユーザによって固定された流れを有するプラントについては、流れを含まないであろう。遺伝的アルゴリズムによって設定されない圧力は、下記で説明するように、DPOモジュール530によって設定されてもよい。スマートNCE選択リストは、各構成可能な要素が、所与のソリューションで取るべき形態を表す。この形態は、このスマートNCE要素の許容できる構成から選択される(スマートNCE要素369はパイプラインシステム内で異なる機能を実行するように構成されてもよいことを、上記から想起されたい)。
【0050】
一実施形態において、シミュレーション・モジュール515は、パイプラインの機能を、所与のソリューションから誘導するように構成されてもよい。そうする間に、ソリューション自体は、シミュレーションが実行されるときに修正されてもよい。パイプラインのシミュレーション及び評価の根底となるソリューションのやり方は、図7〜図9と関連して下記で説明される。更に、本発明の一実施形態に従って、最適化実行中に実行されるステップを簡単に記述する例示的システムの段階的説明は、この説明の終わりに提供される。さしあたって注意すべきは、最適化モジュール245が、表1で示される形態のソリューションを作成、修正、及び保存して、発見した最良ソリューションを、最適化実行が終了するときに返却することである。
【0051】
一度、ソリューション探索モジュール510がソリューションを識別すると、シミュレーション・モジュール515は、パイプライン・ネットワークの動作をシミュレーションするように構成されてもよい。シミュレーションの間、ソリューション探索モジュール510によって識別されたソリューションは、ソリューションによって指定された構成から生じるパイプライン状態の完全な描写へ変換される。
【0052】
評価モジュール245は、ソリューションを評価するように構成されてもよい。一実施形態において、評価モジュール245は、望ましくないパフォーマンスの任意的ペナルティを含めて、シミュレーションされるパイプラインの動作コストを推定するように構成されてもよい。ソリューションに対して査定されるペナルティの例は、生産設備におけるガスの過剰ガス抜きに対するペナルティである。そのようなペナルティはドルで表現されてもよく、パイプラインの動作コストへ追加される。一実施形態において、評価モジュール520は、ソリューションの総動作コストを、パイプラインの各コンポーネントの動作コストの合計として誘導する。この場合のコンポーネントには、プラント及びそれらの機器が含まれる。一般的に、ソリューションの総コストが低くなると、それだけソリューションの「適性」は大きくなる。この「適性」は、ソリューション探索モジュール510によって実行される遺伝的アルゴリズムによって使用される。
【0053】
図6は、本発明の一実施形態に従って、パイプラインシステムの動作の様相を最適化する方法600を示す。方法600はステップ610で始まる。ステップ610では、ソリューション探索モジュール510が、入力ファイル220によって指定される終了条件を読み取る。2つ以上が指定されるならば、それらの1つが満足されたとき最適化システムは終了する。一実施形態において、終了条件は、生成されるソリューションの最大数、費やされるクロックタイムの最大量、又は指定された品質(又は適性)を超えるソリューションの発見を含む。更に、ユーザ・インタフェース260によって、ユーザは最適化実行を手作業で(例えば、キーボードから中断コマンドを入力することによって)停止することができる。これは入力ファイル220に含まれる条件ではないが、最適化アプリケーション210は、最適化実行中にこの条件を定期的にチェックしてもよい。
【0054】
ステップ620では、ソリューション探索モジュール510が最適化実行を初期化する。これは、例えば、キャッシュの作成、プラント・オプティマイザの初期化、探索ソリューション・モジュール510によって使用されるデータ構造の作成などを含んでもよい。ステップ630では、ソリューション探索モジュール510が遺伝的アルゴリズムのために初期ソリューションの集合を作り出す。言い換えれば、ソリューション探索モジュール510は、遺伝的アルゴリズムが修正及び繁殖を介して進化するためのソリューション「集団」を作り出す。
【0055】
一実施形態において、ソリューション探索モジュール510は、スマートな発見的方法に基づいて第1の群のシード・ソリューションを作り出し、第2の群のシード・ソリューションをランダムに生成する。一般的に、発見的方法は経験法則である。この経験法則は、しばしば良好に働いて、所望の結果、例えば、コストの低減と同時に所望レベルの生産維持を達成する。発見的方法は、しばしば先行する経験に基づく。ソリューション探索モジュール510で使用される発見的方法の例は、「パイプラインの或る領域の圧力が最大又は最小でない場合、圧力を上げるか下げることが、コストを下げてパイプラインの隣接領域のパフォーマンスを改善するならば、圧力を上げるか下げることを考慮せよ」である。
【0056】
第1の群のシード・ソリューションを生成するため、ソリューション探索モジュール510は、人間が使用する発見的方法に類似したソリューション生成発見的方法に基づいて、複数の「スマートなシード」を作り出す。例えば、第1の群のソリューションは、全ての圧力及び流れが最大に設定され、修復の発見的方法が合理的なやり方で圧力を下方へ調整してパイプラインの圧力制約を満足させるソリューションを含んでもよい。高い圧力が必要とされる場合、このシードは良好に働いて、良好なソリューションを生成することができる。他の「スマートなシード」は、全ての圧力及び流れが最小に設定され、発見的方法が合理的なやり方で圧力を上方へ調整して顧客の圧力制約を満足させるソリューションを含んでもよい。ソリューションが最も重要なクライアントを満足させることに向けられるとき、このシードは良好に働いて、良好なソリューションを生成することができる。なぜなら、圧力を増加する発見的方法は、圧力が増加するときの最も重要なクライアントの必要性に注目する傾向があるからである。他の「スマートなシード」は、全ての圧力及び流れが、実現可能な範囲の中間に設定され、後続の最適化が、これらの圧力を、範囲内の最大及び最小値のいずれかの方へ動かすことによって、より良好なソリューションを発見するソリューションを含む。
【0057】
更に、第1の群は、該当するならば、入力ファイル220の中で指定されたソリューションの群を含んでもよい。そうすることによって、ユーザは、上記のソリューションとは異なる見本のソリューションを探索ソリューション・モジュール510へ提供することができる。例えば、先行する問題に対するソリューションのデータベースが存在するならば、マッチング・アルゴリズムが使用されて、パイプライン及びこの要件の現在の状態を先行状態へマッチさせてもよい。こうして、現在の状態に類似した1つ以上の先行状態に対するソリューションを初期集団のシードにすることが合理的であろう。
【0058】
第1群のシード・ソリューションに加えて、探索ソリューション・モジュール510は、ソリューション集団を満たすため、入力ファイル220の中に指定された制約を満足させるランダム生成ソリューションの群を生成してもよい。このソリューション集団は大きな多様性を提供し、遺伝的アルゴリズムは最適化プロセスの開始時に広範囲のソリューションを探査することができる。
【0059】
ステップ640では、ソリューション探索モジュール510が新しいソリューションを生成する。前述したように、一実施形態において、ソリューション探索モジュールは、ステップ630で生成された初期ソリューションの集団を使用し遺伝的アルゴリズムを実行することによって、新しいソリューションを生成するように構成される。一般的に、遺伝的アルゴリズムは、何千という世代にわたって初期ソリューションの集団を「進化」させ、各世代で新しい集団を生成するように動作することが想定される。下記で説明する図7は、更に、ステップ630の一部分として実行される行動の実施形態を例示する。
【0060】
一度、ステップ630が完了すると、最適化モジュール245は、典型的には、多くのソリューションを生成している。ステップ650では、集団内に現在存在する最良ソリューション(即ち、最低の動作コストを有するソリューション)が識別及び処理される。一実施形態において、最良ソリューションとして識別されたソリューションは、追加の最適化ルーチンへ渡されてもよい。例えば、ソリューションのためにプラント・オプティマイザが実行され、ソリューション内で指定されたプラント構成が実現可能であることを確認し、構成の更なる最適化が容易に識別されるかどうかを決定する。ステップ660では、最適化実行中に生成された最良の識別ソリューションが返却される。例えば、出力モジュール250は、出力ファイル255を生成するように構成されてもよい。
【0061】
図7は、本発明の一実施形態に従って、パイプラインシステムの動作に対する最適化ソリューションを発見する方法700を示す。一実施形態において、方法700は何回も繰り返して−標準の最適化実行では何万回と−実行されてもよい。それはパイプライン最適化問題に対する高パフォーマンス・ソリューションを発見するためである。方法700を通過する各々の実行中に、ソリューション探索モジュール510は、集団内に現在存在するソリューションの集合から、少なくとも1つの新しいソリューションを生成する。初期集団は、前述した方法600の一部分で作り出される。
【0062】
ステップ710では、ソリューション修正手法が選択される。古典的な遺伝的アルゴリズムにおいて、ソリューション修正手法は、事実上ランダムである−それらの手法は、例えば、圧力の或る小さなパーセンテージを修正する−しかし、ランダムな変化を使用して良好なソリューションを探索することは、指示された発見的方法を使用して探索することほどに、高速でも有効でもない。したがって、一実施形態において、最適化モジュール245は、多数の非発見的(即ち、ランダム)及び発見的(即ち、非ランダム)手法を選択してソリューションを修正するように構成されてもよい。これらの手法には、次の手法が含まれる。
【0063】
・ ランダムな変化。この修正手法は、ソリューション内の1つのパラメータへランダムな突然変異を生成する。
【0064】
・ 生産の移行。この修正手法は、コストの高いプラントからコストの安いプラントへ生産を移す。
【0065】
・ ガス抜きの低減。この修正手法は、ガス抜きしているプラントを探し、ガス抜きに対するペナルティをチェックし、それらのプラントの1つで生産レベルを変更するやり方を探す。
【0066】
・スマートNCEの構成変更。この修正手法は、再構成可能な要素への修正が、ソリューションのパフォーマンスを向上するかどうかを識別する。向上するならば、スマートNCEの構成に対する許容できる変更が選択される。この発見的方法は、人間のパイプライン熟練者が使用するようなプロセスを使用し、再構成可能なパイプライン・コンポーネントの構成を変更するかどうかを決定する。
【0067】
・ プラントの停止。この発見的方法は、プラントの停止が資金の節約となるソリューションを識別する。例えば、1つのプラントにおける生産コストが非常に高ければ、このプラントを停止し、生産を他のプラントへ移行することが、ソリューションの適性を改善し得る。
【0068】
・プラントの起動化。この発見的方法は、プラントが利益を伴ってオンにされ得るとき、プラントを起動化するソリューションを識別する。新しいソリューションは、オンにする不活性プラントを選択することによって作り出されてもよい。この手法は、人間のパイプライン熟練者が使用する推論を使用して、どのプラントがオンにされる候補であるかを決定してもよい。
【0069】
・ 2つのソリューションの交雑。この発見的方法は、2つのソリューションを選択し、2つの元のソリューションを交雑することによって、新しいソリューションを作り出す。2つの元のソリューションの異なる部分が結合され、新しいソリューションを作り出す。例えば、2つのソリューションの第1の部分を備えるパラメータ値の2つのリストを使用して、2つの元のソリューションのどれが、新しいソリューションへ値を寄与するかを、フィールドごとに、ランダムに決定することができる。このソリューションによって、2つの異なるソリューションの有効要素が相互に再結合可能である。
【0070】
一実施形態において、これら(又は他の)手法の任意のものが、この最適化サイクルを通過する間に選択されてもよい。更に、修正手法は、デフォルトの確率又は入力ファイル220の中に指定された確率を使用して、確率的に選択されてもよい。したがって、どの修正手法も、選択される機会を有するが、或る修正手法は他の修正手法よりも高い確率を有し得る。確率の設定は、オプティマイザが所与のパイプラインについて生成するソリューションのタイプの実験及び分析の問題である。
【0071】
ステップ720では、ステップ710で選択された修正手法に従って、ソリューションの現在の貯留からの1つ以上のソリューションが、修正のために選択される。一度、修正手法が選択されると、1つ又は2つのソリューションのいずれが、入力として必要であるかが決定される。前述した修正手法の大部分は、ただ1つのソリューションを必要とするが、例えば、交雑修正は2つのソリューションを必要とする。
【0072】
一実施形態において、ソリューションは、時にはランク付けルーレット円盤手法と呼ばれる手法を使用して、ソリューションの一般的集団から選ばれる。手法が「ランク付け」と呼ばれる理由は、ソリューション集団内のソリューションを、最良ソリューションから最悪ソリューションまで順序づけられたリストへ並べ替えるからである。次に、この手法はリスト内の各ソリューションへ重みを割り当てる。これらの重みは線形に減少する。例えば、減少率が10であり、開始する重みが100であるとき、集団の最初の12の構成員は100、90、80、70、60、50、40、30、20、10、1、0.5、....の重みを有する。これらの重みは選択プロセスを偏向させるために使用され、最良の個体が最悪の個体よりも選択される可能性が高いようにされる。比喩は、集団の各構成員についてスロットを有するルーレット円盤である。しかし、スロットは等しいサイズではない。各ソリューションのスロットは、上記のように計算された重みに比例する。ルーレット円盤がこのように設定されるとき、コンピュータ化されたボールが旋回し、ボールが着地したスロットを有する個体が選ばれる。100の重み及びスロット・サイズを有する集団内の最良の個体は、ソリューションが要求されるとき、1の重み及びスロット・サイズを有する最悪の個体よりも、選ばれる可能性が100倍も高い。この重みづけられた選択プロセスは、最良の個体が、最悪の個体よりも、繁殖のために選ばれる頻度が高くなる点で、自然選択理論における「最適者生存」の考えに対応する。
【0073】
ステップ730において、新しいソリューションを作り出すため、選択されたソリューション修正手法が使用される。方法700のこのステップにおいて、選ばれたソリューションは、元のソリューションと同じ新しいソリューションを作り出すようにクローン化される。次に、修正手続きが新しいソリューションへ適用され、それが元のソリューションの修正バージョンとなるようにされる。修正の幾つかは非常に小さく−例えば、パイプライン内の1つの場所で圧力を少しだけ変更する。幾つかの修正は全く大きく−例えば、パイプラインの再構成可能なコンポーネントの構成を、弁から昇圧機又は圧縮機へ変更する。
【0074】
ソリューションはクローン化され、「クローン」及びこの「親」の双方が集団内に維持される。修正が良好な修正であれば、親は集団から最終的に削除される可能性が高く、新しいソリューション及びこの子孫は集団内に含められる。修正が悪いソリューションを生成するならば、新しいソリューションは集団から削除される可能性が高く、元のソリューションは保持されて、他の新しいソリューションを作り出すように修正される潜在力を有する。
【0075】
ステップ740では、新しいソリューションのパフォーマンスがシミュレーションされる。このステップの一部分として、新しいソリューションが使用され、このソリューションから生じるパイプライン状態の完全シミュレーションを作り出す。更に、DPO最適化モジュール530を使用することによって、線形最適化プロセスが適用されてもよい。ステップ740で生成されるソリューションのシミュレーションは、更に、図8及び図9で説明される。
【0076】
ステップ750では、新しいソリューションから誘導されるシミュレーション・パイプラインの「適性」が評価される。前述したように、評価モジュール520は、新しいソリューションのコスト(即ち、適性又は評価得点)を誘導するように構成されてもよい。ステップ760では、新しいソリューションが集団へ追加される。一実施形態において、ソリューションの集団は、並べ替えられた順序に維持され、したがって新しいソリューションは、この評価に従って配置される。ステップ770では、集団の最悪(即ち、最小適性)構成員が集団から除去される。こうして、集団のサイズは最適化プロセス中に一定に維持されてもよい。ステップ780では、終了条件が満足されるかどうかを探索ソリューション・モジュール510が決定する。満足されるならば、最適化プロセスは終了し、制御は方法600のステップ650へ戻る。そうでなければ、方法700が反復され、他の新しいソリューションを生成する(即ち、集団は他の世代へ移行する)。
【0077】
図8は、本発明の一実施形態に従って、パイプラインシステムの動作をシミュレーションする方法を示す。
【0078】
ステップ810において、方法800は流れ伝搬段階を含む。この段階の間、シミュレーション・モジュール515は、入力圧力、要素設定、及びユーザによって選ばれた既知の流れ及び流体方程式を使用し、入力ソリューションに基づいて、パイプライン全体の流れを計算する。一実施形態において、流れの伝搬は、Andrzej Osiadacz によるガス・ネットワークのシミュレーション及び分析(Simulation and Analysis of Gas Networks)で指定されるニュートン・ノーダル・アルゴリズム(Newton Nodal algorithm)に従って実行される。このアルゴリズムを使用して、入力ファイル220によって指定されたパイプライン内の様々な機器要素に関する既知の圧力、設定、及び構成に基づき、流れが計算されてもよい。一度、第1の流れ伝搬が計算されると、シミュレーション・モジュール515は、流れの妨害(例えば、クライアント場所への不十分な流れなど)がシステム内に存在するかどうかを決定してもよい。流れの妨害が発見されるならば、シミュレーション・モジュール515はこの事実を記録し、ソリューションの更なるシミュレーションを打ち切る。なぜなら、ハード制約に妨害することが知られたパイプライン・シミュレーションの構築及び最適化を継続することは不必要だからである。流れ伝搬段階が完了すると、システムは、どれほどの流れの量がパイプラインの各コンポーネントを通過しているかを記録する。
【0079】
ステップ820において、シミュレーション・モジュール515は、流れ伝搬段階(ステップ810)で計算された流れを使用して、パイプライン内の各要素における圧力を決定する。一実施形態において、圧力の決定は反復プロセスであり、前に参照した Osiadacz の書籍で指定されたアルゴリズムを基礎としてもよい。圧力計算は、反復される行列最適化及びリニアプログラミング手法によって実行されることに注意すべきである。公知のように、リニアプログラミングは、幾つかの変数の一次関数を最小又は最大にする数学的手続きであり、これらの変数における有限個の線形制限に従う。
【0080】
シミュレーション・モジュール515は、実現不可能な圧力−例えば、或る要素における最大許容圧力を超える圧力を記録する。実現不可能な圧力が識別されるならば、シミュレーション・モジュール515はシミュレーション構築プロセスを継続する(パイプライン・シミュレーションの構築及び最適化を継続することは必要である。なぜなら、実現不可能な圧力はDPOモジュール530によって補正されてもよいからである)。第1の圧力伝搬段階が完了すると、シミュレーション・モジュール515は、パイプラインの各コンポーネントでの流れ圧力及び流量がどのようなものかを記録する。
【0081】
ステップ830において、DPOモジュール530は、直接圧力最適化アルゴリズム(今後は「DPO」と呼ぶ)を実行して、可能な場合に圧力を低減するように構成されてもよい。一般的に、DPOは、システムによって要求される最適化量を減少させ、したがって最適化プロセスに必要な時間を1へ劇的に減少させる。更に、DPOモジュールは、パイプライン全体に可能な最小圧力を確保することによって、ソリューションの品質を改善するように構成されてもよい。
【0082】
DPOモジュール530は、遺伝的アルゴリズムがソリューションのために流れ及び流れの割り振りを指定するだけであれば、パイプラインシステムの最適化が劇的に単純化され、一度、流れが割り振られると、より簡単な直接的アプローチを使用して圧力を最適化できるという洞察に基づく。下記で説明する図9は、DPOモジュール530によって実行されてもよいDPO最適化アルゴリズムの実施形態の詳細な説明を含む。
【0083】
ステップ840において、方法800は第2の圧力伝搬段階を含む。第2の圧力伝搬段階において、シミュレーション・モジュール515は、DPOアルゴリズム段階で計算された圧力を使用して、パイプライン内の各要素における圧力を決定する。一実施形態において、この段階の圧力決定は、第1の圧力伝搬段階で使用された手法と同じ手法を使用して行われる。第2の圧力伝搬段階の出力は、パイプラインの各要素における圧力である。
【0084】
ステップ850において、方法800は、大域妨害チェック段階を含む。このステップにおいて、シミュレーション・モジュール515は、パイプラインシステム内の圧力妨害、例えば、許容範囲の外にある要素圧力値を識別するように構成されてもよい。そのような妨害が発見されるならば、システムは妨害を記録し、シミュレーション・プロセスから出る。
【0085】
一実施形態において、流体パイプライン・シミュレーションが完了したとき、次のことが起こっている。即ち、システム内の各要素の圧力及び流れは、流体的に実現可能なやり方で確立されており、シミュレーションは全ての制約を満足させると判定されているか、満足させなかったことは記録されており、システム内の或る圧力はDPOアルゴリズムによって調整されており、各プラントにおける圧力及び流れは指定されている。
【0086】
ステップ860において、方法800はプラント最適化段階を含む。このステップにおいて、最適化モジュール245は各プラントの圧力及び流れを使用し、各プラントの効率的やり方を決定し、シミュレーション・プロセスの先行段階で割り当てられた圧力及び流れを生成する。プラント最適化プロセスの詳細な説明は、次のとおりである。
【0087】
言い換えれば、ステップ860は各プラントの低コスト構成を発見することを含む。この低コスト構成は、ソリューションによって指定された圧力及び流れを生成するためのプラント要件を満足させる。例えば、プラントを構成して、要求されるレベルの圧力及び流れを生成するため、最適化モジュール245は暴力的探索アルゴリズムを実行するように構成されてもよい。この手法は、ASUが2つ及び圧縮機が2つより少ない(総計で4より少ない)プラント・システム・モデルに有用であり得る。その場合、暴力的探索アルゴリズムを使用して、全ての可能な構成を探索してもよい。
【0088】
しかし、プラント・モデルが一層複雑になると、可能な構成の数は急速に大きくなり、合理的な時間内で暴力的探索を実行することができない。そのような場合、修復アルゴリズムを使用してプラントを構成し、ソリューションによって指定された圧力及び流れを生成してもよい。一般的に、修復アルゴリズムは、最大で動作している各デバイス(例えば、各ASU及び圧縮機)から始まる。修復アルゴリズムは、生産物を生産するユニット当たりのコストの減少順序にデバイスを並び替える。次に、修復アルゴリズムは、生産が所望レベルへ低減されるまで、リスト内の各品目を順次にオフにする。最後のデバイスは、オフにされる代わりに停止される。最後のデバイスの最小要求生産レベルが要求レベルよりも高ければ、アルゴリズムは反復し、停止する最高コスト・デバイスを探し、生産を所望のレベルへ下げる。
【0089】
一度、ステップ860が完了すると、パイプライン内の各要素の圧力及び流れが知られ、圧力及び流れを生成する各プラントの構成も知られる。重要な注意点として、オプティマイザの制御のもとにある圧力の多くは、元のソリューションの圧力とは異なってもよい。相違は、例えば、DPOアルゴリズム又は他の局所的最適化プロセスによる圧力低減に起因するであろう。
【0090】
上記で説明した方法800は、遺伝的アルゴリズムによって生成されているソリューションが所与のプラントについて同一の流れ要件を含むならば、概念的には膨大な回数で実行され得る。したがって、一実施形態において、上記のプロセスを介して誘導されたソリューションは、ステップ860が実行される度にアクセスされるキャッシュへ追加される。キャッシュが、現在の問題と類似した問題について既に誘導されているソリューションを含むならば、プラント最適化プロセスが反復される代わりに、キャッシュされたソリューションが使用される。プラント最適化手続きの後、シミュレーション・プロセスは完了し、処理は方法700のステップ750へ戻る。ステップ750では、生成及び最適化されたばかりのソリューションが評価されてもよい。一度、評価されると、ソリューションは、前述した遺伝的アルゴリズム・プロセスによって操作される全体的ソリューション集団の中に含められてもよい。
【0091】
図9は、本発明の一実施形態に従った直接圧力最適化モジュール530の動作を示す。方法900はステップ910で始まる。ステップ910において、DPOモジュール530は、パイプラインの全ての要素を通る流れ、及び任意の流れノードにおける「ノーダル(nodal)」流れ(即ち、パイプラインへ入るか出る流れ)を計算する。この時点において、遺伝的アルゴリズムによって生成されたソリューションは、既に、それが最適化している流れ及び圧力変数の全てについて値を選んでいる。ステップ910において、DPOが最適化している圧力ノードの圧力は、最小及び最大圧力限度に基づいて或る固定値へ設定される。
【0092】
ステップ920では、流体モデルがノード圧力を伝搬し、パイプラインの全てのノード要素における圧力を決定する。ステップ930では、DPOモジュール530が圧力ノードを特定の順序で最適化する。一実施形態において、DPOは有向グラフ・データ構造を生成する。その場合、頂点はパイプライン内のサブネットワーク(sub network)を表し、有向エッジは接続要素を表し、エッジ方向は接続要素ガス流れの方向と反対である。即ち、エッジは、接続要素を横切る要求圧力勾配の方向を指し示す。
【0093】
本明細書で使用されるように、有向グラフは圧力依存性グラフ(PDG)と呼ばれる。なぜなら、個々のノードの圧力は、このノードから流れるエッジに依存するからである。パイプライン内の流れの方向がスマートNCEの構成に依存するとき、PDGが変化することに注意すべきである(即ち、スマートNCEは、構成に依存して、パイプラインシステム内で異なる方向の流れを生じることができる)。このため、一実施形態において、DPOモジュール530は、異なるスマートNCE構成から生じるパイプラインの各可能なアーキテクチャについて、PDGをキャッシュする。PDGが非周期的であれば(即ち、PDGが周期を含まない)、圧力は単一の通過で最小化され得る。
【0094】
ステップ940では、DPOモジュール530は、PDGによって指示された部分順序づけに従って、直接に最適化されるべき圧力ノードのリストを並べ替える。例えば、PDGが非周期的であれば、頂点aから頂点bへの有向エッジの存在は、DPOが、頂点bを含むサブネットワーク内の圧力を最適化する前に、頂点aを有するサブネットワーク内の圧力を最適化しなければならないことを示す。次に、DPOモジュール530は圧力を最適化し、圧力ノードの並べ替えられたリストによって与えられる順序で、圧力ノードの直接圧力最適化を実行する。
【0095】
ステップ950において、各サブネットワーク及びPDGに存在するサブネットワーク内の圧力ノードについて、DPOモジュール530は、このサブネットワーク内の全てのノードにわたって反復し、このサブネットワークについて最小一般化圧力ギャップ又は空き高を追跡する。
【0096】
ステップ960において、DPOモジュール530はサブネットワーク内の各ノードについて最小圧力を計算する。ステップ970において、サブネットワークのノードにわたって反復した後、DPOモジュール530はサブネットワークの圧力ノードの圧力を調節し、サブネットワークの最小現実圧力空き高を0.01PSIへ低減する。例えば、高圧ネットワークについては、圧力は、次の式、即ち、
【数1】
【0097】
によって与えられてもよい。ここで、poptは最適化された圧力ノードの圧力であり、pinitは初期の圧力ノードの圧力であり、gは一般化された最小圧力ギャップである。
【0098】
ステップ980において、DPOモジュール530は、圧力ノードの新しく最適化された圧力をサブネットワークへ伝搬する。ステップ990において、DPOモジュール990のモジュールは、サブネットワーク内の任意の未知の要素パラメータについて圧力値を再計算する。DPOモジュール530が方法900の実行を完了した後、処理は方法800のステップ830へ戻る。
【0099】
方法900が完了したとき、ソリューションは幾つかの圧力を低減されているが、要求されるパフォーマンスを依然として維持している(即ち、全てのハード制約は満足されたままである)。
【0100】
例示的なシステムの段階的説明
一実施形態において、最適化システム200は次のステップを進行して、パイプライン最適化問題を解決する。次の段階的説明は、概して、図3〜図5に示された入力及びモジュールを使用する図6〜図9に示された方法に対応する。
【0101】
1.入力ファイル220は、ユーザによる入力ファイル220の編集、又はパイプライン状況データベース215から入力ファイル220を生成することによって準備される。
【0102】
2.データ入力モジュール410は、入力ファイル220からデータを読み取り、必要な構造を作成し、モジュールによって読み込まれるデータを記憶する。
【0103】
3.データ確認モジュール415は入力データファイルを確認し、任意の潜在的に不正確なデータのログを作成する。
【0104】
4.前処理モジュール420は、最適化を初期化する(例えば、入力ファイル220によって表されるパイプライン・ネットワークの接続を分析すること、サブネットワーク・データ構造を作成すること、などによって)。
【0105】
5.ソリューション探索モジュール510は、終了条件を読み取る。
【0106】
6.ソリューション探索モジュール510は、最適化プロセスの間に使用する構造を初期化する。
【0107】
7.ソリューション探索モジュール510は、シード・ソリューション生成発見的方法及びランダム・ソリューション生成手続きの双方を使用して、ソリューションの初期集団を生成する。
【0108】
8.ソリューション探索モジュール510は、初期ソリューション集合の中の各ソリューションをシミュレーション及び評価する。
【0109】
9.ソリューション探索モジュールは、終了規準が満足されるまで、ステップの次の内部ループ・シーケンスを反復する。
【0110】
a.ソリューション探索モジュール510は、ソリューション修正手法を選択する。
【0111】
b.ソリューション探索モジュール510は、ソリューション修正手法によって要求される数のソリューション−典型的には1つか2つを選択する。
【0112】
c.ソリューション探索モジュール510は、選択されたソリューションをコピーすることによって、新しい1つのソリューション(又は複数のソリューション)を生成する。
【0113】
d.ソリューション探索モジュール510は、修正手法を新しいソリューションへ適用する。
【0114】
e.シミュレーション・モジュール515は、新しいソリューションの水理学的挙動をシミュレーションする。一実施形態において、このプロセスは次のステップを含んでもよい。
【0115】
i.シミュレーション・モジュール515は、ソリューションの設定に基づいて、流れをパイプラインへ伝搬する。流れの妨害が存在するならば、シミュレーション・モジュール515は現在の通過を打ち切る。
【0116】
ii.シミュレーション・モジュール515は、最初の圧力伝搬通過を実行する。
【0117】
iii.直接圧力最適化モジュール(DPO)530は、直接圧力最適化アルゴリズムを実行し、パイプラインの幾つかの要素の幾つかの圧力を変更する可能性がある。一実施形態において、このプロセスは次のステップを含んでもよい。
【0118】
aa.DPOモジュール530は全ての流れを計算する。
【0119】
bb.DPOモジュール530はノード圧力を伝搬する。
【0120】
cc.DPOモジュール530は圧力依存性グラフを作成する。
【0121】
dd.DPOモジュール530は圧力ノードを並べ替える。
【0122】
ee.DPOモジュール530は、各サブネットワークについて、一般化された圧力ギャップを計算する。
【0123】
ff.DPOモジュール530は、各サブネットワークについて、最小圧力を計算する。
【0124】
gg.DPOモジュール530は、可能であれば、各サブネットワークについて、圧力ノードの圧力を低減する。
【0125】
hh.DPOモジュール530は、圧力を各サブネットワークへ伝搬する。
【0126】
ii.DPOモジュール530は、各サブネットワークについて、未知の要素パラメータの圧力を再計算する。
【0127】
iv.シミュレーション・モジュール515は、第2の圧力伝搬通過を実行する。圧力妨害が存在すれば、シミュレーション・モジュール515は現在の通過を打ち切る。
【0128】
v.シミュレーション・モジュール515は、圧力制約について大域チェックを実行する。大域制約妨害が存在するならば、シミュレーション・モジュール515は現在の通過を打ち切る。
【0129】
vi.シミュレーション・モジュール515は各プラントを構成し、各プラントが、最も経済的なやり方で、ソリューションで指定された圧力及び流れを生成できるようにする。
【0130】
f.評価モジュール520は新しいソリューションのパフォーマンスを評価し、この評価を新しいソリューションに関連づける。
【0131】
g.新しいソリューションが集団の中へ挿入される。
【0132】
h.集団内の最悪ソリューションが削除される。
【0133】
i.ソリューション探索モジュール510は、終了すべきかどうかを決定する。終了すべきであれば、ソリューション探索モジュール510はプロセスの最終段階へ行く。そうでなければ、ソリューション探索モジュール510は上記のステップaへ戻り、内部ループ・シーケンスを再び実行する。
【0134】
10.一度、シミュレーション・モジュール515が内部ループ・シーケンスを終了すると、集団の中に現在存在する最良ソリューションが識別される。
【0135】
11.後処理ルーチンが、発見された最良ソリューションへ適用される。
【0136】
12.出力モジュール250は、システム実行、発見された最良ソリューション、及び任意の他の対象となる実行特徴を記述するレポートを生成する。
【0137】
本発明を実施するための好ましいプロセス及び装置が説明された。本発明の趣旨及び範囲から逸脱することなく、前述した実施形態へ多くの変更及び修正が行われてもよいことは、当業者に理解され、また容易に明らかであろう。これまでの説明は単なる例示であり、下記のクレームで定められた本発明の真の範囲から逸脱することなく、統合されたプロセス及び装置の他の実施形態が使用されてもよい。
【技術分野】
【0001】
一般的に、パイプラインシステムは、1つの点から他の点、通常は1つ(又は複数)の生産又は処理点から他の点又は使用点へ液体又は気体の原材料を運送する連続パイプ導管を提供する。パイプ導管は、機器、例えば、弁、圧縮機ステーション、通信システム、及び計量器で完結する。例えば、図1は、気体窒素パイプライン及び並行して走る気体酸素パイプラインの双方を含む二重パイプラインシステムを示す。パイプライン・ルートに沿った様々な場所で多数のプラントが示され、空気分離器、圧縮機、昇圧機、調整器、及び他の機器要素(equipment elements)が、原材料をパイプラインの中へ導入するように動作する。
【背景技術】
【0002】
図1で示されるようなパイプラインシステムの動作を最適化することは、複雑な仕事である。特に、パイプラインシステムを最適化して、様々なノードの電力コスト、再構成可能な要素(reconfigurable elements)(例えば、パイプラインの特定のノードで圧力又は流れを増加するか、圧力又は流れを減少するように働くことのできるパイプライン要素)、及び様々なノードにおける契約義務出力及び圧力要件を説明することは、困難な仕事であることを証明した。市販されているパイプライン最適化システムは、概して、複雑なパイプラインシステムを構成するための満足なソリューションを提供することができなかった。特に、市販されているパイプライン最適化システムは、パイプラインを動作させるときの動作コストに大きな影響を与える様々な要因を説明することができなかった。例えば、現在利用可能な最適化システムは、2つ以上の原材料を運送するように構成されたパイプラインシステム(例えば、図1で示される二重パイプラインシステム)を説明しなかった。それらの最適化システムは、クライアント契約の全ての特徴(例えば、パイプライン動作の生産面からの「テーク・オア・ペイ契約」及びパイプライン動作の配送面からの最小圧力/流量の双方)を説明しなかった。また、それらの最適化システムは、再構成可能なネットワーク要素の構成を最適化しなかった。その代わりに、そのようなシステムは、しばしば、多様なこれらの変数を制約し、パイプライン動作の隔離された様相(aspect)を最適化することを求め、他の様相が独立に最適化されることを仮定する。しばしば、これは次善のソリューションを導いてきた。更に、現在のシステムが高品質のソリューションを識別できることを証明したときでも、しばしば、合理的な時間量の中でそれを行うことはできない。
【発明の開示】
【0003】
したがって、パイプラインシステムの動作を最適化する手法の必要性が残る。典型的には、最適化プロセスはパイプライン動作の許容状態を識別するために使用されるべきである。このような許容状態は、動作要件、物理的能力を満足させ、動作コスト、最も注目すべきものとして電力消費を最小にする。
【0004】
一実施形態において、本発明はパイプライン動作をシミュレーション及び最適化することに関する。本発明の一実施形態は、パイプラインシステムの動作を最適化する方法を含む。方法は、概して、入力データを読み取ことであって、入力データが最適化されるべきパイプラインシステムを記述することと、ソリューションの集団を生成することであって、集団内のソリューションの各々がパイプラインシステムについて実現可能な状態を指定することとを含む。方法は、概して、更に、入力データによって指定された終了条件が満足されるまで、集団の上で遺伝的最適化プロセスを実行することと、集団内のソリューションに対して、最良の評価を有する最適化生産ソリューションを選択することとを含む。
【0005】
一度、最適化された生産ソリューションが生成されると、方法は、概して、更に、最適化された生産ソリューションのために、直接圧力最適化プロセスを使用して、パイプラインシステムの1つ以上の配送点に存在する出力圧力及びパイプラインシステムの1つ以上の生産ノードにおける入力圧力を指定する最適化圧力ソリューションを生成することを含む。
【0006】
遺伝的最適化プロセスを実行することは、概して、集団内の少なくとも1つのソリューションによって指定された実現可能な動作状態の少なくとも1つの様相(aspect)を修正すること、修正されたソリューションによって指定された動作状態に従って、パイプラインシステムの動作をシミュレーションすること、及び修正されたソリューションのパフォーマンスを評価することを含む。最適化プロセスは、概して、更に、修正されたソリューションを集団へ追加すること、及び最悪の評価を有するソリューションを集団から除去することを含む。
【0007】
特定の実施形態において、ソリューションの初期集団は、第1の群のソリューション及び第2の群のソリューションを含んでもよい。概して、第1の群のソリューションは発見的規則に従って生成されてもよく、第2の群のソリューションはランダム・プロセスを使用して生成されてもよい。
【0008】
特定の実施形態において、ソリューションによって指定された実現可能動作状態の少なくとも1つの様相を修正することは、概して、ソリューション修正手法を選択することと、選択されたソリューション修正手法に従って修正すべき少なくとも1つのソリューションを集団から選択することとを含んでもよい。
【0009】
任意の数のソリューション修正手法が使用されてもよい。例えば、1つのソリューション修正手法は集団内のソリューションをランダムに修正することを含み、他の手法は発見的規則に基づいてソリューションを修正することを含み、第3の手法は2つ以上のソリューションを交雑することを含む。更に、入力データは、使用されるときに現実世界のパイプラインシステムへ関連づけられてもよいので、入力データは、パイプラインシステムの現在の現実世界動作状態を記述するシステム状況データベースから来てもよい。入力データは、構造化形式、例えば、データを記述するために広く使用される拡張可能マークアップ言語(XML)で提供されてもよい。
【0010】
他の実施形態は、パイプラインシステムの動作を最適化する方法を含む。方法は、概して、遺伝的アルゴリズム最適化手法を使用し、パイプラインシステムへ供給される原材料の生産について、最適化された生産ソリューションを生成し、シード・ソリューションの集団を最適化することを含む。遺伝的アルゴリズム最適化手法は、シード・ソリューションの集団を最適化し、前述した手法に従って、最適化された生産ソリューションを生成するように構成されてもよい。方法は、概して、更に、最適化された生産ソリューションのために、直接圧力最適化手法を使用して、パイプラインシステムの1つ以上の配送点に存在する出力圧力及びパイプラインシステムの1つ以上の生産ノードで生成すべき入力圧力を指定する最適化圧力ソリューションを生成することを含む。
【0011】
特定の実施形態において、1つ以上の配送点の出力圧力は、それぞれの配送点の要求最小配送圧力と、パイプラインシステムのそれぞれの生産ノードに許容される最大入力圧力との中にある。
【0012】
本発明の性質及び目的を更に理解するためには、添付の図面と結びつけて下記の詳細な説明を参照すべきである。図面において、同様の要素は、同一又は類似の参照数字を与えられる。
【図面の簡単な説明】
【0013】
【図1】既存のパイプラインシステムを示す地図である。
【図2】本発明の一実施形態に従って、パイプラインシステムの動作的様相を最適化するために使用されるシステムを示す。
【図3A】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3B】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3C】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3D】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3E】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3F】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図3G】本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。
【図4】本発明の一実施形態に従って、図2で示されるパイプライン最適化アプリケーションの中に含まれる入力モジュールの収集物を示す。
【図5】本発明の一実施形態に従って、図2で示されるパイプライン最適化アプリケーションの中に含まれる最適化モジュールの収集物を示す。
【図6】本発明の一実施形態に従って、パイプラインの動作の様相を最適化する方法を示す。
【図7】本発明の一実施形態に従って、パイプラインの動作の様相を最適化するために使用される最適化プロセスを実行する方法を示す。
【図8】本発明の一実施形態に従って、パイプラインの動作をシミュレーションする方法を示す。
【図9】本発明の一実施形態に従って、直接圧力最適化モジュールの動作を示す。
【発明を実施するための形態】
【0014】
本発明の実施形態は、パイプライン動作の様々な様相を最適化するために使用されるコンピュータ化された最適化システムを提供する。一般的に、「最適化」の用語は、本明細書では、通常、電力又は他の動作コストに関して、パイプライン動作の他の状態よりも優れた状態の変化を記述するために使用される。本発明の実施形態は、パイプラインの動作制約を満足させる問題に対して、低コスト・ソリューションを識別するために使用される最適化システムを提供する。しかし、本発明の実施形態は、パイプライン構成に対して、最適又は最良ソリューションを識別するようには要求されないことに注意すべきである。その代わりに、最適化の用語は、一般的に、困難な問題に対して、合理的な時間量の中で、許容できるソリューションを発見することを意味する。
【0015】
一実施形態において、最適化システムは、最適化問題の高品質ソリューションを探索するように構成されたソフトウェア・アプリケーションである。パイプラインシステムの場合、最適化システムは機器の設定及び構成を探索する。これらの機器の設定及び構成は、顧客及び動作要件を満足させ、同時に電力コストを最小にする
最適化システムによって識別又は生成される最適化の例は、異なるプラント間で生産を移行することによって電力コストを低減すること、圧縮機の設定を最適化すること、多数の機能を実行するパイプライン要素の構成、及びシステム動作上の制約を満足させることを含む。こうして、最適化システムは、パイプラインを作動させるために必要な電力コストを最小にし、同時にパイプラインの様々なノードに位置する顧客へ契約義務吐き出し圧力(原材料の流れ)を提供するために使用されてもよい。
【0016】
一実施形態において、動作制約は、「ハード」制約及び「ソフト」制約の双方を含む。ハード制約は、ソリューションが実現可能と見なされるとすれば、最適化問題のソリューションが満足させなければならない要件である。例えば、ソリューションは要求された圧力で生産物をクライアントへ配送し、同時にパイプラインのいずれかの部分で最大圧力のハード制約を超過する場合がある。ハード制約の妨害は、ソリューションを実現不可能にする。ハード制約の追加の例は、パイプラインの区分における最小及び最大の圧力と流れ、調整器の弁の最大開放、プラントのオン又はオフを要求する制約、及び圧縮機モデルの物理的制限を含む。
【0017】
ソフト制約は、満足させることが望ましいパイプライン・パフォーマンス上の制約であるが、ソリューションを実現可能にするためにソフト要件を満足させることは要求されない。例えば、ソフト制約は、プラントにおけるガス抜きを低減することであってもよい。ガス抜きが起こらなければならない多くの状況が存在するが、ガス抜きがソリューションを無効にしない限り、ガス抜きを最小にする要件は、ハード制約ではなくソフト制約である。ソフト制約の他の例は、「テーク・オア・ペイ」協定である。その場合、パイプライン作業者は、使用したか否かに関わらず、利用可能な生産物又は原材料について支払わなければならない。ソフト制約の場合、特定のパイプライン構成の他の効率が、生じたペナルティを補償するならば、そのような構成は許容できるか、好ましくさえもある。
【0018】
本発明の実施形態は、本明細書において、気体酸素(GOX又はO2)及び気体窒素(GAN又はN2)の双方を運送するために構成された二重パイプライン・ネットワークの動作に関して説明される。即ち、本発明の実施形態は、図1の地図で示されたパイプラインシステムに関して説明される。しかし、当業者は、本発明の実施形態が、O2又はN2以外の原材料を含む3つ以上(又は1つ以下)の原材料を運送するために構成されたパイプライン・ネットワークのパイプライン動作を最適化するように適合されてもよいことを認識するであろう。
【0019】
図2は、本発明の一実施形態に従ってパイプラインシステムの動作的様相を最適化するために使用されるシステム200を示すブロック図である。一般的に、システム200で例示されたコンポーネントは、既存のコンピュータ・システム、例えば、デスクトップ・コンピュータ、サーバ・コンピュータ、ラップトップ・コンピュータ、タブレット・コンピュータなどのために構成されたコンピュータ・ソフトウェア・アプリケーションとして実現されてもよい。しかし、本明細書で説明されるソフトウェア・アプリケーションは、特定のコンピューティング・システムに限定されず、利用可能となったときの新しいコンピューティング・システムを利用するように適応されてもよい。更に、システム200は、マルチプロセッシング環境、例えば、複数のCPUを有するシステム、及び分散及び並列システム、例えば、コンピューティング・クラスタ又はグリッドで使用するように適応されてもよい。
【0020】
更に、システム200で例示されるソフトウェア・アプリケーションは、ローカルエリアネットワーク又は大型広域ネットワーク、例えば、インターネットを含むコンピュータ・ネットワーク上で通信する分散システムで実行していてもよい。更に、一実施形態において、システム200のコンポーネントは、コンピュータ可読媒体、例えば、CD−ROM、DVD−ROM、フラッシュメモリ・モジュール、又は他の有形記憶媒体の上に記憶された1つのアプリケーション・プログラム(又は複数のプログラム)として提供されてもよい。
【0021】
一般的に、本発明の実施形態を実現するために実行されるルーチンは、オペレーティング・システム又は具体的アプリケーションの一部分、コンポーネント、プログラム、モジュール、オブジェクト、又は命令シーケンスであってもよい。本発明のコンピュータ・プログラムは典型的には複数の命令を備え、これらの複数の命令は、ネイティブ・コンピュータによって機械読み取り可能形式、したがって実行可能命令へ変換される。更に、プログラムは変数及びデータ構造を備え、これらの変数及びデータ構造は、プログラムに対してローカルに常駐するか、メモリ又は記憶デバイスの中に見出される。更に、この後で説明される様々なプログラムは、本発明の具体的な実施形態で実現されるアプリケーションに基づいて識別されてもよい。しかし、理解すべきこととして、この後で現れる具体的なプログラム名称は単なる便宜のために使用され、したがってそのような名称によって識別及び/又は暗示される特定のアプリケーションの中でのみ使用するように本発明を限定すべきではないことである。
【0022】
図示されるように、システム200は最適化アプリケーション210、パイプライン状況データベース215、入力ファイル220、及び出力ファイル255を含む。入力ファイル220はパイプラインシステム・モデル225を含む。パイプラインシステム・モデル225は、最適化されるべきパイプライン、パイプライン制約、最適化目標、及び最適化プロセスのパラメータをを記述する。この情報は、更に、異なるプラントの現在の状況、圧縮機の設定、多機能パイプライン要素の現在の構成などを含んでもよい。例示されるように、パイプラインシステム・モデル225は、パイプライン・ネットワーク・モデル235及びプラント・モデル230を含む。パイプライン・ネットワーク・モデル235は、最適化されるべきパイプラインシステムのトポロジを記述し、プラント・モデル230は、パイプラインシステム・モデル235によって記述されるパイプラインシステムへ接続された1つ以上の生産プラントを記述する。図1で例示されるパイプラインシステムにおいて、プラントは空気分離器(ASU)、気化装置、及びパイプライン内への気体の圧力及び流れを増加する圧縮機を含んでもよい。もちろん、他のパイプライン・ネットワークについては、他の要素が使用されて、原材料及び圧力をパイプラインの中へ導入してもよい。
【0023】
一実施形態において、パイプラインシステム・モデル225は、拡張可能マークアップ言語(XML)を使用して編成されてもよい。XMLは、マークアップ言語を作成するために広く使用される標準であって、データ構造を記述するために使用される。XMLによって、作成者は自分自身のマークアップ・タグ及びドキュメント構造を定義することができる。更に、様々なXMLファイル・ビューア及びエディタが市販される。そのようなエディタを使用して、ユーザはパイプラインシステム・モデル225を作成、保存、及び修正してもよい。図3A〜図3Gは、更に、例示的なXML文法を使用してプラント・モデル230及びパイプ・ネットワーク・モデル235の要素を例示する。
【0024】
パイプライン状況データベース215は、パイプラインシステムの現在の動作状態に関する情報を提供する。一実施形態において、入力ファイル220は、パイプライン状況データベース215から得られる情報を使用して生成されてもよい。言い換えれば、パイプラインシステム・モデル225は、既存のパイプライン(例えば、図1で示されるパイプラインシステム)の実際の動作状況を反映してもよい。代替として、ユーザは、様々な仮定的パイプライン・トポロジ及び構成を定義してもよい。そうすることによって、既存のパイプラインへの潜在的変更の「仮定」分析を実行するようにシステム200を使用することができる。例えば、ユーザはパイプラインシステム・モデル225を作成して、特に、機器のアップグレードによって取得可能な利点を研究し、新しい顧客を追加するコストを研究し、新しい設備を追加する利点を研究してもよい。
【0025】
最適化アプリケーション210は、入力ファイル220によって記述されたパイプラインシステムの構成に対する高品質ソリューションを識別するように構成されてもよい。そのようなソリューションは、パイプラインシステムの各構成可能な要素について設定を指定してもよく、ソリューションは、更に、入力ファイル220によって指定された動作制約を満足させてもよい。一実施形態において、最適化アプリケーション210は多数のモジュールを含み、これらのモジュールは、最適化プロセスに関連した異なる機能を実行するように構成される。図示されるように、最適化アプリケーション210は入力モジュール240、ユーザ・インタフェース・モジュール260、最適化モジュール245、及び出力モジュール250を含む。
【0026】
ユーザ・インタフェース・モジュール260によって、ユーザは最適化アプリケーション210と対話することができる。例えば、ユーザ・インタフェース・モジュール260はグラフィカル・ユーザ・インタフェース(GUI)を提供してもよい。GUIによって、パイプライン・ネットワーク・モデル235、プラント・モデル230、及びパイプライン・コンポーネントに関連づけられたパラメータを図形で編集することができ、更に、ユーザは最適化の結果を検査することができる。入力モジュール240の様相は、更に、図4を参照して説明される。
【0027】
最適化モジュール245は、入力ファイル220を使用して最適化実行を達成するように構成されてもよい。一実施形態において、最適化実行の出力は、時間及び他の制約が入力ファイル220の中に含まれるものと仮定して、最適化モジュール245によって識別されるパイプライン構成に対する最良ソリューションである。最適化モジュール245の様相は、更に、図5を参照して説明される。出力モジュール250は、最適化モジュール245によって達成される最適化実行の結果を処理するように構成されてもよい。例えば、出力モジュール250は、所与の最適化実行の結果を呈示する多数のレポートを生成するように構成されてもよく、これらのレポートはユーザへ呈示される(例えば、出力ファイル255)。
【0028】
一実施形態において、出力モジュール250は、最適化実行中に発見された最良ソリューション、及びこのソリューションの評価を記述するXMLファイルを生成するように構成される。例えば、最適化モジュール245は要約ファイルを生成する。この要約ファイルは、実行がどれくらいの時間を取ったか、どのような最適化パラメータが使用されたか、どのようなパイプラインシステムが入力ファイル220の中に含められたかなど、及び最適化実行中に起こった異常条件又は疑わしいデータ誤りを記述する。
【0029】
図3A〜図3Gは、本発明の一実施形態に従って、最適化されるべきパイプラインシステムの様相をモデル化するために使用されるデータ要素の階層的収集物を示す。図示されるように、これらの図は、パイプラインシステム・モデル225を記述する例示的XML文法の図形表現を提供する。図3A〜図3Gのデータ要素は、図1で示されるパイプラインシステムを表現するように適応される。しかし、XML文法は、任意の数の異なるパイプラインシステムを記述するために定義されてもよいことを、当業者は認識するであろう。したがって、下記で説明される具体的XML要素は、システム・モデル225の実施形態の例として提供され、他のパイプラインシステムについては、異なるXML要素が定義されてもよい。更に、公知のように、XMLドキュメントは、単一のルート要素から始めて、データ要素を階層構造へ組織する。各要素は、1つ以上の副要素(sub−element)及び/又は属性を含んでもよい。図3A〜図3Gにおいて、各要素はラベル付きボックスとして表現され、ラベル付きボックスは副要素を表示するように拡張されてもよい。
【0030】
最初に、図3Aは、パイプラインシステム・モデル300から始まる例示的XML文法のルート要素を示す。パイプラインシステム・モデル300は2つの副要素、即ち、パイプラインシステム335及びプラント要素330を含む。パイプラインシステム335及びプラント要素330の左にある拡張ボックスは、これらのデータ要素が副要素を含み得ることを示す。更に、範囲データ305は、所与のシステム・モデル300の中の所与のタイプの要素の数に対する制限を示してもよい。したがって、この例において、パイプラインのデータ・モデルは単一のシステム・モデル300(即ち、単一のルート要素)、1つ又は2つのパイプラインシステム要素335を含み、任意の数のプラント要素330を含み得る。図3B〜図3Dは、更に、プラント要素330を示し、図3E〜図3Gは、更に、パイプラインシステム要素335を示す。
【0031】
図3Bは、更に、プラント要素330を示す。図示されるように、プラント要素330はプラント要素337を含む。プラント要素337は、原材料が生成されてパイプラインの中へ挿入される現実(又は仮定)の生産プラントを表してもよい。プラント要素330は任意の数のプラント要素337を含んでもよく、プラント要素337は所与のデータ・モデルの中のプラントを表す。プラント要素337のダッシュ線は、この要素が有効なシステム・モデル300には要求されないことを示すために使用される。言い換えれば、プラント要素337を含まないシステム・モデル要素300が作成されてもよい。図示されるように、各プラント要素337はプラントID339及びガス特定データ341を含む。更に、各プラント要素337は、空気分離器(ASU)340を表す副要素を含んでもよい。一般的に、ASUは大気からO2又はN2を精製及び取得するために使用される1個の機器である。
【0032】
図3Cは、記述される例示的XMLに従って、ASU要素340に指定されてもよい副要素を示す。図示されるように、ASU要素340は基本機器特性341を含む。この例において、基本機器特性341は最大の流れ、最小の流れ、電力コスト、及びASU340の動作状況を指定及び記述する副要素343を含む。更に、ASU340は係数の集合345を含んでもよい。集合345はASU340を表す馬力を記述するために使用される。下記で詳細に説明するように、これらの係数はパイプラインシステム・モデル225のシミュレーション段階及び最適化段階の双方で使用されてもよい。
【0033】
図3Dは、ガス特定データ要素341のために、記述される例示的XML文法の一部分として指定されてもよい副要素を示す。図示されるように、ガス特定データ要素341はノード要素342を含む。データ・モデルのこの要素は、プラントの出力がパイプラインシステムへ入るパイプラインシステムのノードを示すために使用されてもよい。ノードは、更に、図3Eとの関連でパイプラインシステム335の要素として記述される。記号345は、データ・モデルの中のガス特定データ要素341のインスタンスが、2つの分岐の1つからの要素を含んでもよい(又は2つの分岐のいずれからの要素も含まない)ことを示す。この例において、ガス特定データ要素341は、入力圧力要素及び圧縮機モデル349又は代替の供給要素350及びコスト要素351を含んでもよい。上方分岐は、入力圧力要素347及び圧縮機要素349についてのデータ要素を含み、これらのデータ要素は、所与の空気分離器によって使用される機器の特性を記述するために使用される。下方分岐は、代替の供給源を示す。幾つかの場合、原材料が購入され、パイプラインの中に含められてもよい。そのような場合、代替の供給要素350及びコスト要素351は、代替供給の特徴を記述する。例えば、代替の供給要素350は「テーク・オア・ペイ」供給源を記述してもよい。その場合、パイプラインによって実際に使用されたか否かに関わらず、パイプライン作業者は生産物について支払う。代替の供給要素350はプラント330の副要素として示されるが、代替の供給要素350はパイプラインシステム要素335の副要素であってもよい。
【0034】
図3Eは、記述される例示的XML文法の一部分として、パイプラインシステム要素335の最上レベル構造を示す。図示されるように、パイプラインシステム・モデル300は1つ又は2つのパイプラインシステム要素335を含んでもよい。例えば、2つのパイプラインシステム335の存在は、GOXパイプ・ネットワーク及びGANパイプ・ネットワークの双方を含む図1のパイプラインに対応する。こうして、この現実世界のパイプラインシステムを完全にモデル化するためには、パイプラインシステム・モデル300は、2つのパイプラインシステム要素335、即ち、GOXパイプ・ネットワーク及びGANパイプ・ネットワークに1つずつを含む。更に、各パイプラインシステム要素335は、典型的には、少なくとも1つのパイプ要素355及び2つのノード要素353を含む。言い換えれば、最も簡単なパイプラインシステム335は、2つのノード要素353を接続する単一のパイプ要素353を含む。
【0035】
図3Fは、記述される例示的XML文法の一部分として、ノード要素353の副要素を示す。一実施形態において、ノード要素353は、多様なデータ要素によって特徴づけられてもよい。図示されるように、ノード要素353は、流量、ガスの温度、ガスの比重、実際の圧力、最大圧力及び最小圧力、ノードの相対位置を指定する高度及び座標を記述する要素359を含む。
【0036】
図3Gは、記述される例示的XML文法の一部分として、パイプライン要素355の副要素を示す。図示されるように、パイプライン要素355は要素ID361を含む。パイプライン要素355は、ID361を使用して相互から区別されてもよい。一実施形態において、各パイプライン要素355は多様な共通パイプライン機器コンポーネントを表すために使用されてもよく、これらのコンポーネントは2つのノード要素を接続するために使用される。
【0037】
例示されるように、パイプライン要素355は、パイプ360の1つ、昇圧機又は圧縮機363、圧力調整器365、弁367、又は多要素ノード369の1つを表すように使用されてもよい。一般的に、パイプ要素361は2つのノードを接続するパイプの導管を表す。パイプライン要素361は、更に、サイズ、圧力などを記述する副要素によって特徴づけられてもよい。昇圧機/圧縮機要素363は、パイプライン内の圧力を増加するために使用されるパイプ要素を表す。昇圧機/圧縮機要素363は、更に、昇圧機要素が提供する圧力量、要素を作動させるコストなどを記述する副要素によって特徴づけられてもよい。圧力調整器要素365は、1つのパイプラインシステム又は要素と他のパイプラインシステム又は要素との間の圧力を調整するパイプ要素を表す。弁要素367は、原材料が1つのパイプラインシステム又は要素と他のパイプラインシステム又は要素との間で移動されるノード接続要素を表す。
【0038】
最後に、スマート・ノード接続要素(NCE)369は、複数の構成を取ることのできるパイプライン要素360を表す。スマートNCEは、異なる機能を実行するように再構成されるパイプラインシステム300の中の要素を表す。例えば、スマートNCEは、既に説明した要素361、363、365、367の任意の1つ又は組み合わせであるように構成されてもよい。例えば、図1に示されるパイプラインシステムは、パイプライン作業者が、使用する遠隔制御センターから構成することのできるスマートNCEを含む。パイプライン内にスマートNCEを含めることによって、パイプラインの構成は迅速に遠隔から修正可能であり、パイプライン作業者は、パイプライン動作の変化が起こるとき、現実世界の条件に従ってそれらの変化に適応してもよい。同時に、パイプライン最適化問題の中にスマートNCE要素369が存在することは、数学的手法が、異なるスマートNCE構成の全てを試行することなく問題を解決することを困難にする。なぜなら、単一のスマートNCE要素369の中の単一の変化は、パイプラインの流体特性を劇的に変更することができるからである。
【0039】
図4は、本発明の一実施形態に従って、図2で示されるパイプライン最適化アプリケーション210に含まれる入力モジュール240の収集物を示す。一実施形態において、入力モジュール240は、パイプラインの記述、ユーザ要件、ユーザ提供選好、及び最適化アルゴリズムのユーザ構成を読み込むように構成されてもよい。例えば、入力モジュール410によって読み込まれた入力ファイル220は、最適化ファイルを含んでもよい。この最適化ファイルは、最適化パラメータ、例えば、最適化実行の長さ、ソリューションを提供するときに維持されなければならない制約、及び過去に生成されたソリューションが読み込まれて、この最適化実行中に使用されなければならないかどうかを指定する。入力モジュール410は、更に、パイプラインのトポロジ、パイプラインの状況、及びパイプライン動作の制約を記述する入力ファイル220を読み込む。入力ファイル220は、前述したような例示的XML形式であってもよい。
【0040】
データ確認モジュール415は、可能な誤り及び潜在的問題(例えば、入力データ220によって表される問題が、ハード制約に妨害することなしには解決され得ないかどうか)について、入力データをチェックするように構成されてもよい。データ確認モジュール415は、更に、入力データ220を使用して様々な問題を識別してもよい。そのような問題には、例えば、次のようなものが含まれる。
【0041】
・ 無効なXMLドキュメント(例えば、複数のルート要素、又は閉じられていない要素)
・ ゼロよりも小さいか等しいプラント電力コスト
・ ノード要素の最小及び最大定格の外にある現実又は所望のノード圧力
・ ノード名とパイプライン要素データとの間の不一致
・ 複数の要素における重複した参照ID
・ 要素データの不一致(例えば、要素が、同じ入及び出のノードを有する)
・ パイプラインの誤り(例えば、切り離されたパイプライン)
・ 実現不可能な最適化目標(例えば、入力圧力よりも大きな出力圧力)
もちろん、当業者は、追加のデータ確認が実行されてもよいことを認識するであろう。一実施形態において、データ確認モジュール415が、入力ファイル220が無効であることを決定すると、それは最適化実行を打ち切り、どのような問題が識別されたかをユーザに通知する。代替として、普通ではないが実現可能であり得る条件の場合、例えば、負の電力コストの場合、データ確認モジュール415は、ユーザ・インタフェース及び実行ログ・ファイルへ警告を送るが、必ずしも最適化実行を打ち切らない。
【0042】
入力データ220の集合を使用して最適化実行を始める前に、前処理モジュール420は、最適化プロセスの効率を増加するため、多数の予備計算を実行してもよい。例えば、前処理モジュール420は集中計算の結果をキャッシュし、それらの計算の結果が、冗長なやり方で再計算される代わりに、将来必要となったとき検索されるようにする。例えば、前処理モジュール420は、プラントが取得しなければならない流れ及び圧力の目標集合が与えられたと仮定して、プラント構成のについて最適設定をキャッシュしてもよい。この場合の最適設定の初期計算は非常に時間を消費するが、最適設定に対する後続の要求(同一目標の流れ及び圧力が与えられたと仮定する)は、キュッシュから最適解答をルックアップする時間だけが必要である。
【0043】
図5は、本発明の一実施形態に従って、図2で例示されたパイプライン最適化アプリケーション210に含まれる最適化モジュール245の収集物を示す。図示されるように、最適化モジュール245はソリューション探索モジュール510、シミュレーション・モジュール515、直接圧力最適化(DPO)モジュール530、及び評価モジュール520を含む。集約的に、最適化モジュール245は、パイプライン動作に対する高品質ソリューションを識別するため、パイプラインシステム・モデル225を分析及び評価するように構成されてもよい。
【0044】
ソリューション探索モジュール510は最適化アルゴリズムを実行するように構成されてもよい。最適化アルゴリズムは、入力モジュール240によって読み込まれたパイプラインシステム・モデル225の動作を最適化するために使用される。一実施形態において、ソリューション探索モジュール510は、進化理論によって示唆される遺伝的アルゴリズム−シード・ソリューションの収集物(「集団」と呼ばれる)を修正するプロセス−を使用することによって動作する。
【0045】
一般的に、当業者に知られるように、遺伝的アルゴリズムは試験的ソリューションの集団を生成する。試験的ソリューションの各々は評価され(適性値を生成するため)、試験的ソリューションのよいものから新しい世代が作り出される。一実施形態において、ソリューションの評価は評価モジュール520によって達成される。プロセスは何千という世代にわたって継続される。その目的は、集団が時間と共に益々良好なソリューションを含むように「進化」することである。遺伝的アルゴリズムは、時には「コンピュータ上の進化」として特徴づけられる最適化手法である。典型的には、遺伝的アルゴリズムは、「突然変異」及び「交雑」のプロセスによって現在の集団から新しいソリューションを生成する。発見された最良ソリューションは、最悪ソリューションよりも多くの子孫を生成する可能性が高く、したがってソリューション集団は、アルゴリズムが進行するにつれて益々良くなる傾向がある。
【0046】
遺伝的アルゴリズムは、典型的には、ディジタル記号の(しばしば固定長の)文字列としてソリューションを表し、親の適性(又は、適性の或る近似値)に比例して現在の集団から親を選択し、集団の新しい構成員を作り出す優性手段として「交差」−異なるソリューション間の要素の交換−の或るメカニズムを使用する。ソリューションの初期集団は、典型的には、ランダムに、又は或る既知の開始点から作り出される。
【0047】
一実施形態において、遺伝的アルゴリズムが解決する問題は、プラントを含むパイプライン内の各要素について動作コストの合計を最小にし、また、ソフト制約に妨害するソリューションによって課されるペナルティの合計を最小にすることである。動作コストは、典型的には、全てのプラント及び圧縮機のコストの合計を含み、パイプラインシステム内の制約の大部分はハード制約である。ソリューションは、ハード制約に妨害しない限り実現可能である。こうして、一般的に、所与のソリューションの「適性」は、このソリューションの現実の動作コストである。下記で説明される図6は、ソリューション探索モジュール510の動作の実施形態を例示する。
【0048】
表1は、図1で示されるパイプラインシステムの動作に対するソリューションの一般的構造の例を示す。もちろん、他のパイプラインシステムについては、ソリューションは、下記で列挙される要素とは異なる要素を含むであろう。
【表1】
【0049】
表1は、最適化モジュール245の制御下にある変数の集合を列挙する。これらの変数の各々について値を決定することが、最適化プロセスの目標である。例えば、プラント流れのリストは、入力ファイル220に含まれる各プラント要素について、出力流れのリストを提供する。プラント流れのリストは、ユーザによって固定された流れを有するプラントについては、流れを含まないであろう。遺伝的アルゴリズムによって設定されない圧力は、下記で説明するように、DPOモジュール530によって設定されてもよい。スマートNCE選択リストは、各構成可能な要素が、所与のソリューションで取るべき形態を表す。この形態は、このスマートNCE要素の許容できる構成から選択される(スマートNCE要素369はパイプラインシステム内で異なる機能を実行するように構成されてもよいことを、上記から想起されたい)。
【0050】
一実施形態において、シミュレーション・モジュール515は、パイプラインの機能を、所与のソリューションから誘導するように構成されてもよい。そうする間に、ソリューション自体は、シミュレーションが実行されるときに修正されてもよい。パイプラインのシミュレーション及び評価の根底となるソリューションのやり方は、図7〜図9と関連して下記で説明される。更に、本発明の一実施形態に従って、最適化実行中に実行されるステップを簡単に記述する例示的システムの段階的説明は、この説明の終わりに提供される。さしあたって注意すべきは、最適化モジュール245が、表1で示される形態のソリューションを作成、修正、及び保存して、発見した最良ソリューションを、最適化実行が終了するときに返却することである。
【0051】
一度、ソリューション探索モジュール510がソリューションを識別すると、シミュレーション・モジュール515は、パイプライン・ネットワークの動作をシミュレーションするように構成されてもよい。シミュレーションの間、ソリューション探索モジュール510によって識別されたソリューションは、ソリューションによって指定された構成から生じるパイプライン状態の完全な描写へ変換される。
【0052】
評価モジュール245は、ソリューションを評価するように構成されてもよい。一実施形態において、評価モジュール245は、望ましくないパフォーマンスの任意的ペナルティを含めて、シミュレーションされるパイプラインの動作コストを推定するように構成されてもよい。ソリューションに対して査定されるペナルティの例は、生産設備におけるガスの過剰ガス抜きに対するペナルティである。そのようなペナルティはドルで表現されてもよく、パイプラインの動作コストへ追加される。一実施形態において、評価モジュール520は、ソリューションの総動作コストを、パイプラインの各コンポーネントの動作コストの合計として誘導する。この場合のコンポーネントには、プラント及びそれらの機器が含まれる。一般的に、ソリューションの総コストが低くなると、それだけソリューションの「適性」は大きくなる。この「適性」は、ソリューション探索モジュール510によって実行される遺伝的アルゴリズムによって使用される。
【0053】
図6は、本発明の一実施形態に従って、パイプラインシステムの動作の様相を最適化する方法600を示す。方法600はステップ610で始まる。ステップ610では、ソリューション探索モジュール510が、入力ファイル220によって指定される終了条件を読み取る。2つ以上が指定されるならば、それらの1つが満足されたとき最適化システムは終了する。一実施形態において、終了条件は、生成されるソリューションの最大数、費やされるクロックタイムの最大量、又は指定された品質(又は適性)を超えるソリューションの発見を含む。更に、ユーザ・インタフェース260によって、ユーザは最適化実行を手作業で(例えば、キーボードから中断コマンドを入力することによって)停止することができる。これは入力ファイル220に含まれる条件ではないが、最適化アプリケーション210は、最適化実行中にこの条件を定期的にチェックしてもよい。
【0054】
ステップ620では、ソリューション探索モジュール510が最適化実行を初期化する。これは、例えば、キャッシュの作成、プラント・オプティマイザの初期化、探索ソリューション・モジュール510によって使用されるデータ構造の作成などを含んでもよい。ステップ630では、ソリューション探索モジュール510が遺伝的アルゴリズムのために初期ソリューションの集合を作り出す。言い換えれば、ソリューション探索モジュール510は、遺伝的アルゴリズムが修正及び繁殖を介して進化するためのソリューション「集団」を作り出す。
【0055】
一実施形態において、ソリューション探索モジュール510は、スマートな発見的方法に基づいて第1の群のシード・ソリューションを作り出し、第2の群のシード・ソリューションをランダムに生成する。一般的に、発見的方法は経験法則である。この経験法則は、しばしば良好に働いて、所望の結果、例えば、コストの低減と同時に所望レベルの生産維持を達成する。発見的方法は、しばしば先行する経験に基づく。ソリューション探索モジュール510で使用される発見的方法の例は、「パイプラインの或る領域の圧力が最大又は最小でない場合、圧力を上げるか下げることが、コストを下げてパイプラインの隣接領域のパフォーマンスを改善するならば、圧力を上げるか下げることを考慮せよ」である。
【0056】
第1の群のシード・ソリューションを生成するため、ソリューション探索モジュール510は、人間が使用する発見的方法に類似したソリューション生成発見的方法に基づいて、複数の「スマートなシード」を作り出す。例えば、第1の群のソリューションは、全ての圧力及び流れが最大に設定され、修復の発見的方法が合理的なやり方で圧力を下方へ調整してパイプラインの圧力制約を満足させるソリューションを含んでもよい。高い圧力が必要とされる場合、このシードは良好に働いて、良好なソリューションを生成することができる。他の「スマートなシード」は、全ての圧力及び流れが最小に設定され、発見的方法が合理的なやり方で圧力を上方へ調整して顧客の圧力制約を満足させるソリューションを含んでもよい。ソリューションが最も重要なクライアントを満足させることに向けられるとき、このシードは良好に働いて、良好なソリューションを生成することができる。なぜなら、圧力を増加する発見的方法は、圧力が増加するときの最も重要なクライアントの必要性に注目する傾向があるからである。他の「スマートなシード」は、全ての圧力及び流れが、実現可能な範囲の中間に設定され、後続の最適化が、これらの圧力を、範囲内の最大及び最小値のいずれかの方へ動かすことによって、より良好なソリューションを発見するソリューションを含む。
【0057】
更に、第1の群は、該当するならば、入力ファイル220の中で指定されたソリューションの群を含んでもよい。そうすることによって、ユーザは、上記のソリューションとは異なる見本のソリューションを探索ソリューション・モジュール510へ提供することができる。例えば、先行する問題に対するソリューションのデータベースが存在するならば、マッチング・アルゴリズムが使用されて、パイプライン及びこの要件の現在の状態を先行状態へマッチさせてもよい。こうして、現在の状態に類似した1つ以上の先行状態に対するソリューションを初期集団のシードにすることが合理的であろう。
【0058】
第1群のシード・ソリューションに加えて、探索ソリューション・モジュール510は、ソリューション集団を満たすため、入力ファイル220の中に指定された制約を満足させるランダム生成ソリューションの群を生成してもよい。このソリューション集団は大きな多様性を提供し、遺伝的アルゴリズムは最適化プロセスの開始時に広範囲のソリューションを探査することができる。
【0059】
ステップ640では、ソリューション探索モジュール510が新しいソリューションを生成する。前述したように、一実施形態において、ソリューション探索モジュールは、ステップ630で生成された初期ソリューションの集団を使用し遺伝的アルゴリズムを実行することによって、新しいソリューションを生成するように構成される。一般的に、遺伝的アルゴリズムは、何千という世代にわたって初期ソリューションの集団を「進化」させ、各世代で新しい集団を生成するように動作することが想定される。下記で説明する図7は、更に、ステップ630の一部分として実行される行動の実施形態を例示する。
【0060】
一度、ステップ630が完了すると、最適化モジュール245は、典型的には、多くのソリューションを生成している。ステップ650では、集団内に現在存在する最良ソリューション(即ち、最低の動作コストを有するソリューション)が識別及び処理される。一実施形態において、最良ソリューションとして識別されたソリューションは、追加の最適化ルーチンへ渡されてもよい。例えば、ソリューションのためにプラント・オプティマイザが実行され、ソリューション内で指定されたプラント構成が実現可能であることを確認し、構成の更なる最適化が容易に識別されるかどうかを決定する。ステップ660では、最適化実行中に生成された最良の識別ソリューションが返却される。例えば、出力モジュール250は、出力ファイル255を生成するように構成されてもよい。
【0061】
図7は、本発明の一実施形態に従って、パイプラインシステムの動作に対する最適化ソリューションを発見する方法700を示す。一実施形態において、方法700は何回も繰り返して−標準の最適化実行では何万回と−実行されてもよい。それはパイプライン最適化問題に対する高パフォーマンス・ソリューションを発見するためである。方法700を通過する各々の実行中に、ソリューション探索モジュール510は、集団内に現在存在するソリューションの集合から、少なくとも1つの新しいソリューションを生成する。初期集団は、前述した方法600の一部分で作り出される。
【0062】
ステップ710では、ソリューション修正手法が選択される。古典的な遺伝的アルゴリズムにおいて、ソリューション修正手法は、事実上ランダムである−それらの手法は、例えば、圧力の或る小さなパーセンテージを修正する−しかし、ランダムな変化を使用して良好なソリューションを探索することは、指示された発見的方法を使用して探索することほどに、高速でも有効でもない。したがって、一実施形態において、最適化モジュール245は、多数の非発見的(即ち、ランダム)及び発見的(即ち、非ランダム)手法を選択してソリューションを修正するように構成されてもよい。これらの手法には、次の手法が含まれる。
【0063】
・ ランダムな変化。この修正手法は、ソリューション内の1つのパラメータへランダムな突然変異を生成する。
【0064】
・ 生産の移行。この修正手法は、コストの高いプラントからコストの安いプラントへ生産を移す。
【0065】
・ ガス抜きの低減。この修正手法は、ガス抜きしているプラントを探し、ガス抜きに対するペナルティをチェックし、それらのプラントの1つで生産レベルを変更するやり方を探す。
【0066】
・スマートNCEの構成変更。この修正手法は、再構成可能な要素への修正が、ソリューションのパフォーマンスを向上するかどうかを識別する。向上するならば、スマートNCEの構成に対する許容できる変更が選択される。この発見的方法は、人間のパイプライン熟練者が使用するようなプロセスを使用し、再構成可能なパイプライン・コンポーネントの構成を変更するかどうかを決定する。
【0067】
・ プラントの停止。この発見的方法は、プラントの停止が資金の節約となるソリューションを識別する。例えば、1つのプラントにおける生産コストが非常に高ければ、このプラントを停止し、生産を他のプラントへ移行することが、ソリューションの適性を改善し得る。
【0068】
・プラントの起動化。この発見的方法は、プラントが利益を伴ってオンにされ得るとき、プラントを起動化するソリューションを識別する。新しいソリューションは、オンにする不活性プラントを選択することによって作り出されてもよい。この手法は、人間のパイプライン熟練者が使用する推論を使用して、どのプラントがオンにされる候補であるかを決定してもよい。
【0069】
・ 2つのソリューションの交雑。この発見的方法は、2つのソリューションを選択し、2つの元のソリューションを交雑することによって、新しいソリューションを作り出す。2つの元のソリューションの異なる部分が結合され、新しいソリューションを作り出す。例えば、2つのソリューションの第1の部分を備えるパラメータ値の2つのリストを使用して、2つの元のソリューションのどれが、新しいソリューションへ値を寄与するかを、フィールドごとに、ランダムに決定することができる。このソリューションによって、2つの異なるソリューションの有効要素が相互に再結合可能である。
【0070】
一実施形態において、これら(又は他の)手法の任意のものが、この最適化サイクルを通過する間に選択されてもよい。更に、修正手法は、デフォルトの確率又は入力ファイル220の中に指定された確率を使用して、確率的に選択されてもよい。したがって、どの修正手法も、選択される機会を有するが、或る修正手法は他の修正手法よりも高い確率を有し得る。確率の設定は、オプティマイザが所与のパイプラインについて生成するソリューションのタイプの実験及び分析の問題である。
【0071】
ステップ720では、ステップ710で選択された修正手法に従って、ソリューションの現在の貯留からの1つ以上のソリューションが、修正のために選択される。一度、修正手法が選択されると、1つ又は2つのソリューションのいずれが、入力として必要であるかが決定される。前述した修正手法の大部分は、ただ1つのソリューションを必要とするが、例えば、交雑修正は2つのソリューションを必要とする。
【0072】
一実施形態において、ソリューションは、時にはランク付けルーレット円盤手法と呼ばれる手法を使用して、ソリューションの一般的集団から選ばれる。手法が「ランク付け」と呼ばれる理由は、ソリューション集団内のソリューションを、最良ソリューションから最悪ソリューションまで順序づけられたリストへ並べ替えるからである。次に、この手法はリスト内の各ソリューションへ重みを割り当てる。これらの重みは線形に減少する。例えば、減少率が10であり、開始する重みが100であるとき、集団の最初の12の構成員は100、90、80、70、60、50、40、30、20、10、1、0.5、....の重みを有する。これらの重みは選択プロセスを偏向させるために使用され、最良の個体が最悪の個体よりも選択される可能性が高いようにされる。比喩は、集団の各構成員についてスロットを有するルーレット円盤である。しかし、スロットは等しいサイズではない。各ソリューションのスロットは、上記のように計算された重みに比例する。ルーレット円盤がこのように設定されるとき、コンピュータ化されたボールが旋回し、ボールが着地したスロットを有する個体が選ばれる。100の重み及びスロット・サイズを有する集団内の最良の個体は、ソリューションが要求されるとき、1の重み及びスロット・サイズを有する最悪の個体よりも、選ばれる可能性が100倍も高い。この重みづけられた選択プロセスは、最良の個体が、最悪の個体よりも、繁殖のために選ばれる頻度が高くなる点で、自然選択理論における「最適者生存」の考えに対応する。
【0073】
ステップ730において、新しいソリューションを作り出すため、選択されたソリューション修正手法が使用される。方法700のこのステップにおいて、選ばれたソリューションは、元のソリューションと同じ新しいソリューションを作り出すようにクローン化される。次に、修正手続きが新しいソリューションへ適用され、それが元のソリューションの修正バージョンとなるようにされる。修正の幾つかは非常に小さく−例えば、パイプライン内の1つの場所で圧力を少しだけ変更する。幾つかの修正は全く大きく−例えば、パイプラインの再構成可能なコンポーネントの構成を、弁から昇圧機又は圧縮機へ変更する。
【0074】
ソリューションはクローン化され、「クローン」及びこの「親」の双方が集団内に維持される。修正が良好な修正であれば、親は集団から最終的に削除される可能性が高く、新しいソリューション及びこの子孫は集団内に含められる。修正が悪いソリューションを生成するならば、新しいソリューションは集団から削除される可能性が高く、元のソリューションは保持されて、他の新しいソリューションを作り出すように修正される潜在力を有する。
【0075】
ステップ740では、新しいソリューションのパフォーマンスがシミュレーションされる。このステップの一部分として、新しいソリューションが使用され、このソリューションから生じるパイプライン状態の完全シミュレーションを作り出す。更に、DPO最適化モジュール530を使用することによって、線形最適化プロセスが適用されてもよい。ステップ740で生成されるソリューションのシミュレーションは、更に、図8及び図9で説明される。
【0076】
ステップ750では、新しいソリューションから誘導されるシミュレーション・パイプラインの「適性」が評価される。前述したように、評価モジュール520は、新しいソリューションのコスト(即ち、適性又は評価得点)を誘導するように構成されてもよい。ステップ760では、新しいソリューションが集団へ追加される。一実施形態において、ソリューションの集団は、並べ替えられた順序に維持され、したがって新しいソリューションは、この評価に従って配置される。ステップ770では、集団の最悪(即ち、最小適性)構成員が集団から除去される。こうして、集団のサイズは最適化プロセス中に一定に維持されてもよい。ステップ780では、終了条件が満足されるかどうかを探索ソリューション・モジュール510が決定する。満足されるならば、最適化プロセスは終了し、制御は方法600のステップ650へ戻る。そうでなければ、方法700が反復され、他の新しいソリューションを生成する(即ち、集団は他の世代へ移行する)。
【0077】
図8は、本発明の一実施形態に従って、パイプラインシステムの動作をシミュレーションする方法を示す。
【0078】
ステップ810において、方法800は流れ伝搬段階を含む。この段階の間、シミュレーション・モジュール515は、入力圧力、要素設定、及びユーザによって選ばれた既知の流れ及び流体方程式を使用し、入力ソリューションに基づいて、パイプライン全体の流れを計算する。一実施形態において、流れの伝搬は、Andrzej Osiadacz によるガス・ネットワークのシミュレーション及び分析(Simulation and Analysis of Gas Networks)で指定されるニュートン・ノーダル・アルゴリズム(Newton Nodal algorithm)に従って実行される。このアルゴリズムを使用して、入力ファイル220によって指定されたパイプライン内の様々な機器要素に関する既知の圧力、設定、及び構成に基づき、流れが計算されてもよい。一度、第1の流れ伝搬が計算されると、シミュレーション・モジュール515は、流れの妨害(例えば、クライアント場所への不十分な流れなど)がシステム内に存在するかどうかを決定してもよい。流れの妨害が発見されるならば、シミュレーション・モジュール515はこの事実を記録し、ソリューションの更なるシミュレーションを打ち切る。なぜなら、ハード制約に妨害することが知られたパイプライン・シミュレーションの構築及び最適化を継続することは不必要だからである。流れ伝搬段階が完了すると、システムは、どれほどの流れの量がパイプラインの各コンポーネントを通過しているかを記録する。
【0079】
ステップ820において、シミュレーション・モジュール515は、流れ伝搬段階(ステップ810)で計算された流れを使用して、パイプライン内の各要素における圧力を決定する。一実施形態において、圧力の決定は反復プロセスであり、前に参照した Osiadacz の書籍で指定されたアルゴリズムを基礎としてもよい。圧力計算は、反復される行列最適化及びリニアプログラミング手法によって実行されることに注意すべきである。公知のように、リニアプログラミングは、幾つかの変数の一次関数を最小又は最大にする数学的手続きであり、これらの変数における有限個の線形制限に従う。
【0080】
シミュレーション・モジュール515は、実現不可能な圧力−例えば、或る要素における最大許容圧力を超える圧力を記録する。実現不可能な圧力が識別されるならば、シミュレーション・モジュール515はシミュレーション構築プロセスを継続する(パイプライン・シミュレーションの構築及び最適化を継続することは必要である。なぜなら、実現不可能な圧力はDPOモジュール530によって補正されてもよいからである)。第1の圧力伝搬段階が完了すると、シミュレーション・モジュール515は、パイプラインの各コンポーネントでの流れ圧力及び流量がどのようなものかを記録する。
【0081】
ステップ830において、DPOモジュール530は、直接圧力最適化アルゴリズム(今後は「DPO」と呼ぶ)を実行して、可能な場合に圧力を低減するように構成されてもよい。一般的に、DPOは、システムによって要求される最適化量を減少させ、したがって最適化プロセスに必要な時間を1へ劇的に減少させる。更に、DPOモジュールは、パイプライン全体に可能な最小圧力を確保することによって、ソリューションの品質を改善するように構成されてもよい。
【0082】
DPOモジュール530は、遺伝的アルゴリズムがソリューションのために流れ及び流れの割り振りを指定するだけであれば、パイプラインシステムの最適化が劇的に単純化され、一度、流れが割り振られると、より簡単な直接的アプローチを使用して圧力を最適化できるという洞察に基づく。下記で説明する図9は、DPOモジュール530によって実行されてもよいDPO最適化アルゴリズムの実施形態の詳細な説明を含む。
【0083】
ステップ840において、方法800は第2の圧力伝搬段階を含む。第2の圧力伝搬段階において、シミュレーション・モジュール515は、DPOアルゴリズム段階で計算された圧力を使用して、パイプライン内の各要素における圧力を決定する。一実施形態において、この段階の圧力決定は、第1の圧力伝搬段階で使用された手法と同じ手法を使用して行われる。第2の圧力伝搬段階の出力は、パイプラインの各要素における圧力である。
【0084】
ステップ850において、方法800は、大域妨害チェック段階を含む。このステップにおいて、シミュレーション・モジュール515は、パイプラインシステム内の圧力妨害、例えば、許容範囲の外にある要素圧力値を識別するように構成されてもよい。そのような妨害が発見されるならば、システムは妨害を記録し、シミュレーション・プロセスから出る。
【0085】
一実施形態において、流体パイプライン・シミュレーションが完了したとき、次のことが起こっている。即ち、システム内の各要素の圧力及び流れは、流体的に実現可能なやり方で確立されており、シミュレーションは全ての制約を満足させると判定されているか、満足させなかったことは記録されており、システム内の或る圧力はDPOアルゴリズムによって調整されており、各プラントにおける圧力及び流れは指定されている。
【0086】
ステップ860において、方法800はプラント最適化段階を含む。このステップにおいて、最適化モジュール245は各プラントの圧力及び流れを使用し、各プラントの効率的やり方を決定し、シミュレーション・プロセスの先行段階で割り当てられた圧力及び流れを生成する。プラント最適化プロセスの詳細な説明は、次のとおりである。
【0087】
言い換えれば、ステップ860は各プラントの低コスト構成を発見することを含む。この低コスト構成は、ソリューションによって指定された圧力及び流れを生成するためのプラント要件を満足させる。例えば、プラントを構成して、要求されるレベルの圧力及び流れを生成するため、最適化モジュール245は暴力的探索アルゴリズムを実行するように構成されてもよい。この手法は、ASUが2つ及び圧縮機が2つより少ない(総計で4より少ない)プラント・システム・モデルに有用であり得る。その場合、暴力的探索アルゴリズムを使用して、全ての可能な構成を探索してもよい。
【0088】
しかし、プラント・モデルが一層複雑になると、可能な構成の数は急速に大きくなり、合理的な時間内で暴力的探索を実行することができない。そのような場合、修復アルゴリズムを使用してプラントを構成し、ソリューションによって指定された圧力及び流れを生成してもよい。一般的に、修復アルゴリズムは、最大で動作している各デバイス(例えば、各ASU及び圧縮機)から始まる。修復アルゴリズムは、生産物を生産するユニット当たりのコストの減少順序にデバイスを並び替える。次に、修復アルゴリズムは、生産が所望レベルへ低減されるまで、リスト内の各品目を順次にオフにする。最後のデバイスは、オフにされる代わりに停止される。最後のデバイスの最小要求生産レベルが要求レベルよりも高ければ、アルゴリズムは反復し、停止する最高コスト・デバイスを探し、生産を所望のレベルへ下げる。
【0089】
一度、ステップ860が完了すると、パイプライン内の各要素の圧力及び流れが知られ、圧力及び流れを生成する各プラントの構成も知られる。重要な注意点として、オプティマイザの制御のもとにある圧力の多くは、元のソリューションの圧力とは異なってもよい。相違は、例えば、DPOアルゴリズム又は他の局所的最適化プロセスによる圧力低減に起因するであろう。
【0090】
上記で説明した方法800は、遺伝的アルゴリズムによって生成されているソリューションが所与のプラントについて同一の流れ要件を含むならば、概念的には膨大な回数で実行され得る。したがって、一実施形態において、上記のプロセスを介して誘導されたソリューションは、ステップ860が実行される度にアクセスされるキャッシュへ追加される。キャッシュが、現在の問題と類似した問題について既に誘導されているソリューションを含むならば、プラント最適化プロセスが反復される代わりに、キャッシュされたソリューションが使用される。プラント最適化手続きの後、シミュレーション・プロセスは完了し、処理は方法700のステップ750へ戻る。ステップ750では、生成及び最適化されたばかりのソリューションが評価されてもよい。一度、評価されると、ソリューションは、前述した遺伝的アルゴリズム・プロセスによって操作される全体的ソリューション集団の中に含められてもよい。
【0091】
図9は、本発明の一実施形態に従った直接圧力最適化モジュール530の動作を示す。方法900はステップ910で始まる。ステップ910において、DPOモジュール530は、パイプラインの全ての要素を通る流れ、及び任意の流れノードにおける「ノーダル(nodal)」流れ(即ち、パイプラインへ入るか出る流れ)を計算する。この時点において、遺伝的アルゴリズムによって生成されたソリューションは、既に、それが最適化している流れ及び圧力変数の全てについて値を選んでいる。ステップ910において、DPOが最適化している圧力ノードの圧力は、最小及び最大圧力限度に基づいて或る固定値へ設定される。
【0092】
ステップ920では、流体モデルがノード圧力を伝搬し、パイプラインの全てのノード要素における圧力を決定する。ステップ930では、DPOモジュール530が圧力ノードを特定の順序で最適化する。一実施形態において、DPOは有向グラフ・データ構造を生成する。その場合、頂点はパイプライン内のサブネットワーク(sub network)を表し、有向エッジは接続要素を表し、エッジ方向は接続要素ガス流れの方向と反対である。即ち、エッジは、接続要素を横切る要求圧力勾配の方向を指し示す。
【0093】
本明細書で使用されるように、有向グラフは圧力依存性グラフ(PDG)と呼ばれる。なぜなら、個々のノードの圧力は、このノードから流れるエッジに依存するからである。パイプライン内の流れの方向がスマートNCEの構成に依存するとき、PDGが変化することに注意すべきである(即ち、スマートNCEは、構成に依存して、パイプラインシステム内で異なる方向の流れを生じることができる)。このため、一実施形態において、DPOモジュール530は、異なるスマートNCE構成から生じるパイプラインの各可能なアーキテクチャについて、PDGをキャッシュする。PDGが非周期的であれば(即ち、PDGが周期を含まない)、圧力は単一の通過で最小化され得る。
【0094】
ステップ940では、DPOモジュール530は、PDGによって指示された部分順序づけに従って、直接に最適化されるべき圧力ノードのリストを並べ替える。例えば、PDGが非周期的であれば、頂点aから頂点bへの有向エッジの存在は、DPOが、頂点bを含むサブネットワーク内の圧力を最適化する前に、頂点aを有するサブネットワーク内の圧力を最適化しなければならないことを示す。次に、DPOモジュール530は圧力を最適化し、圧力ノードの並べ替えられたリストによって与えられる順序で、圧力ノードの直接圧力最適化を実行する。
【0095】
ステップ950において、各サブネットワーク及びPDGに存在するサブネットワーク内の圧力ノードについて、DPOモジュール530は、このサブネットワーク内の全てのノードにわたって反復し、このサブネットワークについて最小一般化圧力ギャップ又は空き高を追跡する。
【0096】
ステップ960において、DPOモジュール530はサブネットワーク内の各ノードについて最小圧力を計算する。ステップ970において、サブネットワークのノードにわたって反復した後、DPOモジュール530はサブネットワークの圧力ノードの圧力を調節し、サブネットワークの最小現実圧力空き高を0.01PSIへ低減する。例えば、高圧ネットワークについては、圧力は、次の式、即ち、
【数1】
【0097】
によって与えられてもよい。ここで、poptは最適化された圧力ノードの圧力であり、pinitは初期の圧力ノードの圧力であり、gは一般化された最小圧力ギャップである。
【0098】
ステップ980において、DPOモジュール530は、圧力ノードの新しく最適化された圧力をサブネットワークへ伝搬する。ステップ990において、DPOモジュール990のモジュールは、サブネットワーク内の任意の未知の要素パラメータについて圧力値を再計算する。DPOモジュール530が方法900の実行を完了した後、処理は方法800のステップ830へ戻る。
【0099】
方法900が完了したとき、ソリューションは幾つかの圧力を低減されているが、要求されるパフォーマンスを依然として維持している(即ち、全てのハード制約は満足されたままである)。
【0100】
例示的なシステムの段階的説明
一実施形態において、最適化システム200は次のステップを進行して、パイプライン最適化問題を解決する。次の段階的説明は、概して、図3〜図5に示された入力及びモジュールを使用する図6〜図9に示された方法に対応する。
【0101】
1.入力ファイル220は、ユーザによる入力ファイル220の編集、又はパイプライン状況データベース215から入力ファイル220を生成することによって準備される。
【0102】
2.データ入力モジュール410は、入力ファイル220からデータを読み取り、必要な構造を作成し、モジュールによって読み込まれるデータを記憶する。
【0103】
3.データ確認モジュール415は入力データファイルを確認し、任意の潜在的に不正確なデータのログを作成する。
【0104】
4.前処理モジュール420は、最適化を初期化する(例えば、入力ファイル220によって表されるパイプライン・ネットワークの接続を分析すること、サブネットワーク・データ構造を作成すること、などによって)。
【0105】
5.ソリューション探索モジュール510は、終了条件を読み取る。
【0106】
6.ソリューション探索モジュール510は、最適化プロセスの間に使用する構造を初期化する。
【0107】
7.ソリューション探索モジュール510は、シード・ソリューション生成発見的方法及びランダム・ソリューション生成手続きの双方を使用して、ソリューションの初期集団を生成する。
【0108】
8.ソリューション探索モジュール510は、初期ソリューション集合の中の各ソリューションをシミュレーション及び評価する。
【0109】
9.ソリューション探索モジュールは、終了規準が満足されるまで、ステップの次の内部ループ・シーケンスを反復する。
【0110】
a.ソリューション探索モジュール510は、ソリューション修正手法を選択する。
【0111】
b.ソリューション探索モジュール510は、ソリューション修正手法によって要求される数のソリューション−典型的には1つか2つを選択する。
【0112】
c.ソリューション探索モジュール510は、選択されたソリューションをコピーすることによって、新しい1つのソリューション(又は複数のソリューション)を生成する。
【0113】
d.ソリューション探索モジュール510は、修正手法を新しいソリューションへ適用する。
【0114】
e.シミュレーション・モジュール515は、新しいソリューションの水理学的挙動をシミュレーションする。一実施形態において、このプロセスは次のステップを含んでもよい。
【0115】
i.シミュレーション・モジュール515は、ソリューションの設定に基づいて、流れをパイプラインへ伝搬する。流れの妨害が存在するならば、シミュレーション・モジュール515は現在の通過を打ち切る。
【0116】
ii.シミュレーション・モジュール515は、最初の圧力伝搬通過を実行する。
【0117】
iii.直接圧力最適化モジュール(DPO)530は、直接圧力最適化アルゴリズムを実行し、パイプラインの幾つかの要素の幾つかの圧力を変更する可能性がある。一実施形態において、このプロセスは次のステップを含んでもよい。
【0118】
aa.DPOモジュール530は全ての流れを計算する。
【0119】
bb.DPOモジュール530はノード圧力を伝搬する。
【0120】
cc.DPOモジュール530は圧力依存性グラフを作成する。
【0121】
dd.DPOモジュール530は圧力ノードを並べ替える。
【0122】
ee.DPOモジュール530は、各サブネットワークについて、一般化された圧力ギャップを計算する。
【0123】
ff.DPOモジュール530は、各サブネットワークについて、最小圧力を計算する。
【0124】
gg.DPOモジュール530は、可能であれば、各サブネットワークについて、圧力ノードの圧力を低減する。
【0125】
hh.DPOモジュール530は、圧力を各サブネットワークへ伝搬する。
【0126】
ii.DPOモジュール530は、各サブネットワークについて、未知の要素パラメータの圧力を再計算する。
【0127】
iv.シミュレーション・モジュール515は、第2の圧力伝搬通過を実行する。圧力妨害が存在すれば、シミュレーション・モジュール515は現在の通過を打ち切る。
【0128】
v.シミュレーション・モジュール515は、圧力制約について大域チェックを実行する。大域制約妨害が存在するならば、シミュレーション・モジュール515は現在の通過を打ち切る。
【0129】
vi.シミュレーション・モジュール515は各プラントを構成し、各プラントが、最も経済的なやり方で、ソリューションで指定された圧力及び流れを生成できるようにする。
【0130】
f.評価モジュール520は新しいソリューションのパフォーマンスを評価し、この評価を新しいソリューションに関連づける。
【0131】
g.新しいソリューションが集団の中へ挿入される。
【0132】
h.集団内の最悪ソリューションが削除される。
【0133】
i.ソリューション探索モジュール510は、終了すべきかどうかを決定する。終了すべきであれば、ソリューション探索モジュール510はプロセスの最終段階へ行く。そうでなければ、ソリューション探索モジュール510は上記のステップaへ戻り、内部ループ・シーケンスを再び実行する。
【0134】
10.一度、シミュレーション・モジュール515が内部ループ・シーケンスを終了すると、集団の中に現在存在する最良ソリューションが識別される。
【0135】
11.後処理ルーチンが、発見された最良ソリューションへ適用される。
【0136】
12.出力モジュール250は、システム実行、発見された最良ソリューション、及び任意の他の対象となる実行特徴を記述するレポートを生成する。
【0137】
本発明を実施するための好ましいプロセス及び装置が説明された。本発明の趣旨及び範囲から逸脱することなく、前述した実施形態へ多くの変更及び修正が行われてもよいことは、当業者に理解され、また容易に明らかであろう。これまでの説明は単なる例示であり、下記のクレームで定められた本発明の真の範囲から逸脱することなく、統合されたプロセス及び装置の他の実施形態が使用されてもよい。
【特許請求の範囲】
【請求項1】
パイプラインシステムの動作を最適化するコンピュータ実現方法であって、
a)入力データを読み取ることであって、前記入力データが前記パイプラインシステムを記述していることと、
b)ソリューションの集団を生成することであって、前記集団内の前記ソリューションの各々が前記パイプラインシステムについて実現可能な生産状態を指定することと、
c)前記集団内の前記ソリューションの各々を評価し、評価に従って前記集団内の前記ソリューションを並べ替えることと、
d)前記入力データによって指定された終了条件が満足されるまで、前記集団の上で遺伝的最適化プロセスを実行することと、
e)前記ソリューションの前記集団から、最適化された生産ソリューションを選択することであって、前記最適化された生産ソリューションが、前記遺伝的最適化プロセスが実行された後、前記集団内の前記ソリューションに対して、最高の評価を有することと、
f)前記最適化された生産ソリューションのために、直接圧力最適化プロセスを使用して、前記パイプラインシステムの1つ以上の配送点の出力圧力及び前記パイプラインシステムの1つ以上の生産ノードの入力圧力を指定する最適化された圧力ソリューションを生成することと、
を備える方法。
【請求項2】
前記遺伝的最適化プロセスを実行することが、
a)前記集団内の少なくとも1つの前記ソリューションによって指定された実現可能動作状態の少なくとも1つの様相を修正することと、
b)修正された前記ソリューションによって指定された前記動作状態に従って、前記パイプラインシステムの動作をシミュレーションすることと、
c)修正された前記ソリューションのパフォーマンスを評価することと、
d)修正された前記ソリューションを前記集団へ追加することと、
e)前記集団内の前記ソリューションに対して、最も貧弱な評価を有する前記ソリューションを前記集団から除去することと、
を備える、請求項1に記載の方法。
【請求項3】
前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することが、
a)ソリューション修正手法を選択することと、
b)修正すべき少なくとも1つの前記ソリューションを前記集団から選択することと、
c)選択された前記ソリューション修正手法に従って少なくとも1つの前記ソリューションを修正することと、
を備える、請求項2に記載の方法。
【請求項4】
前記ソリューション修正手法が、前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相をランダムに修正する、請求項3に記載の方法。
【請求項5】
前記ソリューション修正手法が、発見的規則に従って少なくとも1つの前記ソリューションを修正する、請求項3に記載の方法。
【請求項6】
前記ソリューション修正手法が2つ以上の前記ソリューションを交雑して、修正された前記ソリューションを生成する、請求項3に記載の方法。
【請求項7】
前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することが、1つ以上の前記ソリューションを確率的に選択することを備え、優越した評価を有する前記ソリューションが、劣等な評価を有する前記ソリューションよりも、修正のために選択される可能性が大きい、請求項1に記載の方法。
【請求項8】
更に、前記入力データファイルが、最適化される前記パイプラインシステムを記述していることを確認することを備える、請求項1に記載の方法。
【請求項9】
前記入力データによって指定された前記終了条件が、生成される前記ソリューションの最大数、費やされる時間の最大量、世代の最大数、及び指定された評価を超える前記ソリューションの生成の少なくとも1つを含む前記終了条件を備える、請求項1に記載の方法。
【請求項10】
前記ソリューションの前記集団を生成することが、第1の群の前記ソリューション及び第2の群の前記ソリューションを生成することを備え、第1の群の前記ソリューションが発見的規則に従って生成され、第2の群の前記ソリューションがランダム・プロセスを使用して生成される、請求項1に記載の方法。
【請求項11】
前記入力データが少なくとも1つの拡張可能マークアップ言語(XML)ドキュメントを備える、請求項1に記載の方法。
【請求項12】
前記入力データがパイプライン状況データベースから検索され、前記パイプライン状況データベースが前記パイプラインシステムの現在の前記動作状態を記憶する、請求項1に記載の方法。
【請求項13】
プログラムを含むコンピュータ可読媒体であって、前記プログラムが、実行されたとき、パイプラインシステムの動作を最適化する動作を実行し、前記最適化する動作は、
a)入力データを読み取ることであって、前記入力データが、最適化されるべき前記パイプラインシステムを記述していることと、
b)ソリューションの集団を生成することであって、前記集団内の前記ソリューションの各々が前記パイプラインシステムについて実現可能動作状態を指定することと、
c)前記集団内の前記ソリューションの各々を評価し、評価に従って前記集団内の前記ソリューションを並べ替えることと、
d)前記入力データによって指定された終了条件が満足されるまで、前記集団の上で遺伝的最適化プロセスを実行することと、
e)前記ソリューションの前記集団から、最適化された生産ソリューションを選択することであって、前記最適化された生産ソリューションが、前記遺伝的最適化プロセスが実行された後、前記集団内の前記ソリューションに対して、最高の評価を有することと、
f)直接圧力最適化プロセスを使用して、前記最適化された生産ソリューションのために、前記パイプラインシステムの1つ以上の配送点の出力圧力及び前記パイプラインシステムの1つ以上の生産ノードの入力圧力を指定する最適化された圧力ソリューションを生成することと、
を備える媒体。
【請求項14】
前記遺伝的最適化プロセスを実行することが、
a)前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの様相を修正することと、
b)修正された前記ソリューションによって指定された前記動作状態に従って、前記パイプラインシステムの動作をシミュレーションすることと、
c)修正された前記ソリューションのパフォーマンスを評価することと、
d)修正された前記ソリューションを前記集団へ追加することと、
e)最も貧弱な評価を有する前記ソリューションを前記集団から除去することと、
を備える、請求項13に記載のコンピュータ可読媒体。
【請求項15】
前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することが、
a)ソリューション修正手法を選択することと、
b)修正すべき少なくとも1つの前記ソリューションを前記集団から選択することと、
c)選択された前記ソリューション修正手法に従って、少なくとも1つの前記ソリューションを修正することと、
を備える、請求項14に記載のコンピュータ可読媒体。
【請求項16】
前記ソリューション修正手法が、前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相をランダムに修正する、請求項15に記載のコンピュータ可読媒体。
【請求項17】
前記ソリューション修正手法が、発見的規則に従って少なくとも1つの前記ソリューションを修正する、請求項15に記載のコンピュータ可読媒体。
【請求項18】
前記ソリューション修正手法が2つ以上の前記ソリューションを交雑して、修正された前記ソリューションを生成する、請求項15に記載のコンピュータ可読媒体。
【請求項19】
前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することが、1つ以上の前記ソリューションを確率的に選択することを備え、優越した評価を有する前記ソリューションが、劣等な評価を有する前記ソリューションよりも、修正のために選択される可能性が高い、請求項13に記載のコンピュータ可読媒体。
【請求項20】
前記動作が、更に、最適化される前記パイプラインシステムを前記入力データファイルが記述していることを確認することを備える、請求項13に記載のコンピュータ可読媒体。
【請求項21】
前記入力データによって指定された前記終了条件が、生成される前記ソリューションの最大数、費やされる時間の最大量、世代の最大数、及び指定された評価を超える前記ソリューションの生成の少なくとも1つを含む前記終了条件を備える、請求項13に記載のコンピュータ可読媒体。
【請求項22】
前記ソリューションの前記集団を生成することが、第1の群の前記ソリューション及び第2の群の前記ソリューションを生成することを備え、第1の群の前記ソリューションが発見的規則に従って生成され、第2の群の前記ソリューションがランダム・プロセスを使用して生成される、請求項13に記載のコンピュータ可読媒体。
【請求項23】
前記入力データが、少なくとも1つの拡張可能マークアップ言語(XML)ドキュメントを備える、請求項13に記載のコンピュータ可読媒体。
【請求項24】
前記入力データがパイプライン状況データベースから検索され、前記パイプライン状況データベースは前記パイプラインシステムの現在の前記動作状態を記憶している、請求項13に記載のコンピュータ可読媒体。
【請求項25】
パイプラインシステムの動作を最適化するシステムであって、
a)プロセッサと、
b)最適化プログラムと、
を備え、
前記最適化プログラムが、前記プロセッサによって実行されたとき、
i)入力データを読み取り、前記入力データが、最適化されるべき前記パイプラインシステムを記述しており、
ii)ソリューションの集団を生成し、前記集団内の前記ソリューションの各々が前記パイプラインシステムについて実現可能な生産状態を指定し、
iii)前記ソリューションの前記集団内の前記ソリューションの各々を評価し、
iv)前記入力データによって指定された終了条件が満足されるまで、前記集団の上で遺伝的最適化プロセスを実行し、
v)前記ソリューションの前記集団から、最適化された生産ソリューションを選択し、前記最適化された生産ソリューションが、前記遺伝的最適化プロセスが実行された後、前記集団内の前記ソリューションに対して、最高の評価を有し、
vi)直接圧力最適化プロセスを使用して、前記最適化された生産ソリューションのために、前記パイプラインシステムの1つ以上の配送点の出力圧力及び前記パイプラインシステムの1つ以上の生産ノードの入力圧力を指定する最適化された圧力ソリューションを生成する
ように構成されたシステム。
【請求項26】
前記最適化プログラムが、
a)前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正し、
b)修正された前記ソリューションによって指定された前記動作状態に従って、前記パイプラインシステムの動作をシミュレーションし、
c)修正された前記ソリューションのパフォーマンスを評価し、
d)修正された前記ソリューションを前記集団へ追加し、
e)前記集団内の前記ソリューションに対して、最も貧弱な評価を有する前記ソリューションを前記集団から除去する
ことによって、前記遺伝的最適化プロセスを実行するように構成された、請求項25に記載のシステム。
【請求項27】
前記プログラムが、
a)ソリューション修正手法を選択することと、
b)修正すべき少なくとも1つの前記ソリューションを前記集団から選択することと、
c)選択された前記ソリューション修正手法に従って、少なくとも1つの前記ソリューションを修正することと、
の各ステップを実行することによって、前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正するように構成された、請求項26に記載のシステム。
【請求項28】
前記ソリューション修正手法が、前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相をランダムに修正する、請求項27に記載のシステム。
【請求項29】
前記ソリューション修正手法が、発見的規則に従って少なくとも1つの前記ソリューションを修正する、請求項27に記載のシステム。
【請求項30】
前記ソリューション修正手法が2つ以上の前記ソリューションを交雑して、修正された前記ソリューションを生成する、請求項27に記載のシステム。
【請求項31】
前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することが、1つ以上の前記ソリューションを確率的に選択することを備え、優越した評価を有する前記ソリューションが、劣等な評価を有する前記ソリューションよりも、修正のために選択される可能性が高い、請求項25に記載のシステム。
【請求項32】
前記入力データによって指定された前記終了条件が、生成される前記ソリューションの最大数、費やされる時間の最大量、世代の最大数、及び指定された評価を超える前記ソリューションの生成の少なくとも1つを含む前記終了条件を備える、請求項25に記載のシステム。
【請求項33】
前記最適化プログラムが、第1の群の前記ソリューション及び第2の群の前記ソリューションを生成することによって、前記ソリューションの前記集団を生成するように構成され、第1の群の前記ソリューションが発見的規則に従って生成され、第2の群の前記ソリューションがランダム・プロセスを使用して生成される、請求項25に記載のシステム。
【請求項34】
前記入力データがパイプライン状況データベースから検索され、前記パイプライン状況データベースが前記パイプラインシステムの現在の前記動作状態を記憶する、請求項25に記載のシステム。
【請求項35】
パイプラインシステムの動作を最適化する方法であって、
a)遺伝的アルゴリズム最適化手法を使用し、シード・ソリューションの集団を最適化することによって、前記パイプラインシステムへ供給される原材料の生産について最適化された生産ソリューションを生成することと、
b)直接圧力最適化手法を使用して、前記最適化された生産ソリューションのために、前記パイプラインシステムの1つ以上の配送点に存在する出力圧力及び前記パイプラインシステムの1つ以上の生産ノードで生成すべき入力圧力を指定する最適化された圧力ソリューションを生成することと、
を備える方法。
【請求項36】
前記出力圧力が、それぞれの前記配送点の要求最小配送圧力の中にあり、前記入力圧力が、前記パイプラインシステムのそれぞれの前記生産ノードについて許容される最大入力圧力の中にある、請求項35に記載の方法。
【請求項37】
前記パイプラインシステムに含められる前記原材料の生産について最適化された前記ソリューションを生成することが、
a)入力データを読み取ことであって、前記入力データが、最適化されるべき前記パイプラインシステムを記述していることと、
b)前記ソリューションの前記集団を生成し、前記集団内の前記ソリューションの各々が前記パイプラインシステムの実現可能な生産状態を指定することと、
c)前記集団内の前記ソリューションの各々を評価し、評価に従って前記集団内の前記ソリューションを並べ替えることと、
d)前記入力データによって指定された終了条件が満足されるまで、前記集団の上で最適化プロセスを実行し、前記最適化プロセスが備えることと、
を備える、請求項35に記載の方法。
【請求項38】
前記遺伝的アルゴリズム最適化手法を実行することが、
a)前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することと、
b)修正された前記ソリューションによって指定された前記動作状態に従って、前記パイプラインシステムの動作をシミュレーションすることと、
c)修正された前記ソリューションのパフォーマンスを評価することと、
d)修正された前記ソリューションを前記集団へ追加することと、
e)前記集団内の前記ソリューションに対して、最も貧弱な評価を有する前記ソリューションを前記集団から除去することと、
を備える、請求項37に記載の方法。
【請求項39】
前記集団内の少なくとも1つの前記ソリューションの少なくとも1つの前記様相を修正することが、
a)ソリューション修正手法を選択することと、
b)修正すべき少なくとも1つの前記ソリューションを前記集団から選択することと、
c)選択された前記ソリューション修正手法に従って、少なくとも1つの前記ソリューションを修正することと、
を備える、請求項38に記載の方法。
【請求項1】
パイプラインシステムの動作を最適化するコンピュータ実現方法であって、
a)入力データを読み取ることであって、前記入力データが前記パイプラインシステムを記述していることと、
b)ソリューションの集団を生成することであって、前記集団内の前記ソリューションの各々が前記パイプラインシステムについて実現可能な生産状態を指定することと、
c)前記集団内の前記ソリューションの各々を評価し、評価に従って前記集団内の前記ソリューションを並べ替えることと、
d)前記入力データによって指定された終了条件が満足されるまで、前記集団の上で遺伝的最適化プロセスを実行することと、
e)前記ソリューションの前記集団から、最適化された生産ソリューションを選択することであって、前記最適化された生産ソリューションが、前記遺伝的最適化プロセスが実行された後、前記集団内の前記ソリューションに対して、最高の評価を有することと、
f)前記最適化された生産ソリューションのために、直接圧力最適化プロセスを使用して、前記パイプラインシステムの1つ以上の配送点の出力圧力及び前記パイプラインシステムの1つ以上の生産ノードの入力圧力を指定する最適化された圧力ソリューションを生成することと、
を備える方法。
【請求項2】
前記遺伝的最適化プロセスを実行することが、
a)前記集団内の少なくとも1つの前記ソリューションによって指定された実現可能動作状態の少なくとも1つの様相を修正することと、
b)修正された前記ソリューションによって指定された前記動作状態に従って、前記パイプラインシステムの動作をシミュレーションすることと、
c)修正された前記ソリューションのパフォーマンスを評価することと、
d)修正された前記ソリューションを前記集団へ追加することと、
e)前記集団内の前記ソリューションに対して、最も貧弱な評価を有する前記ソリューションを前記集団から除去することと、
を備える、請求項1に記載の方法。
【請求項3】
前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することが、
a)ソリューション修正手法を選択することと、
b)修正すべき少なくとも1つの前記ソリューションを前記集団から選択することと、
c)選択された前記ソリューション修正手法に従って少なくとも1つの前記ソリューションを修正することと、
を備える、請求項2に記載の方法。
【請求項4】
前記ソリューション修正手法が、前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相をランダムに修正する、請求項3に記載の方法。
【請求項5】
前記ソリューション修正手法が、発見的規則に従って少なくとも1つの前記ソリューションを修正する、請求項3に記載の方法。
【請求項6】
前記ソリューション修正手法が2つ以上の前記ソリューションを交雑して、修正された前記ソリューションを生成する、請求項3に記載の方法。
【請求項7】
前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することが、1つ以上の前記ソリューションを確率的に選択することを備え、優越した評価を有する前記ソリューションが、劣等な評価を有する前記ソリューションよりも、修正のために選択される可能性が大きい、請求項1に記載の方法。
【請求項8】
更に、前記入力データファイルが、最適化される前記パイプラインシステムを記述していることを確認することを備える、請求項1に記載の方法。
【請求項9】
前記入力データによって指定された前記終了条件が、生成される前記ソリューションの最大数、費やされる時間の最大量、世代の最大数、及び指定された評価を超える前記ソリューションの生成の少なくとも1つを含む前記終了条件を備える、請求項1に記載の方法。
【請求項10】
前記ソリューションの前記集団を生成することが、第1の群の前記ソリューション及び第2の群の前記ソリューションを生成することを備え、第1の群の前記ソリューションが発見的規則に従って生成され、第2の群の前記ソリューションがランダム・プロセスを使用して生成される、請求項1に記載の方法。
【請求項11】
前記入力データが少なくとも1つの拡張可能マークアップ言語(XML)ドキュメントを備える、請求項1に記載の方法。
【請求項12】
前記入力データがパイプライン状況データベースから検索され、前記パイプライン状況データベースが前記パイプラインシステムの現在の前記動作状態を記憶する、請求項1に記載の方法。
【請求項13】
プログラムを含むコンピュータ可読媒体であって、前記プログラムが、実行されたとき、パイプラインシステムの動作を最適化する動作を実行し、前記最適化する動作は、
a)入力データを読み取ることであって、前記入力データが、最適化されるべき前記パイプラインシステムを記述していることと、
b)ソリューションの集団を生成することであって、前記集団内の前記ソリューションの各々が前記パイプラインシステムについて実現可能動作状態を指定することと、
c)前記集団内の前記ソリューションの各々を評価し、評価に従って前記集団内の前記ソリューションを並べ替えることと、
d)前記入力データによって指定された終了条件が満足されるまで、前記集団の上で遺伝的最適化プロセスを実行することと、
e)前記ソリューションの前記集団から、最適化された生産ソリューションを選択することであって、前記最適化された生産ソリューションが、前記遺伝的最適化プロセスが実行された後、前記集団内の前記ソリューションに対して、最高の評価を有することと、
f)直接圧力最適化プロセスを使用して、前記最適化された生産ソリューションのために、前記パイプラインシステムの1つ以上の配送点の出力圧力及び前記パイプラインシステムの1つ以上の生産ノードの入力圧力を指定する最適化された圧力ソリューションを生成することと、
を備える媒体。
【請求項14】
前記遺伝的最適化プロセスを実行することが、
a)前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの様相を修正することと、
b)修正された前記ソリューションによって指定された前記動作状態に従って、前記パイプラインシステムの動作をシミュレーションすることと、
c)修正された前記ソリューションのパフォーマンスを評価することと、
d)修正された前記ソリューションを前記集団へ追加することと、
e)最も貧弱な評価を有する前記ソリューションを前記集団から除去することと、
を備える、請求項13に記載のコンピュータ可読媒体。
【請求項15】
前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することが、
a)ソリューション修正手法を選択することと、
b)修正すべき少なくとも1つの前記ソリューションを前記集団から選択することと、
c)選択された前記ソリューション修正手法に従って、少なくとも1つの前記ソリューションを修正することと、
を備える、請求項14に記載のコンピュータ可読媒体。
【請求項16】
前記ソリューション修正手法が、前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相をランダムに修正する、請求項15に記載のコンピュータ可読媒体。
【請求項17】
前記ソリューション修正手法が、発見的規則に従って少なくとも1つの前記ソリューションを修正する、請求項15に記載のコンピュータ可読媒体。
【請求項18】
前記ソリューション修正手法が2つ以上の前記ソリューションを交雑して、修正された前記ソリューションを生成する、請求項15に記載のコンピュータ可読媒体。
【請求項19】
前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することが、1つ以上の前記ソリューションを確率的に選択することを備え、優越した評価を有する前記ソリューションが、劣等な評価を有する前記ソリューションよりも、修正のために選択される可能性が高い、請求項13に記載のコンピュータ可読媒体。
【請求項20】
前記動作が、更に、最適化される前記パイプラインシステムを前記入力データファイルが記述していることを確認することを備える、請求項13に記載のコンピュータ可読媒体。
【請求項21】
前記入力データによって指定された前記終了条件が、生成される前記ソリューションの最大数、費やされる時間の最大量、世代の最大数、及び指定された評価を超える前記ソリューションの生成の少なくとも1つを含む前記終了条件を備える、請求項13に記載のコンピュータ可読媒体。
【請求項22】
前記ソリューションの前記集団を生成することが、第1の群の前記ソリューション及び第2の群の前記ソリューションを生成することを備え、第1の群の前記ソリューションが発見的規則に従って生成され、第2の群の前記ソリューションがランダム・プロセスを使用して生成される、請求項13に記載のコンピュータ可読媒体。
【請求項23】
前記入力データが、少なくとも1つの拡張可能マークアップ言語(XML)ドキュメントを備える、請求項13に記載のコンピュータ可読媒体。
【請求項24】
前記入力データがパイプライン状況データベースから検索され、前記パイプライン状況データベースは前記パイプラインシステムの現在の前記動作状態を記憶している、請求項13に記載のコンピュータ可読媒体。
【請求項25】
パイプラインシステムの動作を最適化するシステムであって、
a)プロセッサと、
b)最適化プログラムと、
を備え、
前記最適化プログラムが、前記プロセッサによって実行されたとき、
i)入力データを読み取り、前記入力データが、最適化されるべき前記パイプラインシステムを記述しており、
ii)ソリューションの集団を生成し、前記集団内の前記ソリューションの各々が前記パイプラインシステムについて実現可能な生産状態を指定し、
iii)前記ソリューションの前記集団内の前記ソリューションの各々を評価し、
iv)前記入力データによって指定された終了条件が満足されるまで、前記集団の上で遺伝的最適化プロセスを実行し、
v)前記ソリューションの前記集団から、最適化された生産ソリューションを選択し、前記最適化された生産ソリューションが、前記遺伝的最適化プロセスが実行された後、前記集団内の前記ソリューションに対して、最高の評価を有し、
vi)直接圧力最適化プロセスを使用して、前記最適化された生産ソリューションのために、前記パイプラインシステムの1つ以上の配送点の出力圧力及び前記パイプラインシステムの1つ以上の生産ノードの入力圧力を指定する最適化された圧力ソリューションを生成する
ように構成されたシステム。
【請求項26】
前記最適化プログラムが、
a)前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正し、
b)修正された前記ソリューションによって指定された前記動作状態に従って、前記パイプラインシステムの動作をシミュレーションし、
c)修正された前記ソリューションのパフォーマンスを評価し、
d)修正された前記ソリューションを前記集団へ追加し、
e)前記集団内の前記ソリューションに対して、最も貧弱な評価を有する前記ソリューションを前記集団から除去する
ことによって、前記遺伝的最適化プロセスを実行するように構成された、請求項25に記載のシステム。
【請求項27】
前記プログラムが、
a)ソリューション修正手法を選択することと、
b)修正すべき少なくとも1つの前記ソリューションを前記集団から選択することと、
c)選択された前記ソリューション修正手法に従って、少なくとも1つの前記ソリューションを修正することと、
の各ステップを実行することによって、前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正するように構成された、請求項26に記載のシステム。
【請求項28】
前記ソリューション修正手法が、前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相をランダムに修正する、請求項27に記載のシステム。
【請求項29】
前記ソリューション修正手法が、発見的規則に従って少なくとも1つの前記ソリューションを修正する、請求項27に記載のシステム。
【請求項30】
前記ソリューション修正手法が2つ以上の前記ソリューションを交雑して、修正された前記ソリューションを生成する、請求項27に記載のシステム。
【請求項31】
前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することが、1つ以上の前記ソリューションを確率的に選択することを備え、優越した評価を有する前記ソリューションが、劣等な評価を有する前記ソリューションよりも、修正のために選択される可能性が高い、請求項25に記載のシステム。
【請求項32】
前記入力データによって指定された前記終了条件が、生成される前記ソリューションの最大数、費やされる時間の最大量、世代の最大数、及び指定された評価を超える前記ソリューションの生成の少なくとも1つを含む前記終了条件を備える、請求項25に記載のシステム。
【請求項33】
前記最適化プログラムが、第1の群の前記ソリューション及び第2の群の前記ソリューションを生成することによって、前記ソリューションの前記集団を生成するように構成され、第1の群の前記ソリューションが発見的規則に従って生成され、第2の群の前記ソリューションがランダム・プロセスを使用して生成される、請求項25に記載のシステム。
【請求項34】
前記入力データがパイプライン状況データベースから検索され、前記パイプライン状況データベースが前記パイプラインシステムの現在の前記動作状態を記憶する、請求項25に記載のシステム。
【請求項35】
パイプラインシステムの動作を最適化する方法であって、
a)遺伝的アルゴリズム最適化手法を使用し、シード・ソリューションの集団を最適化することによって、前記パイプラインシステムへ供給される原材料の生産について最適化された生産ソリューションを生成することと、
b)直接圧力最適化手法を使用して、前記最適化された生産ソリューションのために、前記パイプラインシステムの1つ以上の配送点に存在する出力圧力及び前記パイプラインシステムの1つ以上の生産ノードで生成すべき入力圧力を指定する最適化された圧力ソリューションを生成することと、
を備える方法。
【請求項36】
前記出力圧力が、それぞれの前記配送点の要求最小配送圧力の中にあり、前記入力圧力が、前記パイプラインシステムのそれぞれの前記生産ノードについて許容される最大入力圧力の中にある、請求項35に記載の方法。
【請求項37】
前記パイプラインシステムに含められる前記原材料の生産について最適化された前記ソリューションを生成することが、
a)入力データを読み取ことであって、前記入力データが、最適化されるべき前記パイプラインシステムを記述していることと、
b)前記ソリューションの前記集団を生成し、前記集団内の前記ソリューションの各々が前記パイプラインシステムの実現可能な生産状態を指定することと、
c)前記集団内の前記ソリューションの各々を評価し、評価に従って前記集団内の前記ソリューションを並べ替えることと、
d)前記入力データによって指定された終了条件が満足されるまで、前記集団の上で最適化プロセスを実行し、前記最適化プロセスが備えることと、
を備える、請求項35に記載の方法。
【請求項38】
前記遺伝的アルゴリズム最適化手法を実行することが、
a)前記集団内の少なくとも1つの前記ソリューションによって指定された前記実現可能動作状態の少なくとも1つの前記様相を修正することと、
b)修正された前記ソリューションによって指定された前記動作状態に従って、前記パイプラインシステムの動作をシミュレーションすることと、
c)修正された前記ソリューションのパフォーマンスを評価することと、
d)修正された前記ソリューションを前記集団へ追加することと、
e)前記集団内の前記ソリューションに対して、最も貧弱な評価を有する前記ソリューションを前記集団から除去することと、
を備える、請求項37に記載の方法。
【請求項39】
前記集団内の少なくとも1つの前記ソリューションの少なくとも1つの前記様相を修正することが、
a)ソリューション修正手法を選択することと、
b)修正すべき少なくとも1つの前記ソリューションを前記集団から選択することと、
c)選択された前記ソリューション修正手法に従って、少なくとも1つの前記ソリューションを修正することと、
を備える、請求項38に記載の方法。
【図1】
【図2】
【図3A】
【図3B】
【図3C】
【図3D】
【図3E】
【図3F】
【図3G】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図2】
【図3A】
【図3B】
【図3C】
【図3D】
【図3E】
【図3F】
【図3G】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【公開番号】特開2012−252717(P2012−252717A)
【公開日】平成24年12月20日(2012.12.20)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−185321(P2012−185321)
【出願日】平成24年8月24日(2012.8.24)
【分割の表示】特願2008−507183(P2008−507183)の分割
【原出願日】平成18年4月18日(2006.4.18)
【出願人】(591036572)レール・リキード−ソシエテ・アノニム・プール・レテュード・エ・レクスプロワタシオン・デ・プロセデ・ジョルジュ・クロード (438)
【Fターム(参考)】
【公開日】平成24年12月20日(2012.12.20)
【国際特許分類】
【出願番号】特願2012−185321(P2012−185321)
【出願日】平成24年8月24日(2012.8.24)
【分割の表示】特願2008−507183(P2008−507183)の分割
【原出願日】平成18年4月18日(2006.4.18)
【出願人】(591036572)レール・リキード−ソシエテ・アノニム・プール・レテュード・エ・レクスプロワタシオン・デ・プロセデ・ジョルジュ・クロード (438)
【Fターム(参考)】
[ Back to top ]