最適化セミナーのご案内

2.20.1 Vector/Matrixを用いたSIMPLEモデル

 ここでは,Vector/Matrixクラスを用いたモデルを紹介します.

Set Rating;
Element i(set=Rating), j(set=Rating);

Matrix Q0((i,j)); 
Variable q(name="Q", index=(i,j));
Matrix Q1((i,j)); Q1[i,j] = q[i,j];

Matrix Q2((i,j)), Q4((i,j)), Q8((i,j)), Q12((i,j));
Q2 = Q1*Q1;
Q4 = Q2*Q2;
Q8 = Q4*Q4;
Q12 = Q8*Q4;

Matrix D((i,j));
D = Q0 - Q12;

Objective diffnrm(type=minimize);
diffnrm = inprod(D,D);

Q1*ones(Rating) == ones(Rating);
0.00 <= q[i,i] <= 1; 
0 <= q[i,j] <= 0.05 , i!=j; 

q[i,i]=0.9;

solve();

 実行時には,同じデータファイルを与えます.


 

 

上に戻る