IT

NEOS Serverとは:難しいものはNEOS Serverに解かせよう

こんにちは,しまさん(@nitkcdadon)です.

NEOS Server , ご存知でしょうか.

Google先生で調べても日本語のページないんですよね… .

使う人が少ないからかもしれませんが,

是非こういうサービスを行ってくれているサーバーがあるんだよってことを皆さんには知っておいて欲しいと思い記事にします.

NEOS Server とは

NEOS Server とは簡単に言うと,

数理計画問題を解いてくれるサーバー

のことです.

数理計画問題とは,「与えられた条件の下で,望ましさの尺度を表す何らかの関数の最小値(最大値)を求め,さらにその最小値(最大値)を与える不特定要素の値を決定する」という問題です.(NTTデータ数理システム

数理計画問題の例としては,

目的(関数): 5x – 12 の最小化

制約条件: x > -1

みたいなものが挙げられます.結構身近な問題も数理計画問題に位置づけられてたりします.

他にも「ナップサック問題」や「最小費用フロー問題」,「ダイクストラ法による最短経路(問題の形式を変更すれば)」なんかもですね.

これらの問題をtxtに記述して,NEOS Serverに投げれば解いてくれるのです.

商用利用も無料なんですよ.さすがアメリカって感じですね.

NEOS Serverの使い方

まず,NEOS Serverにアクセスしてみましょう.

こんな感じのページが出てくると思います.

このページのNEOS Serverの中にある「Submit a job to NEOS」を選択しましょう.

すると,NEOS ServerのSolverページに移動します.

ここで自分の目的にあう問題のタイプを選択します.

私が使う場合はよく「Linear Programming」を使います.

ここで,というか最初から疑問だったとは思うんですが

どうやってNEOS Serverに問題を記述するんだと思っていられると思います.

先程のLinear Programmingの画面に書いているのですが,

AMPL , GAMS , MPS , … はい,プログラミング言語です.

ただ,覚えることは少ないので始めやすいと思います.

さいごに

今回は簡単にNEOS Serverとは何かという説明をしました.

次回は,GAMSを用いて

「ナップサック問題」や「最小費用フロー問題」,「ダイクストラ法による最短経路(問題の形式を変更すれば)」を解いていこうと思います.

最短経路を求める問題をNEOS Serverに解かせるのは特に面白いですよ.

めちゃくちゃ楽ですからね.

以上,しまさん でした.

ABOUT ME
しまさん
てくてくぷれいす運営者のしまさんです. 高専→大学編入してから行動的な学生ブロガー? / 自身の変化を求めてブログを6月から開始 / グレープフルーツと本が好き / Distributed SNSやSecurity,プログラミングやVR等のIT系や自身の編入体験談や高専のこと,大学生活を書いてます(たまに小ネタ) / Progateで勉強中