gurobi+python 備忘録

gurobi+pythonを使っていて忘れそうなことや見つけたことをメモります

2017-01-01から1年間の記事一覧

tuneして求めたparamsをそのまま即座に使って最適化する

tuningツールがgurobiにはあって. っていきなり話しても急ですね. gurobiでは計算するにあたって,いろいろいじれるパラメータがあります.どんな解き方しますか~?みたいなもんです.具体的には, model.params.~~ = ?? みたいな形で与えます. で,その…

コードの変更箇所をハイライト|atom split diff

Pythonの話でもGurobiの話でもなくて恐縮ですが,最近知って重宝しているatomのパッケージがあるので共有したいと思います. atom.io split-diffというやつなんですが,(まあ有名なんでしょうが)コードを比べて違うところを教えてくれます. ちょっとずつ…

最適化計算のヒントになる情報っぽい各ファイルを比較

一度計算した最適解を次の計算でも使いたいな〜というのは誰しも思うものかと思いますが.gurobiのマニュアルを見ていると,mstやらsolやらhntやら,いくつか種類があってよくわかりません. ですので,いろいろ試してみました.結論からいうと, write("~.s…

最適化の途中で戦略を変えるパラメータ

最適化の途中で戦術変えたら早くなるのでは?と思ってCallbackを使ってMIPFocusなんかを変えることを考えたことがありました. strep-ik-gurobipy.hatenadiary.jp そんなことしなくたって,戦術を途中で変えてくれるパラメータがGurobiさんにはあるんですね…

Python2.7+gurobiの環境構築手順備忘録

Windows上でのgurobi+python2.7の環境構築手順(アカデミックライセンス)の備忘録を。gurobiのサイトに書いてある手順はこちらです。(https://www.gurobi.com/documentation/6.5/quickstart_mac/the_gurobi_python_interfac.html) ここでは日本語で説明し…

callbackで途中で戦術を変える

MIPFocus=2にすると厳密解を慎重に計算してくれるけれども,大規模な問題だとちっとも進まない...それなら,はじめはMIPFocus=3 でざっくり解いて,gapが縮まってきたら2にしたらいいじゃない,という思いつき. そんなことをしてちゃんとした解が出てく…

gurobiでmodelと実行可能解の受け渡し

同じ問題をなんども解くのにいちいち定式化で10分もかかってたらイライラしますね.一度作ったmodelを再利用しましょう.(lpファイル) 混合整数計画問題を解く分枝限定法では,現状一番いい実行可能解(上界)と線形緩和解(下界)の差(Gap)を縮めていきます.実…

solファイルを2回以上読み込むと初期値が巨大になる

gurobiでsolファイルを2回readすると,Start属性がおかしな数字になる 全て同じsolファイルを読み込んでいるが, 1度目:モデルm1にsol1.solを読み込み,試しに1つめの変数の初期値を出力 >> 1.0 2度目:モデルm1のコピーm2を作り,それにsol1.solを読み込…