BAB 2 LANDASAN TEORI
2.1 Persediaan Yang dinamakan persediaan adalah semua produk dan material yang digunakan di dalam proses produksi dan distribusi, seperti bahan mentah, komponen produk setengah jadi dan produk jadi yang belum menjadi pendapatan. Persediaan menyebabkan tertahannya modal, menggunakan ruang penyimpanan, membutuhkan penanganan, mengalami deteriorisasi, menjadi usang atau kadarluarsa, menimbukan pajak, membutuhkan asuransi, dapat dicuri dan terkadang hilang. Lebih jauh lagi, persediaan seringkali harus menanggung akibat dari manajemen yang tidak efisien dan berantakan termasuk peramalan yang buruk. Penjadwalan yang tidak terencana dan perhatian yang tidak cukup terhadap proses setup dan order. Pada kasus seperti itu persediaan akan menyebabkan bertambahnya biaya dan produktivitas tanpa menambah pendapatan bersih. Ini merupakan suatu kewajiban ( utang ) terlepas apakah ia disertakan atau tidak dalam neraca keuangan. Tidak tersedianya persediaan dalam jumlah yang cukup, dapat menghentikan proses produksi. Kurangnya komponen part akan menghentikan proses perakitan. Suatu alat yang mahal bisa saja terhenti karena ketiadaaan komponen pengganti yang sama sekali tidak mahal. Ketersediaan item yang tepat pada waktu yang tepat dan di tempat yang tepat akan mendukung tujuan organisasi dalam pelayanan konsumen, produktivitas, keuntungan dan tingkat pengembalian investasi. Hal ini benar dalam bidang manufaktur, wholesale, retail, perawatan kesehatan dan organisasi pendidikan. Ukuran performansi
7 dan produktivitas mungkin berbeda antara satu organisasi dengan organisasi lain, akan tetapi pada dasarnya mereka semua membutuhkan manajemen persediaan yang baik. Menurut Sipper, Daniel, Bulfin ( 1997 , p206 ) persediaan adalah kuantitas dari komoditas yang di kontrol oleh perusahaan. Disimpan sewaktu – waktu agar dapat memenuhi permintaan masa depan Menurut Roger G Schoeder ( 2000, p304 ) Persediaan adalah stok dari suatu material yang digunakan untuk memudahkan produksi dan memenuhi persediaan pelanggan.
2.2 Tujuan Persediaan Persediaan muncul dikarenakan permintaan dan pasokan bahan baku sulit untuk disamakan. Dan untuk menyamakan pasokan serta permintaan membutuhkan waktu yang cukup lama karena banyak faktor – faktor yang mempengaruhi penyamaan ini. Faktor – faktor tersebut seperti waktu, ekonomi, sesuatu yang tak terduga seperti force majure serta banyak lagi. Richard B Chase memamparkan bahwa tujuan dari persediaan adalah sebagai berikut 1. Variasi dalam permintaan produk Apabila persediaan suatu produk dapat diketahui dangan pasti akan dimungkinkan untuk memproduksi sesuai dengan jumlah permintaan. Tetapi biasanya permintaan tidak dapat diketahui dengan pasti. Oleh karenanya persediaan pengaman / persediaan cadangan dibutuhkan untuk dapat memenuhi variasi permintaan. 2. Fleksibilitas dalam penjadwalan produksi. Stok dalam persediaan mengurangi tekanan terhadap sistem produksi untuk mengeluarkan barang secepat mungkin. Ini menyebabkan waktu tenggat yang
8 lebih lama, yang akan memperbolehkan perencanaan produksi untuk merencanakan produksi dengan aliran yang lebih baik 3. Untuk menyediakan persediaan pengaman untuk mengantisipasi adanya variasi tenggat waktu pengiriman bahan mentah. 4. Memberikan keuntungan Untuk dapat mengetahui jumlah pembelian yang ekonomis.
2.3
Fungsi persediaan
Persediaan berfungsi untuk : 1. Working stock ( Lot size stock ) merupakan persediaan yang dibutuhkan dan diadakan dalam mendukung kebutuhan terhadap barang sehingga pemesanan dapat dilakukan dalam bentuk lot size dibandingkan dengan ukuran dasar yang dibutuhkan. Lot Size mempunyai manfaat untuk mengurangi atau meminimalisaikan biaya pemesanan dan simpan, mendapatkan diskon pemesanan kuantitas dan biaya pengiriman 2. Stok Pengaman ( Fluctuation Stock ) merupakan persediaan yang diadakan
dalam
mengantisipasi
ketidakpastian
penyediaan
dan
permintaan. Stock pengaman pada umumnya dipakai selama waktu kedatangan barang yang telah dipesan sehingga tidak terjadi kekurangan barang 3. Anticipation Stock ( Stabilization Stock ) merupakan persediaan yang diadakan sehubungan dengan permintaan yang bersifat musiman, tidak menentu atau kurangnya kapasitas produksi.
9 4. Pipeline stock ( work in process ) merupakan persediaan yang ada dalam perjalanan yang membutuhkan waktu dari penerimaan barang pada saat masuk, pengiriman bahan dalam proses produksi, pengiriman barang sampai ke outputnya. Secara external pipeline stock dapat digambarkan persediaan dalam perjalanan di truk, kapal atau alat angkut lainnya. Sedangkan secara internal, merupakan proses menuggu diproses dan dipindahkan 5. Decoupling
stock,
merupakan
persediaan
yang
memungkinkan
perusahaan dapat memenuhi permintaan pelanggan tanpa tergantung pada supplier 6. Physics stock, merupakan persediaan barang yang diadakan dalam bentuk pajangan untuk mendorong pembelian dan stock ini bersifat sebagai seorang sales yang berdiam diri
2.4 Model persediaan Berdasarkan sifat permintaan, maka model permintaan dapat diklasifikasikan sebagai berikut : 1. Model persediaan statis deterministik, yaitu model persediaan yang komponen permintaannya bersifat deterministik ( jumlah permintaan pada horizon waktu pengamatan diketahui ) dan independen terhadap waktu. 2. Model persediaan dinamis deterministik, yaitu model persediaan yang komponen permintaannya bersifat deterministik tetapi dependen terhadap waktu.
10 3. Model persediaan statis probabilistik, yaitu model persediaan yang komponen permintaannya merupakan variable acak dengan suatu distribusi tetapi independen terhadap waktu. 4. Model persediaan dinamis probabilistik, yaitu model persediaan yang komponen permintaannya merupakan variabel acak dengan suatu distribusi dan dependen terhadap waktu. Pada praktek dalam dunia nyata model persediaan yang bersifat statis derministik sangat sulit untuk di implementasikan. Karena tingkat permintaan selalu pasti selalu tidak tepat. Dan bila tingkat permintaan di ketahui secara pasti maka peramalan yang dilakukan pasti akan 100 % benar.
2.5
Biaya persediaan Biaya adalah hal yang krusisal dalam manajemen keputusan persediaan pada
semua level meskipun memang masih ada hal – hal lain yang juga sering menjadi kriteria pengambilan keputusan dalam permasalahan persediaan. Menurut Siagian (1987, p17) biaya persediaan dibagi menjadi empat kategori. kategori itu adalah: 1. Biaya pembelian ( ordering cost ) adalah biaya yang dikeluarkan berkenaan dengan pembelian bahan baku. Biaya yang terjadi dapat sepertik biaya untuk mempersiapkan pembelian, biaya pemilihan vendor, biaya penulisan pesanan, biaya untuk menghitung kuantitas pemesanan, biaya untuk perawatan sistem komputerisasi yang digunakan, dan biaya – biaya lainya yang berhubungan dengan biaya pemesanan 2. Biaya Pemesanan, biaya ini berhubungan dengan biaya yang diperlukan untuk membuat produk yang berbeda – beda. Produk yang berbeda –
11 beda membutuhkan meterial yang berbeda, setup dan penggunaan peralatan yang berbeda. 3. Biaya penyimpanan ( Holding cost ), biaya yang termasuk dalam kategori ini adalah biaya untuk fasilitas penyimpanan, penangan meterial, asuransi, pencurian, kerusakan, keusangan, deprisiasi, pajak, biaya modal ( opportunity cost of capital yaitu alternatif pendapatan atas dana yang di investasikan dalam persediaan ) 4. Biaya kehabisan / kekurangan bahan ( shortage cost ), dari semua biaya – biaya yang berhubungan dengan tingkat persediaan, biaya kekurangan bahan adalah yang paling sulit untuk diperkirakan. Biaya ini timbul bilamana persediaan tidak mencukupi adanya permintaan bahan. Biaya – biaya yang termasuk ketegori biaya ini adalah kehilangan penjualan, kehilangan langganan, biaya ekspedisi, selisih harga, terganggunya operasi, tambahan pengeluaran kegiatan manajerial dan sebagainya Dari biaya – biaya diatas bisa didapatkan total biaya dimana ditunjukan pada gambar 2.1 dibawah ini
12
Biaya total Biaya Biaya minimum
Carrying cost
Order Cost Shortage Cost
0
Qopt
Q
Gambar 2.1. Grafik total biaya Sumber:Bernard W Taylor III, Introduction to management Science (2002,p711)
2.6 Persediaan multi – item Banyak perusahaan melakukan pemesanan terhadap beberapa item secara bersamaan, tidak secara individual. Hal ini disebabkan pada kondisi tertentu pemesanan yang dilakukan secara bersama – sama akan memberi banyak keuntungan. Seperti pemesanan cukup dilakukan sekali dalam suatu periode waktu tertentu untuk semua barang yang dibutuhkan. Dengan mengoptimalkan periode waktu pemesanan tersebut maka akan didapatkan frekuensi pemesanan sedikit mungkin sehingga diperoleh biaya total pemesanan serendah mungkin. Dengan periode pemesanan yang optimal seperti itu, pemesanan menjadi tidak bertele-tele sehingga proses penanganan, pemeriksaan, dokumentasi, administrasi menjadi lebih sederhana dan menghemat sumber daya. Juga, dengan melakukan pemesanan secara bersama – sama ada kemungkinan untuk
13 menghemat biaya pengiriman, karena sesuatu yang umum bahwa akan lebih murah untuk mengirim satu lot besar dari pada beberapa lot kecil. Pada permasalahan persediaan multi item, hal yang harus diputuskan adalah kapan pemesanan dilakukan, barang – barang apa saja yang dilibatkan di dalam pemesanan tersebut, dan dengan jumlah berapa barang – barang tersebut dipesan. Konsep prinsip dasar di belakang keputusan tersebut adalah apakah biaya marjinal untuk memasukan suatu barang pada suatu pemesanan lebih kecil dari biaya marjinal jika barang tersebut dipesan belakangan secara individual. Persediaan multi item membutuhkan keputusan yang fokus pada : 1. Nilai agregat pemesanan 2. Jumlah pemesanan untuk tiap item 3. Interval pemesanan untuk masing – masing barang dalam setiap kelompok 4. Waktu pemesanan barang ( order release ) Ada 2 jenis permasalahan pemesanan multi item yaitu, permasalahan ( P ) yaitu permasalahan ( P ) yang mengalami penyesuaian pada faktor koreksi ∆(k) dan permasalahan ( Pc ) yaitu permasalahan persediaan multi item dimana kriteria keputusannya adalah total ongkos rata – rata yang minimal. Total ongkos rata – rata itu sendiri merupakan penjumlahan rata – rata ongkos individu dengan rata – rata ongkos mayor. Asumsi – asumsi yang digunakan pada kedua permasalahan tersebut adalah sebagai berikut : 1. Permintaan untuk setiap item diketahui dan konstan 2. Tidak ada shortage. 3. Tingkat pemesanan item tidak terbatas ( infinite )
14 4. Adanya horizon yang tidak waktu yang terbatas. Variabel – variabel yang dilibatkan dalam pengembalian keputusan pada kedua masalah persediaan multi item tersebut dinotasikan sebagai berikut : S
: Biaya pemesanan Mayor,
si
: Biaya pemesanan minor item i,
n
: Banyaknya barang,
Di
: Permintaan untuk barang i tiap satu satuan waktu,
hi
: Biaya simpan per unit barang per satuan waktu,
T
: Siklus waktu dasar,
ki
: Frekuensi pemesanan untuk barang i.
V(FP) : Biaya rata – rata pemesanan kembali. T(R)
: waktu rata – rata pemesanan kembali.
2.6.1 Permasalahan ( Pc ) Menurut R.E Wildeman, J. B. G Frenk dan R. Dekker dalam jurnalnya yang berjudul An Efficient Optimal Solution Method for the Joint Replenishment Problem (1996, p434), permasalahan Pc adalah salah satu bentuk permasalahan persediaan multi item dimana kriteria keputusannya adalah total ongkos rata – rata yang minimal. Total ongkos rata – rata itu sendiri merupakan penjumlahan rata – rata ongkos individu dengan rata – rata ongkos mayor. Rata – rata ongkos individu terdiri dari rata – rata ongkos pesan minor barang i dan rata – rata ongkos simpan barang i. Ongkos pesan minor didefinisikan sebagai ongkos yang dikenakan untuk setiap item yang dilibatkan dalam suatu pemesanan. Jika diketahui bahwa si menotasikan ongkos pesan minor, Di menotasikan permintaan terhadap item i tiap satu satuan waktu, hi menotasikan ongkos
15 simpan i tiap satuan waktu, ki monotasikan frekuensi pemesanan item i, dan T menotasikan siklus waktu dasar dan фi( kiT ) merupakan notasi biaya rata – rata individual barang i pada pemesanan yang dilakukan setiap ki.T ( merupakan siklus pemesanan item i ) satuan waktu maka diperoleh persamaan sebagai berikut : si hi Di + k iT k iT 2
ф i( k iT ) =
(1)
Permasalahan Pc mencoba memperhitungkan apa yang disebut sebagai empty replenishment yang dideskripsikan sebagai suatu keadaan dimana dalam waktu – waktu tertentu sama sekali tidak terjadi pemesanan. Hal ini terjadi jika frekuensi terkecil ki lebih besar dari 1. Sebagai contoh, jika ada 2 barang, dimana k1 = 2 dan k2 = 3, pemesanan akan terjadi pada 2T, 4T, 6T, 9T, dan seterusnya, sedangkan pada T,5T,7T dan seterusnya tidak terjadi pemesanan. Akibatnya persamaan (1) menjadi tidak akurat. Oleh karenanya perlu dilakukan penyesuaian terhadap formulasi biaya rata individual фi(kiT)). Faktor penyesuaian ini dinotasikan dengan ∆(k) dan dirumuskan oleh J. S Dagpunar dalam jurnalnya yang berjudul Formulation of a Multi Item Single Supplier Inventory Problem (1982, p285 - 286) sebagai berikut : n
Δ(k ) = ∑ (−1) i +1 i =1
(kα ,..., kα ) ∑ lcm α
{α :α ⊂{1,..., n},| | =i}
1
i
−1
(2)
Dimana lcm(kα1, ..., kαi) menyatakan kelipatan persekutuan terkecil dari bilangan bulat kα1, ..., kαi. Sehingga, permasalahan pemesanan multi item dengan suatu faktor koreksi ( permasalahan Pc ) dirumuskan oleh :
(Pc ) inf ⎧⎨ SΔk + ∑ Φ i (kiT ) : ki ∈ N , T > 0⎫⎬ n
⎩ T
i =1
⎭
16
2.6.2 Permasalahan ( P )
Permasalahan ( Pc ) merupakan permasalahan ( P ) yang mengalami penyesuaian pada faktor koreksi ∆(k). S. K Goyal dalam jurnalnya yang berjudul A Note On Formulation of the Multi-item Single Supplier Inventory Problem (1982, p 287 - 288) mengkritisi formulasi ∆(k) yang dinyatakan oleh J.S Dagpunar (1982) dan mengajukan pengesetan faktor koreksi sama dengan 1. Sehingga permasalahan pemesanan multi item tanpa faktor kereksi ( permasalahan ( P )) sehingga dirumuskan sebagai berikut :
(P )inf ⎧⎨ S + ∑ Φ i (k i T ) : k i ∈ N , T > 0⎫⎬ n
⎩T
i =1
⎭
2.6.3 Analisis Permasalahan (P)
Menurut R.E Wildeman, J. B. G Frenk dan R. Dekker dalam jurnalnya yang berjudul An Efficient Optimal Solution Method for the Joint Replenishment Problem (1996, p435), permasalahan (P) dapat dituliskan sebagai berikut
inf T >0
n ⎧S ⎫ ⎨ + ∑ inf {Φ i (k i T ) : k i ∈ N }⎬ ⎩ T i =1 ⎭
(3)
Dan jika fungsi gi(.) adalah sebagai berikut g i (t ) := inf {Φ i (k i t ) : k i ∈ N }
(4)
Maka permasalahan (P) dapat dituliskan sebagai berikut n ⎧S ⎫ ( P) inf ⎨ + ∑ g i (T )⎬ ⎩T i =1 ⎭
Nilai obyektif optimal permasalahan (P) dinyatakan dengan v(P) dan nilai optimal T dinyatakan dengan T(P).
17 Fungsi t → Φ i (kt ) pada (0, ∞ ) untuk setiap i ∈ {1,..., n} dan k ∈ N memiliki karakteristik berikut : 1. t → Φ i (kt ) berbentuk konvex 2. t → Φ i (kt ) memiliki nilai minimum untuk t =
xi
*
*
k
yang mana xi itu
sendiri adalah : *
xi =
2si hi Di
(5)
⎛ x* 3. t → Φ i (kt ) merupakan fungsi menurun pada ⎜⎜ 0, i k ⎝
(
*
⎞ ⎟⎟ dan fungsi ⎠
)
menaik pada xi k , ∞ . Dari gambar 2.2, dapat dengan mudah ditunjukan bahwa titik perpotongan fungsi Φ i (kt ) dengan Φ i ((k + 1)t ) diberikan oleh (2s i hi Di k (k + 1)) 2 . Untuk k= 0,1,..., dan 1
Ti
(k )
didefenisikan sebagai T dimana k bernilai = k, nilai Ti
Ti
(k )
⎧ 2si ⎪ = ⎨ h i D i k (k + 1) ⎪ ⎩∞
(k )
diberikan oleh
Jika k = 1, 2,... Jika k = 0
(6)
18
Gambar 2.2 : Fungsi g i (.) dengan nilai k yang berbeda – beda Sumber:http://www.sciencedirect.com/ Oleh karenanya tiap k ∈ N akan berada pada suatu interval I i
(k )
:= [T i
(k )
, Ti
( k −1)
).
*
Jelas sekali dari nomor 4 dan 5 bahwa setiap k ∈ N , nilai xi k berada di dalam interval Ii
(k )
sehingga dapat dibuktikan bahwa solusi optimal inf {Φ i (k i , t ) : k i ∈ N } oleh k terjadi
bila t berada dalam interval I i
(k )
. Dengan ini dapat di turunkan suatu formula yang akan
ditampilkan pada lemma dibawah ini untuk mendapatkan solusi optimal k i (t ) sebagai fungsi t. Lemma 1,
Nilai optimal k i (t ) ∈ N untuk t > 0 diberikan oleh persamaan berikut
⎡ 1 1 8 si ⎤ k i (t ) = ⎢− + 1+ ⎥ hi Di t 2 ⎦ ⎣ 2 2
(7)
19 Bukti : Seperti yang dapat diamati, untuk t > 0, suatu nilai optimal k ∈ N adalah untuk Ti
(k )
≤ t ≤ Ti
( k −1)
. Oleh karenanya, secara ekivalen dengan menggunakan (6), nilai k
harus memenuhi : 2 si ≤t hi Di k (k + 1)
(8)
2si hi Di (k − 1)k
(9)
Dan t<
Pertidaksamaan (8) ekivalen dengan k2 + k −
2si ≥0 hi Di t 2
Dan oleh karena k harus positif, dengan menggunakan rumus akar pada persamaan kuadrat dapat diperoleh 8si 1 1 k≥− + 1+ 2 2 hi Di t 2
( 10 )
Dengan cara yang sama, dari (9) diperoleh bahwa 8s i 1 1 0
( 11 )
Dan dengan mengkombinasikan (10) dan (11) dapat dinyatakan −
8s i 8s i 1 1 1 1 1+ 1+ + ≤k< + 2 2 2 2 2 hi Di t hi Di t 2
( 12 )
Oleh karena akar kuadrat di kedua pertidaksamaan ini adalah sama, maka kedua ekspresi akan tepat berselisih 1 antara yang satu dengan yang lain. Ini menandakan
20 bahwa terdapat suatu nilai integer di antara mereka atau justru keduanya yang bernilai integer. Pada kedua kasus tersebut, dengan mengambil bilangan hasil pembulatan ke atas dari ekspresi disebelah kiri, akan memberikan nilai k integer yang memuaskan. Oleh karenanya untuk nilai t yang diberikan, nilai k i (t ) optimal yang bersesuaian diberikan oleh (7), dan terbuktilah lemma 1. Oleh lemma 1, selanjutnya fungsi g i (⋅) yang didefinisikan di (4) diberikan oleh g i (t ) := Φ i (k i (t )t )
( 13 )
Konsekuensinya permasalahan optimasi (P) tereduksi menjadi n ⎧S ⎫ inf ⎨ + ∑ Φ i (k i (T )T )⎬ T ≥0 T i =t ⎩ ⎭
Pada beberapa nilai T, tidak terjadi empty replenishments, pada kasus dimana faktor koreksi sama dengan 1. Pada lemma berikutnya akan ditunjukan bahwa fungsi 1 ⎧ ⎫ 2 ⎛ ⎞ ( ) + S s ⎪ ⎪ i ⎟⎟ ⎬ yang berarti untuk obyektif (P) dan (Pc) adalah sama jika nilai T ≥ min i ⎨⎜⎜ ⎪⎝ hi Di ⎠ ⎪ ⎩ ⎭
nilai T tersebut Δ (k (T )) = 1 .
Lemma 2, 1 ⎧ ⎫ ⎪⎛ (S + s i ) ⎞ 2 ⎪ ⎟⎟ ⎬ maka fungsi obyektif dari (Pc) dan (P) adalah sama, yaitu Bila T ≥ min i ⎨⎜⎜ ⎪⎝ hi Di ⎠ ⎪ ⎩ ⎭ n ⎧S ⎫ ⎧ SΔk n ⎫ inf ⎨ + ∑ Φ i (k i T ) : k i ∈ N ⎬ = inf ⎨ + ∑ Φ i (k i T ) : k i T ∈ N ⎬ i =1 ⎩T i =1 ⎭ ⎩ T ⎭
21 Bukti : Katakanlah hp c (⋅) dan hp(.) secara berturut – turu adalah fungsi objektif
permasalahan (Pc) dan (P).Yaitu, ⎧ SΔk n ⎫ + ∑ Φ i (k i T ) : k i ∈ N ⎬ , hp c (T ) = inf ⎨ i =1 ⎩ T ⎭ Dan n ⎧S ⎫ hp(⋅) = inf ⎨ + ∑ Φ i (k i T ) : k i ∈ N ⎬ ⎩T i =1 ⎭ n ⎧ ⎫ S Selanjutnya didefenisikan fungsi h(T ) = inf ⎨ + ∑ Φ i (k i T ) : k i ∈ N ⎬ ⎩ min i k i T i =1 ⎭
Oleh karena (min i k i T ) ≤ Δ(k ) ≤ 1 , maka adalah benar bahwa −1
h(T ) ≤ hp c (T ) ≤ hp(T )
(14) 1
⎛ (S + s i ) ⎞ 2 ⎟⎟ adalah minimal, yaitu Sekarang katakan i * menyatakan nilai i dimana ⎜⎜ h D ⎝ i i ⎠ 1 ⎧ ⎫ 2 ⎛ ⎞ ( ) + S s ⎪ ⎪ * i ⎟⎟ ⎬ , amati bahwa i := arg min i ⎨⎜⎜ ⎪⎝ hi Di ⎠ ⎪ ⎩ ⎭
n ⎧⎪ S ⎫⎪ + ∑ Φ i (k i T ) : k i ∈ N ⎬ h(T ) ≥ inf ⎨ ⎪⎩ k i* T i =1 ⎪⎭
n n ⎧⎪ S ⎫⎪ = inf ⎨ + ∑ Φ i * (k i * T ) : k i * ∈ N ⎬ + ∑ inf {Φ i (k i T ) : k i ∈ N } ⎪⎩ k i * T i =1 ⎪⎭ i =1,i = i *
22 1
⎧⎪ (S + si* )⎫⎪ 2 Oleh karena menurut lemma 1 bahwa untuk T ≥ min ⎨ ⎬ nilai optimal ⎪⎩ hi* Di* ⎪⎭
k i* (T ) sama dengan 1, sehingga dapat diperoleh bahwa n n S h(T ) ≥ + ∑ Φ i* (T ) + ∑ inf {Φ i (k i T ) : k i ∈ N } ≥ hp(T ) T i =1 i =1,i ≠ i * 1
⎧⎪ (S + si* )⎫⎪ 2 Untuk setiap T ≥ min i ⎨ ⎬ . Dengan mengabungkan dengan persamaan 14 ⎪⎩ hi* Di* ⎪⎭ 1
diperoleh bahwa h(T ) = hp c (T ) = hp(T )
⎧⎪ (S + si* )⎫⎪ 2 untuk T ≥ min i ⎨ ⎬ , dan terbuktilah ⎪⎩ hi* Di* ⎪⎭
lemma 2.
2.6.4 Penyelesaian Permasalahan (P)
Menurut R.E Wildeman, J. B. G Frenk dan R. Dekker dalam jurnalnya yang berjudul An Efficient Optimal Solution Method for the Joint Replenishment Problem (1996, p438). Relaksasi Permasalahan (P) dengan merelaksasi konstrain k i ∈ N menjadi k i ≥ 1 didapatkan relaksasi (R) dari masalah (P) dan dituliskan sebagai berikut n ⎧S (R )inf ⎨ + ∑ Φ i (k iT ) : k i ≥ 1, T > 0⎫⎬ ⎩T i =1 ⎭
Nilai objektif optimal (R) dinyatakan dengan v(R ) dan T optimal dinyatakan dengan T (R ) . Oleh karena (R ) merupakan relaksasi (P ) maka v(P ) ≥ v(R ) . Hal ini dapat dijelaskan sebagai berikut:
23 Dengan konstrain k i ∈ N pada (P ) maka nilai k pada (P ) harus merupakan bilangan integer, sehingga nilai k tersebut akan mengalami pembulatan yang
(R )
menyebabkannya tidak selalu optimal. Sedangkan pada
konstrain tersebut
direlaksasi menjadi k i ≥ 1 , sehingga memungkinkan nilai k bergerak ke titik optimal. Oleh karena fungsi k → Φ i (kt ) memiliki karakteristik yang sama dengan fungsi t → Φ i (kt ) (seperti yang disebutkan diatas), maka nilai k optimal juga dapat dicari dengan cara yang sama dengan t optimal sehingga didapatkan persamaan berikut : jika T ≤ xi
⎧ xi * ⎪ k=⎨T ⎪1 ⎩
*
(7.1)
jika T > xi *
Untuk memudahkan analisis (R) untuk mendapatkan solusi optimal T(R) pada (R), terlebih dahulu (R) disederhanakan menjadi : n ⎧S ⎫ (R ) inf ⎨ + ∑ g i (T )⎬ T >0 T i =1 ⎩ ⎭
Dimana g i
(R )
(t ) = inf {Φ i (k i t ) : k i
Oleh karena turunan g i gi
(R )
(⋅)
(R )
≥ 1} .
(⋅) non-negatif, kontinu dan menaik pada (0, ∞ ) , maka
adalah konvex, menaik, dan dapat diturunkan secara kontinu pada (0, ∞ ) . Dan
oleh karena konvex dan dapat diturunkan secara kontinu pada fungsi t → S t pada n
(0, ∞ ) , maka fungsi objektif h(⋅) dari (R), dimana h(t ) = S + ∑ g i (R ) (T ) , adalah konvex t
dan dapat diturunkan secara kontinu pada
(0, ∞ ) .
i =1
Karena lim t ↑∞ h(t ) = ∞ dan
lim i↓0 h(t ) = ∞ , maka dapat disimpulkan ada suatu solusi optimal unik T (R ) ∈ (0, ∞ ) dan nilai ini adalah soulusi unik dari persamaan h , (t ) := dh(t ) dt = 0 .
24 Untuk
T (R )
menurunkan
secara
analitik,
dengan
mengasumsikan
xi ≤ x 2 ≤ ... ≤ x n , maka turunan h ' (⋅) dari fungsi h(⋅) diberikan oleh *
*
*
⎧ S ⎪− 2 ⎪ t l ⎪ ⎪ l h D S + ∑ si ⎪ l =1 h' (t ) = ⎨∑ i i − t2 ⎪ i −1 2 n ⎪ + S si ⎪n ∑ h D i i i = 1 ⎪ − ⎪⎩∑ 2 t2 i =1
jika t ≤ xi
*
{
( ) } *
*
jika xl ≤ t ≤ xl +1 ,1 ≤ l ≤ n − 1
jika t ≥ x n
Dari persamaan di atas diperoleh bahwa
i * := max 1 ≤ i ≤ n : h' x1 < 0
*
(15)
*
( )
( )
*
h' x1 = − S xi
* 2
<0
dan maka
ada. Jika i * ≥ n maka didapatkan nilai T (R ) yang
optimal untuk permasalahan (P).
Lemma 3, *
*
*
{
( ) } *
Dengan asusmsi bahwa x1 ≤ x 2 ≤ ... ≤ x n , jika i * := max 1 ≤ i ≤ n : h' xi < 0 , maka solusi optimal T (R ) diberikan oleh i ⎛ ⎞ 2⎜⎜ S + ∑ si ⎟⎟ i =1 ⎝ ⎠ *
T (R ) =
(16)
i*
∑h D i =1
i
i
Lemma 4 v(P ) ≥ v(Pc ) ≥ v(R ) Bukti : Oleh karena untuk setiap vektor k = (k1 ,..., k n ) ∈ N n mempunyai Δ(k ) ≤ 1 ,
pertidaksamaan yang pertama
(v(P ) ≥ v(Pc ))
secara otomatis terbukti. Untuk
25 membuktikan pertidaksamaan yang kedua, amati bahwa untuk setiap ∈> 0 , ada sebuah vektor (T∈ , k1 (T∈ ),..., k n (T∈ )) yang memenuhi v(Pc ) ≥
=
SΔ(k (T∈ )) n + ∑ Φ i (k i (T∈ )T∈ )− ∈ T∈ i =1
⎛ (k (T )Δ(k (T∈ ))T∈ ) ⎞ SΔ(k (T∈ )) n ⎟⎟− ∈ + ∑ Φ i ⎜⎜ i ∈ Δ(k (T∈ )) T∈ i =1 ⎝ ⎠
Menggunakan Δ(k (T∈ )) ≥ (min i {k i (T∈ )}) , diperoleh bahwa k i (T∈ )Δ(k (T ∈)) ≥ 1 , −1
untuk setiap i, dan konsekuensinya v(Pc ) ≥
⎧ ⎛ k i T∈ ⎞ ⎫ SΔ(k (T∈ )) n ⎟⎟ : k i ≥ 1⎬− ∈ + ∑ inf ⎨Φ i ⎜⎜ T∈ i =1 ⎩ ⎝ Δ(k (T∈ )) ⎠ ⎭
n ⎧S ⎫ ≥ inf ⎨ + ∑ inf {Φ i (k i T ) : k i ≥ 1}⎬− ∈ T >0 T i =1 ⎩ ⎭
= v(R )− ∈
Oleh karena ∈> 0 , berarti pertidaksamaan kedua dapat dibuktikan.
Lemma 5,
Jika untuk nilai optimal T (R ) dari permasalahan (R ) diperoleh T (R ) ≥ x n , maka *
(T (R ),1,...,1) adalah solusi optimal untuk (P) dan (Pc) Bukti : Oleh karena T (R ) ≥ x n
*
adalah solusi optimal dari permasalahan (R) dan
menurut (15) bahwa skalar k i , i = 1,..., n yang bersesuaian bernilai sama dengan 1 sehingga (T (R ),1,...,1) adalah juga solusi feasible untuk permasalahan (Pc) dan (P). Oleh karena telah diperoleh bahwa v(R ) = v(Pc ) = v(P ) , menunjukan bahwa (T (R ),1,...,1) adalah juga sebuah solusi optimal untuk (Pc) dan (P).
26
2.6.5 Solusi yang mungkin untuk Permasalahan (P) dan (Pc)
Seperti dinyatakan diatas, untuk T (R ) < n , maka T (R ) tersebut bisa jadi tidak optimal untuk permasalahan (P) dan (Pc). Oleh karena nilai k i optimal untuk T(R) tidak selalu integer, oleh karenanya k i optimal pada (R) tidak dapat diterapkan pada permasalahan (P) dan (Pc). Akan tetapi nilai k i (T (R )), i = 1,..., n yang didapatkan dengan persamaan (7) merupakan solusi yang feasible untuk (P) dan (Pc). Jika nilai fungsi obyektif (P) yang dievaluasi menurut solusi feasible tersebut dinyatakan dengan v(FP ) , maka kita memperoleh v( FP) =
n S + ∑ g i (T (R )) ≥ v(P ) ≥ v(Pc ) ≥ v(R ) T (R ) i =1
(17)
Jika v(FP ) cukup dekat dengan v(R ) maka kita sudah menemukan solusi feasible yang cukup baik untuk (P) dan (Pc). Jika ternyata tidak cukup dekat, maka akan diterapkan prosedur optimasi global pada (P).
2.6.6 Lipschitz Optimisation
Menurut R.E Wildeman, J. B. G Frenk dan R. Dekker dalam jurnalnya yang berjudul An Efficient Optimal Solution Method for the Joint Replenishment Problem (1996, p440) menyatakan Lipschitz optimisation adalah metode optimisasi global yang akan digunakan untuk permasalahan (P) dan akan efektif jika (P) adalah fungsi obyektif yang Lipschitz. Suatu fungsi univariat dikatakan Lipschitz pada interval [x1 , x 2 ] dengan konstanta Lipschitz L, jika semua x, y ∈ [x 2 , x1 ] memenuhi f ( x 2 ) − f ( x1 ) ≤ L x 2 − x1 .
27 Secara umum cara kerja metode ini adalah dengan melakukan iterasi pada variabel T, dari T sama dengan T1 sampai dengan Tu dengan besar setiap penambahan sama dengan 2ε L . Dengan proses iterasi tersebut, nilai fungsi obyektif yang didapatkan tidak akan berbeda lebih dari ε terhadap nilai global minimum pada [a, b] . Adapun konstanta Lipschitz diberikan oleh n
L = Lo + ∑ Li
(18)
i =1
Untuk fungsi yang dapat diturunkan, konstanta Lipschitz pada sutau interval diberikan oleh nilai turunan absolut maksimum pada interval tersebu. Oleh karena turunan S T adalah − S T 2 dan untuk interval [Tl , Tu ] nilai maksimal − S T 2 diberikan pada Tl , kita memperoleh Lo =
S Tl
(19)
2
Dengan prinsip yang sama diperoleh fungsi Li yang didapatkan dari nilai turunan absolut maksimum fungsi g i (.) yaitu Li =
hi Di , i = 1,..., n 2
(20)
Dengan mengkombinasikan (19) dan (20) diperoleh L=
S Tl
2
+
1 n ∑ hi Di 2 l =1
(21)
2.6.7 Batas Atas dan Bawah
Menurut S.K Goyal pada jurnalnya yang berjudul Determination of Optimum Packaging Frequency of Item Jointly Replenished (1974, p436-443) menyatakan bahwa
28
[
]
nilai optimal T(P) berada dalam interval min i xi , T (P1) , dimana T(P1) adalah solusi *
optimal dari permasalahan optimasi (P1) berikut : n ⎧S ⎫ inf ⎨ + ∑ Φ i (T )⎬ T >0 T i =1 ⎩ ⎭
(P1)
Dapat diamati bahwa T(P1) adalah nilai optimal T ketika semua item dipesan secara bersamaan. Sehingga dengan mudah diketahui bahwa T(P1) diberikan oleh
T (P1) =
n ⎛ ⎞ 2⎜ S + ∑ si ⎟ i =1 ⎠ ⎝ n
∑h D i =1
i
i
Akan tetapi M. J. G. Van Eijs dalam jurnalnya yang berjudul A Note On The Joint Replenishment Problem Under Constant Demand (1993, p185 – 191), menyatakan *
bahwa batas bawah min i xi tidaklah tepat untuk T(P) yang optimal. Berikut ini akan ditunjukan bahwa memecahkan (R) akan sekaligus mendapatkan batas bawah dan batas atas untuk T(P). Batas atas yang diperoleh seringkali lebih baik dari T(P1). Jika v(FP ) adalah nilai fungsi objektif (P) pada T(R), maka batas atas dan batas bawah T(P) diberikan oleh nilai T dimana fungsi objektif (R) sama dengan v(FP ) . Hal ini dipertegas oleh lemma berikut :
Lemma 6,
Jika Tlow adalah nilai terkecil dan Tup adalah nilai terbesar T dimana fungsi objektif (R) dengan v(FP ) maka Tlow ≤ T (P ) ≤ Tup .
29 Bukti : Karena fungsi objektif (R) konvex, dengan jelas didapatkan bahwa
Tlow ≤ T (P ) ≤ Tup . Konsekuensinya untuk nilai T < Tlow fungsi objektif (R) lebih besar
dari v(FP ) . Karena (R) adalah relaksasi dari (P), fungsi objektif (P) juga lebih besar dari v(FP ) untuk nilai T < Tlow , dengan begitu Tlow adalah batas bawah T(P). Dengan cara
yang sama juga dibuktikan bahwa T < Tup dengan begitu Tup adalah batas atas T(P). Perhatikan bahwa batas bawah Tlow dapat ditemukan dengan membagi dua interval
(0, T (R )) .
Dengan tetap memperhatikan batas atas Tup , dengan mudah dapat dicek
apakah Tup lebih baik dari T(P1). Pengecekan dapat dilakukan dengan mengevaluasi fungsi objektif (R) pada T(P1) apakah nilainya lebih kecil atau sama dengan v(FP ) . Jika benar berarti T(P1) setidaknya sama baiknya dengan Tup . Jika tidak berarti Tup lebih baik. Tup dengan mudah ditemukan dengan pembagian dua pada interval [T (R ), T (P1)] . Biarkan
Tl = Tlow
dan
Tu = min{Tup , T (P1)},
kemudian
kita
mempunyai
T (P ) ∈ [Tl , Tu ] . Hal ini cukup menerapkan teknik optimisasi global pada interval [Tl , Tu ]
untuk mendapatkan nilai T(P). Dari penjelasan diatas disimpulkan bahwa : Batas bawah T diberikan oleh Tl = Tlow =
1 (T (R )) 2
(22)
30 Batas atas T diberikan oleh Tu = min{Tup , T (P1)} ⎫ ⎧⎛ T (P1) − T (R ) ⎞ = min ⎨⎜⎜ min (T (P1), T (R )) + ⎟⎟, T (P1)⎬ 2 ⎠ ⎭ ⎩⎝
2.7
(23)
Dasar Perancangan Perangkat Lunak
Menurut Pressman (2001, p6): perangkat lunak adalah 1. Perintah (program komputer) yang bila dieksekusi akan memberikan fungsi dan unjuk kerja seperti yang diinginkan. 2. Struktur data yang memungkinkan program memanipulasi informasi secara proposional 3. Dokumen yang menggambarkan operasi dan kegunaan program. Salah satu cara perancangan perangkat lunak adalah dengan menggunakan model air terjun (waterfall model) menurut Sommerville (1996,p9). Tahap-tahap utama dalam model air terjun dapat digambarkan dalam aktivitas dasar pengembangan seperti berikut ini. 1. Analisis dan penentuan kebutuhan Tugas, kendala dan tujuan sistem ditentukan melalui konsultasi dengan pengguna sistem, kemudian ditentukan cara yang dapat dipahami baik oleh pengguna maupun staf pengembang.
31 2. Desain sistem dan perangkat lunak Proses desain sistem terbagi dalam kebutuhan perangkat keras dan perangkat lunak. Hal ini menentukan arsitektur perangkat lunak secara keseluruhan. Desain perangkat lunak mewakili fungsi sistem perangkat lunak dalam suatu bentuk yang dapat ditranformasikan ke dalam satu atau lebih program yang dapat dieksekusi.
3. Implementasi dan pengujian unit Dalam tahap ini, desain perangkat lunak direalisasikan dalam suatu himpunan program atau unit-unit program pengujian, mencakup kegiatan verifikasi terhadap setiap unit sehingga memenuhi syarat spesifikasinya.
4. Integrasi dan Pengujian Sistem Unit program secara individual diintegrasikan dan diuji sebagai satu sistem yang lengkap untuk memastikan bahwa kebutuhan perangkat lunak telah terpenuhi. Setelah pengujian, sistem perangkat lunak disampaikan kepada pengguna.
5. Pengoperasian dan pemeliharaan Secara normal, walaupun tidak perlu, tahap ini merupakan fase siklus hidup yang terpanjang. Sistem telah terpasang dan sedang dalam penggunaan. Pemeliharaan mencakup perbaikan kesalahan yang tidak ditemukan dalam tahap-tahap ini sebelumnya, meningkatkan implementasi unit-unit sistem dan mempertinggi pelayanan sistem sebagai kebutuhan baru yang ditemukan.
32
Gambar 2.3. Perancangan Perangkat Lunak Model Air Terjun Sumber: Sommer Ville (1996,p9)
2.8 Sistem Basis Data
Dalam pengertian umum database diartikan gabungan dari elemen – elemen data yang berhubungan dan terorganisir. Database dibagi
dalam berberapa
kategori umum yaitu : 1. Paper based, merupakan database paling sederhana yang disimpan dalam bentuk kumpulan kertas dokumen yang terorganisasi 2. Legacy Mainframe, biasa dikenal dengan database VSAM ( Virtual
Storage
Access
Method
).
Legacy
Mainframe
menggunakan kapasitas mainframe untuk melakukan proses penyimpanan dan pengaksesan data
33 3. Dbase, mengandung ISAM ( Index Sequential Access Method ) yang merupakan metode pengaksesan data secara berurutan yang memiliki index. Pada umumnya menggunakan file terpisah untuk setiap tabelnya. 4. RDBMS ( Relational Database Management System ) merupakan sistem database untuk jumlah user yang besar dengan integritas data yang lebih baik. RDMS memiliki kemampuan untuk menjaga integritas data. Struktur perintahnya disebut dengan SQL ( Structured Language Query ).
5. Object oriented Database, menggunakan sistem objek dalam penyimpanan data. Data disimpan bukan dalam bentuk tabel melainkan dalam bentuk objek – objek yang terpisah.
2.9
Diagram Alir ( Flowchart )
Diagram alir adalah sebuah skema yang merepresentasikan sebuah algoritma atau sebuah proses (http://en.wikipedia.org/wiki/Flowchart). Adapun simbol-simbol dari diagram alir yang digunakan dalam ilmu komputer seperti pada gambar 2.4.
34
Simbol untuk mulai dan selesai Simbol untuk menentukan aliran data yang dilakukan Simbol untuk langkah proses
Simbol untuk input ataupun output
Simbol untuk merepresentasikan sebuah kondisi atau keputusan. Biasanya berisi pertanyaan ya/tidak atau test benar/salah Gambar 2.4 Simbol-simbol Diagram Alir (http://en.wikipedia.org/wiki/Flowchart)
2.10
State Transition Diagram (STD)
State Transition Diagram mengindikasikan bagaimana sistem berjalan. STD
merepresentasikan berbagai mode dari reaksi sistem dan darimana transisi dilakukan dari satu state ke state lain (Pressman, 2001, p429-430). State Transition Diagram merepresentasikan reaksi dari sebuah sistem dengan
menggambarkan states tersebut dan event yang menyebabkan sistem merubah state.
35 Komponen-komponen utama dalam STD adalah :
State
State Transition
Gambar 2.5 Komponen State Transition Diagram (Booch, 1994, p199-201) 1. State dari sebuah objek merepresentasikan hasil dari tindakan yang dilakukan. Setiap state membutuhkan sebuah nama dan harus unik. State berkerjasama dengan sistem secara keseluruhan. Semua state yang mempunyai nama yang sama akan dianggap menunjuk state yang sama (Booch, 1994, p200). 2. State Transition adalah sebuah tindakan yang memungkinkan state dalam sebuah sistem berubah. Setiap state transition menghubungkan dua buah state. Sebuah state bisa memiliki sebuah state transition yang menunjuk
kepada dirinya sendiri, dan sudah biasa untuk memiliki berbagai state transition dari sebuah state yang sama, walaupun setiap transisi haruslah
unik. Hal ini dilakukan agar tidak ada keadaan yang akan memicu lebih dari satu state transition dari sebuah state yang sama (Booch, 1994, p201).