GLPK(GNU Linear Programming Kit)を使ってみよう
本チュートリアルの内容
■ 動作環境 の確認
前提とする環境
このチュートリアルでは、以下の環境を想定します。
- 使用PC:Windows8.1 Professional、GLPK for Windows-4.60
- 使用IDE: Eclipse Mars2 4.5.2
ライブラリの準備
本チュートリアルでは、Eclipseは既にインストール済みであると想定して説明を進めます。ということで、ここでは、使用するライブラリについてのみ、説明をします。今回使用するGLPK for Windowsは、Sourceforgeよりダウンロードすることができます。今チュートリアルでは、バージョン4.60を使用します。以下のリンクからも、ダウンロードページに移行することができます。
ダウンロードしたzipファイルを解凍すると、ドキュメントやサンプル、ソースファイルやバイナリファイルが入っているのが確認できますが、ここでは、バイナリのライブラリファイルを使用することとします。このチュートリアルの環境は、64ビットのWindowsですので、W64というフォルダを取り出して、後から参照しやすい場所に置きます。ここでは、C:\lib\java\glpk-4.60というフォルダの下に置くこととします。
後ほど、Eclipseからjarファイルを外部ライブラリとして参照する必要があるので、場所を忘れないようにしましょう。
■ サンプル問題を解いてみる
では、サンプル問題を解いてみましょう。sourceforgeからダウンロードしたzipを解凍したフォルダの中に、exampleというフォルダがあります。その中にjavaというフォルダがあるのですが、その中にサンプルが入っています。ここでは、lp.javaという線形計画問題を使って説明します。
まず、Eclipseで新しいプロジェクトを作成します。ここでは、LP_Sampleというプロジェクトを作成しました。
図 プロジェクトのスタート
次に、パッケージを作成します。先ほど作った、LP_Sampleプロジェクトのsrcでマウスを右クリックし、新規のパッケージの追加を選択します。ここでは、sampleというパッケージを作っておきます。
図 パッケージの作成
続いて、実際のクラスの作成ですが、ここでは、Lp.javaをインポートしてみましょう。先ほど作ったsampleパッケージで右クリックし、インポートを選択し、開いた画面から、「一般」>「ファイルシステム」を選択し、次へを押下します。
図 クラスのインポート
開いた画面の「参照」ボタンを押下し、解凍したフォルダを選択し、lp.javaをインポートするように選択します。選択し終わったら、「完了」ボタンを押下します。
図 ライブラリのインポート(つづき)
すると、sampleパッケージの下に、Lp.javaが追加されていることが確認できます。
図 ライブラリのインポート(つづき)
エラーが出ているとおもいますが、これからこのエラーを消して言います。まず、サンプルコードにパッケージの情報がありませんので、それを追加します。Lp.javaを開いて、以下の行を追加します。
package sample;
次に、ライブラリを追加します。LP_Sampleプロジェクトで右クリックし、「ビルドバス」>「ビルドバスの構成」を選択します。
図 jarファイルの追加
選択後に開いたウィンドウで、「ライブラリ」タブを押下し、「外部JARの追加」を押下、先ほど配置したフォルダを選び、glpk-java.jarファイルを選択して「開く」を押下します。
図 jarファイルの追加(つづき)
このように外部JARとして、glpk-java.jarが追加されたことが確認できます。
図 jarファイルの追加(つづき)
Jarで提供される多くのライブラリがこのままで動くのですが、このライブラリでは、ネイティブライブラリも追加する必要があるようです。(マニュアルは読んでいないのですが、このままでは動きませんでした…)そこで、これから、ネイティブライブラリの追加をします。上記の画面の状態で、「ライブラリの追加」を押下します。>
図 ネイティブライブラリの追加
開いた画面から、「ユーザーライブラリ」を選択し、「次へ」を押下します。
図 ネイティブライブラリの追加(つづき)
更に開いた画面から、「ユーザー・ライブラリ」ボタンを押下します。
図 ネイティブライブラリの追加(つづき)
開いた画面では、「新規」ボタンを押下します。ライブラリ名を入れるウィンドウが開きますので、ここでは、glpk_libと入れて、OKを押しておきます。
図 ネイティブライブラリの追加(つづき)
さらに、「OK」を2回押し、「完了」を一回押して、ライブラリ追加の画面に戻ります。
図 ネイティブライブラリの追加(つづき)
次に、今追加したライブラリの左端にある三角形を展開して、「ネイティブライブラリ・ロケーション」を選択し、「編集」ボタンを押下します。
図 ネイティブライブラリの追加(つづき)
開いた画面から、「外部フォルダ」ボタンを押下し、先ほど配置した、jarフォルダがあるフォルダを選択し、「OK」を押下します。
図 ネイティブライブラリの追加(つづき)
ついでに、「外部注釈」ボタンを選択し、javadocも追加しておきましょう。
図 ネイティブライブラリの追加(つづき)
以上で、ライブラリの追加は終了です。これで、全てのエラーが消えていると思いますがいかがでしょうか。
では、実際に、サンプルを動かしてみましょう。無事に動いたでしょうか。以下のような解がコンソール画面に表示されると思います。
図 サンプルの結果
以上がサンプル問題を使ったGLPKの説明です。
(ページの先頭へ)