2007年7月29日日曜日

AMPL&CPLEXのインストール

研究室でずっと使ってた, CPLEXのサーバーが故障したので,
サーバーを一新するとともに, AMPLとCPLEXも更新した.

64bitのCentOS5にインストール.
  1. ILM, AMPL, CPLEX, それぞれのtarボールを展開
  2. ILMのディレクトリにプロダクトキーを置く
  3. ilmcheckでキーを確認
  4. ライセンスサーバーのilmdを起動
  5. ilmlistでilmdの起動を確認
次に問題なのは, このマシンが起動するたびに, 自動的にilmdを起動すること.
http://centos.it-cafe.jp/lsys06.htmlを参考にスクリプトを作成し設置.
とりあえず動いているようだ.

ついでに, GLPK, CBC, SCIPをインストール.
SCIPのSOPLEX版がCPLEXに引けを取らない性能なのには驚いた.
CBCは動作がおかしい. きちんとメンテされていないのか,
こっちが食わせている問題が悪いのか.


♯ /etc/init.d/ilmd

. /etc/init.d/functions

RETVAL=0
progpath="/opt/ilog/ilm/"
prog="ilmd"

start() {
♯ Start daemons.
echo -n $"Starting $prog: "
daemon $progpath$prog -log /var/log/ilmd.log &
echo
touch "/var/lock/subsys/$prog"
return $RETVAL
}

stop() {
echo -n $"Shutting down $prog: "
$progpath$prog -stop
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f "/var/lock/subsys/$prog"
return $RETVAL
}
♯ See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status $prog
RETVAL=$?
;;
restart|reload)
stop
start
RETVAL=$?
;;
condrestart)
if [ -f /var/lock/subsys/$prog ]; then
stop
start
RETVAL=$?
fi
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
exit 1
esac

exit $RETVAL


P.S.
CBCのAMPL対応版のインストールの仕方はマニュアルとは異なっていた. 以下にメモ.
  1. cd Cbc-1.1.1/ThirdParty/ASL
  2. ftp://www.netlib.org/ampl/solvers.tarをダウンロードして展開
  3. ln -s ampl/solvers .
  4. cp solvers/asl.h .
  5. cd ../..; ./configure; make install

0 件のコメント: