2018年12月11日火曜日

SeDuMi の eigK.m がバグってるっぽい?

ここ半年ぐらい、SeDuMi の eigK を実行しているときに良くわからないエラーで止まっていたが、どうもバグっぽい様子。

具体的には、
https://github.com/sqlp/sedumi/blob/master/eigK.m
の77行目がバグのようで、

74: li = 0;
75: xi = nf;
76: lab = zeros(N,1);
77: li(li+1:li+nl) = x(xi+1:xi+nl);
78: xi = xi + nl;

となっていて、74行目でスカラーと定義されている li に77行目で配列代入している。
おそらく、li(li+1:li+nl) ではなくて、lab(li+1:lib+nl) なのではないかと思っていて、自分のところではエラーが消えてなくなったけど、もう少し確認してみたほうがいいのかもしれない。

2018年12月6日木曜日

論文読み:Decision Diagram Decomposition for Quadratically Constrained Binary Optimization

Optimization Online に載っていた以下の論文を読んでみた。

Decision Diagram Decomposition for Quadratically Constrained Binary Optimization
http://www.optimization-online.org/DB_HTML/2018/10/6837.html

扱っている問題は、目的関数が線形で、制約は2次式、あと各変数は0-1変数という問題。
これを MILP に変形して解いている。
この変形に Diagram を使って、うまいことやっている。

基本的には変数の数が増えているので、計算時間が短縮できるかどうかは入力問題しだいだけど、Diagram を使っているところが、なかなかに面白い工夫だと思う。