最適化セミナーのご案内

3.2.2 線形部分にかかわるもの(solveLP,solveQP共通)

double* objL 目的関数の線形部分(長さ:n
int nAelem 制約式の係数行列の非零要素数
int* irowA 非零要素の行番号(長さ:nAelem
int* jcolA 非零要素の列番号(長さ:nAelem
double* a 非零要素の値(長さ:nAelem

 

 ここで扱う引数もsolveLPsolveQPで同じ意味を持ちます.objLは目的関数の線形部分

\[\sum_{j} c_{j} \cdot x_{j}\]

$c_{j}$に対応します.

 制約式の係数行列は非零要素のみ与えます.同じ非零要素を二つ以上与えた場合には,それらの和が取られます.非零要素の場所は1始まりの番号で与えます.例えばnAelem=4のとき,

配列の添字 irowA jcolA a
0 1 2 2.3
1 1 3 1.8
2 2 1 0.5
3 1 3 0.2

 

のように与えると

\[A = \left[ \begin{matrix} 0 & 2.3 & 2.0 \\ 0.5 & 0 & 0 \end{matrix} \right]\]

を与えたことになります($A_{13}$については二つ与えられているので和(1.8+0.2=2.0)が取られます).非零要素の格納順番は任意です.


 

 

上に戻る