как инициализировать многомерную переменную на многомерном множестве - PullRequest
1 голос
/ 11 июля 2019

У меня есть переменная в этом наборе:

param n=5;
param a1=4;
param u=3;
set N, default{1..n}; 
set A, default{1..a1};
set F, default{1..u}; 
set E,  within F cross N;
param Y{E,A};

I did this to initialize Y, please let me know what is my mistake?

По сути, я сначала инициализировал набор E, затем Y.

set E:=
1  1
2  2
3  1 
3  2;

param Y:1  2  3   4 := 
1  1    1  -1  1  -1
2  2   -1  1  -1   1
3  1    1 -1  -1  -1
3  2    1 -1  -1  -1;

Обратите внимание, что я знаю, что могу сделать это:

param Y:= 
1  1  1    1  
2  2  1   -1  
3  1  1    1 
3  2  1    1 
1  1  2   -1 
2  2  2    1 
3  1  2   -1  
3  2  2   -1  
1  1  3    1  
2  2  3   -1   
3  1  3   -1  
3  2  3   -1  
1  1  4   -1
2  2  4    1
3  1  4   -1
3  2  4   -1

;Но так как у меня 500000 строк и 40 столбцов, очень сложно сделать этот формат.Я ищу матричный формат в качестве моего первого ввода.

...