1 model: !模型; 2 !集的定義,名稱 /成員/ : 屬性; 3 sets: 4 row / 1..4 / : b; 5 col / 1..5 / : c1, c2, x; 6 link(row, col) : a; 7 endsets 8 !數據部分,對象列 = 數值列,也可以指定一些標量參數; 9 !實時參數處理:在本該放數的地方放一個問號; 10 data: 11 c1 = 1, 1, 3, 4, 2; 12 c2 = -8, -2, -3, -1, -2; 13 a = 1 1 1 1 1 14 1 2 2 1 6 15 2 1 6 0 0 16 0 0 1 1 5; 17 b = 400, 800, 200, 200; 18 enddata 19 !集循環函數; 20 !@for(setname : expression_list); 21 !@sum(setname : one_expression_list); 22 max = @sum(col : c1 * x ^ 2 + c2 * x); 23 @for(row(i) : @sum(col(j) : a(i, j) * x(j)) < b(i)); 24 @for(col : @gin(x));!@gin限制x為整數; 25 @for(col : @bnd(0, x, 99));!@bnd變量界定函數,即x的取值范圍; 26 end
可求得全局最優解。
