[t] for j in range(J)) == 1

2.限制每个码头每天停靠的船只数量

for j in range(J): for t in range(T): model += lpSum(x[i][j][t] for i in range(I)) <= capacity[j]

3.限制船只停靠时间不超过码头可用时间

for i in range(I): for j in range(J): for t in range(T - time[types[i]]): model += lpSum(x[i][j][t+l] for l in range(time[types[i]])) <= capacity[j]

解决线性规划问题

status = model.solve()

输出结果

print("Status:", LpStatus[status]) print("Objective Value:", value(model.objective))

for i in range(I): for j in range(J): for t in range(T): if value(x[i][j][t]) == 1: print("Ship %s is at berth %s on hour %s" % (i, j, t)

# 导入PuLP库from pulp import # 定义船只和码头的数量I = 60J = 6T = 24# 定义每种船只需要停靠的时间time_m = 0 8 12 16 # 对应于散货船、集装箱船、液化气船time = for j in rangeJ if j 3 timeappendtime_m0 elif j 5 timeappendti

原文地址: https://www.cveoy.top/t/topic/fPaU 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录