我有以下trans
在 python 中使用 DOcplex 的模型解决方案:
# Solve command
solution = mdl.solve(log_output=True)
solution.display()
#printed solution
solution for: transp
objective: 73231116.000
q_Coupe 1_Smithton = 6000.000
q_Coupe 2_Smithton = 1000.000
q_Coupe 3_Bell Bay = 9000.000
q_Coupe 4_Smithton = 3000.000
q_Coupe 5_Smithton = 3000.000
q_Coupe 6_Bell Bay = 4000.000
q_Coupe 8_Hobart = 7000.000
q_Coupe 10_Hobart = 3000.000
CAP_Bell Bay = 8.552
CAP_Smithton = 8.552
CAP_Hobart = 6.579
X_Bell Bay = 1
X_Smithton = 1
X_Hobart = 1
在此处:
I = list of forests
['Coupe 1', 'Coupe 2', 'Coupe 3', 'Coupe 4', 'Coupe 5', 'Coupe 6', 'Coupe 7', 'Coupe 8', 'Coupe 9', 'Coupe 10']
J = list of facilities
['Bell Bay', 'Surrey Hills', 'Smithton', 'Hobart']
arcs = [(i, j) for i in I for j in J]
[('Coupe 1', 'Bell Bay'), ('Coupe 1', 'Surrey Hills'), ('Coupe 1', 'Smithton'), ('Coupe 1', 'Hobart'), ('Coupe 2', 'Bell Bay'), ('Coupe 2', 'Surrey Hills'), ('Coupe 2', 'Smithton'), ('Coupe 2', 'Hobart'), ('Coupe 3', 'Bell Bay'), ('Coupe 3', 'Surrey Hills'), ('Coupe 3', 'Smithton'), ('Coupe 3', 'Hobart'), ('Coupe 4', 'Bell Bay'), ('Coupe 4', 'Surrey Hills'), ('Coupe 4', 'Smithton'), ('Coupe 4', 'Hobart'), ('Coupe 5', 'Bell Bay'), ('Coupe 5', 'Surrey Hills'), ('Coupe 5', 'Smithton'), ('Coupe 5', 'Hobart'), ('Coupe 6', 'Bell Bay'), ('Coupe 6', 'Surrey Hills'), ('Coupe 6', 'Smithton'), ('Coupe 6', 'Hobart'), ('Coupe 7', 'Bell Bay'), ('Coupe 7', 'Surrey Hills'), ('Coupe 7', 'Smithton'), ('Coupe 7', 'Hobart'), ('Coupe 8', 'Bell Bay'), ('Coupe 8', 'Surrey Hills'), ('Coupe 8', 'Smithton'), ('Coupe 8', 'Hobart'), ('Coupe 9', 'Bell Bay'), ('Coupe 9', 'Surrey Hills'), ('Coupe 9', 'Smithton'), ('Coupe 9', 'Hobart'), ('Coupe 10', 'Bell Bay'), ('Coupe 10', 'Surrey Hills'), ('Coupe 10', 'Smithton'), ('Coupe 10', 'Hobart')]
这些是模型中的变量:
q = mdl.continuous_var_dict(arcs, name='q')
CAP = mdl.continuous_var_dict(J, name='CAP')
X = mdl.binary_var_dict(CAP, name='X')
我希望将q
我的解决方案的可变结果作为矩阵数据框/I
按列的行表导出到 Excel J
。我想添加另一行CAP
per的解决方案J
。q
和的缺失值CAP
应填写0
。
q Bell Bay Surrey Hills Smithton Hobart
Coupe 1 0.00 0.00 6000.00 0.00
Coupe 2 0.00 0.00 1000.00 0.00
Coupe 3 9000.00 0.00 0.00 0.00
Coupe 4 0.00 0.00 3000.00 0.00
Coupe 5 0.00 0.00 3000.00 0.00
Coupe 6 4000.00 0.00 0.00 0.00
Coupe 7 0.00 0.00 0.00 0.00
Coupe 8 0.00 0.00 0.00 7000.00
Coupe 9 0.00 0.00 0.00 0.00
Coupe 10 0.00 0.00 0.00 3000.00
CAP 8.552 0.00 8.552 6.579
最好使用熊猫。