問題タブ [mixed-integer-programming]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
745 参照

matlab - Gurobi を呼び出す Matlab の線形制約を使用した混合整数二次計画法

Gurobi を呼び出す Matlab で線形制約を使用して次の MIQP (Mixed Integer Quadratic Programming) を実装する方法を理解するのに苦労しています。

私の設定を模式的に説明しましょう。


(1) x不明で、サイズ の列ベクトル225x1です。


(2)目的関数(これは wrto で最小化する必要がありますx) は次のようになります。

ここに画像の説明を入力

これは次のように書き換えることができます

ここに画像の説明を入力

alpha, Q,c与えられたときに(Q,cスパース) 計算するMatlabスクリプトがありますsome_known_parameters1


(3)制約は で線形でxあり、等号と不等号を含み、次の形式で記述されます。ここに画像の説明を入力

Aeq,beq,Aineq,bineqが与えられたときに(Aeq,Aineqスパース)計算するMatlabスクリプトがありますsome_known_parameters2


(4) の一部のコンポーネントは{0,1}x内に制限されています。与えられたときに、文字列(バイナリ)、(連続)を生成するMatlabスクリプトがあります:BCsome_known_parameters3


では、(1)~(4)をGurobiでまとめていきます。私はどのように理解するのに苦労しています。この例を見つけましたが、私には非常に不可解に見えます。以下に、私が書き込もうとしたいくつかの行を報告しますが、それらは不完全であり、完成させるためにあなたの助けが必要です.


質問:

(1)よくわからない

ここで提供されている文字を使用して目的関数の行列を設定しようとしていますが、エラーが発生します。ここの例は私にはやっているようです

しかし、どうすれば設定できalphaますか?ソリューションのセットを変更しないため、それを無視していますか?

(2)行列に格納された出力として、対応する目的関数の最小値を取得するにはどうすればよいxですか?