General Algebraic Modeling System (GAMS) は、線形の整数最適化問題、非線形の整数最適化問題、そして混合された整数最適化問題をモデル化するために設計されています。このシステムは、特に大規模で複雑な問題に有効です。GAMSは、パソコン、ワークステーション、メインフレーム、そしてスーパー・コンピューターで使用することができます
GAMSはセットアップを単純化しますので、ユーザはモデリング問題に専念することができます。また、特定の機械やシステムソフトウェア・インプリメンテーションの時間消費を対処します。
GAMSは、正確なモデルを確立するために多くの修正が必要となる、大規模で複雑な問題を処理するのに役立ちます。システムモデル問題は非常にコンパクトで自然です。ユーザは公式化を素早く簡単に次から次へと変更することができ、さらに線形から非線形問題に変換することができます。
【システム特徴】
General Algebraic Modeling System (GAMS)は、アドレス計算や記憶割り当て、サブルーチン・リンケージ、インプット・アウトプット、フロー制御のような、技術的なマシンの特有の問題に関して考える必要がないので、モデルの概念化や実行、または結果の分析に時間をとることができます。GAMS言語は、一般に用いられているプログラミング言語の形式に似ていますので、プログラムの経験がある人であればとても使いやすいプログラムです。
データは、使いやすいリストやテーブル形式で一度だけ入力します。モデルは、読む人や機械にとって簡単な代数のステートメントで述べられています。密接に関連する制約の全体集合は1つのステートメントに入力します。GAMSは自動的に各制約方程式を生成し、一般法則が適さない場合に例外とします。モデルのステートメントは、同じかまたは関連する問題に他の実例が発生する場合、代数を変更することなく再使用することができます。解決する前に、エラーの位置やタイプが正確に表示されます。GAMSは、時間系列、タイムラグやリートタイムに関する動態モデル、および一時終了の処理を扱います。
GAMSが各プラットフォームへロードされる場合、モデルをあるコンピュータ・プラットフォームから別のコンピュータ・プラットフォームまでポータブルできる柔軟性があります。GAMSは感知分析を容易にします。ユーザは、容易に要素の異なる値に解決するモデルをプログラムし、次に、各場合の解決特性をリスト化する出力レポートを作成することができます。任意のシンボルまたは方程式の定義の一部としてユーザが説明文を含めることが可能なので、モデルを同時に開発してドキュメント化することができます。
【General Algebraic Modeling System (GAMS)の設計目標と焦点の変化】
当初の、そして現在も有効な目標は、モデル作成者の生産性を向上させ、コストを削減し、 モデリングプロセスの信頼性と全体的な信頼性を向上させることです。
これを達成するために、GAMS開発の指針となる以下の重要な原則を確立しています。
・GAMSの問題表現は、解法に依存しない。
・GAMSのデータ表現は、関係データモデルに従う。
・GAMSの問題表現とデータ表現は、計算機プラットフォームに依存しない。
・GAMSの問題表現とデータ表現は、ユーザーインターフェースに依存しない。
・GAMSの最適化手法は失敗するものであり、システムはフェイルセーフに設計されなければならない。
これらのGAMSも原則を表現する別の方法として、インターフェースと機能が明確に定義された表現と 機能の層という観点から考えることができます。
最も古く、最も基本的な層は、GAMSのソルバー層、または特定のアルゴリズムの実装です。
ソルバーの上にあるのはモデル層で、代数的なモデリング言語で表現されます。
モデリング層は、数学的表現を特定の解法が必要とする計算構造に変換し、関数や微分の評価、 エラーリカバリーなどの様々なサービスを提供します。
モデリング層の上にはアプリケーション層またはドメイン層があり、 これは非常に文脈に敏感で、解決すべき問題やシステムと対話するユーザーの種類についての 知識を持っています。
GAMSにおけるモデルの表現は、人間や機械が容易に読み取ることができる形式です。
これは、GAMSのプログラム自体がモデルのドキュメントであり、 過去に必要とされた個別の記述(メンテナンスの負担が大きく、最新であることはほとんどない)は もはや必要ないことを意味します。
さらに、GAMSの設計では、ユーザーの文書化のニーズに応えるために、 特に次のような機能を取り入れています。
・GAMSのモデル表現は簡潔であり、数学的表現のエレガンスをフルに活用する。
・GAMSの全てのデータ変換は、簡潔かつ代数的に指定されます。これは、全てのデータを最も基本的な形で入力することができ、モデルの構築やレポート作成時に行われた全ての変換を検査することができることを意味します。
・GAMSの説明文はすべてのシンボルの定義の一部とすることができ、関連する値が表示されるたびに再生されます。
・GAMSのモデルを理解するために必要なすべての情報が、1つの文書に収められています。
もちろん、これらのGAMSの設計上の特徴を最大限に活用するためには、ある程度の規律が必要ですが、その目的は、モデルをよりアクセスしやすく、より理解しやすく、より検証しやすく、したがって、より信頼できるものにすることです。
GAMSのモデリングシステムの開発を歴史的な観点で捉え、過去30年間に焦点と技術的制約が どのように変化したかを見ることは有益です。
GAMSの計算の問題からモデリングの問題へ、そして最終的にはアプリケーションや現実の問題へと重点が移行する3つの主要なフェーズを観察することができます。
各フェーズでは、前述した主要なシステム層の1つが定義されました。最初のフェーズでは、アルゴリズムの計算限界という制約が支配的でした。
問題の表現はアルゴリズムの都合に従わなければならず、中央集権的な専門家集団が大規模で高価で長期にわたるプロジェクトを管理し、エンドユーザは事実上排除されました。第二段階では、モデルに焦点が当てられています。
アプリケーションはモデリングスキルによって制限され、プロジェクトグループはより小規模で分散化され、計算コストは低く、ユーザはアプリケーションの設計に参加します。
GAMSのアプリケーションは、コンピュータのプラットフォームに依存しないように設計され、クライアント・サーバー環境で動作することが多くなります。
General Algebraic Modeling System (GAMS)社はアプリケーションに焦点を当て、最適化モデルはより良い意思決定を支援する多くの分析ツールの一つに過ぎないという第3のフェーズに突入していると考えています。
ユーザーは、最適化モデルを全く知らないか、最適化技術によって解決される実際のモデルとは異なるメンタルモデルを使用していることが多いのです。ユーザーインターフェースは、既製のコンポーネントで構築され、進化する環境や新しいコンピューティング技術に適応するために頻繁に変更されます。
GAMSのデータベースと同様、モデリングコンポーネントはユーザーインターフェースよりもはるかに長い寿命を持っています。
GAMSのモデルが何年にもわたって基本的に変わらないにもかかわらず、 コンピューティング環境やユーザーインターフェースが何度も変更されているケースを観察しています。
モデルを解くのに使われるソルバーが変わり、コンピューティングプラットフォームが変わり、 GAMSのユーザーインターフェースが変わり、モデル表現に変更がなくてもモデル全体の性能が変化しているのです。
試用版ダウンロードはこちら

メーカーの製品サイト
https://www.gams.com/
【種別】シェアウェア
【言語】英語
【動作環境】以下メーカーサイトURLをご参照下さい:http://www.gams.com/download/
【問い合わせ先】support@gams.com
GAMSはセットアップを単純化しますので、ユーザはモデリング問題に専念することができます。また、特定の機械やシステムソフトウェア・インプリメンテーションの時間消費を対処します。
GAMSは、正確なモデルを確立するために多くの修正が必要となる、大規模で複雑な問題を処理するのに役立ちます。システムモデル問題は非常にコンパクトで自然です。ユーザは公式化を素早く簡単に次から次へと変更することができ、さらに線形から非線形問題に変換することができます。
【システム特徴】
General Algebraic Modeling System (GAMS)は、アドレス計算や記憶割り当て、サブルーチン・リンケージ、インプット・アウトプット、フロー制御のような、技術的なマシンの特有の問題に関して考える必要がないので、モデルの概念化や実行、または結果の分析に時間をとることができます。GAMS言語は、一般に用いられているプログラミング言語の形式に似ていますので、プログラムの経験がある人であればとても使いやすいプログラムです。
データは、使いやすいリストやテーブル形式で一度だけ入力します。モデルは、読む人や機械にとって簡単な代数のステートメントで述べられています。密接に関連する制約の全体集合は1つのステートメントに入力します。GAMSは自動的に各制約方程式を生成し、一般法則が適さない場合に例外とします。モデルのステートメントは、同じかまたは関連する問題に他の実例が発生する場合、代数を変更することなく再使用することができます。解決する前に、エラーの位置やタイプが正確に表示されます。GAMSは、時間系列、タイムラグやリートタイムに関する動態モデル、および一時終了の処理を扱います。
GAMSが各プラットフォームへロードされる場合、モデルをあるコンピュータ・プラットフォームから別のコンピュータ・プラットフォームまでポータブルできる柔軟性があります。GAMSは感知分析を容易にします。ユーザは、容易に要素の異なる値に解決するモデルをプログラムし、次に、各場合の解決特性をリスト化する出力レポートを作成することができます。任意のシンボルまたは方程式の定義の一部としてユーザが説明文を含めることが可能なので、モデルを同時に開発してドキュメント化することができます。
【General Algebraic Modeling System (GAMS)の設計目標と焦点の変化】
当初の、そして現在も有効な目標は、モデル作成者の生産性を向上させ、コストを削減し、 モデリングプロセスの信頼性と全体的な信頼性を向上させることです。
これを達成するために、GAMS開発の指針となる以下の重要な原則を確立しています。
・GAMSの問題表現は、解法に依存しない。
・GAMSのデータ表現は、関係データモデルに従う。
・GAMSの問題表現とデータ表現は、計算機プラットフォームに依存しない。
・GAMSの問題表現とデータ表現は、ユーザーインターフェースに依存しない。
・GAMSの最適化手法は失敗するものであり、システムはフェイルセーフに設計されなければならない。
これらのGAMSも原則を表現する別の方法として、インターフェースと機能が明確に定義された表現と 機能の層という観点から考えることができます。
最も古く、最も基本的な層は、GAMSのソルバー層、または特定のアルゴリズムの実装です。
ソルバーの上にあるのはモデル層で、代数的なモデリング言語で表現されます。
モデリング層は、数学的表現を特定の解法が必要とする計算構造に変換し、関数や微分の評価、 エラーリカバリーなどの様々なサービスを提供します。
モデリング層の上にはアプリケーション層またはドメイン層があり、 これは非常に文脈に敏感で、解決すべき問題やシステムと対話するユーザーの種類についての 知識を持っています。
GAMSにおけるモデルの表現は、人間や機械が容易に読み取ることができる形式です。
これは、GAMSのプログラム自体がモデルのドキュメントであり、 過去に必要とされた個別の記述(メンテナンスの負担が大きく、最新であることはほとんどない)は もはや必要ないことを意味します。
さらに、GAMSの設計では、ユーザーの文書化のニーズに応えるために、 特に次のような機能を取り入れています。
・GAMSのモデル表現は簡潔であり、数学的表現のエレガンスをフルに活用する。
・GAMSの全てのデータ変換は、簡潔かつ代数的に指定されます。これは、全てのデータを最も基本的な形で入力することができ、モデルの構築やレポート作成時に行われた全ての変換を検査することができることを意味します。
・GAMSの説明文はすべてのシンボルの定義の一部とすることができ、関連する値が表示されるたびに再生されます。
・GAMSのモデルを理解するために必要なすべての情報が、1つの文書に収められています。
もちろん、これらのGAMSの設計上の特徴を最大限に活用するためには、ある程度の規律が必要ですが、その目的は、モデルをよりアクセスしやすく、より理解しやすく、より検証しやすく、したがって、より信頼できるものにすることです。
GAMSのモデリングシステムの開発を歴史的な観点で捉え、過去30年間に焦点と技術的制約が どのように変化したかを見ることは有益です。
GAMSの計算の問題からモデリングの問題へ、そして最終的にはアプリケーションや現実の問題へと重点が移行する3つの主要なフェーズを観察することができます。
各フェーズでは、前述した主要なシステム層の1つが定義されました。最初のフェーズでは、アルゴリズムの計算限界という制約が支配的でした。
問題の表現はアルゴリズムの都合に従わなければならず、中央集権的な専門家集団が大規模で高価で長期にわたるプロジェクトを管理し、エンドユーザは事実上排除されました。第二段階では、モデルに焦点が当てられています。
アプリケーションはモデリングスキルによって制限され、プロジェクトグループはより小規模で分散化され、計算コストは低く、ユーザはアプリケーションの設計に参加します。
GAMSのアプリケーションは、コンピュータのプラットフォームに依存しないように設計され、クライアント・サーバー環境で動作することが多くなります。
General Algebraic Modeling System (GAMS)社はアプリケーションに焦点を当て、最適化モデルはより良い意思決定を支援する多くの分析ツールの一つに過ぎないという第3のフェーズに突入していると考えています。
ユーザーは、最適化モデルを全く知らないか、最適化技術によって解決される実際のモデルとは異なるメンタルモデルを使用していることが多いのです。ユーザーインターフェースは、既製のコンポーネントで構築され、進化する環境や新しいコンピューティング技術に適応するために頻繁に変更されます。
GAMSのデータベースと同様、モデリングコンポーネントはユーザーインターフェースよりもはるかに長い寿命を持っています。
GAMSのモデルが何年にもわたって基本的に変わらないにもかかわらず、 コンピューティング環境やユーザーインターフェースが何度も変更されているケースを観察しています。
モデルを解くのに使われるソルバーが変わり、コンピューティングプラットフォームが変わり、 GAMSのユーザーインターフェースが変わり、モデル表現に変更がなくてもモデル全体の性能が変化しているのです。
試用版ダウンロードはこちら

メーカーの製品サイト
https://www.gams.com/
【種別】シェアウェア
【言語】英語
【動作環境】以下メーカーサイトURLをご参照下さい:http://www.gams.com/download/
【問い合わせ先】support@gams.com