Question: from pulp import LpProblem, LpVariable, lpSum, LpMinimize # Data factories = [ ' A ' , ' B ' , ' C ' ] warehouses

from pulp import LpProblem, LpVariable, lpSum, LpMinimize
# Data
factories =['A','B','C']
warehouses =['A','B','C','D']
markets =['A','B','C','D','E']
production_costs ={
('A','A'): 5,('A','B'): 6,('A','C'): 4,('A','D'): 7,
('B','A'): 7,('B','B'): 4,('B','C'): 6,('B','D'): 5,
('C','A'): 4,('C','B'): 8,('C','C'): 2,('C','D'): 9
}
transportation_costs ={
('A','A'): 3,('A','B'): 5,('A','C'): 4,('A','D'): 6,('A','E'): 7,
('B','A'): 4,('B','B'): 3,('B','C'): 5,('B','D'): 7,('B','E'): 6,
('C','A'): 5,('C','B'): 4,('C','C'): 3,('C','D'): 8,('C','E'): 5,
('D','A'): 6,('D','B'): 5,('D','C'): 4,('D','D'): 4,('D','E'): 3
}
demand ={'A': 500,'B': 700,'C': 600,'D': 800,'E': 900}
production_capacities ={'A': 2200,'B': 2500,'C': 3000}
warehouse_capacities ={'A': 10000,'B': 13000,'C': 12000,'D': 9000}
# Create the LP problem
prob = LpProblem("SupplyChainDesign", LpMinimize)
# Define decision variables
X = LpVariable.dicts("X",[(i, j) for i in factories for j in warehouses], lowBound=0, cat='Continuous')
Y = LpVariable.dicts("Y",[(j, k) for j in warehouses for k in markets], lowBound=0, cat='Continuous')
# Define the objective function
prob += lpSum(X[(i, j)]* production_costs[(i, j)] for i in factories for j in warehouses)\
+ lpSum(Y[(j, k)]* transportation_costs[(j, k)] for j in warehouses for k in markets)
# Add demand constraints
for k in markets:
prob += lpSum(Y[(j, k)] for j in warehouses)== demand[k]
# Add supply constraints
for j in warehouses:
prob += lpSum(X[(i, j)] for i in factories)<= warehouse_capacities[j]
# Solve the problem
prob.solve()
# Print the results
print("Total Cost: $", round(prob.objective.value(),2))
print("
Production Plan:")
for i in factories:
for j in warehouses:
if X[(i, j)].varValue >0:
print(f"Factory {i}-> Warehouse {j}: {X[(i, j)].varValue} units")
print("
Transportation Plan:")
for j in warehouses:
for k in markets:
if Y[(j, k)].varValue >0:
print(f"Warehouse {j}-> Market {k}: {Y[(j, k)].varValue} units")
The code poses a linear programming problem and uses PuLP to find the optimal solution that minimizes total cost while satisfying demand requirements and supply constraints.
can you solve this code in excel?

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related General Management Questions!