BAB 2 LANDASAN TEORI. membuat sesuatu tujuan sulit untuk dicapai, hal ini berhubungan dengan

Ukuran: px
Mulai penontonan dengan halaman:

Download "BAB 2 LANDASAN TEORI. membuat sesuatu tujuan sulit untuk dicapai, hal ini berhubungan dengan"

Transkripsi

1 9 BAB 2 LANDASAN TEORI 2.1 Problem, Algorithm dan Analisis Algoritma Definisi Problem Problem (permasalahan) adalah sebuah kendala atau hambatan di mana membuat sesuatu tujuan sulit untuk dicapai, hal ini berhubungan dengan situasi, kondisi, atau persoalan-persoalan yang belum terselesaikan. Sebuah Problem timbul dikarenakan seorang individu menjadi sadar akan perbedaan yang berarti antara apakah yang sebenarnya dan apakah yang merupakan hasrat atau keinginan. Setiap Problem membutuhkan jawaban atau solusi. Suatu Problem dikatakan telah selesai apabila tujuan telah dicapai atau sudah tidak ada masalah lagi Definisi Algorithm Algorithm berasal dari kata Algoris dan Ritmis, kata-kata ini berasal dari seorang ahli matematika, Mohammed ibn-musa al-khwarizmi, yang merupakan bagian dari royal court,baghdad, dan hidup antara tahun 750 sampai 850. Algorithm adalah sebuah prosedur yang terstruktur dan dituliskan secara sistematis untuk menyelesaikan sebuah tugas di mana, memberikan initial state (keadaan awal), dan akan terminate di akhir (end state) dengan bantuan komputer. Teori Algorithm menurut Horowitz : 1. Input, nol atau sejumlah kuantitas yang disuplai secara external.

2 10 2. Output, paling sedikit dihasilkan satu kuantitas. 3. Definiteness, setiap instruksi jelas atau tidak ambigu. 4. Finiteness, jika suatu instruksi algoritma akan ditelusuri, dan dalam semua kasus, algoritma berakhir dalam beberapa langkah yang terbatas. 5. Effectiveness, setiap instruksi harus bersifat mendasar sehingga mudah diterapkan, secara prinsip dapat dikerjakan oleh seseorang walaupun dengan menggunakan pensil dan kertas. Masalah Algoritma Solusi Gambar 2.1 Hubungan Masalah, Algoritma dan Solusi Definisi analisis algoritma Algoritma tidak selalu memberikan hasil terbaik yang mungkin diperoleh, maka diharapkan adanya suatu evaluasi hasil dari algoritma tersebut. Jika sebuah algoritma diberikan untuk menyelesaikan suatu permasalahan dan akan memberikan hasil yang diharapkan, maka langkah selanjutnya adalah menganalisi algoritma. Menganalisis algoritma adalah untuk menetapkan sejumlah sumber (seperti waktu dan storage) yang dibutuhkan untuk pengeksekusian, sehingga kita dapat menentukan besar biaya yang diperlukan algoritma tersebut untuk memperoleh hasil itu. Ukuran biaya eksekusi suatu algoritma yang paling sering digunakan adalah lamanya waktu diperlukan, disamping itu ada juga tolak ukur lainnya, misalnya besarnya memori yang diperlukan.

3 11 Kebanyakan algortima dirancang untuk bekerja dengan input yang panjangnya tidak terbatas. Biasanya efisiensi atau komplesitas dari sebuah algoritma disamakan dengan sebuah fungsi yang berkaitan dengan panjangnya input banyaknya langkah (kompleksitas waktu) atau lokasi penyimpanan Kompleksitas Waktu, Algoritma dan Masalah Salah satu ukuran biaya dalam pengeksekusian sebuah algoritma adalah lamanya waktu yang diperlukan. Pengukuran waktu yang diperlukan dalam mengeksekusi suatu algoritma dinamakan kompleksitas waktu (time complexity) algoritma tersebut (Liu, C.L, 1995, p272). Besarnya waktu yang dibutuhkan algoritma untuk menyelesaikan sebuah permasalahan sebanding dengan jumlah inputan yang diberikan untuk permasalahan tersebut. Semakin besar data maka akan semakin besar waktu yang diperlukan. Sebagai contoh, diperlukan waktu yang lebih besar untuk mengurutkan buah data dibanding dengan 10 buah data. Akan tetapi, pada keadaan sebenarnya, nilai dari suatu algoritma ditentukan dari banyak faktor, misalnya kecepatan komputer yang dipakai, kualitas compiler dan dalam beberapa kasus, kualitas program itu sendiri (Weiss, Mark Allen, 1996, pl49). Dua buah algoritma yang berbeda dapat digunakan memecahkan masalah yang sama dan mungkin saja, mempunyai kompleksitas waktu (time complexity) yang sangat berbeda (Liu, C.L, 1995, p274). Kompleksitas waktu algoritma terbaik untuk memecahkan masalah tersebut dinamakan sebagai kompleksitas waktu suatu masalah (time complexcity of problem) (Liu, C.L, 1995, p277).

4 12 Berdasarkan pengertian problem (masalah) di atas, tidak semua masalah dapat dipecahkan, dengan kata lain mempunyai algoritma solusi. Ada dua buah klasifikasi permasalahan (Leahy, Billy., 2000, pp21-24), yaitu sebagai berikut: 1. Permasalahan yang dapat dipecahkan (decidable / solvable problem) Permasalahan yang termasuk klasifikasi ini adalah semua jenis permasalahan yang mempunyai algoritma solusi, walaupun kadang kala tidak praktis. Dari segi komputasi, permasalahan dalam klasifikasi ini dapat dibedakan menjadi tiga kategori yaitu: 1. Permasalahan Tractable (mudah dari segi komputasi) Suatu masalah dikatakan tractable jika masalah tersebut dapat dipecahkan oleh suatu algoritma yang eflsien. Contoh permasalahan trackable antara lain adalah masalah penentuan bilangan terbesar di antara n bilangan, pengurutan n bilangan, penentuan lintasan terpendek antara dua buah vertex di dalam sebuah graph dan lain sebagainya. 2. Permasalahan Intractable (sukar dari segi komputasi) Suatu masalah dikatakan intractable jika tidak ada algoritma yang eflsien untuk memecahkan masalah tersebut. 3. Permasalahan NP-Complete (NP singkatan dari Non-Deterministik Polinomial) Suatu masalah dikatakan NP-Complete apabila masalah itu telah berhasil dibuktikan termasuk dalam masalah intractable. Contohnya adalah permasalahan pewarnaan graf.

5 13 2. Permasalahan yang tidak dapat dipecahkan {undecidable / unsolveable problem) Permasalahan yang termasuk dalam klasifikasi ini adalah semua permasalahan yang tidak mempunyai algoritma solusi, maksudnya adalah tidak dapat dilakukan perhitungan, atau tidak dapat diperoleh jawaban dalam waktu yang terbatas. Contohnya adalah permasalahan unbounded tiling. 2.2 Optimalisasi Optimalisasi adalah sebuah proses memodifikasi sistem untuk membuat beberapa aspek agar bekerja lebih efisien atau menggunakan resource (sumber) lebih sedikit. Sebuah program computer dioptimalisasi sehingga bisa menjalankan tugasnya lebih dengan cepat, atau mampu untuk beroperasi dalam pengurangan sejumlah memory storage. Dalam optimalisasi pencarian solusi dengan kemungkinan-kemungkinan terbaik dilakukan, optimalisasi bisa berarti permasalahan maksimalisasi, memaksimalkan pencapaian nilai terbaik atau permasalahan minimalisasi, meminimalkan biaya. Pengoptimalisasian sistem khususnya hanya bisa optimal di satu sisi. Di satu sisi mungkin mengurangi sejumlah waktu untuk sebuah program beroperasi melakukan tugas-tugas yang membuat memori termakan banyak sehingga harga menjadi lebih tinggi atau sesorang sengaja memilih algoritma yang sederhana untuk mengurangi pemakaian memori yang besar. Mungkin tidak ada model one size fits all yang bekerja untuk semua kasus, jadi pembuat software melakukan optimalisasi berdasarkan ketertarikan user akan sebuah program yang

6 14 seperti apa. Usaha untuk membuat perangkat lunak yang benar-benar optimal (tidak mungkin untuk dilakukan perbaikan) adalah sebuah alasan untuk keuntungan, jadi proses optimalisasi. Menurut Nash & Sofer (1996, p3) optimasi adalah sarana untuk mengekspresikan model matematika yang bertujuan untuk memecahkan masalah dengan cara yang terbaik. Jika digunakan untuk tujuan bisnis, artinya memaksimalkan keuntungan dan efisiensi serta meminimalkan kerugian, biaya dan resiko. Dalam Pembahasan skripsi ini optimalisasi yang dilakukan penulis adalah memaksimalkan jumlah barang yang dapat masuk dengan cara pemaksimalan di alas mobil box atau bisa dikatakan meminimalisasi ruang kosong yang ada 2.3 Gambaran umum tentang Dua Dimensi cutting box Dua Dimensi cutting box adalah sebuah cara matematis yang secara efektif melakukan penempatan elemen secara dua dimensi kedalam bins (tempat penyimpanan). Setiap elemen itu adalah pasti, tidak nol (non-zero) dan mempunyai nilai yang positif. Cutting adalah sebuah cara atau perhitungan penempatan elemen,dalam kasus ini adalah box. Tujuan setiap algortima Dua Dimensi cutting box adalah meminimalkan penggunaan bin untuk menampung sejumlah elemen yang dibutuhkan. Bin : ukuran yang pasti dari sebuah mobil box, yang dapat menampung elemen.

7 15 Elemen : sebuah item (barang) yang ditempatkan di dalam bin yang mempunyai tinggi yang pasti (element height). Ada banyak variasi dari masalah ini, seperti linear packing, packing by weight, packing by cost, dan lain-lain. Karena termasuk ke dalam NP- Hard, maka algoritma yang diketahui paling efisien adalah heuristic, untuk mendapatkan hasil yang baik dalam kebanyakan kasus, di mana mungkin saja bukan sebagai solusi yang optimal. Heuristic adalah sebuah algoritma mungkin saja menemukan solusi yang baik tetapi tidak ada bukti bahwa solusinya tidak bisa menjadi buruk secara tidak masuk akal, tidak ada argumen tentang hal ini bahwa ini mungkin saja terjadi NP- Hard Dalam teori computational complexity, NP ( Non-deterministic Polynomial time") adalah sekumpulan permasalahan yang dapat dipecahkan menggunakan polynomial time - non-deterministic Turing machine. Turing machines merupakan symbol abstrak dasar yang memanipulasi alat di mana, dapat disesuaikan untuk mensimulasi logika dari computer yang secara mungkin dapat dikonstruksi. Hal ini dikemukakan pada tahun 1936 oleh Alan Turing. Polynomial time adalah permasalahan waktu komputasi (ukuran berapa banyaknya langkah yang digunakan perangkat keras atau sistem perangkat lunak dalam pengkomputasi-pemrosesan informasi). Polynomial adalah sebuah pernyataan yang terbentuk dari satu atau lebih variable dan konstanta, dan hanya menggunakan penjumlahan, pengurangan serta perkalian.

8 16 Sebuah kelas yang kompleks dari decision problems di mana pada dasarnya lebih sulit daripada masalah yang bias diselesaikan dengan nondeterministic Turing machine dalam polynomial time. Ada tiga kelas problem (permasalahan) : P adalah kumpulan yes/no problem yang bisa dipecahkan dalam waktu polynomial. Jadi bisa dikatakan bahwa P adalah kumpulan permasalahan yang bisa dipecahkan secara cepat. NP adalah sekumpulan yes/no problem diikuti dengan property : jika yes maka ada pembuktian dari fakta itu yang bisa dicek dalam waktu polynomial. Jadi bisa dikatakan bahwa NP adalah sekumpulan permasalahan di mana bisa dikatakan yes jika terdapat solusinya. co-np adalah kebalikan dari NP. Jika jawaban dari permasalahan dalam co-np adalah no maka ada pembuktian dari fakta itu yang bisa dicek dalam waktu polynomial. Gambar 2.1 ilustrasi hubungan antara P, NP, co-np. 2.4 Fungsi Heuristic Pada skripsi ini, pembahasan difokuskan pada pemecahan permasalah untuk Dua Dimension Cutting box, di mana tujuan dari pemecahan masalah ini

9 17 adalah mendapatkan suatu formula atau cara dalam penempatan barang 2 dimensi sehingga penempatan yang dilakukan bisa meminimalisasi ruang kosong. Ada banyak cara untuk menyelesaikan permasalahan Dua Dimensi Cutting box ini, salah satunya adalah dengan menggunakan metode A* Heuristic. Menurut Amit.J.Patel (2003, pl), heuristic merupakan aturan-aturan untuk memilih cabang-cabang yang memiliki kemungkinan mengarah pada pemecahan masalah. Karena heuristic menggunakan informasi yang terbatas maka heuristic mungkin gagal dalam memprediksi perilaku secara tepat dalam pencarian. Heuristic dapat membantu menunjukan arah yang tepat bagi suatu algoritma, tetapi mungkin juga gagal dalam memberikan petunjuk pada algortima tersebut. Definisi Heuristic yang didapat dari berbagai sumber diterangkan pada penjelasan berikut ini : Sebuah algoritma heuristic adalah suatu aturan untuk mengetahui bagaimana pemecahan permasalahan tertentu, tidak memberikan instruksi yang spesifik tetapi panduan umum untuk bermacam pendekatan yang mungkin dapat bekerja. Istilah heuristic digunakan untuk algoritma di mana mencari solusi melalui semua kemungkinan yang ada, tetapi dalam pencariannya tidak bisa dijamin ditemukan solusi yang terbaik, oleh karena itu heuristic dianggap algortima perkiraan. Algoritma ini biasanya mencari solusi yang dekat dengan solusi terbaik dan proses pencariannya cepat dan mudah. Terkadang algortima ini dapat menjadi akurat dan menemukan

10 18 solusi terbaik, tetapi algoritma ini tetap disebut heuristic hingga solusi terbaik itu terbukti untuk menjadi yang terbaik Metode A* Heuristic Metode A* tanpa fungsi heuristic yang baik akan memperlambat pencarian dan dapat menghasilkan rute yang tidak tepat. Fungsi heuristic yang sempurna akan membuat metode A* langsung menuju final node tanpa harus mencari-cari kearah lain. Sehingga jika fungsi heuristicnya terlalu underestimate akan menyebabkan algoritma ini beranggapan bahwa ada rute lain yang lebih baik. Untuk fungsi heursitic yang underestimate, bila nilainya terlalu rendah akan menyebabkan algoritma ini seperti algortima Dijkstra's yang mencari kesegala arah yang mungkin. Hal ini dikarenakan tidak ada cukup informasi mengenai masalah yang dihadapi, sehingga menyebabkan metode A* melakukan pencarian lebih banyak dan lebih lama. Dalam ilmu computer, A* ( disebut A star ) adalah sebuah graph atau metode tree search yang digunakan untuk mencari jalan dari sebuah node awal ke node tujuan (goal node) yang telah ditentukan, metode ini menggunakan estimasi heuristic h(x) pada setiap node untuk me-ranking setiap node x berdasarkan estimasi rute terbaik yang melalui node tersebut. Dalam prosesnya metode ini akan mengunjungi setiap node berdasarkan urutan yang dihasilkan dari estimasi heuristic ini. Metode A* adalah salah satu contoh dari metode bestfirst search. Metode A* dikembangkan oleh Peter Hart, Nils Nilsson, dan Bertram Raphael, mereka juga menyebut metode tersebut dengan sebutan algoritma A,

11 19 dengan menggunakan metode ini dan dengan heuristic yang tepat menghasilkan sebuah hasil yang optimal, yaitu A*. Secara umum, Depth-first search (DFS) dan breadth-first search (BFS) adalah dua kasus special dari metode A*. Algoritma Dijkstra's merupakan kasus yang paling special dari A*, di mana h(x) = 0, untuk semua x. Dalam masalah pencarian rute di mana metode A* sering digunakan, A* secara bertahap membangun semua rute yang mengarah mulai dari titik awal sampai akhirnya mencapai titik akhir. Metode A* hanya membangung rute yang mungkin digunakan untuk mencapai tujuan. Untuk mengetahui rute mana yang memungkinkan mengarah ke titik akhir, A* menggunakan estimasi heuristic jarak dari sembarang node ke node tujuan. Dalam kasus pencarian rute, ini bisa jadi sama dengan jarak lurus antara dua titik, di mana biasanya merupakan perkiraan dari jarak jalan Fungsi A* Heuristic fungsi adalah aturan yang menugaskan sebuah output untuk tiap-tiap input yang diberikan. Aturan mendefinisikan suatu fungsi dapat dispesifikasi oleh suatu formula, relasi, atau tabel yang mendaftar output terhadap input. Pola terpenting dari suatu fungsi adalah ia bersifat deterministik, yakni selalu menghasilkan output yang sama dari input yang sama. Input sering disebut argumen fungsi, dan output disebut nilai fungsi A* mempertahankan sebagian dari solusi, sebagai contoh jalur pada graph dimulai dari node awal, akan disimpan dalam sebuah queue

12 20 yang disebut priority queue. Prioritas yang diberikan ke sebuah jalur x ditentukan oleh fungsi f(x) = g(x) + h(x) Di sini, g(x) adalah nilai cost dari path yang telah ditemukan, yaitu berat atau bobot dari jalur antar node yang telah dilalui. h(x) adalah estimasi heuristik dari nilai cost paling minimal yang digunakan atau didapat untuk mencapai goal dari x. sebagai contoh, jika cost adalah jarak yang telah ditempuh, jarak lurus antara dua titik pada sebuah peta adalah estimasi heuristik dari jarak yang akan ditempuh. Semakin kecil nilai f(x), semakin besar prioritasnya. Untuk kasus 2 dimensi cutting box, fungsi f(x) = g(x) + h(x) didefinisikan sebagai berikut : g(x) adalah heuristic luas. g(x) = Panjang cut x Lebar cut Perhitungan ini digunakan untuk menentukan barang mana yang pertama kali akan diletakan. h(x) adalah heuristic sisi. Sk = (( KB JK) + ( Kb JK)) h(x) = (Sk - JKB) + Nt Jika nilai h(x)1.1 < nilai h(x)1.2, maka ambil nilai h(x)1.2, lalu bandingkan dengan nilai h(x) berikutnya sampai ditemukan nilai h(x) yang paling kecil. Sk = Sisa Keliling KB = keliling box

13 21 Kb = keliling cut JK = bangun cut yg terkena pembatas box JKB = bangun cut yg terkena dengan bangun yg lain (bersinggungan / saling berdempetan) h(x) = estimasi heuristic Box = Papan = Mobil Box Cut = Barang = Item = Bangun = Elemen Algoritma A* Heuristic Di bawah ini adalah algoritma dasar dari A* Heuristic, algoritma inilah yang akan dipakai sebagai dasar dari pembuatan program simulasi 2 dimensi cutting box. function A*(start,goal) var closed := the empty set var q := make_queue(path(start)) while q is not empty var p := remove_first(q) var x := the last node of p if x in closed continue if x = goal return p add x to closed foreach y in successors(x) enqueue(q, p, y) return failure Star adalah menuju pada node awal, sedangkan Goal adalah menuju pada node akhir (finish). Pertama-tama closed diinisialisasi dengan nilai awal nil, di mana closed adalah sebuah priority queue. Variabel q adalah sebuah variabel yang digunakan untuk membuat suatu

14 22 antrian barang (make queue). make queue adalah sebuah fungsi dimana fungsi ini akan membuat stack yang digunakan untuk antrian barangbarang. Dicek apakah q itu empty atau tidak (apakah diantrian masih ada barang atau tidak), jika q itu tidak empty (ada barang), maka barang pertama dimasukkan ke stack successor, di mana stack successor disini adalah p, lalu dari p tersebut diambil nilai yang paling bagus lalu dimasukkan ke dalam x. Jika semua data x itu ada di variabel closed maka lanjutkan dengan barang berikutnya (kembali ke while), jika tidak ada di closed maka x ditambahkan ke closed, dan jika x tersebut adalah goal maka perulangan berhenti. Semua nilai yg bisa membentuk successor dari x dibentuk lalu dimasukkan ke dalam daftar successor. Y adalah sebuah variabel, di mana dia mengambil seluruh data satu persatu dari variabel x dan dimasukkan ke y lalu di enqueue. Di bagian closed set (closed), semua node terakhir dari p (node dengan jalur yang ditemukan) dicatat, untuk menghindari pengulangan atau perputaran. Closed set bisa diabaikan jika ada solusi lain yang lebih baik dan menjanjikan, atau jika fungsi successors diadaptasi untuk menghindari pengulangan. Seperti pada breadth-first search, metode A* adalah metode yang lengkap di mana ia akan selalu menemukan solusi jika memang ada. Jika fungsi heuristic h dapat diterima, dalam hal ini fungi h tidak pernah menghasilkan nilai estimasi yang terlalu tinggi dibandingkan dengan nilai minimal dari cost sebenarnya untuk mencapai tujuan, maka A* itu sendiri dapat diterima (optimal) jika kita tidak menggunakan closed set. Jika

15 23 closed set digunakan, maka h juga harus konsisten (monoton) agar A* bisa optimal. Metode A* juga sangat optimal dan efisien untuk setiap heuristic h, di mana hal ini berarti bahwa tidak ada algortima lain yang menerapkan metode heuristic yang sama akan mendapatkan node yang lebih sedikit dari A*, kecuali ketika terdapat beberapa solusi parsial di mana h secara tepat memperkirakan nilai cost dari jalur optimal. A* dapat menerima dan dapat memperhitungkan node lebih sedeikit bila dibandingkan dengan algoritma lainnya, karena A* mulai bekerja dari estimasi cost yang optimistic dari jalur yang dia lalui optimistic di sini adalah nilai cost sebenarnya dari jalur yang dilalui untuk menuju node tujuan akan maksimal sama besar dengan nilai estimasi yang dihasilkan. Akan tetapi, secara kritis, selama hasil pencarian metode A* diperoleh, nilai estimasi optimistic tersebut mungkin akan dapat diperoleh. Ketika A* berhenti melakukan pencarian, dapat diartikan bahwa A* menemukan sebuah jalur di mana nilai cost yang sebenarnya lebih kecil dari nilai estimasi cost dari jalur lainnya yang melalui open node manapun. Tetapi sejak estimasi tersebut optimistic, A* bisa mengabaikan secara aman node-node tersebut. Dengan kata lain, A* tidak akan pernah melewatkan kemungkinan adanya jalur dengan nilai cost yang rendah dan oleh karena itu hasilnya dapat diterima. Asumsikan sekarang ada sebuah algoritma lain pencarian lainnya A, menghentikan pencariannya dengan hasil jalur di mana nilai cost

16 24 sebenarnya tidak kurang dari nilai estimasi cost dari sebuah jalur melalui beberapa open node. Algortima A tidak bisa mengesampingkan kemungkinannya, berdasarkan dari informasi heuristic yang dimiliki, bahwa sebuah jalur melalui node tersebut mungkin mempunyai nilai cost yang lebih rendah. Jadi ketika metode A mungkin bisa mempertimbangkan node dengan jumlah yang lebih sedikit daripada metode A*, hal ini tidak dapat diterima. Dengan demikian, metode A* mempertimbangkan node dengan jumlah yang paling sedikit bila dibandingkan dengan algoritma pencarian yang bisa diterima lainnya yang menggunakan estimasi heuristic yang tidak akurat. 2.5 Pengenalan Bahasa Pemrograman Delphi 7.0 Borland Delphi atau yang biasa disebut Delphi saja, merupakan sarana pemrograman aplikasi visual. Bahasa pemrograman yang digunakan adalah bahasa pemrograman Pascal. Delphi merupakan generasi penerus dari Turbo Pascal. Turbo Pascal yang diluncurkan pada tahun 1983 dirancang untuk dijalankan pada sistem operasi DOS (yang merupakan sistem operasi yang paling banyak digunakan pada saat itu). Sedangkan Delphi yang diluncurkan pertama kali tahun 1995 dirancang untuk beroperasi di bawah sistem operasi Windows. Delphi memiliki sarana yang tangguh untuk pembuatan aplikasi, mulai dari sarana untuk pembuatan form, menu, toolbar, hingga kemampuan untuk menangani pengelolaan basis data yang besar. Kelebihan-kelebihan yang dimiliki Delphi antara lain karena pada Delphi, form dan komponen-

17 25 komponennya dapat dipakai ulang dan dikembangkan, mampu mengakses VBX, tersedia template aplikasi dan template form, memiliki lingkungan pengembangan visual yang dapat diatur sesuai kebutuhan, menghasilkan file terkompilasi yang berjalan lebih cepat, serta kemampuan mengakses data dari bermacam-macam format. Delphi menerapkan konsep aplikasi yang digerakan oleh event (even driven). Pemrograman event driven mencoba melengkapi kekurangan pemrograman prosedural dengan kerangka yang membedakan antara antarmuka pemakai dengan proses tertentu dalam aplikasi. Dengan adanya sarana pemrograman visual yang event driven, para pembuat aplikasi sangat terbantu ketika menyediakan sarana antarmuka bagi pemakai. Dengan demikian, harapannya ia akan lebih terkonsentrasi pada penanganan masalah aplikasinya, bukan antarmukanya. (Wahana Komputer, 2003, p1-3).

BAB 2 LANDASAN TEORI. 2.1 Pengoptimalan, Optimisasi, Algoritma, dan Analisis Algoritma

BAB 2 LANDASAN TEORI. 2.1 Pengoptimalan, Optimisasi, Algoritma, dan Analisis Algoritma 7 BAB 2 LANDASAN TEORI 2.1 Pengoptimalan, Optimisasi, Algoritma, dan Analisis Algoritma 2.1.1 Definisi Pengoptimalan Dalam Kamus Besar Bahasa Indonesia, pengoptimalan diartikan sebagai proses, cara, perbuatan

Lebih terperinci

Representasi Graf Berarah dalam Mencari Solusi Jalur Optimum Menggunakan Algoritma A*

Representasi Graf Berarah dalam Mencari Solusi Jalur Optimum Menggunakan Algoritma A* Representasi Graf Berarah dalam Mencari Solusi Jalur Optimum Menggunakan Algoritma A* Denny Nugrahadi Teknik informatika ITB, Bandung, email: d_nugrahadi@yahoo.com Abstract Makalah ini membahas mengenai

Lebih terperinci

BAB 2 LANDASAN TEORI. waktu yang diperlukan. Pengukuran waktu yang diperlukan dalam mengeksekusi suatu

BAB 2 LANDASAN TEORI. waktu yang diperlukan. Pengukuran waktu yang diperlukan dalam mengeksekusi suatu BAB 2 LANDASAN TEORI 2.1 Permasalahan NP-Hard dan NP-Complete Salah satu ukuran biaya dalam pengeksekusian sebuah algoritma adalah lamanya waktu yang diperlukan. Pengukuran waktu yang diperlukan dalam

Lebih terperinci

PENERAPAN ALGORITMA A* PADA PERMASALAHAN OPTIMALISASI PENCARIAN SOLUSI DYNAMIC WATER JUG

PENERAPAN ALGORITMA A* PADA PERMASALAHAN OPTIMALISASI PENCARIAN SOLUSI DYNAMIC WATER JUG PENERAPAN ALGORITMA A* PADA PERMASALAHAN OPTIMALISASI PENCARIAN SOLUSI DYNAMIC WATER JUG Firman Harianja (0911519) Mahasiswa Program Studi Teknik Informatika STMIK Budidarma Medan Jl. Sisingamangaraja

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Geographical Information System (GIS) Geographical Information System (GIS) yang dalam bahasa Indonesia dikenal sebagai Sistem Informasi Geografis (SIG) didefenisikan sebagai

Lebih terperinci

Aplikasi dan Analisis Algoritma BFS dan DFS dalam Menemukan Solusi pada Kasus Water Jug

Aplikasi dan Analisis Algoritma BFS dan DFS dalam Menemukan Solusi pada Kasus Water Jug Aplikasi dan Analisis Algoritma BFS dan DFS dalam Menemukan Solusi pada Kasus Water Jug Rizkydaya Aditya Putra NIM : 13506037 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika, Institut

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1 Algoritma A* Algoritma A star atau yang ditulis juga A* adalah algoritma yang seringkali digunakan dalam pencarian jalan dan traversal graf(setiawan,2010). Algoritma ini diciptakan

Lebih terperinci

VARIASI PENGGUNAAN FUNGSI HEURISTIK DALAM PENGAPLIKASIAN ALGORITMA A*

VARIASI PENGGUNAAN FUNGSI HEURISTIK DALAM PENGAPLIKASIAN ALGORITMA A* VARIASI PENGGUNAAN FUNGSI HEURISTIK DALAM PENGAPLIKASIAN ALGORITMA A* Mohammad Riftadi - NIM : 13505029 Teknik Informatika ITB Jalan Ganesha No. 10, Bandung e-mail: if15029@students.if.itb.ac.id ABSTRAK

Lebih terperinci

Tujuan Instruksional

Tujuan Instruksional Pertemuan 4 P E N C A R I A N T A N P A I N F O R M A S I B F S D F S U N I F O R M S E A R C H I T E R A T I V E D E E P E N I N G B I D I R E C T I O N A L S E A R C H Tujuan Instruksional Mahasiswa

Lebih terperinci

Kecerdasan Buatan. Penyelesaian Masalah dengan Pencarian... Pertemuan 02. Husni

Kecerdasan Buatan. Penyelesaian Masalah dengan Pencarian... Pertemuan 02. Husni Kecerdasan Buatan Pertemuan 02 Penyelesaian Masalah dengan Pencarian... Husni Lunix96@gmail.com http://komputasi.wordpress.com S1 Teknik Informatika, STMIK AMIKOM, 2013 Outline Konsep Pencarian Pencarian

Lebih terperinci

Metode Path Finding pada Game 3D Menggunakan Algoritma A* dengan Navigation Mesh

Metode Path Finding pada Game 3D Menggunakan Algoritma A* dengan Navigation Mesh Metode Path Finding pada Game 3D Menggunakan Algoritma A* dengan Navigation Mesh Freddi Yonathan - 13509012 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Teori Graph 2.1.1 Definisi Graph Menurut Dasgupta dkk (2008), graph merupakan himpunan tak kosong titik-titik yang disebut vertex (juga disebut dengan node) dan himpunan garis-garis

Lebih terperinci

Team project 2017 Dony Pratidana S. Hum Bima Agus Setyawan S. IIP

Team project 2017 Dony Pratidana S. Hum Bima Agus Setyawan S. IIP Hak cipta dan penggunaan kembali: Lisensi ini mengizinkan setiap orang untuk menggubah, memperbaiki, dan membuat ciptaan turunan bukan untuk kepentingan komersial, selama anda mencantumkan nama penulis

Lebih terperinci

Kecerdasan Buatan Penyelesaian Masalah dengan Pencarian

Kecerdasan Buatan Penyelesaian Masalah dengan Pencarian Kecerdasan Buatan Pertemuan 02 Penyelesaian Masalah dengan Pencarian Kelas 10-S1TI-03, 04, 05 Husni Lunix96@gmail.com http://komputasi.wordpress.com S1 Teknik Informatika, STMIK AMIKOM, 2012 Outline Pendahuluan

Lebih terperinci

BAB I PENDAHULUAN UKDW. dalam kehidupan kita sehari-hari, terutama bagi para pengguna sarana

BAB I PENDAHULUAN UKDW. dalam kehidupan kita sehari-hari, terutama bagi para pengguna sarana BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Pencarian jalur terpendek merupakan sebuah masalah yang sering muncul dalam kehidupan kita sehari-hari, terutama bagi para pengguna sarana transportasi. Para

Lebih terperinci

METODE PENCARIAN BFS dan DFS

METODE PENCARIAN BFS dan DFS METODE PENCARIAN BFS dan DFS Metode Pencarian Terdapat banyak metode yang telah diusulkan. Semua metode yang ada dapat dibedakan ke dalam 2 jenis : Pencarian buta / tanpa informasi (blind / un-informed

Lebih terperinci

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN SISTEM BAB III ANALISIS DAN PERANCANGAN SISTEM 3.1 Algoritma Breadth First Search Berikut ini adalah proses yang dilakukan dengan menggunakan algoritma Breadth first search untuk pencarian jalur. Proses pencarian

Lebih terperinci

Penerapan Search Tree pada Penyelesaian Masalah Penentuan Jalur Kota Terpendek.

Penerapan Search Tree pada Penyelesaian Masalah Penentuan Jalur Kota Terpendek. Penerapan Search Tree pada Penyelesaian Masalah Penentuan Jalur Kota Terpendek. Arnold Nugroho Sutanto - 13507102 1) 1) Jurusan Teknik Informatika ITB, Bandung 40132, email: if17102@students.if.itb.ac.id

Lebih terperinci

IF5110 Teori Komputasi. Teori Kompleksitas. (Bagian 1) Oleh: Rinaldi Munir. Program Studi Magister Informatika STEI-ITB

IF5110 Teori Komputasi. Teori Kompleksitas. (Bagian 1) Oleh: Rinaldi Munir. Program Studi Magister Informatika STEI-ITB IF5110 Teori Komputasi Teori Kompleksitas (Bagian 1) Oleh: Rinaldi Munir Program Studi Magister Informatika STEI-ITB 1 Sebuah persoalan dikatakan Solvable, jika terdapat mesin Turing yang dapat menyelesaikannya.

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Persoalan lintasan terpanjang (longest path) merupakan persoalan dalam mencari lintasan sederhana terpanjang maksimum dalam suatu graph yang diberikan. Lintasan terpanjang

Lebih terperinci

Pembahasan Pencarian Lintasan Terpendek Menggunakan Algoritma Dijkstra dan A*

Pembahasan Pencarian Lintasan Terpendek Menggunakan Algoritma Dijkstra dan A* Pembahasan Pencarian Lintasan Terpendek Menggunakan Algoritma Dijkstra dan A* Willy Setiawan - 13508043 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

Teori Kompleksitas (Bagian 2)

Teori Kompleksitas (Bagian 2) IF5110 Teori Komputasi Teori Kompleksitas (Bagian 2) Oleh: Rinaldi Munir Program Studi Magister Informatika STEI-ITB 1 Travelling Salesperson Problem Persoalan optimasi. Termasuk ke dalam kelas persoalan

Lebih terperinci

BAB III ALGORITMA GREEDY DAN ALGORITMA A* membangkitkan simpul dari sebuah simpul sebelumnya (yang sejauh ini terbaik di

BAB III ALGORITMA GREEDY DAN ALGORITMA A* membangkitkan simpul dari sebuah simpul sebelumnya (yang sejauh ini terbaik di BAB III ALGORITMA GREEDY DAN ALGORITMA A* 3.1 Best First Search Sesuai dengan namanya, best-first search merupakan sebuah metode yang membangkitkan simpul dari sebuah simpul sebelumnya (yang sejauh ini

Lebih terperinci

memberikan output berupa solusi kumpulan pengetahuan yang ada.

memberikan output berupa solusi kumpulan pengetahuan yang ada. MASALAH DAN METODE PEMECAHAN MASALAH (Minggu 2) Pendahuluan Sistem yang menggunakan kecerdasan buatan akan memberikan output berupa solusi dari suatu masalah berdasarkan kumpulan pengetahuan yang ada.

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Pengertian Algoritma Algoritma merupakan urutan langkah langkah untuk menyelesaikan masalah yang disusun secara sistematis, algoritma dibuat dengan tanpa memperhatikan bentuk

Lebih terperinci

Simulasi Pencarian Rute Terpendek dengan Metode Algoritma A* (A-Star) Agus Gustriana ( )

Simulasi Pencarian Rute Terpendek dengan Metode Algoritma A* (A-Star) Agus Gustriana ( ) Simulasi Pencarian Rute Terpendek dengan Metode Algoritma A* (A-Star) Agus Gustriana (0222182) Jurusan Teknik Elektro, Fakultas Teknik, Jl. Prof. Drg. Suria Sumantri 65, Bandung 40164, Indonesia E-mail

Lebih terperinci

PERANCANGAN APLIKASI PENCARIAN (SEARCHING) FILE DENGAN MENGGUNAKAN METODE BEST FIRST SEARCH JUNA ESKA,

PERANCANGAN APLIKASI PENCARIAN (SEARCHING) FILE DENGAN MENGGUNAKAN METODE BEST FIRST SEARCH JUNA ESKA, PERANCANGAN APLIKASI PENCARIAN (SEARCHING) FILE DENGAN MENGGUNAKAN METODE BEST FIRST SEARCH JUNA ESKA, M.Kom STMIK ROYAL Kisaran ABSTRACT The Best First Search method is content-based search and software

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 6 BAB 2 LANDASAN TEORI 2.1 Pengertian Algoritma Menurut (Suarga, 2012 : 1) algoritma: 1. Teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dengan jumlah kata terbatas tetapi tersusun

Lebih terperinci

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program.

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program. BAHASA PEMROGRAMAN PROGRAM Kata, ekspresi, pernyataan atau kombinasinya yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah yang diimplementasikan

Lebih terperinci

Penerapan Algoritma A* (A Star) Sebagai Solusi Pencarian Rute Terpendek Pada Maze

Penerapan Algoritma A* (A Star) Sebagai Solusi Pencarian Rute Terpendek Pada Maze Penerapan Algoritma A* (A Star) Sebagai Solusi Pencarian Rute Terpendek Pada Maze 1 Rakhmat Kurniawan. R., ST, M.Kom, 2 Yusuf Ramadhan Nasution, M.Kom Program Studi Ilmu Komputer, Fakultas Sains dan Teknologi

Lebih terperinci

ALGORITMA PENCARIAN. 1. Iterative-Deepening Depth-First Search (IDS) Nama : Gede Noverdi Indra Wirawan Nim : Kelas : VI A

ALGORITMA PENCARIAN. 1. Iterative-Deepening Depth-First Search (IDS) Nama : Gede Noverdi Indra Wirawan Nim : Kelas : VI A Nama : Gede Noverdi Indra Wirawan Nim : 0915051050 Kelas : VI A ALGORITMA PENCARIAN Algoritma pencarian (searching algorithm) adalah algoritma yang menerima sebuah argumen kunci dan dengan langkah-langkah

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1 Graf 2.1.1 Definisi Graf Graf adalah pasangan himpunan (V, E), dan ditulis dengan notasi G = (V, E), V adalah himpunan tidak kosong dari verteks-verteks {v 1, v 2,, v n } yang

Lebih terperinci

Pencarian Lintasan Terpendek Pada Aplikasi Navigasi Menggunakan Algoritma A*

Pencarian Lintasan Terpendek Pada Aplikasi Navigasi Menggunakan Algoritma A* Pencarian Lintasan Terpendek Pada Aplikasi Navigasi Menggunakan Algoritma A* Erfandi Suryo Putra 13515145 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

ALGORITMA PENCARIAN (1)

ALGORITMA PENCARIAN (1) ALGORITMA PENCARIAN (1) Permasalahan, Ruang Keadaan, Pencarian Farah Zakiyah Rahmanti Diperbarui 2016 Overview Deskripsi Permasalahan dalam Kecerdasan Buatan Definisi Permasalahan Pencarian Breadth First

Lebih terperinci

Penerapan Algoritma A* dalam Penentuan Lintasan Terpendek

Penerapan Algoritma A* dalam Penentuan Lintasan Terpendek Penerapan Algoritma A* dalam Penentuan Lintasan Terpendek Johannes Ridho Tumpuan Parlindungan/13510103 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

SSSS, Problem Solving. State Space Search. Erick Pranata. Edisi I

SSSS, Problem Solving. State Space Search. Erick Pranata. Edisi I SSSS, Problem Solving State Space Search Erick Pranata Edisi I 19/04/2013 Definisi Merupakan sebuah teknik dalam kecerdasan buatan yang dapat digunakan untuk mencari langkah-langkah yang perlu ditempuh

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Program Ganda Teknik informatika - Matematika Skripsi Sarjana Program Ganda Semester Genap 2006/2007

UNIVERSITAS BINA NUSANTARA. Program Ganda Teknik informatika - Matematika Skripsi Sarjana Program Ganda Semester Genap 2006/2007 UNIVERSITAS BINA NUSANTARA Program Ganda Teknik informatika - Matematika Skripsi Sarjana Program Ganda Semester Genap 2006/2007 SKRIPSI PROGRAM GANDA UNIVERSITAS BINA NUSANTARA Lulita L Kadarusman 0600656431

Lebih terperinci

Penerapan Metode Best First Search Pada Permainan Tic Tac Toe

Penerapan Metode Best First Search Pada Permainan Tic Tac Toe Penerapan Metode Best First Search Pada Permainan Tic Tac Toe Harvei Desmon Hutahaean STMIK Pelita Nusantara, Jl. Iskandar Muda No. 1 Medan, Sumatera Utara, Indonesia http : // www.penusa.ac.id, Email:

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Perumusan Masalah

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Perumusan Masalah BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Saat ini teknologi telah berkembang dengan cukup pesat. Perkembangan teknologi mengakibatkan pemanfaatan atau pengimplementasian teknologi tersebut dalam berbagai

Lebih terperinci

Perbandingan Algoritma Dijkstra Dan Algoritma Ant Colony Dalam Penentuan Jalur Terpendek

Perbandingan Algoritma Dijkstra Dan Algoritma Ant Colony Dalam Penentuan Jalur Terpendek Perbandingan Algoritma Dijkstra Dan Algoritma Ant Colony Dalam Penentuan Jalur Terpendek Finsa Ferdifiansyah NIM 0710630014 Jurusan Teknik Elektro Konsentrasi Rekayasa Komputer Fakultas Teknik Universitas

Lebih terperinci

ALGORITMA PENCARIAN (HEURISTIC)

ALGORITMA PENCARIAN (HEURISTIC) ALGORITMA PENCARIAN (HEURISTIC) Farah Zakiyah Rahmanti, M.T Diperbarui 2016 Overview Pengertian Pencarian Heuristik Generate and Test Hill Climbing Best First Searching Latihan Pencarian Heuristik Merupakan

Lebih terperinci

BAB 2 LANDASAN TEORI. dihadapi di dunia nyata (real world). Banyak metode yang dibangun dalam Operations

BAB 2 LANDASAN TEORI. dihadapi di dunia nyata (real world). Banyak metode yang dibangun dalam Operations BAB 2 LANDASAN TEORI 2.1 Simulasi 2.1.1 Pengertian Simulasi Simulasi merupakan salah satu cara untuk memecahkan berbagai persoalan yang dihadapi di dunia nyata (real world). Banyak metode yang dibangun

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Pendahuluan

BAB 1 PENDAHULUAN. 1.1 Pendahuluan BAB 1 PENDAHULUAN 1.1 Pendahuluan Dewasa ini fungsi komputer semakin dibutuhkan, baik bagi perusahaan besar maupun kecil. Adapun fungsi dari komputer itu sendiri adalah mengolah data-data yang ada menjadi

Lebih terperinci

SEARCHING SIMULATION SHORTEST ROUTE OF BUS TRANSPORTATION TRANS JAKARTA INDONESIA USING ITERATIVE DEEPENING ALGORITHM AND DJIKSTRA ALGORITHM

SEARCHING SIMULATION SHORTEST ROUTE OF BUS TRANSPORTATION TRANS JAKARTA INDONESIA USING ITERATIVE DEEPENING ALGORITHM AND DJIKSTRA ALGORITHM SEARCHING SIMULATION SHORTEST ROUTE OF BUS TRANSPORTATION TRANS JAKARTA INDONESIA USING ITERATIVE DEEPENING ALGORITHM AND DJIKSTRA ALGORITHM Ditto Djesmedi ( 0222009 ) Jurusan Teknik Elektro, Fakultas

Lebih terperinci

BAB IV HASIL DAN UJI COBA

BAB IV HASIL DAN UJI COBA BAB IV HASIL DAN UJI COBA IV.1. Hasil Berikut ini dijelaskan tentang tampilan hasil dari Perancangan Sistem Informasi Geografis Lokasi Loket Bus di Kota Medan dapat dilihat sebagai berikut : IV.1.1. Hasil

Lebih terperinci

Implementasi Logika Penurunan Persamaan Aritmatika pada Program Komputer

Implementasi Logika Penurunan Persamaan Aritmatika pada Program Komputer Implementasi Logika Penurunan Persamaan Aritmatika pada Program Komputer Cendhika Imantoro - 13514037 Program Studi Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

Penyelesaian N-Puzzle Menggunakan A* dan Iterative Deepening A*

Penyelesaian N-Puzzle Menggunakan A* dan Iterative Deepening A* Penyelesaian N-Puzzle Menggunakan A* dan Iterative Deepening A* Makalah IF2211 Strategi Algoritma Marvin Jerremy Budiman (13515076) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika

Lebih terperinci

Penerapan strategi BFS untuk menyelesaikan permainan Unblock Me beserta perbandingannya dengan DFS dan Branch and Bound

Penerapan strategi BFS untuk menyelesaikan permainan Unblock Me beserta perbandingannya dengan DFS dan Branch and Bound Penerapan strategi BFS untuk menyelesaikan permainan Unblock Me beserta perbandingannya dengan DFS dan Branch and Bound Eric 13512021 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika

Lebih terperinci

Analisis Model dan Simulasi. Hanna Lestari, M.Eng

Analisis Model dan Simulasi. Hanna Lestari, M.Eng Analisis Model dan Simulasi Hanna Lestari, M.Eng Simulasi dan Pemodelan Klasifikasi Model preskriptif deskriptif diskret kontinu probabilistik deterministik statik dinamik loop terbuka - tertutup Simulasi

Lebih terperinci

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Transportasi telah menjadi salah satu kebutuhan penting dalam kegiatan sehari-hari di kehidupan bermasyarakat. Kemajuan teknologi informasi yang ada sekarang,

Lebih terperinci

Penerapan Algoritma A-star (A*) Untuk Menyelesaikan Masalah Maze

Penerapan Algoritma A-star (A*) Untuk Menyelesaikan Masalah Maze Penerapan Algoritma A-star (A*) Untuk Menyelesaikan Masalah Maze Hapsari Tilawah - 13509027 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

BAB I PENDAHULUAN. Masalah lintasan terpendek berkaitan dengan pencarian lintasan pada graf

BAB I PENDAHULUAN. Masalah lintasan terpendek berkaitan dengan pencarian lintasan pada graf BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Masalah lintasan terpendek berkaitan dengan pencarian lintasan pada graf berbobot yang menghubungkan dua buah simpul sedemikian hingga jumlah bobot sisi-sisi

Lebih terperinci

Struktur Data dan Analisa Algoritma

Struktur Data dan Analisa Algoritma Struktur Data dan Analisa Algoritma Mahasiswa mampu menjelaskan teknik dasar abstraksi data, dalam bentuk struktur data Mahasiswa mampu menyelesaikan permasalahan dengan memanfaatkan struktur data Mahasiswa

Lebih terperinci

Pencarian Jalur Terpendek dengan Algoritma Dijkstra

Pencarian Jalur Terpendek dengan Algoritma Dijkstra Volume 2 Nomor 2, Oktober 207 e-issn : 24-20 p-issn : 24-044X Pencarian Jalur Terpendek dengan Algoritma Dijkstra Muhammad Khoiruddin Harahap Politeknik Ganesha Medan Jl.Veteran No. 4 Manunggal choir.harahap@yahoo.com

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Algoritma 2.1.1 Definisi Algoritma Algoritma berasal dari kata Algoris dan Ritmis, kata-kata tersebut berasal dari seorang ahli matematika, Mohammed Ibn-Musa Al-Khawarizmi, yang

Lebih terperinci

BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG

BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG 1 BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG Graf merupakan salah satu cabang ilmu matematika yang dapat digunakan dalam membantu persoalan diberbagai bidang seperti masalah komunikasi, transportasi, distribusi,

Lebih terperinci

Jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Teknologi Sepuluh Nopember Surabaya 2011

Jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Teknologi Sepuluh Nopember Surabaya 2011 Perancangan dan Pembuatan Sistem Navigasi Perjalanan Untuk Pencarian Rute Terpendek Dengan Algoritma A* Berbasis J2ME Oleh : M. ARIEF HIDAYATULLOH 1204 100 071 Dosen Pembimbing : Prof. Dr. M. Isa Irawan,

Lebih terperinci

Pelacakan dan Penentuan Jarak Terpendek terhadap Objek dengan BFS (Breadth First Search) dan Branch and Bound

Pelacakan dan Penentuan Jarak Terpendek terhadap Objek dengan BFS (Breadth First Search) dan Branch and Bound Pelacakan dan Penentuan Jarak Terpendek terhadap Objek dengan BFS (Breadth First Search) dan Branch and Bound Mico (13515126) Teknik Informatika Sekolah Teknik Elektro dan Informatika ITB Jl. Ganesha 10,

Lebih terperinci

IMPLEMENTASI HIERARCHICAL CLUSTERING DAN BRANCH AND BOUND PADA SIMULASI PENDISTRIBUSIAN PAKET POS

IMPLEMENTASI HIERARCHICAL CLUSTERING DAN BRANCH AND BOUND PADA SIMULASI PENDISTRIBUSIAN PAKET POS IMPLEMENTASI HIERARCHICAL CLUSTERING DAN BRANCH AND BOUND PADA SIMULASI PENDISTRIBUSIAN PAKET POS SKRIPSI Diajukan Untuk Memenuhi Sebagian Syarat Guna Memperoleh Gelar Sarjana Komputer (S.Kom.) Pada Program

Lebih terperinci

ALGORITMA PENCARIAN SIMPUL SOLUSI DALAM GRAF

ALGORITMA PENCARIAN SIMPUL SOLUSI DALAM GRAF ALGORITMA PENCARIAN SIMPUL SOLUSI DALAM GRAF Anthony Rahmat Sunaryo NIM: 3506009 Jurusan Teknik Informatika ITB, Bandung email : if6009@students.if.itb.ac.id Abstract -- Makalah ini membahas tentang analsis

Lebih terperinci

LESSON 6 : INFORMED SEARCH Part II

LESSON 6 : INFORMED SEARCH Part II LESSON 6 : INFORMED SEARCH Part II 3.3 Itterative deepening A* search 3.3.1 Algoritma IDA* Itterative deepening search atau IDA* serupa dengan iterative deepening depth first, namun dengan modifikasi sebagai

Lebih terperinci

METODE PENCARIAN DAN PELACAKAN

METODE PENCARIAN DAN PELACAKAN METODE PENCARIAN DAN PELACAKAN SISTEM INTELEGENSIA Pertemuan 4 Diema Hernyka S, M.Kom Materi Bahasan Metode Pencarian & Pelacakan 1. Pencarian buta (blind search) a. Pencarian melebar pertama (Breadth

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Dalam kehidupan sehari hari, selalu dilakukan perjalanan dari satu titik atau lokasi ke lokasi yang lain dengan mempertimbangkan efisiensi waktu dan biaya sehingga

Lebih terperinci

CHAPTER 3 ALGORITHMS 3.1 ALGORITHMS

CHAPTER 3 ALGORITHMS 3.1 ALGORITHMS CHAPTER 3 ALGORITHMS 3.1 ALGORITHMS Algoritma Definisi 1. Algoritma adalah himpunan hingga perintah yang terinci dalam melakukan perhitungan atau pemecahan masalah. Contoh 1. Program komputer adalah suatu

Lebih terperinci

Sistem Kecerdasan Buatan. Masalah, Ruang Masalah dan Pencarian Solusi. Masalah. Masalah Sebagai Ruang Keadaan 10/7/2015

Sistem Kecerdasan Buatan. Masalah, Ruang Masalah dan Pencarian Solusi. Masalah. Masalah Sebagai Ruang Keadaan 10/7/2015 Sistem Kecerdasan Buatan Masalah, Ruang Masalah dan Pencarian Solusi Bahan Bacaan : Sri Kusumadewi, Artificial Intelligence. Russel, Artificial Intelligence Modern Approach 2 bagian utama kecerdasan buatan

Lebih terperinci

Pertemuan-07 INFORMATIKA FASILKOM UNIVERSITAS IGM

Pertemuan-07 INFORMATIKA FASILKOM UNIVERSITAS IGM 07/04/2016 3. HEURISTIC METHOD Algoritma yang menggunakan Metode Best-First Search, yaitu: 1 Literatur Review KECERDASAN BUATAN Pertemuan-07 INFORMATIKA FASILKOM UNIVERSITAS IGM a. Greedy Best-First Greedy

Lebih terperinci

BAB I PENDAHULUAN. media penyimpanan data yang memiliki ukuran hingga ratusan gigabyte bahkan

BAB I PENDAHULUAN. media penyimpanan data yang memiliki ukuran hingga ratusan gigabyte bahkan BAB I PENDAHULUAN I.1. Latar Belakang Perkembangan teknologi komputer dewasa ini memungkinkan disimpannya data dalam bentuk file dalam jumlah yang besar karena adanya media penyimpanan data yang memiliki

Lebih terperinci

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM III.1. Analisis Masalah Proses analisa sistem merupakan langkah kedua pada pengembangan sistem. Analisa sistem dilakukan untuk memahami informasi-informasi

Lebih terperinci

Penggunaan Algoritma Pathfinding pada Game

Penggunaan Algoritma Pathfinding pada Game Penggunaan Algoritma Pathfinding pada Game Ahmad Fauzan (000) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 0 Bandung 0, Indonesia 000@std.stei.itb.ac.id

Lebih terperinci

BAB I PENDAHULUAN. ini. Salah satu penerapannya yaitu terdapat pada permasalahan dalam melakukan pencarian dari

BAB I PENDAHULUAN. ini. Salah satu penerapannya yaitu terdapat pada permasalahan dalam melakukan pencarian dari BAB I PENDAHULUAN 1.1 Latar Belakang Pencarian merupakan suatu permasalahan dalam menemukan solusi dari kondisi awal ke kondisi akhir. Berbagai macam permasalahan dapat diterapkan dalam permasalahan pencarian

Lebih terperinci

Aplikasi Graf pada Persoalan Lintasan Terpendek dengan Algoritma Dijkstra

Aplikasi Graf pada Persoalan Lintasan Terpendek dengan Algoritma Dijkstra Aplikasi Graf pada Persoalan Lintasan Terpendek dengan Algoritma Dijkstra Adriansyah Ekaputra 13503021 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung Abstraksi Makalah

Lebih terperinci

PENERAPANAN ALGORITMA BFS, DFS, DAN UCS UNTUK MENCARI SOLUSI PADA MASALAH ROMANIA

PENERAPANAN ALGORITMA BFS, DFS, DAN UCS UNTUK MENCARI SOLUSI PADA MASALAH ROMANIA PENERAPANAN ALGORITMA BFS, DFS, DAN UCS UNTUK MENCARI SOLUSI PADA MASALAH ROMANIA 1. PENDAHULUAN Pada zaman serba modern ini, peta masih digunakan oleh kebanyakan orang untuk menuju dari suatu titik awal

Lebih terperinci

PENGEMBANGAN APLIKASI GAME ARCADE 3D MARI SELAMATKAN HUTAN INDONESIA

PENGEMBANGAN APLIKASI GAME ARCADE 3D MARI SELAMATKAN HUTAN INDONESIA PENGEMBANGAN APLIKASI GAME ARCADE 3D MARI SELAMATKAN HUTAN INDONESIA Dyah Ayu Irawati 1, Abdillah Ibnu Firdaus 2, Ridwan Rismanto 3 Program Studi Teknik Informatika, Jurusan Teknologi Informasi,Politeknik

Lebih terperinci

Masalah, Ruang Masalah dan Pencarian

Masalah, Ruang Masalah dan Pencarian Masalah, Ruang Masalah dan Pencarian Definisi Masalah dan Ruang Masalah Metode Pencarian Buta Breadth First Search Depth First Search Referensi Luger & Stubblefield - bab 3 Sri Kusumadewi - bab 2 Rich

Lebih terperinci

PERBANDINGAN METODE PENCARIAN DEPTH-FIRST SEARCH, BREADTH-FIRST SEARCH DAN BEST-FIRST SEARCH PADA PERMAINAN 8-PUZZLE

PERBANDINGAN METODE PENCARIAN DEPTH-FIRST SEARCH, BREADTH-FIRST SEARCH DAN BEST-FIRST SEARCH PADA PERMAINAN 8-PUZZLE e-journal Teknik Elektro dan Komputer (2014) ISSN: 2301-8402 1 PERBANDINGAN METODE PENCARIAN DEPTH-FIRST SEARCH, BREADTH-FIRST SEARCH DAN BEST-FIRST SEARCH PADA PERMAINAN 8-PUZZLE Oleh: Arie S. M. Lumenta

Lebih terperinci

BAB 1 PENDAHULUAN. dapat menyelesaikan masalah maka perlu dirumuskan terlebih dahulu langkahlangkah

BAB 1 PENDAHULUAN. dapat menyelesaikan masalah maka perlu dirumuskan terlebih dahulu langkahlangkah BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Komputer merupakan salah satu alat bantu untuk menyelesaikan masalah. Untuk dapat menyelesaikan masalah maka perlu dirumuskan terlebih dahulu langkahlangkah

Lebih terperinci

Review Teori P dan NP

Review Teori P dan NP IF5110 Teori Komputasi Review Teori P dan NP Oleh: Rinaldi Munir Program Studi Magister Informatika STEI-ITB 1 2 Pendahuluan Kebutuhan waktu algoritma yang mangkus bervariasi, mulai dari O(1), O(log log

Lebih terperinci

TEKNIK PENYELESAIAN MASALAH BERDASARKAN AI

TEKNIK PENYELESAIAN MASALAH BERDASARKAN AI TEKNIK PENYELESAIAN MASALAH BERDASARKAN AI 1. Definisikan masalah dengan tepat 2. Analisa masalahnya 3. Representasikan task knowledge 4. Pilih dan gunakan representasi dan teknik reasoning Untuk mendefinisikan

Lebih terperinci

PENGGUNAAN ALGORITMA BRANCH AND BOUND UNTUK MENYELESAIKAN PERSOALAN PENCARIAN JALAN (PATH-FINDING)

PENGGUNAAN ALGORITMA BRANCH AND BOUND UNTUK MENYELESAIKAN PERSOALAN PENCARIAN JALAN (PATH-FINDING) PENGGUNAAN ALGORITMA BRANCH AND BOUND UNTUK MENYELESAIKAN PERSOALAN PENCARIAN JALAN (PATH-FINDING) R. Aditya Satrya Wibawa (NIM. 30064) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika

Lebih terperinci

BAB 2 LANDASAN TEORI. telah selesai apabila tujuan telah dicapai atau sudah tidak ada lagi (Psquet, Sebastian,

BAB 2 LANDASAN TEORI. telah selesai apabila tujuan telah dicapai atau sudah tidak ada lagi (Psquet, Sebastian, BAB 2 LANDASAN TEORI 2.1 Problem, Algoritma dan analisis algoritma 2.1.1 Definisi Problem Problem (permasalahan) adalah suatu tujuan yang dinyatakan dalam konteks yang jelas tetapi tidak dapat dengan serta

Lebih terperinci

Aplikasi Branch and Bound Pada Pencarian Jalan Pada Software Navigasi

Aplikasi Branch and Bound Pada Pencarian Jalan Pada Software Navigasi Aplikasi Branch and Bound Pada Pencarian Jalan Pada Software Navigasi Rita Sarah / 13512009 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM BAB III ANALISIS DAN DESAIN SISTEM III.1. Analisis Masalah Loket Bus merupakan tempat dimana masyarakat yang akan memesan atau membeli suatu tiket untuk menggunakan sarana transportasi bus sebagai keperluan

Lebih terperinci

Penyelesaian Persoalan Penukaran Uang dengan Program Dinamis

Penyelesaian Persoalan Penukaran Uang dengan Program Dinamis Penyelesaian Persoalan Penukaran Uang dengan Program Dinamis Albert Logianto - 13514046 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10

Lebih terperinci

BAB III ALGORITMA BRANCH AND BOUND. Algoritma Branch and Bound merupakan metode pencarian di dalam ruang

BAB III ALGORITMA BRANCH AND BOUND. Algoritma Branch and Bound merupakan metode pencarian di dalam ruang BAB III ALGORITMA BRANCH AND BOUND Algoritma Branch and Bound merupakan metode pencarian di dalam ruang solusi secara sistematis. Ruang solusi diorganisasikan ke dalam pohon ruang status. Pohon ruang status

Lebih terperinci

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB 4 IMPLEMENTASI DAN EVALUASI 54 BAB 4 IMPLEMENTASI DAN EVALUASI 4.1 Implementasi Program 4.1.1 Spesifikasi Kebutuhan Program Spesifikasi Perangkat Keras Perangkat keras yang digunakan untuk merancang sistem ini adalah : Processor

Lebih terperinci

BAB 1 PENDAHULUAN. Universitas Sumatera Utara

BAB 1 PENDAHULUAN. Universitas Sumatera Utara BAB 1 PENDAHULUAN 1.1 Latar Belakang Semakin dengan berkembangnya teknologi fotografi di Indonesia, khususnya di Kota Medan, fotografi tidak hanya sebagai sarana atau alat untuk mengabadikan suatu kejadian

Lebih terperinci

Matematika dan Statistika

Matematika dan Statistika ISSN 1411-6669 MAJALAH ILMIAH Matematika dan Statistika DITERBITKAN OLEH: JURUSAN MATEMATIKA FMIPA UNIVERSITAS JEMBER Majalah Ilmiah Matematika dan Statistika APLIKASI ALGORITMA SEMUT DAN ALGORITMA CHEAPEST

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Permainan (game) merupakan bidang usaha manusia terhadap kecerdasan buatan, salah satunya adalah sliding puzzle. Permainan ini merupakan permainan yang dapat melatih

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 18 BAB 2 LANDASAN TEORI 2.1. Pengertian Algoritma Algoritma adalah urutan atau deskripsi langkah- langkah penyelesaian masalah yang tersusun secara logis, ditulis dengan notasi yang mudah dimengerti sedemikian

Lebih terperinci

IMPLEMENTASI DAN PENGUJIAN

IMPLEMENTASI DAN PENGUJIAN BAB 4 IMPLEMENTASI DAN PENGUJIAN Pada bab ini akan dilakukan implementasi dan pengujian terhadap aplikasi yang dibangun. Tahapan ini dilakukan setelah analisis dan perancangan selesai dilakukan dan selanjutnya

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Teori Graf 2.1.1 Defenisi Graf Graf G didefenisikan sebagai pasangan himpunan (V,E), ditulis dengan notasi G = (V,E), yang dalam hal ini V adalah himpunan tidak kosong dari simpul-simpul

Lebih terperinci

Pengaplikasian Algoritma Dijkstra Dalam Pembuatan Agenda Penerbangan

Pengaplikasian Algoritma Dijkstra Dalam Pembuatan Agenda Penerbangan Pengaplikasian Algoritma Dijkstra Dalam Pembuatan Agenda Penerbangan Muhammad Iqbal / 13510064 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM Latar belakang terbentuknya perusahaan IBM ini dikarenakan melihat

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM Latar belakang terbentuknya perusahaan IBM ini dikarenakan melihat 26 BAB 3 ANALISIS DAN PERANCANGAN PROGRAM 3.1 Latar Belakang Perusahaan IBM 3.1.1 Sejarah Perusahaan Perusahaan IBM (Indonesia Bisnis Mandiri) adalah sebuah perusahaan yang bergerak dibidang trading (perdagangan)

Lebih terperinci

IKI 30320: Sistem Cerdas Kuliah 4: Uninformed Search Strategies (Rev.)

IKI 30320: Sistem Cerdas Kuliah 4: Uninformed Search Strategies (Rev.) IKI 30320: Sistem erdas : Uninformed Search Strategies (Rev.) Fakultas Ilmu Komputer Universitas Indonesia 5 September 2007 Outline 1 2 3 4 5 Iterative-deepening 6 7 Outline 1 2 3 4 5 Iterative-deepening

Lebih terperinci

PERBANDINGAN ALGORITMA BFS DAN DFS DALAM PEMBUATAN RUTE PERJALANAN OBJEK PERMAINAN 2 DIMENSI

PERBANDINGAN ALGORITMA BFS DAN DFS DALAM PEMBUATAN RUTE PERJALANAN OBJEK PERMAINAN 2 DIMENSI PERBANDINGAN ALGORITMA BFS DAN DFS DALAM PEMBUATAN RUTE PERJALANAN OBJEK PERMAINAN 2 DIMENSI David Steven Wijaya NIM : 13505044 Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika,

Lebih terperinci

Bab 2 2. Teknik Pencarian

Bab 2 2. Teknik Pencarian Bab 2 2. Teknik Pencarian Bab ini membahas bagaimana membuat ruang masalah untuk suatu masalah tertentu. Sebagian masalah mempunyai ruang masalah yang dapat diprediksi, sebagian lainnya tidak. 1.1 Pendefinisian

Lebih terperinci

BAB II LANDASAN TEORI. besar disebut material (bin, bins) dipetakan dan kemudian dipotong-potong

BAB II LANDASAN TEORI. besar disebut material (bin, bins) dipetakan dan kemudian dipotong-potong BAB II LANDASAN TEORI 2.1. Deskripsi Cutting dan Packing Skripsi ini membahas masalah stock cutting, yaitu satu atau banyak potongan besar disebut material (bin, bins) dipetakan dan kemudian dipotong-potong

Lebih terperinci

KECERDASAN BUATAN METODE HEURISTIK / HEURISTIC SEARCH ERWIEN TJIPTA WIJAYA, ST., M.KOM

KECERDASAN BUATAN METODE HEURISTIK / HEURISTIC SEARCH ERWIEN TJIPTA WIJAYA, ST., M.KOM KECERDASAN BUATAN METODE HEURISTIK / HEURISTIC SEARCH ERWIEN TJIPTA WIJAYA, ST., M.KOM KERANGKA MASALAH Generate And Test Hill Climbing Best First Search PENCARIAN HEURISTIK Kelemahan blind search : 1.

Lebih terperinci

AI sebagai Masalah Pelacakan. Lesson 2

AI sebagai Masalah Pelacakan. Lesson 2 AI sebagai Masalah Pelacakan Lesson 2 Teknik Pencarian Pendahuluan Setelah permasalahan direpresentasikan dalam bentuk state-space, maka selanjutnya dilakukan pencarian (searching) di dalam state-space

Lebih terperinci

WEBGIS PENCARIAN RUTE TERPENDEK MENGGUNAKAN ALGORITM A STAR (A*) (Studi Kasus: Kota Bontang)

WEBGIS PENCARIAN RUTE TERPENDEK MENGGUNAKAN ALGORITM A STAR (A*) (Studi Kasus: Kota Bontang) Jurnal Informatika Mulawarman Vol. 8 No. 2 Edisi Juli 2013 50 WEBGIS PENCARIAN RUTE TERPENDEK MENGGUNAKAN ALGORITM A STAR (A*) (Studi Kasus: Kota Bontang) 1) Yuliani, 2) Fahrul Agus 1,2) Program Studi

Lebih terperinci