NN for TSP




■課題内容

NNで巡回セールスマン問題(Travelling Salesmen Problem ; TSP)を解く. その際,下記のURLからダウンロードできるソースファイルtsp.cにて都市配置を指定してあるが,その都市配置を各自任意に指定して動かしてみること.

■環境

以下の環境にて動作確認済みです.

■コンパイル例

prompt> cc tsp.c -lm
mathライブラリを読み込むようにオプションを指定してください.

■実行方法

実行時に,
1)パラメータA,
2)B,
3)D,
4)シード値,
を引数として指定する. パラメータA〜Dは,エネルギー関数値の算出やニューラルネットワークの重み更新時に用いる変数である(教科書参照). また,シード値はニューラルネットワークの初期重みを設定するために用いる. なお,run.shが実行できない場合には,コマンドラインから「chmod u+x run.sh」

□例
prompt> run.sh a.out 1.0 1.0 2.0 394

■実行結果

〜txt, 〜.energy.txt という2つのファイルが作成される. 「〜」は実行時に使用した引数によって異なり, 前述の実行例だと,「1.0-1.0-2.0-394」となる.

■最大適応度推移のグラフ表示方法

◆その1
例えば,適応度推移グラフを tgif で表示・編集するためのファイル形式に変換するためには gnuplot を使用します.
prompt> gnuplot
gnuplot> plot "1.0-1.0-2.0-394.energy.txt" with line
gnuplot> set terminal tgif
gnuplot> set output "result.obj"
gnuplot> replot
上記の操作により result.obj というファイルへグラフ情報が出力されますので,後は tgif を使用して編集してください.
◆その2
Excelでも当然可能です.

質問は當間まで.