Logiska villkor – övning 2
Du arbetar på ett distributionscenter för lastbilar och behöver bestämma vilka av 6 kundplatser du ska skicka en lastbil till. Målet är att minimera den sträcka lastbilen kör.
| Plats | Avstånd |
|---|---|
| A | 86 |
| B | 95 |
| C | 205 |
| D | 229 |
| E | 101 |
| F | 209 |
En ordbok dist och en lista cust har skapats åt dig med avståndet och namnet på varje kundplats. Dessa indata har skrivits ut i konsolen.
Den här övningen är en del av kursen
Supply Chain Analytics i Python
Övningsinstruktioner
- Uppdatera villkoren så att modellen väljer minst en plats.
- Lägg till villkoret att om plats A väljs ska plats D också väljas.
- Lägg till villkoret att om plats B väljs ska plats E också väljas.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
model = LpProblem("Loading Truck Problem", LpMinimize)
x = LpVariable.dicts('ship_', cust, cat='Binary')
model += lpSum([dist[i]*x[i] for i in cust])
# Define Constraint
model += ____ + ____ + ____ + ____ + ____ + ____ >= ____
model += ____ - ____ <= ___
model += ____ - ____ <= 0
model.solve()
for i in cust:
print("{} status {}".format(i, x[i].varValue))