技術情報

研究室内において,研究・論文執筆に必要となる技術情報の覚え書き.

Emacs関連

Linux関連

ssh リモートホスト名 "コマンド名"

command >file 2>&1 # 標準出力とエラー出力を共に「file」に出力する場合

command 1>file1 2>file2 # 標準出力を「file1」に,エラー出力を「file2」に出力する場合

command >& file.txt # 標準出力とエラー出力を共に「file」に出力する場合

( command > file1 ) >& file2 # 標準出力を「file1」に,エラー出力を「file2」に出力する場合

tar czvf 保存ファイル名.tgz 圧縮したいファイル1 圧縮したいファイル2 ...

tar xzvf ファイル.tgz

TeX関連

inkscape -D -z --file=image.svg --export-pdf=image.pdf

gnuplot関連

set xrange [0:10]

set yrange [-1:1]

plot sin(x)

plot "ファイル名"

オプション(後ろに付け足していく)

使用例:

plot "ファイル名" with line lw 5 title "タイトル名"

これで、"ファイル名"内のデータを、太さ5の折れ線で出力できる。また、この線のタイトルは"タイトル名となり、凡例に表示される。

set terminal postscript eps enhanced color

set out "出力ファイル名.eps"

IBM ILOG CPLEX

% cplex     # cplexの起動

CPLEX> set threads 4     # スレッド数を指定

CPLEX> set timelimit 120     # 計算打ち切りの最大時間を設定(sec)

CPLEX> read xxx.lp     # 「xxx.lp」ファイルを読み込む

CPLEX> display problem all     # 読み込んだ問題の中身を表示

CPLEX> optimize     # 最適化実行

CPLEX> display solution variables -     # 最適解の中身を表示

CPLEX> display solution dual -     # 最適解のシンプレックス定数を表示

CPLEX> display problem stats   # モデルの属性(変数の数など)を表示

CPLEX> quit     # 終了

# $Id: cplex-mip.txt,v 1.2 2001/12/07 21:52:05 inamoto Exp $

#([] 内はデフォルト値)

# バックトラックする高さ? 小さい方と幅優先,1 ならば深さ優先?

set mip strategy backtrack n [0.01]

# 分枝木の最大サイズ(M)

set mip limits treememory n [1e+75]

# リミットを越えた時に,メモリにあるメモリをファイルに書き出したりする

# @see directory

# 0 : 書き出さない

# 1 : メモリ上でファイルを作り,圧縮する

# 2 : ディスク上に書き出す

# 3 : ディスク上に書き出して圧縮する

set mip strategy file n [0]

# ファイルを書き出すディレクトリ.環境変数 TMP,TMPDIR の方が優先

set mip strategy directory s [.]

# ログの冗長度を設定する

# 0 : ログなし

# 1 : 実行可能解を表示

# 2 : インターバルごとにノードを表示

# 3 : 2 + ノードカットの情報

# 4 : 3 + root ノードに対する LP の情報

# 5 : 3 + 全てのノードに対する LP の情報

set mip display n [2]

# ログの頻度を設定する

set mip interval n [100]

# ログを書き出すファイル

set logfile s [cplex.log]

# モデルが難しい場合,有効らしい

# -1 : 禁止

# 0 : 自動

# 1 : 制限つき実行

# 2 : 完全に実行

set mip strategy probe n [0]

# ノードに対し,実行可能性を調べるためにヒューリスティックを適用する頻度

# -1 : 禁止

# 0 : 自動

# P : ノードの通し番号 % P = 0 なら実行

set mip strategy heuristicfreq n [0]

# 固定すべきノードを選択する基準

# 0 : 深さ優先

# 1 : 最良下界値優先?

# 2 : 最良みこみ優先

# 3 : 最良みこみかわりばんこ優先?

set mip strategy nodeselect n [1]

# cut ... 分枝を限定するための条件

# clique : 幾つかの変数があるグループにまとめられ,そのうち2つ以上が1になることがない

# cover : ナップザック的制約

# GUB : ????

# flow cover : 連続変数を含む制約

# implied bound : 非明示的なもの

# -1 : cut を生成しない

# 0 : 自動

# 1 : root ノードだけで生成する

# 2 : 全てのノードで生成する

set mip cut {cliques,covers,gubcovers,flowcovers,implied,all} n [0]

# 元の問題のサイズ * この数だけ,cut が生成されうる

set mip limits cutsfactor n [4]

# 整数値に近い変数を fix するためのヒューリスティックを適用するか

# @see heuristicfreq

# -1 : 適用しない

# 0 : 自動

# 1 : root ノードで適用する

set mip strategy rootheuristic n [-1]

# 分枝変数を選択する基準

# 3 : strong branching ?

set mip strategy variableselect n [0]

# 最適値との相対誤差の許容範囲を指定する

set mip tolerance mipgap n [0.0001]

# 最適値との絶対誤差の許容範囲を指定する

set mip tolerance absmipgap n [1e-6]

# 最小化問題での上界値を指定

set mip tolerance uppercutoff n [1e+75]

####

set mip tolerance absmipgap 0.5 # w1,w2,w3 が整数であるとして

set mip limit treememory 900

set mip strategy file 2

set mip strategy directory /tmp

? set mip strategy rootheuristic 1

? set mip cuts cliques 2

? set mip cuts covers 2

? set mip strategy probe 2

? set mip strategy heuristicfreq 100

? set mip strategy backtrack 1

参考資料