货物托运收费python"/>
货物托运收费python
你的问题是一个结构良好的运输问题。它可以用各种方法来解决。在
如果您想用线性规划来解决它,可以使用scipy.optimize.linprog。对于多维决策变量,对变量进行编码比较困难。在
使用scipy.optimize.linprog您可以像这样建模和解决问题:import random
import numpy as np
import scipy.optimize
LANES = 30
CARRIERS = 6
cost = np.random.rand(LANES, CARRIERS) # c
demand = np.random.rand(LANES) # b_eq
capacity = [250, 300, 500, 750, 100, 200] # b_ub
A_eq = np.zeros(LANES*CARRIERS*LANES).reshape(LANES, LANES*CARRIERS)
# Constraint for each lane, sum over the available carriers
for l in range(LANES):
for var in range(l*CARRIERS, l*CARRIERS+CARRIERS):
A_eq[l, var] = 1
A_ub = np.zeros(CARRIERS*LANES*CARRIERS).reshape(CARRIERS, LANES*CARRIERS)
# Constraint for each carrier, sum over the lanes
for c in range(CARRIERS):
for var in range(c, LANES*CARRIER
更多推荐
货物托运收费python
发布评论