BAB 2 LANDASAN TEORI

dokumen-dokumen yang mirip
BAB 1 PENDAHULUAN Latar Belakang

II. LANDASAN TEORI. Pada bab ini akan diberikan beberapa istilah, definisi serta konsep-konsep yang

BAB 2 LANDASAN TEORI

I. DERET TAKHINGGA, DERET PANGKAT

BAB 2 LANDASAN TEORI Operasi Riset (Operation Research)

Mata Kuliah : Matematika Diskrit Program Studi : Teknik Informatika Minggu ke : 4

Bab 2 LANDASAN TEORI

BAB I PENDAHULUAN. A. Latar Belakang Masalah

BAB II LANDASAN TEORI. matematika secara numerik dan menggunakan alat bantu komputer, yaitu:

6. Pencacahan Lanjut. Relasi Rekurensi. Pemodelan dengan Relasi Rekurensi

REGRESI LINIER DAN KORELASI. Variabel bebas atau variabel prediktor -> variabel yang mudah didapat atau tersedia. Dapat dinyatakan

BAB III PEMBAHASAN. Pada BAB III ini akan dibahas mengenai bentuk program linear fuzzy

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN. Matematika merupakan suatu ilmu yang mempunyai obyek kajian

BAB III PROGRAMA LINIER

Pemrograman Dinamis (Dynamic Programming) Materi

BAB I KONSEP DASAR PERSAMAAN DIFERENSIAL

Pendugaan Selang: Metode Pivotal Langkah-langkahnya 1. Andaikan X1, X

PERBANDINGAN METODE HUNGARIAN DAN PENDEKATAN PROGRAM DINAMIS DALAM PEMECAHAN ASSIGNMENT PROBLEM

PERTEMUAN 13. VEKTOR dalam R 3

APLIKASI PENDEKATAN DYNAMIC PROGRAMMING PADA TRAVELING SALESMAN PROBLEM SKRIPSI WIDYA MAULINA

MATEMATIKA DISKRIT FUNGSI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Secara umum, suatu barisan dapat dinyatakan sebagai susunan terurut dari bilangan-bilangan real:

Barisan Aritmetika dan deret aritmetika

1 Persamaan rekursif linier non homogen koefisien konstan tingkat satu

BAB II LANDASAN TEORI. Dalam tugas akhir ini akan dibahas mengenai penaksiran besarnya

BAB I PENDAHULUAN. Integral adalah salah satu konsep penting dalam Matematika yang

BAB 2 LANDASAN TEORI

II. TINJAUAN PUSTAKA. Secara umum apabila a bilangan bulat dan b bilangan bulat positif, maka ada tepat = +, 0 <

BAB 1 PENDAHULUAN. Analisis regresi menjadi salah satu bagian statistika yang paling banyak aplikasinya.

Distribusi Pendekatan (Limiting Distributions)

MATHunesa (Volume 3 No 3) 2014

Fungsi. Jika f adalah fungsi dari A ke B kita menuliskan f : A B yang artinya f memetakan A ke B.

Projek. Contoh Menemukan Konsep Barisan dan Deret Geometri a. Barisan Geometri. Perhatikan barisan bilangan 2, 4, 8, 16,

BAB III METODOLOGI PENELITIAN. Variabel-variabel yang digunakan pada penelitian ini adalah:

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB 2 LANDASAN TEORI

B a b 1 I s y a r a t

ANALISIS TENTANG GRAF PERFECT

2 BARISAN BILANGAN REAL

Bab 3 Metode Interpolasi

MANAJEMEN RISIKO INVESTASI

Institut Teknologi Sepuluh Nopember Surabaya. Model Sistem dalam Persamaan Keadaan

PENENTUAN SOLUSI RELASI REKUREN DARI BILANGAN FIBONACCI DAN BILANGAN LUCAS DENGAN MENGGUNAKAN FUNGSI PEMBANGKIT

Fungsi. Jika f adalah fungsi dari A ke B kita menuliskan f : A B yang artinya f memetakan A ke B.

MAKALAH ALJABAR LINEAR SUB RUANG VEKTOR. Dosen Pengampu : Darmadi, S.Si, M.Pd

3. Rangkaian Logika Kombinasional dan Sequensial 3.1. Rangkaian Logika Kombinasional Enkoder

TINJAUAN PUSTAKA Pengertian

Balas Additive Algorithm, Algoritma Branch & Bound untuk Binary Integer Programming

Kompleksitas dari Algoritma-Algoritma untuk Menghitung Bilangan Fibonacci

Solusi Pengayaan Matematika

BAB 1 PENDAHULUAN. dimana f(x) adalah fungsi tujuan dan h(x) adalah fungsi pembatas.

Definisi Integral Tentu

BAB 2 LANDASAN TEORI

Bab 7 Penyelesaian Persamaan Differensial

II. LANDASAN TEORI. dihitung. Nilai setiap statistik sampel akan bervariasi antar sampel.

BAB II TEORI DASAR. Definisi Grup G disebut grup komutatif atau grup abel jika berlaku hukum

Penyelesaian Asymmetric Travelling Salesman Problem dengan Algoritma Hungarian dan Algoritma Cheapest Insertion Heuristic.

BAB III ECONOMIC ORDER QUANTITY MULTIITEM DENGAN MEMPERTIMBANGKAN WAKTU KADALUARSA DAN FAKTOR DISKON

Persamaan Non-Linear

1 n MODUL 5. Peubah Acak Diskret Khusus

4.7 TRANSFORMASI UNTUK MENDEKATI KENORMALAN

CATATAN KULIAH Pertemuan I: Pengenalan Matematika Ekonomi dan Bisnis

JURNAL MATEMATIKA DAN KOMPUTER Vol. 6. No. 2, 77-85, Agustus 2003, ISSN : DISTRIBUSI WAKTU BERHENTI PADA PROSES PEMBAHARUAN

BARISAN TAK HINGGA DAN DERET TAK HINGGA

Laboratorium Ilmu dan Rekayasa Komputasi Departemen Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung

APLIKASI PROGRAM DINAMIS DALAM OPTIMASI PRODUKSI PERMEN. Petra Novandi

PENGUJIAN HIPOTESIS. Atau. Pengujian hipotesis uji dua pihak:

METODE NUMERIK JURUSAN TEKNIK SIPIL FAKULTAS TEKNIK UNIVERSITAS BRAWIJAYA 7/4/2012 SUGENG2010. Copyright Dale Carnegie & Associates, Inc.

Probabilitas dan Statistika Teorema Bayes. Adam Hendra Brata

Matematika Terapan Dosen : Zaid Romegar Mair, ST., M.Cs Pertemuan 3

PENERAPAN TEOREMA TITIK TETAP UNTUK MENUNJUKKAN ADANYA PENYELESAIAN PADA SISTEM PERSAMAAN LINEAR

Kompleksitas Waktu untuk Algoritma Rekursif. ZK Abdurahman Baizal

Penerapan Metode Bagi-Dua (Bisection) pada Analisis Pulang-Pokok (Break Even)

Fungsi Kompleks. (Pertemuan XXVII - XXX) Dr. AZ Jurusan Teknik Sipil Fakultas Teknik Universitas Brawijaya

PENERAPAN TEOREMA TITIK TETAP UNTUK MENUNJUKKAN ADANYA PENYELESAIAN PADA SISTEM PERSAMAAN LINEAR

BAB VII RANDOM VARIATE DISTRIBUSI DISKRET

Induksi Matematika. Pertemuan VII Matematika Diskret Semester Gasal 2014/2015 Jurusan Teknik Informatika UPN Veteran Yogyakarta

oleh hasil kali Jika dan keduanya fungsi yang dapat didiferensialkan, maka

REGRESI DAN KORELASI

BAB III TAKSIRAN KOEFISIEN KORELASI POLYCHORIC DUA TAHAP. Permasalahan dalam tugas akhir ini dibatasi hanya pada penaksiran

KALKULUS 4. Dra. D. L. Crispina Pardede, DEA. SARMAG TEKNIK MESIN

JURNAL MATEMATIKA DAN KOMPUTER Vol. 6. No. 2, , Agustus 2003, ISSN : METODE PENENTUAN BENTUK PERSAMAAN RUANG KEADAAN WAKTU DISKRIT

Program Perkuliahan Dasar Umum Sekolah Tinggi Teknologi Telkom. Barisan dan Deret

Algoritma Branch and Bound pada Permasalahan 0-1 Knapsack

BAB I PENDAHULUAN Latar Belakang Permasalahan

BARISAN FIBONACCI DAN BILANGAN PHI

SISTEM PERSAMAAN LINEAR PADA ALJABAR MIN-PLUS

SISTEM PERSAMAAN LINEAR PADA ALJABAR MIN-PLUS. Abstrak

BAB I PENDAHULUAN. 1.1 Latar Belakang. Universitas Sumatera Utara

BAB VIII KONSEP DASAR PROBABILITAS

PENCARIAN HIMPUNAN SOLUSI ALTERNATIF PADA PERMASALAHAN GENERAL INTEGER LINEAR PROGRAMS MEMANFAATKAN GENERAL INTEGER CUT

An = an. An 1 = An. h + an 1 An 2 = An 1. h + an 2... A2 = A3. h + a2 A1 = A2. h + a1 A0 = A1. h + a0. x + a 0. x = h a n. f(x) = 4x 3 + 2x 2 + x - 3

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI. Pada bagian ini akan dibahas tentang teori-teori dasar yang. digunakan untuk dalam mengestimasi parameter model.

II. LANDASAN TEORI. Sampling adalah proses pengambilan atau memilih n buah elemen dari populasi yang

Transkripsi:

BAB 2 LANDASAN TEORI 2.. Kosep Dasar Graph Sebelum sampai pada defiisi masalah litasa terpedek, terlebih dahulu pada bagia ii aka diuraika megeai kosep-kosep dasar dari model graph da represetasiya dalam memodelka masalah litasa terpedek. Defiisi 2.. Graph didefiisika sebagai pasaga himpua (V, E), dega V adalah himpua titik (vertex) da E adalah himpua sisi (edge) (Chacra et al, 979, hal:5). Secara umum graph dapat digambarka dega suatu diagram dega titik dituukka sebagai titik yag diotasika dega v i, i =, 2,, da sisi digambarka dega sebuah garis lurus atau garis legkug yag meghubugka dua buah titik (v i, v ) da diotasika dega e k. Sebagai ilustrasi dapat dilihat Gambar 2. yaitu suatu graph yag mempuyai lima titik da eam sisi.

Gambar 2.. Graph 5 titik da 6 sisi Defiisi 2.2. Loop adalah sisi yag berawal da berakhir pada titik yag sama, sedagka sisi paralel (edge paralel) adalah dua sisi atau lebih berbeda yag meghubugka dua buah titik v i da v yag sama. Gambar 2.2. Graph dega 6 titik da 0 sisi Pada Gambar 2.2 dapat dilihat bahwa e 4 adalah sebuah loop da e serta e 2 adalah dua buah sisi yag paralel. Defiisi 2.3. Graph sederhaa adalah graph yag tidak memuat loop da sisi-sisi paralel. Misalka V = (v, v 2, v 3, v 4, v 5 ) da E=(e, e 2, e 3, e 4, e 5, e 6 ), maka G=(V,E) adalah graph sederhaa yag dapat dilihat pada Gambar 2.. Defiisi 2.4. Suatu edge e k dalam suatu graph G dega titik-titik uug v i da v disebut salig icidet dega v i da v, sedagka v i da v ii disebut dua buah titik yag salig

adacet. Jika kedua edge tersebut icidet pada suatu titik persekutua, maka dua buah edge e k da e m disebut salig adacet. Pada Gambar 2.2 dapat dilihat bahwa e 8, e 7, e 9 adalah tiga buah sisi yag icidet dega v 6, sedagka e 5 da e 7 adalah adacet. Defiisi 2.5. Degree dari sbuah titik v i dalam graph G adalah umlah sisi yag icidet dega v i. Dega loop dihitug dua kali. Degree dari sebuah titik v i biasaya diotasika dega d(v i ). Pada Gambar 2.2 dapat dilihat bahwa d(v ) = 2, d(v 2 ) = 4, d(v 3 ) = 5, d(v 4 ) = 2, d(v 5 ) =2, d(v 5 ) = 3, da d(v 6 ) = 3. Defiisi 2.6. Suatu walk dalam sebuah graph G(V,E) adalah suatu barisa berhigga dari titik da sisi secara bergatia yag dimulai da diakhiri dega titik sehigga setiap sisi icidet dega titik sebelum da sesudahya, di maa sebuah sisi haya dilalui satu kali. Di dalam suatu walk pada sebuah graph dapat teradi bahwa satu titik dilalui lebih dari satu kali. Defiisi 2.7. Suatu Graph Berarah G terdiri dari himpua titik V(G): {v, v 2, }, himpua sisi E(G): {e, e 2, }, da suatu fugsi yag meghubugka setiap sisi dalam E(G) ke suatu pasaga beruruta titik (v i,v ). Jika e k = (v i,v ) adalah suatu sisi dalam G, maka v i disebut titik awal e k da v disebut titik akhir e k. Arah sisi adalah dari v i ke v.

Berikut ii Gambar 2.3. Gambar 2.3. Digraph G 2.2. Graph Berlabel Hubuga atar titik dalam graph perlu diperelas. Hubuga tidak cukup haya meuukka titik maa yag berhubuga lagsug, tetapi uga seberapa kuat hubuga itu. Titik graph meyataka kota-kota yag ada di daerah tersebut. Sisi-sisi dalam graph meyataka ala yag meghubugka kota-kota tersebut. Iformasi tetag peta daerah perlu diperelas dega mecatumka arak atara 2 kota yag berhubuga. Iformasi tetag arak dibutuhka karea dalam graph, letak titik da paag sisiya tidak meyataka arak 2 kota yag sebearya. Jadi setiap garis dalam graph berhubuga dega suatu label yag meyataka bobot garis tersebut. Defiisi 2.8. Graph Berlabel (labelled graph) adalah suatu graph tapa sisi paralel di maa setiap sisiya berhubuga dega suatu bilaga riil tak egatif yag meyataka ilai sisi (w(e)) tersebut. Jumlah ilai semua sisi disebut Total Nilai.

Matriks yag bersesuaia dega graph berlabel G adalah adacecy. Jika matriks A = (a i ) dega a i = ilai sisi yag meghubugka titik v i ke titik v maka a i =, da a i = 0 ika i =. Cotoh: Dalam suatu propisi, ada 8 kota (v, v 2,..., v 8 ) yag aka dihubugka dega ariga listrik. Biaya pemasaga ariga listrik yag mugki dibuat atar 2 kota sebagai berikut: Tabel 2. Biaya Pemasaga Jariga Listrik Sisi Kota yag dihubugka Biaya per satua e4 v2 - v3 3 e7 v4 - v6 4 e2 v - v7 5 e8 v3 - v4 5 e9 v3 - v5 5 e v - v2 5 e3 v - v4 5 e0 v6 - v8 5 e5 v7 - v8 5 e v5 - v6 5 e6 v6 - v7 8 a. Graph berlabel utuk meyataka ariga listrik di 8 kota dapat digambarka pada Gambar 2.3. Agka dalam kurug meyataka ilai sisi yag bersagkuta. Nilai tersebut meyataka biaya pegadaa ariga listrik.

Gambar 2.4. Graph Berlabel Jariga Listrik 8 Kota b. Adacecy Matriks utuk meyataka graph berlabel pada Gambar 2.3. adalah matriks A = (a i ) dega a i = biaya titik v i dega v. Utuk sisi yag meghubugka titik v i dega v. v v 2 V 3 v 4 v 5 v 6 v 7 v 8 v 0 5 5 5 v 2 5 0 3 v 3 3 0 5 5 A= v 4 5 5 0 4 v 5 5 0 5 v 6 4 5 0 8 5 v 7 5 8 0 5 Keteraga: v 8 5 5 0 = tidak ada sisi yag meghubugka titik v i dega v 0 = Utuk i sama dega Misalka G adalah sebuah graph berarah. Sebuah sisi berarah e = (v i,v ) dikataka mulai pada titik awal v i da berakhir di titik akhir v, v i da v dikataka adacet.

2.3. Litasa Miimum Salah satu aplikasi graph berarah berlabel yag serig dipakai adalah mecari litasa terpedek diatara 2 titik. Apabila masalahya adalah mecari litasa terpedek tetap dapat diguaka dega cara meggati ilai sisi. Defiisi 2.9. Misalka G adalah suatu graph, utuk v da w adalah titik dalam G. suatu Walk dari v ke w adalah barisa titik da sisi secara berselag-selig, diawali dari titik v da diakhiri pada titik w. Walk dega paag dari v ke w ditulis : v 0 e v e 2 v 2 v -2 e v deg v 0 = v: v = w; v i- da v i adalah titik-titik uug sisi e i. Litasa dega paag dari v ke w adalah walk dari v ke w yag semua sisiya berbeda. Litasa dari v ke w dituliska sebagai v = v 0 e v e 2 v 2 v - e v = w dega e i e utuk i. Peulisa berikutya aka diperguaka otasi: v i v, A = {v v 2, v 2 v 3,... } Defiisi 2.0. Litasa tertutup adalah suatu barisa sisi e, e,..., e i i2 i sedemikia rupa sehigga titik termial e berimpit dega titik awal i i( ) e utuk k. Pada Gambar 2.2 terdapat: a. Pada titik v e v2 e3 v3 e4 v3 e5 v4 semua sisi berbeda ( e, e3, e4, da e 5 ) masig-masig mucul sekali. Ada titik yag berulag ( v 3 mucul 2 kali). Titik awal da titik akhir tidak sama dega titik awal = v da titik akhir = v 4, Barisa ii merupaka litasa dari v v 4 dega paag 4. b. Pada titik v e v2 e3 v3 e5 v4 e5 v3 e6 v5 ada sisi yag mucul lebih dari sekali, yaitu e 5 (mucul 2 kali) berarti barisa tersebut merupaka walk dari v v 5 dega paag 5.

2.4. Litasa Terpedek (Shortest Path) Setiap litasa dalam digraph mempuyai ilai yag dihubugka dega ilai path tersebut, yag ilaiya adalah umlah dari ilai sisi litasa tersebut. Dari ukura dasar ii dapat dirumuska masalah seperti mecari litasa terpedek atara dua titik da memiimumka biaya. Bayak bidag peerapa mesyaratka utuk meetuka litasa terpedek berarah dari asal ke tuua di dalam suatu distribusi alira berarah. Algoritma yag diberika dapat dimodifikasi dega mudah utuk meghadapi litasa berarah pada setiap iterasiya. Suatu versi yag lebih umum dari masalah litasa terpedek adalah meetuka litasa terpedek dari sembarag titik meuu ke setiap titik laiya. Piliha laiya adalah membuag kedala tak egatif bagi arak. Suatu kedala lai dapat uga diberlakuka dalam suatu masalah litasa terpedek. Defiisi 2.. Litasa terpedek atara dua titik dari s ke t dalam ariga adalah litasa graph berarah sederhaa dari s ke t dega syarat tidak ada litasa lai yag memiliki ilai teredah. Cotoh. 3 x 3 x 2 x 4 2 x 2 3 x 5 x 7 2 5 x 8 4 3 5 x 6 Gambar 2.5. Litasa Terpedek (Shortest path) (garis tebal)

Pada Gambar 2.5 dapat dilihat bahwa v berada pada titik, 2, 3, 4, 5 da x, x 2, x 3, x 4, x 5, x 6, x 7, x 8 merupaka e (sisi). Sisi merepresetasika salura dega kapasitas tertetu (cotohya :air) dapat dialirka melalui salura. Sedagka titik merepresetasika persimpaga salura. air megalir melalui titik pada titik yag dilalui, litasa terpedek dari titik pada Gambar 2.5 adalah P = { 4,4 5} dega kapasitas 4. 2.5 Pemrograma Liier (Liear Programmig) Pemrograma Liier adalah suatu betuk dari pemrograma matematika. Ii adalah suatu kasus khusus dari Pemrograma Liier utuk semua (atau beberapa) variabel dibatasi sebagai bilaga cacah tak egatif. Utuk semua variabel dibatasi sebagai bilaga cacah, persoalaya disebut persoala program bilaga cacah muri, da kalau beberapa variabel tertetu dibatasi sebagai bilaga cacah campura. Suatu betuk khusus dari program bilaga cacah ialah suatu kasus di maa variabel dibatasi harus berharga ol atau satu. Kalau variabel dibatasi seperti ii, maka persoalaya disebut persoala Pemrograma (0/). Perumusa Pemrograma Liier dapat membatu prosedur peyelesaia lebih efisie. Berikut ii adalah betuk umum Pemrograma Liier: Miimumka dega kedala a a.. a x a2 x2... a x b c x c x... c x 2 2...()...(2) 2 x a22 x2... a2 x b2 x a x... a 2 2 x b x, x,..., 2 0....(3) x

Pada Pemrograma Liier ii, x, x2,..., x mewakili keputusa variabel yag tidak diketahui; c,...,, c2 c adalah biaya koefisie; b, b2,..., b adalah ilai di sampig kaa; da a i, i sampai m da sampai, diamaka koefisie tekologi. Peryataa () diamaka fugsi obektif; (2) diamaka kedala; da (3) adalah kedala tidak egatif. Beberapa peyelesaia memeuhi semua kedala, diamaka feasible solutio. Pada perumusa ii, kedala ditulis dalam betuk persamaa. Umumya, kedala Pemrograma Liier mempuyai relasi atau tetapi selalu dapat diubah dalam persamaa dega peumlaha slack variabel. Fugsi obektif () uga dapat diekpresika sebagai maksimum sebagai peggati miimum. Peulisa matematika tersebut, dapat dirumuska meadi: Miimumka c x dega kedala a i x b, i,2,..., i x 0,,2,..., 2.6 Pemrograma Bilaga Bulat (Iteger Programmig) Salah satu asumsi tekik Pemrograma Liier adalah divisibility atau fractioality. Dega kata lai, setiap variabel model dapat teradi pada semua ilai o egatif, suatu ilai solusi yag kotiu. Dalam situasi keputusa tertetu, asumsi ii tidak realistik da tidak dapat diterima.

Defiisi 2.2. Pemrograma Bilaga Bulat adalah suatu Pemrograma Liier dega tambaha persyarata bahwa semua atau beberapa variabel berilai bulat tidak egatif, tetapi tidak perlu bahwa parameter model uga berilai bulat. Ada bayak kasus dalam masalah Pemrograma Bilaga Bulat yag membatasi variabel model berilai ol atau satu. Dalam kasus demikia, persoala litasa haya memiliki dua piliha yaitu masuk atau keluar dari ariga. Utuk variabel ii berilai satu, persoala masuk, utuk variabel berilai ol, persoala keluar. Dalam masalah Pemrograma Bilaga Bulat, utuk setiap persoala yag megharapka semua variabel basis berilai iteger (bulat positif atau ol), diamaka pure(all) iteger programmig. Utuk setiap persoala yag haya megharapka variabel-variabel tertetu berilai iteger, diamaka mixed iteger programmig. Utuk setiap persoala yag haya megharapka ilai ol atau satu utuk variabelya, diamaka zero oe iteger programmig. Walaupu persoala umum Pemrograma Liier 0/ dapat diselesaika dega Cuttig Plae Algorithm atau Brach-ad-Boud. Balas megembagka suatu algoritma eumerative yag efisie da mearik utuk meyelesaika persoala ii. Sagat sigkat sebagai dasar Iteger NoLiear Programmig. Fugsi diguaka utuk meyamarataka kesalaha metode utuk meyelesaika persoala All Iteger Programmig da Mixed-Iteger NoLiear Programmig. Peyelesaia Pemrograma Bilaga Bulat seperti Pemrograma Liier, dega rumus berikut ii:

Miimumka ci x m i m m m x i x ki 0 k Kedala i utuk utuk utuk i i m x 0 i,,2,..., m i 2.7 Kapsack Algoritma Pemrograma 0/ merupaka salah satu tipe persoala Kapsack dega keadaa tertetu teradi, masig-masig keadaa mempuyai sebuah ilai yag dihubugka dega besaraya. Secara yata bahwa solusi optimal dari persoala Kapsack aka meuukka kemugkia yag terbaik. Pada masalah ii aka terdorog utuk meyelesaika suatu persoala dalam meetuka litasa terpedek pada suatu graph dega kedala biaya da waktu atau arak sehigga meghasilka solusi yag optimal. Pedekata sederhaa dapat dimasukka ke dalam program komputer utuk memeriksa semua harga 0/ yag mugki, dipilih yag terbaik yag memeuhi kedala. Cotoh. Persoala Kapsack Seorag pedaki guug igi membawa semua peralata yag ia perluka dalam satu katog (sack) saa, Misalka ada seumlah peralata yag diperluka, tetapi berat seluruhya tidak boleh melebihi b kg. Misalka eis peralata ialah x da, x 0 utuk utuk alat alat ke ke ikut tidak ikut

Berdasarka keteraga tersebut, persoala dapat dirumuska sebagai berikut: Maksimumka dega kedala f c x c x... c x a x 2 a x... a 2 2 2 x b x,... x2 x 0 atau Persoala ii merupaka persoala Kapsack sebagai persoala (0/). Defiisi 2.3. 0/ atau bier, persoala Kapsack yaitu masukka dari item da suatu Kapsack, Pilih subset dari item sebagai: Maksimumka z p x dega kedala w x c, x = 0 atau, N{,..., } Utuk x 0 utuk Laiya obek memeuhi Keteraga: p = keutuga dari item, w = bobot dari item, c = kapasitas dari Kapsack.

2.8 Pemrograma Diamik (Dyamic Programmig) Pemrograma Diamik adalah tekik maaeme sai yag diaplikasika kepada persoala yag melibatka keputusa beruruta yag salig berkaita. Program ii dikembagka oleh Richard Bellma da G. B Datzig pada tahu 940 950. Sebagai sebuah kosep, Pemrograma Diamik lebih luwes dibadig program optimasi laiya. Aplikasi Pemrograma Diamik lebih luwes dibadig program program optimasi laiya. Aplikasi Pemrograma Diamik sudah terbukti baik pada pegelolaa persediaa, ariga, peadwala kera utuk karyawa, pegedalia produksi, perecaaa peuala da bidag laiya. Pemrograma Diamik adalah metode pemecaha masalah dega cara meguraika solusi meadi sekumpula lagkah (step) atau tahapa (stage) sedemikia sehigga solusi dari persoala dapat dipadag dari seragkaia keputusa yag salig berkaita. Pada peyelesaia persoala dega metode Pemrograma Diamik ii terdapat seumlah berhigga piliha yag mugki, solusi pada setiap tahap dibagu dari hasil solusi tahap sebelumya, peulis megguaka optimasi da kedala utuk membatasi seumlah piliha yag harus dipertimbagka pada suatu tahap. 2.8. Kosep Dasar Dalam Pemrograma Diamik a. Dekomposisi Persoala Pemrograma Diamik dapat dipecah meadi sub persoala atau tahapa yag lebih kecil da beruruta. Setiap tahap uga sebagai titik keputusa. Setiap keputusa yag dibuat pada suatu tahap aka mempegaruhi keputusa-keputusa pada tahap berikutya.

b. Status Status adalah kodisi awal (S) da kodisi akhir (S-) pada setiap tahap tersebut keputusa dibuat (D). Status akhir pada setiap tahap tergatug kepada status awal da keputusa yag dibuat pada tahap yag bersagkuta. Status akhir pada suatu tahap merupaka iput bagi tahap berikutya. c. Variabel Keputusa da Hasil Keputusa yag dibuat pada setiap tahap (D) merupaka keputusa yag berorietasi kepada retur yag diakibatkaya (R/ ), tigkat maksimal atau miimal. d. Fugsi Trasisi Fugsi trasisi meelaska secara pasti tahap-tahap yag salig berhubuga. Fugsi ii berbetuk fugsi hubuga atar status pada setiap tahap yag beruruta. Fugsi trasisi secara umum berbetuk: S- = S D, di maa S- = status pada tahap - atau status akhir pada tahap-. S adalah status awal pada tahap-. Kompoe pada setiap tahap dapat digambarka sebagai berikut: Gambar 2.6 Tahapa Fugsi Trasisi

e. Optimasi Tahap Optimasi tahap dalam Pemrograma Diamik adalah meemuka keputusa optimal pada setiap tahap dari berbagai kemugkia ilai status iputya. Fugsi umum dari keputusa optimal adalah: F(S, D) = retur pada tahap- dari ilai status iput S, da keputusa D. F*(S) = retur optimal pada tahap- dari ilai iput status S. f. Fugsi Rekursif Fugsi rekursif biasaya diguaka berbagai program komputer, utuk setiap ilai sebuah variabel pada fugsi itu merupaka ilai kumulatif dari ilai variael tersebut pada tahap sebelumya. Pada Pemrograma Diamik, fugsi umum dituliska sebagai: f(s, D) = R + f-*(s-, D-) Prosedur optimasi diawali dari tahap awal meuu tahap akhir (forward). Karakteristik program diamis adalah: a. Persoala dapat dipisahka meadi beberapa tahap (stages), utuk setiap tahap membutuhka keputusa kebiaka yag baku da salig berhubuga. Gambar 2.7 Tahapa Baku b. Setiap tahap memiliki seumlah status (state). Secara umum, sekumpula status ii merupaka berbagai kemugkia yag timbul dari sistem persoalaya. Status ii memberika iformasi yag dibutuhka setiap keputusa da dampakya pada tahap berikutya. Jumlah status pada setiap tahap bisa defiitif atau ifiitif.

c. Setiap keputusa kebiaka yag dibuat pada suatu tahap, status pada tahap tersebut ditrasformasi ke dalam status yag berkaita pada tahap berikutya. Hubuga atar status pada tahap yag beruruta bisa bersifat determiistik atau probabilistik. Pada persoala dega -tahap, ada 2 (dua) iput, yaitu: () state pada tahap- (S) da variabel keputusa (X). Sedagka outputya adalah: () retur atau akibat dari setiap X yag dipilih, f(s,x) da (2) status baru yag meadi iput pada tahap berikutya (S-). Hubuga atara X da f(s,x) ditemuka oleh retur fuctio. Sedag hubuga atar status pada tahap tertetu ditetuka oleh trasitio fuctio Gambar 2.8. Retur da Trasitio Fuctio d. Solusi pada Pemrograma Diamik berprisip kepada optimalitas yag dikembagka oleh Bellma. e. Keputusa pada tahap berikutya bersifat idepede terhadap keputusa sebelumya. Utuk meyelesaika persoala Pemrograma Diamik, dimulai dari solusi awal pada suatu tahap da secara beruruta meuu tahap berikutya dega proses iduksi mudur (backward iductio process).

f. Solusi optimal yag dihasilka pada setiap tahap berprisip kepada hubuga dalam betuk fugsi rekursif (recursio relatioship). Secara umum betuk fugsi rekursif adalah: F*(S) = max/mi {f(s, X)} Utuk setiap f*(s) = hasil optimal dari keputusa pada tahap-. 2.8.2 Aalisa Algoritma Pemrograma Diamik Pemrograma Diamik adalah metode pemecaha masalah dega cara meguraika solusi meadi sekumpula lagkah (step) atau tahapa (stage) sedemikia sehigga solusi dari persoala dapat dipadag dari seragkaia keputusa yag salig berkaita. Pada peyelesaia persoala dega Pemrograma Diamik terdapat seumlah berhigga piliha yag mugki. Solusi pada setiap tahap dibagu dari hasil solusi tahap sebelumya, peulis megguaka persyarata optimasi da kedala utuk membatasi seumlah piliha yag harus dipertimbagka pada suatu tahap. Pada Pemrograma Diamik, ragkaia keputusa yag optimal dibuat dega megguaka Prisip Optimalitas. Prisip Optimalitas: ika solusi total optimal, maka bagia solusi sampai tahap ke-k uga optimal. Prisip optimalitas berarti bahwa ika peulis bekera dari tahap k ke tahap k +, peulis dapat megguaka hasil optimal dari tahap k tapa harus kembali ke tahap awal, ogkos pada tahap k+ = (ogkos yag dihasilaka pada tahap k) + (ogkos dari tahap k ke tahap k +). Dega prisip optimalitas ii diami bahwa pegembalia keputusa pada suatu tahap adalah keputusa yag bear utuk tahap-tahap selautya.

2.8.3 Dua Pedekata Algoritma Pemrograma Diamik Dua pedekata yag diguaka dalam Pemrograma Diamik yaitu: mau (forward atau up-dow) da mudur (backward atau bottom up). Misalka x, x 2, x 3,, x meyataka variabel keputusa yag harus dibuat masig-masig utuk tahap, 2,,, yaitu:. Pemrograma Diamik mau. Pemrograma Diamik bergerak mulai dari tahap, terus mau ke tahap 2, 3, da seterusya sampai tahap, uruta variabel keputusa adalah x, x 2, x 3,, x. Peulis disii megguaka Program Diamik Mau. 2. Pemrograma Diamik mudur. Pemrograma Diamik bergerak mulai dari tahap, terus mudur ke tahap -, -2, da seterusya sampai tahap, uruta variabel keputusa adalah x, x -, x -2,, x. Lagkah-lagkah Pegembaga Algoritma Pemrograma Diamik:. Karakteristik struktur solusi optimal. 2. Defiisika secara rekursif ilai solusi optimal. 3. Hitug ilai solusi optimal secara mau atau mudur. 4. Kostruksi solusi optimal. 2.8.4 Algoritma Pemrograma Diamik Algoritma Pemrograma Diamik adalah sebagai berikut: Lagkah 0 (iisialisasi): Lagkah : Iisialisasi s i 0 da di mai utuk i,2,..., a. Isi s a dega (karea titik a adalah titik asal litasa terpedek, adi sudah pasti terpilih). b. Isi d a dega (tidak ada loop dari titik a ke a)

Lagkah 2, 3,, -: a. Cari sedemikia sehigga 0 b. Isi s dega c. Perbarui d i, utuk s da d d, d,..., mi 2 d i,2,3,..., dega: d ( baru) mid ( lama), d m i i i 2.9 Visual Basic 6.0 Visual Basic adalah bahasa pemrograma yag diguaka utuk membuat aplikasi Widows yag berbasis grafis (GUI-Graphical User Iterface). Visual Basic merupaka eve drive programmig (pemrograma terkedali keadia), artiya program meuggu sampai adaya respo dari pemakai berupa eve atau keadia tertetu (tombol diklik, meu pilih, da lai-lai). Ketika eve terdeteksi, kode yag berhubuga dega evet (prosedur evet) aka dialaka. Berikut ii adalah poi-poi terpetig dalam searah perkembaga Visual Basic sebagai berikut: a. Visual Basic pertama kali diperkealka tahu 99 yaitu program Visual Basic utuk DOS da utuk Widows. b. Visual Basic 3.0 dirilis tahu 993. c. Visual Basic 4.0 dirilis pada akhir 995 (tambaha dukuga utuk aplikasi 32 bit. d. Visual Basic 5.0 dirilis pada tahu 997. e. Visual Basic terbaru adalah Versi 6.0 yag dirilis pada akhir tahu 998. Pada umumya Microsoft selaku pembuat Visual Basic membuat 3 (tiga) edisi Visual Basic, yaitu: a. Stadard Editio merupaka produk pasar. b. Profesioal Editio yag berisi tambaha Microsoft Jet Data Acces Esgie (Database) da pembuata server OLE automatio.

c. Eterprise Editio adalah edisi Cliet-Server. Visual Basic selai disebut sebagai sebuah bahasa pemrograma, uga serig disebut sebagai saraa utuk meghasilka program-program aplikasi berbasis Widows. Beberapa mafaat dari Visual Basic adalah:. Mudah dalam membuat program aplikasi berbasis Widows. 2. Memiliki compiler hadal yag dapat megui program (debuggig) serta dapat meghasilka program akhir berakhira EXE yag bersifat executable atau dapat lagsug dialaka. 3. Memiliki beberapa tambaha istruksi atau peritah Wizard. Wizard adalah saraa yag mempermudah di dalam pembuata aplikasi dega megotomatisasi tugastugas tertetu. 4. Saraa akses data yag lebih cepat da hadal utuk membuat aplikasi database yag berkemampua tiggi.