谁能帮助刚接触 AMPL 的人?
Can anyone help someone brand new to AMPL?
AMPL 的新手,完全不理解错误。我已经尝试删除变量定义并得到错误(未识别变量)所以无论如何这里是错误消息:
syntax error
context: subject to >>> 90 <<< * x1 + 120 * x2 + 106 * x3 + 97 * x4 + 130 * x5 + 180 * x6 >= 300;
这是我的代码
reset;
var x1 >=0;
var x2 >=1;
var x3 >=0;
var x4 >=0;
var x5 >=.5;
var x6 >=0;
minimize cost: 2 * x1 + 3.5 * x2 + 8 * x3 + 1.5 * x4 + 11 * x5 + x6;
subject to 90 * x1 + 120 * x2 + 106 * x3 + 97 * x4 + 130 * x5 + 180 * x6 >= 300;
subject to 4 * x1 + 8 * x2 + 7 * x3 + 1.3 * x4 + 8 * x5 + 9.2 * x6 >= 10;
subject to 15 * x1 + 11.7 * x2 + .4 * x3 + 22.6 * x4 + 17 * x6 >= 10;
subject to x1 + 5 * x2 + 9 * x3 + 0.1 * x4 + 7 * x5 + 7 * x6 >= 8;
您遇到了语法错误,因为您没有使用有效的语法来声明约束。更具体地说,您的约束缺少名称和冒号。所以,而不是
subject to 90 * x1 + 120 * x2 + 106 * x3 + 97 * x4 + 130 * x5 + 180 * x6 >= 300;
你应该写
subject to c1: 90 * x1 + 120 * x2 + 106 * x3 + 97 * x4 + 130 * x5 + 180 * x6 >= 300;
其中 c1
是您想为该约束指定的任何名称 --- 只是不要两次使用相同的名称。
您可以找到有关 AMPL 语法的更多信息 here。
AMPL 的新手,完全不理解错误。我已经尝试删除变量定义并得到错误(未识别变量)所以无论如何这里是错误消息:
syntax error
context: subject to >>> 90 <<< * x1 + 120 * x2 + 106 * x3 + 97 * x4 + 130 * x5 + 180 * x6 >= 300;
这是我的代码
reset;
var x1 >=0;
var x2 >=1;
var x3 >=0;
var x4 >=0;
var x5 >=.5;
var x6 >=0;
minimize cost: 2 * x1 + 3.5 * x2 + 8 * x3 + 1.5 * x4 + 11 * x5 + x6;
subject to 90 * x1 + 120 * x2 + 106 * x3 + 97 * x4 + 130 * x5 + 180 * x6 >= 300;
subject to 4 * x1 + 8 * x2 + 7 * x3 + 1.3 * x4 + 8 * x5 + 9.2 * x6 >= 10;
subject to 15 * x1 + 11.7 * x2 + .4 * x3 + 22.6 * x4 + 17 * x6 >= 10;
subject to x1 + 5 * x2 + 9 * x3 + 0.1 * x4 + 7 * x5 + 7 * x6 >= 8;
您遇到了语法错误,因为您没有使用有效的语法来声明约束。更具体地说,您的约束缺少名称和冒号。所以,而不是
subject to 90 * x1 + 120 * x2 + 106 * x3 + 97 * x4 + 130 * x5 + 180 * x6 >= 300;
你应该写
subject to c1: 90 * x1 + 120 * x2 + 106 * x3 + 97 * x4 + 130 * x5 + 180 * x6 >= 300;
其中 c1
是您想为该约束指定的任何名称 --- 只是不要两次使用相同的名称。
您可以找到有关 AMPL 语法的更多信息 here。