AMPL的无效子脚本x [2,1,1]

Alex Gao

这是我第一次使用AMPL解决问题。谁能告诉我为什么这个程序给我Invalide Subcript x [2,1,1]吗?

谢谢 !

param K; #number of customers 
param T; #number of orders
param J; #number of fabs
param I; #number if items


param A {i in 1..I, t in 1..T}; #quantity of item i requested in order t
param P { t in 1..T}; # price of order t if fully fulfilled
param C {i in 1..I, j in 1..J}; #number of items i that can be produced by fab j per hour
param Cap {j in 1..J}; #capacity hours for fab j
set list {j in 1..J}= {i in 1..I: C[i,j] <>0}; #set of items that can be produced by firm j
set nonlist {j in 1..J}= {i in 1..I: C[i,j] =0}; #set of items that cannot be produced by firm j

var x {i in 1..I, j in 1..J, t in i..T}; #optimal quantity of item i produced by fab j for order t 


maximize profit: 
#sum {i in 1..I, j in 1..J, t in 1..T} (P[t]*(x[i,j,t] / (sum{ i in 1..I} A[i,t]))); #written like that doesn't work?!
sum{t in 1..T} (P[t]*((sum{i in 1..I, j in 1..J} x[i,j,t])/(sum {i in 1..I} A[i,t]))); 

subject to limit {i in 1..I, t in 1..T}: sum {j in 1..J} x[i,j,t] <= A[i,t] ; #cannot produce more than ordered for each item i in each order t
subject to capacity {j in 1..J} : sum { t in 1..T, i in list[j]} (x [i,j,t] / C[i,j]) <= Cap [j]; #cannot produce more than maximum capacity for each fab j
subject to realistic {j in 1..J, i in nonlist[j], t in 1..T}: x[i,j,t] =0; # firm j cannot produce item i if C[i,j]=0
subject to nonnegativity {i in 1..I, j in 1..J, t in 1..T}: x[i,j,t] >= 0;

数据文件是

param T := 10;
param J:= 8;
param I:= 12;

param A: 
             1 2 3 4 5 6 7 8 9 10 :=
1 0 1000 0 0 5000 0 0 2000 1500 0 
2 0 2000 0 4000 0 1000 1000 2000 0 0
3 0 0 1500 0 0 3500 500 0 3000 0
4 2000 0 0 0 0 1500 0 500 4000 2000
5 3000 0 0 5000 1500 0 0 1000 500 0
6 0 1000 0 0 2500 0 5000 0 1000 0
7 0 0 5000 0 0 0 0 1000 3000 0
8 0 0 4000 0 0 3000 0 0 2000 2000
9 0  0 6000 8000 2500 0 0 0 500 0
10 5000 0 0 0 0 0 0 2000 3000 3000
11 0 3000 0  2000 0 1500 0 3000 500 0
12 0 0 2000 3000 0 0 500 1000 1500 4000 ;

param P :=

1 5500
2 4300
3 9300
4 8600
5 8000
6 6700
7 4700
8 7000
9 9600
10 7200 ;

param Cap :=

1 840
2 750
3 610
4 470
5 560
6 240
7 1250
8 930;

param C: 
  1 2 3 4 5 6 7 8 :=
1 10 5 0 25 20 40 0 0
2 5 0 20 0 15 0 5 10
3 10 15 30 0 20 40 0 0
4 10 0 5 20 0 50 15 15
5  5 0 0 25 0 50 15 15
6 0 5 10 40 15 0 5 0
7 20 10 0 5 30 0  10 0
8 50 15 10 0  0 30 5  0
9 40 20 30 0 0 0 10 20
10 0 25 15 0 15 45 5 0
11 0 20 0 30 0 20 15 5
12 0 0 30 15 20 0 10 20;

正在运行的命令将给出结果Invalide Subcript x [2,1,1]:

在此处输入图片说明

维生素

该变量x[2,1,1]不存在,因为x已被索引{i in 1..I, j in 1..J, t in i..T},因此当i为2时,t从2变为T您应该将的声明更改为x类似

var x {i in 1..I, j in 1..J, t in 1..T};

或更改声明中的索引,profit并可能将约束与的索引保持一致x

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

AMPL的无效子脚本x [2,1,1]

来自分类Dev

ValueError:x和y不能大于2-D,但形状为(2,1,1)和(2,)

来自分类Dev

bash脚本[x $ 1 = x]

来自分类Dev

脚本的计数是2而不是1

来自分类Dev

计算1 +1!/ X + 2!/ X ^ 2 +…+ N!/ X ^ N

来自分类Dev

定义2列x 1行子图的问题

来自分类Dev

在Haskell中计算`[[1,x ^ 1,x ^ 2,...,x ^ n]`

来自分类Dev

(1 2) 报无效函数的错误

来自分类Dev

SQL中2x 1到(零或1)关系

来自分类Dev

为什么(1-x)(1 + x)比(1-x ^ 2)更受青睐?

来自分类Dev

Google脚本:获取第n个长度的数组[[x],[y]]以返回x / y值数组[[x1,y1],[x2,y2]等)

来自分类Dev

准确的sqrt(1 +(x / 2)^ 2)+ x / 2

来自分类Dev

Shell脚本错误:“ head:无效的尾随选项-1”

来自分类Dev

sed 脚本的“'s' 命令的 RHS 上的引用无效 \1”错误

来自分类Dev

为什么我收到无效的语法错误 def swap(self,(x1,y1),(x2,y2)):

来自分类Dev

x / 2和x >> 1或x * 2和x << 1的差,其中x是整数

来自分类Dev

如何获得2 x 1 UI对齐

来自分类Dev

为什么x in(1,2,3):比x == 1或x == 2或x == 3快?

来自分类Dev

如果输入是:y = 1(x ^ 3)+0.05(x ^ 2)-2(x ^ 1)-1如何从此std :: string获取数字?

来自分类Dev

Filling an M x N rectangle with squares with sides of lengths 2^K, 2^(K - 1), ..., 4, 2, 1

来自分类Dev

为什么x = {1:4}返回1x1单元格,而x = {1 2 3 4}返回1x4单元格?[MATLAB]

来自分类Dev

脚本中的“ 3>&1 1>&2 2>&3”是做什么的?

来自分类Dev

x上(1/2)*(xy)^ 2的微分是x-y

来自分类Dev

如何从与脚本2 3等共享的脚本1中获取整数

来自分类Dev

Jinja用于在地图[1,2]中构造字典为[{'x':1},{'x':2}]

来自分类Dev

十六进制值0x1F是无效字符。1号线,位置1

来自分类Dev

在Java中创建列表[xn,x-n + 1,...,x,x + 1,x + 2,... x + n]

来自分类Dev

卡尺错误:CICompilerCount为1无效;必须至少为2

来自分类Dev

模板参数2和1无效-声明向量

Related 相关文章

  1. 1

    AMPL的无效子脚本x [2,1,1]

  2. 2

    ValueError:x和y不能大于2-D,但形状为(2,1,1)和(2,)

  3. 3

    bash脚本[x $ 1 = x]

  4. 4

    脚本的计数是2而不是1

  5. 5

    计算1 +1!/ X + 2!/ X ^ 2 +…+ N!/ X ^ N

  6. 6

    定义2列x 1行子图的问题

  7. 7

    在Haskell中计算`[[1,x ^ 1,x ^ 2,...,x ^ n]`

  8. 8

    (1 2) 报无效函数的错误

  9. 9

    SQL中2x 1到(零或1)关系

  10. 10

    为什么(1-x)(1 + x)比(1-x ^ 2)更受青睐?

  11. 11

    Google脚本:获取第n个长度的数组[[x],[y]]以返回x / y值数组[[x1,y1],[x2,y2]等)

  12. 12

    准确的sqrt(1 +(x / 2)^ 2)+ x / 2

  13. 13

    Shell脚本错误:“ head:无效的尾随选项-1”

  14. 14

    sed 脚本的“'s' 命令的 RHS 上的引用无效 \1”错误

  15. 15

    为什么我收到无效的语法错误 def swap(self,(x1,y1),(x2,y2)):

  16. 16

    x / 2和x >> 1或x * 2和x << 1的差,其中x是整数

  17. 17

    如何获得2 x 1 UI对齐

  18. 18

    为什么x in(1,2,3):比x == 1或x == 2或x == 3快?

  19. 19

    如果输入是:y = 1(x ^ 3)+0.05(x ^ 2)-2(x ^ 1)-1如何从此std :: string获取数字?

  20. 20

    Filling an M x N rectangle with squares with sides of lengths 2^K, 2^(K - 1), ..., 4, 2, 1

  21. 21

    为什么x = {1:4}返回1x1单元格,而x = {1 2 3 4}返回1x4单元格?[MATLAB]

  22. 22

    脚本中的“ 3>&1 1>&2 2>&3”是做什么的?

  23. 23

    x上(1/2)*(xy)^ 2的微分是x-y

  24. 24

    如何从与脚本2 3等共享的脚本1中获取整数

  25. 25

    Jinja用于在地图[1,2]中构造字典为[{'x':1},{'x':2}]

  26. 26

    十六进制值0x1F是无效字符。1号线,位置1

  27. 27

    在Java中创建列表[xn,x-n + 1,...,x,x + 1,x + 2,... x + n]

  28. 28

    卡尺错误:CICompilerCount为1无效;必须至少为2

  29. 29

    模板参数2和1无效-声明向量

热门标签

归档