相关需求约束练习
您正在为 5 种产品(A 到 E)制定生产计划。1 个单位的产品 E 由 2 个单位的 A 和 1 个单位的 C 组成。产品 C 也会直接销售给客户。您的规划期为 3 个月。目标是确定每个月各产品的生产量,在满足客户需求的同时,使总成本最小化。
控制台中已打印名为 demand 的 Pandas DataFrame,其中包含每种产品的月度客户需求。此外,已经为您提供了 PuLP 模型中用于初始化、定义决策变量、目标函数,以及"生产量大于等于需求"的约束代码。
本练习是课程的一部分
Python 供应链分析
练习说明
- 完成包含产品 A 和 C 相关需求的约束代码。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Initialize, Define Decision Vars., Objective Function, and Constraints
model = LpProblem("Aggregate Production Planning", LpMinimize)
time = [0, 1, 2]
prod = ['A', 'B', 'C', 'D', 'E']
X = LpVariable.dicts("prod", [(t, p) for p in prod for t in time],
lowBound=0, cat="Integer")
model += lpSum([costs.loc[t, p]*X[(t, p)] for p in prod for t in time])
for p in prod:
for t in time:
model += X[(t, p)] >= demand.loc[t, p]
# Define Dependent Demand Constraints
for t in time:
model += ____ * X[(t, 'E')] <= X[(t, 'A')]
model += ____ * X[(t, ____)] + demand.loc[t, ____] <= X[(t, ____)]