Mulai sekarangMulai gratis

Latihan kendala logika

Pelanggan Anda memesan enam produk untuk dikirimkan selama bulan depan. Anda akan perlu mengirimkan beberapa muatan truk untuk mengantarkan semua produk. Ada batas berat pada truk Anda sebesar 25.000 lb. Demi arus kas, Anda ingin mengirim kombinasi produk paling menguntungkan yang dapat dimuat di truk Anda.

Product Weight (lbs) Profitability ($US)
A 12,583 102,564
B 9,204 130,043
C 12,611 127,648
D 12,131 155,058
E 12,889 238,846
F 11,529 197,030

Dua kamus Python weight dan prof, serta sebuah daftar prod, telah dibuat untuk Anda yang berisi berat, profitabilitas, dan nama setiap produk. Anda bisa mengeksplorasinya di konsol.

Latihan ini merupakan bagian dari kursus

Analitik Rantai Pasok dengan Python

Lihat Kursus

Instruksi latihan

  • Tambahkan kendala agar total berat truk kurang dari atau sama dengan 25.000 lb.
  • Tambahkan kendala sehingga model akan, paling banyak, memilih hanya satu produk di antara D, E, dan F.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# Initialized model, defined decision variables and objective
model = LpProblem("Loading Truck Problem", LpMaximize)
x = LpVariable.dicts('ship_', prod, cat='Binary')
model += lpSum([prof[i] * x[i] for i in prod])

# Define Constraint
model += lpSum([weight[i] * x[i] for i in prod]) ____ ____
model += ____

model.solve()
for i in prod:
    print("{} status {}".format(i, x[i].varValue))
Edit dan Jalankan Kode