Mulai sekarangMulai gratis

Latihan kendala logika 2

Anda bekerja di sebuah pusat distribusi truk dan perlu memutuskan ke lokasi mana dari 6 lokasi pelanggan Anda akan mengirim truk. Tujuan Anda adalah meminimalkan jarak yang ditempuh truk.

Location Distance
A 86
B 95
C 205
D 229
E 101
F 209

Sebuah dictionary dist, dan sebuah list cust telah dibuatkan untuk Anda yang berisi jarak dan nama setiap lokasi pelanggan. Masukan tersebut telah dicetak di konsol untuk Anda.

Latihan ini merupakan bagian dari kursus

Analitik Rantai Pasok dengan Python

Lihat Kursus

Instruksi latihan

  • Perbarui kendala agar model memilih setidaknya satu lokasi
  • Tambahkan kendala sehingga jika lokasi A dipilih maka lokasi D juga dipilih.
  • Tambahkan kendala sehingga jika lokasi B dipilih maka lokasi E juga dipilih.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

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))
Edit dan Jalankan Kode