Mulai sekarangMulai gratis

Masalah perencanaan logistik 2

Anda kembali menjadi konsultan bagi produsen oven dapur untuk membantu merencanakan logistik mereka. Kali ini Anda menyusun rencana untuk enam bulan ke depan (Jan.–Jun.). Masih ada dua lokasi gudang (New York dan Atlanta), dan empat lokasi pelanggan regional (East, South, Midwest, West). Biaya pengiriman dari masing-masing gudang ke pelanggan regional tercantum pada tabel di bawah. Tujuan Anda adalah menentukan jumlah pengiriman dari setiap gudang ke pelanggan yang menghasilkan biaya terendah.

Customer New York Atlanta
East $211 $232
South $232 $212
Midwest $240 $230
West $300 $280

Sebuah dictionary Python bernama costs yang memuat biaya dalam model, serta tiga list months, warehouse, dan customers telah disiapkan untuk Anda. costs sudah dicetak untuk Anda; Anda juga dapat menelusuri list tersebut di konsol. Selain itu, model telah diinisialisasi untuk Anda.

Latihan ini merupakan bagian dari kursus

Analitik Rantai Pasok dengan Python

Lihat Kursus

Instruksi latihan

  • Definisikan variabel keputusan dalam model dengan terlebih dahulu menggunakan list comprehension untuk melakukan iterasi atas list months, warehouse, dan customers guna membuat daftar key. Gunakan daftar key tersebut dengan LpVariable.dicts() untuk mendefinisikan variabel yang diperlukan.
  • Definisikan fungsi objektif dengan menjumlahkan semua biaya pengiriman dari gudang dan pelanggan tertentu selama enam bulan.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# Define decision variables
key = [(m, w, ____) for m in months for w in warehouse for c in customers]
var_dict = LpVariable.dicts('num_of_shipments', 
                            key, 
                            lowBound=____, cat=____)

# Use the LpVariable dictionary variable to define objective
model += lpSum([costs[(w, c)] * ____[(____, ____, ____)] 
                for m in months for w in warehouse for c in customers])
Edit dan Jalankan Kode