我正在做一个模型,我需要以相当大的方式进行调整。基本上我需要延长我现在的一组城市,成为一组城市和时间。例如,V中的元素Kir必须从简单的“Kir”扩展到“Kir1”,“Kir2”,...,“Kir72”以表示城市Kir以及由数字指定的时间范围。AMPL:数据集和规范中的一个大集合
我已经开始将它定义为(在.mod文件中): set V; 在V中设置K;
和.dat文件我很不确定如何写这个。如果没有简单的方法在集合K中包含“字符串”Kir,我会猜测我会写:
set V := 1 2 3 4 5;
set K := 1 2;
例如。我的问题是我该如何做到这一点?我可以包括城市名Kir吗?具体来说,我已经定义了原始V集中的城市之间的距离数据透视表。例如,城市Kir和Sto之间的原始集合V中的距离必须与扩展集合中Kir1和Sto1之间的距离相同。它也必须是Kir1和Sto72之间的相同距离。原始距离必须是相同的,而不管它是哪个时间范围。 AMPL中有这样一个简单的方法吗?
编辑:添加标签Python。我想这也可以在Python中实现。我已经设法使用以下定义新套件:
text = 'Kir'
string2 = [i for i in range(1,49)]
for i in string2:
print (text+str(i))
例如。我卡在距离矩阵虽然
谢谢!不知道这种可能性!显然比使用另一个程序指定集合更方便,Python! – Cenderze 2014-10-06 05:53:29