P. 1
Makalah TI

Makalah TI

|Views: 820|Likes:
Published by Arga Brahmantyo

More info:

Published by: Arga Brahmantyo on Sep 22, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

01/27/2013

pdf

text

original

BAB I PENDAHULUAN

1.1 Latar Belakang Pada era globalisasi saat ini teknlogi berkembang pesat. Teknologi hampir memasuki semua lini kehidupan. Dalam makalah ini lebih membahas teknologi yang memasuki dunia hiburan terutama bidang permainan. Teknologi yang sering dijumpai dalam permainan sekarang ini adalah teknologi kecerdasan buatan (AI).Kecerdasan buatan adalah Teknologi yang mensimulasikan kecerdasan manusia, yaitu bagaimana mendefinisikan dan mencoba menyelesaikan persoalan menggunakan computer dengan meniru bagaimana manusia menyelesaikan dengan cepat. Pemainan sudah ada sejak jaman dahulu. Permainan merupakan sebuah aktivitas rekreasi dengan tujuan bersenang-senang, mengisi waktu luang, atau berolahraga ringan. Permainan biasanya dilakukan sendiri atau bersama-sama (kelompok). Orthello adalah pemainan sederhana yang menerapkan teknologi terkini untuk memenangkannya. Setelah membaca makalah ini para pembaca diharapkan lebih bias memanfaatkan teknologi di semua lini kehidupan termasuk dalam sebuah permainan.

1.2 Tujuan y Mengetahui teknologi kecerdasan buatan pada sebuah permainan y Dapat menggunakan kemajuan teknologi dalam permainan. y Membuat mesin lebih bermanfaat 1.3 Manfaat y Teknologi kecerdasan buatan dapat dimanfaatkan dalam permainan. y Menambah ilmu tentang memenangkan permaianan dengan kecerdasan buatan

BAB 2 PERUMUSAN MASALAH Sehubungan dengan latar belakang diatas timbul permasalahan,permasalahan tersebut dapat dirumuskan sebagai berikut : 1. 2. 3. 4. Apa itu kecerdasan buatan ? Apa yang terkandung dalam kecerdasan buatan? Syarat game playing apa saja? Bagaiaman cara memenangkan game orthello menggunakan teknologi kecerdasan buatan?

aplikasi dan instruksi yang terkait dengan pemrograman komputer untuk melakukan sesuatu hal yang -dalam pandangan manusia adalah. Program computer standar hanya bias menyelesaikan persoalan yang di program secara spesifik. Jika sebuah program standar perlu dirubah untuk menyesuaikan diri dengan informasi baru. Simon [1987] : ³ Kecerdasan buatan (artificial intelligence) merupakan kawasan penelitian. .cerdas´ Rich and Knight [1991]: ³Kecerdasan Buatan (AI) merupakan sebuah studi tentang bagaimana membuat komputer melakukan hal-hal yang pada saat ini dapat dilakukan lebih baik oleh manusia.´ · Encyclopedia Britannica: ³Kecerdasan Buatan (AI) merupakan cabang dari ilmu komputer yang dalam merepresentasi pengetahuan lebih banyak menggunakan bentuk simbol-simbol daripada bilangan. seluruh program harus dilihat satu persatu sampai kita dapatkan ruang optimal untuk meyisipkan perubahan atau modifikasi tersebut. A. Cara seperti ini tidak hanya memboroskan waktu. Kecerdasan Buatan menawarkan baik media maupun teori kecerdasan. dan memproses informasi berdasarkan metode heuristic atau dengan berdasarkan sejumlah aturan´ Dengan beberapa definisi diatas. berikut definisi dari kecerdasan buatan atau kita kenal dgn AI H.Dengan cara menyederhanakan program.Teknik yang digunakan dalam kecerdasan buatan memungkinkan dibuatnya sebuah program yang berjalan secara indepeden dan dapat diidentifikasi dengan baik untuk memecahkan suatu persoalan. Sebaliknya kecerdasan buatan dapat memungkinkan computer µberfikir¶.BAB II PEMBAHASAN Kecerdasan buatan memeliki beberapa definisi menurut beberapa sumber. Teori-teori ini dapat dinyatakan dalam bahasa program computer dan dibuktikan eksekusinya pada computer nyata. namun juga dapat menghilangkan bagian tertentu dari program sehingga mudah timbulnya error. Kecerdasan buatan dapat menirukan proses belajar manusia sehingga informasi baru dapat diserap tanpa mempengaruhi informasi lain yang lebih dahulu tersimpan.

Smart Opponent. Ayah Hasegawa Goro. Game playing Dalam makalah kali ini pembahasan lebih tertuju kepada sub game playing. Tidak melibatkan faktor psikologi. setelah bom atom dijatuhkan di Hiroshima dan Nagasaki. Perfect Information Game: kedua pemain sama-sama memiliki akses pada informasi yang lengkap tentang keadaan permainan. misalnya dengan menggunakan dadu. No Phsychological Factors. Pengolahan bahasa alami 3. Lawan diasumsikan pintar juga. Kecerdasan buatan dapat dipilah menjadi sejumlah sub disiplin ilmu diantaranya : 1.Game playing memiliki beberapa karakteristik dan batasan diantaranya : y y y y y Dimainkan oleh 2 (dua) pemain: manusia dan komputer. Speech recognition 4. sehingga tidak ada informasi yang tertutup bagi lawan mainnya. Machine learning 6. Othello dalam karya Shakespeare tersebut . Robotika dan sensor 5. sehingga terjadi salah langkah. Sejarah othello berawal tahun 1945. Game playing yang dibahas kali ini adalah orthello. September 1945. Tidak melibatkan faktor probabilitas. jadi jangan mengharap lawan khilaf. Sebenarnya asal kata othello itu sendiri. Hasegawa Goro yang tengah duduk di kelas satu SMP menerima pelajaran sembari duduk di tanah di bawah langit biru. bukan dari bahasa Jepang. Para pemain saling bergantian melangkah. Sistem pakar 2. No Determined by Chances. Dalam suasana seperti itulah permainan ini dilahirkan. seperti "gertakan" (misalnya Poker) No Oversight Errors. bila batu milik pemain pertama diapit oleh batu milik pemain kedua. memberikan nama ini dari salah satu karya Shakespeare dengan judul yang sama. Mito juga menjadi sasaran pengeboman hingga kastil dan bangunan bersejarah lain ikut habis dalam kobaran api. maka batu pemain pertama menjadi milik pemain kedua. Aturan awalnya. Permainan ini cukup merepotkan karena harus dipakai kertas yang diwarnai hitam pada salah satu sisi dan putih pada sisi yang lain.Kecerdasan Buatan sendiri dimunculkan oleh seorang professor dari Massachusetts Institute of Technology (MIT) yang bernama John McCarthy pada tahun 1956 pada saat Dartmouth Conference yang dihadiri oleh parapeneliti AI.

Pemenang ialah pemain yang memiliki jumlah koin paling banyak di atas arena permainan. namun sudah banyak dibuat dalam bentuk animasi pada komputer. Koin putih harus µmelompati¶ koin hitam agar koin tersebut dapat diganti menjadi koin putih. Pemenang adalah pemain yang memiliki jumlah koin lebih banyak diatas arena. . memory-enhanced test driver value f. Pada awal permainan akan diletakkan dua koin hitam dan dua koin putih pada pusat arena. Permainan ini di luar negeri lebih dikenal dengan nama Reversi. Gerakan koin dapat lurus maupun diagonal asalkan setiap pergerakan membentuk satu garis lurus. Permainan ini dimainkan di atas papan arena permainan persegi yang terdiri dari kotak-kotak kecil. Saat ini Othello tidak hanya dimainkan secara tradisional. Setelah koin hitam berpindah posisi dan koin-koin yang dilalui diubah warnanya menjadi hitam.akhirnya permainan ini memakai batu dengan 2 warna. Permainan akan berakhir jika semua kotak arena sudah terisi koin. Materi-materi yang bias digunakan di dalam permainan orthello diantaranya : negascout. Dibawah ini akan dijelaskan satu persatu menegnai langkah-langkah diatas. Permainan othello dimainkan pada arena papan kotak-kotak persegi dengan koin hitam dan putih diatas arena. dan algoritma greedy. Koin warna hitam harus melewati koin warna putih agar koin putih dapat diubah menjadi koin hitam. Karena permainan orthello ini pada awalnya menggunakan kertas yang dwarnai terlebih dahulu. Koin hitam harus dapat µmelompati¶ koin putih agar koin putih dapat menjadi hitam. atau seluruh koin yang ada di atas arena berwarna sama. Kedua pemain terus menerus secara bergantian memindahkan letak koin masing-masing. biasanya berukuran 8x8 kotak.mengisahkan seorang kulit hitam yang mempunyai istri kulit putih yang cantik bernama Desdemona. Misalkan pemain pertama menggunakan koin hitam dan pemain kedua menggunakan koin putih. Permainan akan berakhir jika seluruh kotak-kotak kecil pada arena permainan terisi koin atau seluruh koin di atas arena berwarna sama. Peralatan lain yang dibutuhkan ialah koin hitam dan koin putih masing-masing sebanyak 64 buah. Pada awal permainan diletakkan dua koin hitam dan dua koin putih pada pusat arena. Dengan memanfaatkan kecerdasan buatan di era teknologi sekarang ini permainan orthello lebih asyik dimainkan. Permainan Othello dimainkan oleh dua orang pemain. dan sebaliknya. Hanya 1 koin yang dapat dipindahkan setiap kali giliran jalan. fungsi evaluasi. koin putih yang mendapat giliran untuk berpindah.

Algoritma Negascout Pada algoritma dari gambar 1. Berikut penjelasan algoritma Negascout yang dijabarkan pada gambar 1. . bukan anak pertama dari node yang diproses (i>1). Gamabr 1. maka beta pruning akan diproses sehingga proses research tidak akan terjadi. sedangkan sisanya merupakan langkah terburuk (Aske Plaat. Namun jika ternyata ada langkah yang lebih baik dari langkah pertama. dan pada node tersebut harus mempunyai anak sampai kedalaman lebih besar dari satu (depth>1). dimana bound tersebut terbagi menjadi 2 macam. Syarat t lebih kecil dari beta diperlukan karena jika t lebih besar dari beta. 2. Berikut penjelasan algoritma MTDF yang dijabarkan pada gambar 2. maka akan terjadi proses research atau proses pencarian ulang.1994).1. yaitu upperbound dan lowerbound yang menunjukkan rentang dimana nilai minimax berada (Aske Plaat. Cara kerja dari algoritma mtdf adalah dengan cara melakukan serangkaian pemanggilan algoritma alpha beta secara berulang-ulang. Memory-enhanced Test Driver value f Pencarian pada MTDF menggunakan bound sebagai tempat penyimpanan nilai minimax. syarat untuk melakukan research adalah jika nilai dari t lebih besar dari B.1994). Negascout Negascout adalah salah satu metode pencarian minimax dengan berasumsi bahwa langkah pertama yang diambil merupakan langkah terbaik. lebih kecil dari beta.

Minimal dilakukan dua kali proses pemanggilan. dapat dilihat pada baris 1. Pruning terjadi untuk lowerbound jika nilai lowerbound lebih besar sama dengan nilai beta. Dimana pada algoritma alpha beta with memory menyimpan nilai upperbound dan lowerbound setiap node. Algoritma alpha beta yang digunakan sedikit berbeda dengan algoritma alpha beta konvensional.Gambar 2. Pada algoritma gambar 3. kemudian nilai yang dikembalikan adalah nilai lowerbound saat itu. Jika nilai dari parameter tersebut mendekati nilai minimax maka proses pemanggilan terhadap algoritma alpha beta akan semakin sedikit. Proses pemanggilan algoritma alpha beta akan berhenti jika nilai dari lowerbound lebih besar dari upperbound. merupakan proses pengambilan nilai upperbound dan lowerbound yang kemudian dicek dengan nilai alpha beta saat itu. kemudian nilai yang dikembalikan adalah nilai upperbound saat itu. Pruning terjadi untuk upperbound jika nilai upperbound kurang dari sama dengan nilai alpha. Berikut penjelasan algoritma alpha beta with memory yang dijabarkan pada gambar 3. dimana untuk menentukan nilai dari upperbound dan lowerbound . yang nantinya digunakan untuk perbandingan dengan nilai alpha dan beta yang didapat. dari situ akan banyak pruning yang akan dihasilkan. Algoritma MTDF Pada algoritma gambar 2. parameter f merupakan nilai perkiraan. .

untuk baris ke 3 dan 4 merupakan proses penyimpanan nilai upperbound dan lowerbound kedalam memory node saat itu. Fungsi Evaluasi Banyak orang beranggapan bahwa yang terpenting dalam memenangkan permainan Othello adalah jumlah disc yang dapat dibalik atau dirubah pada tiap kali kesempatan. terdapat tambahan algoritma untuk menyimpan nilai upperbound dan lowerbound.Gambar 3. yang terpenting dalam permainan tersebut sebenarnya ada pada jumlah . yang mana nilai minimax berada diantara nilai upperbound dan lowerbound. Untuk baris 2 terlihat sama dengan algoritma pada alpha beta konvensional. Jadi pada algoritma alpha beta with memory. Algoritma alpha beta with memory. 3. Anggapan tersebut tidaklah benar. Pada algoritma gambar 3.

Berikut beberapa fungsi evaluasi yang digunakan beserta komponen pendukungnya.Penyimpanan edge table Maksud dari penjelasan pada gambar 4 adalah jika misalkan terdapat pola pada salah satu sisi papan 00001020 (0 menunjukkan petak kosong. Contoh evaluasi mobility . frontier dan penguasaan corner. mobility. maka nilai dari hasil pola tersebut akan disimpan pada edge table pada index ke-33. Cara kerja edge table adalah dengan hanya mengevaluasi satu sisi papan.1 Edge Table Edge table merupakan wadah untuk menyimpan nilai-nilai mobility dari papan permainan. 3. yang mana selanjutnya hanya perlu mencerminkannya kesemua sisi-sisi pada papan permainan. Tabel 1.langkah yang dapat diambil disebut juga dengan mobility. Jumlah langkah ini didapat dengan mengevaluasi pola pada satu sisi papan dan selanjutnya disimpan kedalam edge table. yang berisi mengenai beberapa contoh cara mengevaluasi nilai mobility. Semakin banyak mobility yang didapat maka akan semakin banyak pula langkah-langkah bagus yang dapat dimainkan. 1 disc putih. liberties. Berikut penjelasan berupa gambar contoh cara penyimpanan nilai pada edge table. antara lain edge table.2 Mobility Seperti yang telah dijelaskan sebelumnya bahwa mobility merupakan jumlah langkah yang dapat dimainkan oleh pemain pada tiap kali kesempatan. Selanjutnya data yang telah tersimpan dalam edge table akan diolah oleh mobility. Gambar 4. 2 disc hitam). 3. Berikut penjelasan berupa gambar tabel.

8 sisi vertical dan 18 sisi diagonal. yang menunjukkan posisi-posisi dimana pemain dapat meletakkan disc. Edge untuk 8 petak dengan ukuran 6561. Mobility 1 = 0 Mobility 2 = 1 Mobility 3 = 0 Edge_Tabel[35 x 2 + 34 x 2+ 33 x 2 = 702] Edge_ Tabel[34 x 1 + 33 x 2 = 135] Edge_ Tabel[34 x 1 = 81] . Keseluruhan ada 34 sisi yang diproses. b. Setelah mengetahui bagaimana langkah-langkah yang diperlukan dalam mengevaluasi nilai mobility. seluruh sisi horisontal. 6 petak 729. Contoh permasalahan papan. kemudian simpan kedalam edge table. karena untuk mengevaluasi petak dengan sisi diagonal. Berikut penjelasan mengenai cara perhitungan berdasarkan pada gambar 6. Berikut contoh gambar permasalahan yang mungkin terjadi. vertikal dan diagonal. 8 sisi horisontal. pada kolom pola terdapat tanda panah ke atas. Proses semua kombinasi pola pada satu sisi papan mulai dari 00000000 sampai 22222222 dan hitung jumlah mobility yang ada seperti pada contoh tabel evaluasi mobility. baik horisontal. selanjutnya akan dijelaskan mengenai contoh permasalahan yang mungkin terjadi papan permainan. c. 5 petak 243 dan 4 petak 81. Gambar 5. Diperlukan edge untuk menampung 7 sampai 4 petak. a. Pemberian nilai pada kolom mobility ini berdasarkan jumlah posisi disc yang dapat diletakkan dan harus sesuai dengan jenis disc yang diletakkan. Sebelumnya perlu diketahui untuk perhitungan hanya untuk disc putih dan sisi-sisi yang dilingkari saja yang akan dihitung (pada penerapan. Evaluasi seluruh sisi papan.Pada tabel 1. vertikal dan diagonal perlu dihitung). Siapkan 5 jenis edge table dengan ukuran penampung berbeda-beda. 7 petak ukuran 2187.Berikut langkahlangkah yang diperlukan mulai dari awal hingga didapat nilai mobility total untuk keseluruhan sisi papan. dapat dilihat pada gambar 5.

Inisialisasi nilai-nilai Liberties Setelah proses penyimpanan nilai-nilai liberties dilakukan. karena semakin banyak frontier memungkinkan lawan untuk mendapatkan semakin banyak mobility tambahan pada beberapa langkah ke depan dan juga mengurangi mobility-nya sendiri. 3. Gambar 6. 3. maka akan semakin jelek pula posisinya.Mobility 4 = 0 Mobility 5 = 1 Mobility 6 = 0 Edge_ Tabel[34 x 2 = 162] Edge_ Tabel[34 x 2 + 33 x 1 + 32 x 1 = 198] Edge_ Tabel[34 x 2 + 33 x 2 = 216] Nilai evaluasi = Mobility 1 + « + Mobility 6 =0+1+0+0+1+0=2 Berdasarkan pada contoh permasalahan yang terjadi pada papan pada gambar 6 dan hasil perhitungan nilai mobility yang telah dilakukan dapat disimpulkan bahwa nilai evaluasi total yang didapat untuk disc putih adalah 2. selanjutnya nilai-nilai yang disimpan tersebut akan diproses oleh frontier untuk mengetahui jumlah disc yang berbatasan dengan petak kosong. Nilai evaluasi total berdasarkan perhitungan yang telah dilakukan didapat dengan cara menjumlahkan seluruh mobility yang didapat dari hasil evaluasi yang telah diproses untuk sisi horisontal dan vertikal dari contoh permasalahan pada gambar 5. Berikut penjelasan berupa gambar contoh nilai-nilai liberties dan papan. Jika terjadi kondisi dimana semakin banyak frontier yang didapat.3 Liberties Liberties digunakan untuk menampung jumlah petak kosong yang berada disekeliling tiap-tiap petak pada papan. Berikut nilai-nilai yang disimpan kedalam liberties dapat dilihat pada gambar inisialisasi nilai-nilai liberties. untuk selanjutnya .4 Potential Mobility atau Frontier Frontier merupakan jumlah disc yang berbatasan dengan petak kosong.

karena perubahan yang terjadi pada papan mengakibatkan nilai-nilai liberties juga ikut berubah. . Berdasarkan gambar 7 cara menghitung frontieradalah jumlahkan banyaknya disc pada papan dengan melihat nilai-nilai pada liberties yang lebih besar dari nol.5 Penguasan Corner Penguasaan corner merupakan penguasaan terhadap posisi-posisi pojok dari papan. Contoh liberties dan papan Gambar contoh nilai-nilai liberties pada gambar 7 dengan gambar inisialisasi liberties pada gambar 6 berbeda. Cara merubah nilai-nilai pada liberties adalah dengan mengurangi sebanyak satu kali dari nilai liberties tiap-tiap petak yang berbatasan dengan disc yang baru saja diletakkan. sedangkan nilai -60 merupakan posisi paling rawan untuk mendapatkan posisi pojok. Gambar 7. Gambar 8. Jadi kemungkinan besar kemenangan dapat diraih dengan menguasai posisiposisi pojok tersebut. jadi tidak dihitung). sedangkan untuk disc hitam sebanyak 6 (jumlah disc 7. Pemberian nilai -3 karena pada posisi tersebut tidak terlalu rawan.4) adalah nol. namun nilai liberties pada petak (5. untuk nilai frontier disc putih sebanyak 5. Berikut penjelasan berupa gambar mengenai pemberian nilai pada posisi-posisi pojok tersebut dapat dilihat pada gambar inisialisasi nilai-nilai corner. Dari gambar contoh nilai-nilai liberties dan papan.Inisialisasi nilai-nilai corner Pemberian nilai-nilai pada gambar inisialisasi nilai-nilai corner hanya berupa nilai perkiraan saja. 3. karena disc yang diletakkan pada posisi tersebut tidak dapat dirubah atau dibalik.dihitung frontiernya.

memeriksa apakah suatu kandidat yang telah dipilih dapat memberikan solusi yang layak dengan tidak melanggar constraints yang ada.4. Skema umum algoritma greedy dapat digambarkan melalui pseudo-code berikut. Algoritma greedy membentuk solusi langkah per langkah. dinyatakan dengan predikat SELEKSI memilih kandidat yang paling memungkinkan mencapai solusi optimal pada setiap langkah. Fungsi kelayakan. Himpuan solusi. Prinsip algoritma greedy pada setiap langkah ialah mengambil pilihan terbaik yang dapat diperoleh saat itu tanpa memperhatikan konsekuensi ke depan. yaitu dengan membuat pilihan optimum local pada setiap langkah dengan harapan akan mengarah ke solusi optimum global. berisi kandidat-kandidat yang terpilih sebagai solusi persoalan. Himpunan kandidat. Prinsip algoritma greedy pada setiap langkah ialah mengambil pilihan terbaik yang dapat diperoleh saat itu tanpa memperhatikan konsekuensi ke depan. dan berharap bahwa dengan memilih optimum lokal pada setiap langkah akan menghasilkan optimum global pada akhir proses. dinyatakan dengan predikat LAYAK. 5. 3. yang memaksimumkan atau meminimumkan nilai solusi. Algoritma Greedy Algoritma greedy merupakan metode yang paling populer untuk memecahkan masalah optimasi. dan berharap bahwa dengan memilih optimum lokal pada setiap langkah akan menghasilkan optimum global pada akhir proses. yang berisi elemen-elemen pembentuk solusi. 2. Pendekatan yang digunakan di dalam algoritma greedy adalah membuat pilihan yang tampak memberi perolehan terbaik. 4. Persoalan optimasi algoritma greedy disusun oleh elemen-elemen berikut : 1. Fungsi seleksi. Fungsi objektif. .

Bahkan untuk bagian pojok arena. Strategi ini berusaha memaksimumkan jumlah koin pada akhir permainan dengan menghasilkan koin sebanyak-banyaknya pada setiap langkah. sama sekali tidak dapat dilangkahi oleh lawan.Pseudocode algoritma greedy Terdapat dua strategi greedy heuristik yang akan diimplementasikan untuk menghasilkan sebanyak mungkin koin sehingga dapat memenangkan permainan. koin pemain akan menuju ke koordinat yang semakin dekat dengan tepi arena permainan. Greedy by jumlah koin Pada setiap langkah. yaitu : 1. Strategi ini berusaha memaksimumkan jumlah koin pada akhir permainan dengan menguasai daerah tepi yang sulit untuk dilangkahi koin lawan. Greedy by jarak ke tepi Pada setiap langkah.Gambar 9. koin pemain akan menuju koordinat yang menghasilkan sebanyak mungkin koin lawan. . 2.

1 Greedy untuk Jumlah Koin pada Permainan Orthello Untuk merepresentasikan masalah digunakan sebuah larik (array) dua dimensi yang diberi nama isi[i][j]. JHitam akan berisi jumlah koin hitam di atas arena permainan. atas. sehingga prioritas terakhir ialah ke arah kanan bawah. prioritas pemilihan langkah ialah ke arah kanan. Indeks i dan j masing-masing antara 1-8 yang menunjukkan koordinat terhadap sumbu X dan sumbu Y. Angka 1-8 menunjukkan arah dari koordinat asal ke koordinat tujuan. Nilai himpunan kandidat disimpan di dalam sebuah array satu dimensi yang diberi nama jumlah[k]. terdapat pula dua buah variabel bertipe integer yang diberi nama JHitam dan JPutih. sedangkan JPutih berisi jumlah koin putih di atas arena permainan.4. Range k berkisar antara 1-8. kemudian urut berlawanan arah dengan jarum jam. Kemudian pemain akan memilih langkah yang menghasilkan nilai terbesar dengan harapan akan menghasilkan solusi yang optimum. hingga angka 8 yang menunjukkan arah kanan bawah. Sebelum memulai setiap langkah. dan akan bernilai 0 jika pada koordinat tersebut terdapat koin berwarna putih. kanan atas. Selain array. dan terus memutar berlawanan arah dengan jarum jam. 4 3 2 5 1 6 7 8 Gambar 10. Prioritas pergerakan koin jika jumlah[k] sama . Jika terdapat lebih dari satu jumlah[k] yang bernilai paling besar. 1 menunjukkan arah kanan. pemain akan menghitung nilai yang akan didapatkan pada setiap kemungkinan langkah. Elemen array isi akan bernilai 1 jika pada koordinat tersebut terdapat koin berwarna hitam.

4. Fungsi seleksi. 5. Fungsi objektif. Fungsi kelayakan.Pada suatu permainan Othello sangat mungkin pada satu giliran jalan terdapat banyak koin yang mungkin untuk dijalankan. Persoalan optimasi dengan greedy by jumlah koin disusun oleh elemen-elemen berikut : 1. seluruh jumlah[k] yang memungkinkan dimana k berada pada range 1-8. B O O O O O O O A O O O O Gambar 11. pilihlah langkah yang menghasilkan jumlah[k] terbesar. Himpunan kandidat. pemain yang menggunakan koin putih yang akan memenangkan permainan. dengan prioritas letak koin di kanan-atas. Jika terdapat lebih dari satu jumlah[k] memiliki nilai paling besar. dan sebaliknya jika JPutih lebih besar nilainya. Jika hal ini terjadi. Contoh ilustrasi permainan Othello dengan greedy by jumlah koin. A menunjukkan langkah selanjutnya . Jika pada arah tertentu tidak terdapat koin lawan untuk dilangkahi. Pemilihan jumlah[k] terbesar merupakan pemilihan optimum lokal yang diharapkan akan menjadi optimum global. dan seterusnya. Pemain yang menggunakan koin hitam akan memenangkan permainan jika JHitam > JPutih. langkah yang dipilih menghasilkan jumlah[k] maksimum. 3. pilih langkah sesuai urutan prioritas. langkah-langkah pada himpunan kandidat yang memiliki jumlah[k] terbesar. Himpunan solusi. periksa apakah k masih dalam range yang telah ditetapkan. 2. prioritas pemilihan langkah ialah arah 1 dari seluruh koin. Kemudian dilanjutkan dengan urutan koin yang sama dengan arah 2. tidak ada pergerakan yang dapat dilakukan sehingga arah tersebut tidak masuk ke dalam himpunan kandidat.

kanan[p] = 8 ± 3 kiri [p] = 3 ± 1 Konstanta 8 merupakan koordinat paling kanan. Range indeks i dan j berada diantara 1-8 yang menunjukkan koordinat terhadap sumbu X dan sumbu Y.Huruf A pada Gambar 3 menunjukkan langkah selanjutnya yang dipilih jika bermain menggunakan greedy by jumlah koin. namun koordinat B memiliki prioritas lebih rendah sehingga koordinat A yang dipilih sebagai langkah selanjutnya. Karena itulah para pemain seringkali memiliki prioritas untuk melangkah ke tepi. Elemen array isi akan bernilai 1 jika pada koordinat tersebut terdapat koin berwarna hitam. Koordinat yang ditandai dengan huruf A dan huruf B sama-sama menghasilkan dua koin putih. Jika pada arah tertentu tidak terdapat koin lawan untuk dilangkahi. Jarak ke tepi atas dan bawah tidak ikut diperhitungkan.2 Greedy untuk Jarak ke Tepi pada Permainan Orthello Dalam permainan Othello. Bahkan koin yang terletak di pojok arena tidak dapat dilangkahi dari arah manapun. Persoalan optimasi dengan greedy by jarak ke tepi disusun oleh elemen-elemen berikut : 1. Himpunan kandidat. koin yang terletak di tepi arena permainan lebih sulit untuk dilangkahi karena hanya mungkin dilangkahi dari 2 arah saja. pada greedy by jarak ke tepi juga menggunakan sebuah larik (array) dua dimensi yang diberi nama isi[i][j] untuk merepresentasikan masalah. p menunjukkan prioritas arah seperti yang ditunjukkan Gambar 10. sedangkan konstanta 1 merupakan koordinat paling kiri. 4. Serupa dengan greedy by nilai koin. Terdapat pula dua variabel bertipe integer yang diberi nama JHitam dan JPutih untuk menyimpan jumlah koin. Jarak ke tepi yang menjadi fokus batasan pada algoritma ini ialah jarak ke tepi kiri dan tepi kanan. . dan akan bernilai 0 jika pada koordinat tersebut terdapat koin berwarna putih. tidak ada pergerakan yang dapat dilakukan sehingga arah tersebut tidak masuk ke dalam himpunan kandidat. Jarak ke kedua tepi disimpan dalam dua buah array satu dimensi. Misalkan. untuk pergerakan ke titik (3.5). seluruh kanan[p] dan kiri[p] yang mungkin dimana p menunjukkan arah langkah seperti ditunjukkan Gambar 10. Jarak ke kanan disimpan dalam array kanan[p] dan jarak ke kiri dalam array kiri[p].

yang berarti jarak paling dekat dengan tepi arena. Semakin dekat jarak ke tepi. Himpunan solusi. O O O O O O O O A Gambar 4. A menunjukkan langkah selanjutnya Huruf A pada Gambar 4 menunjukkan langkah selanjutnya yang akan dipilih jika bermain menggunakan greedy by jarak ke tepi. Contoh ilustrasi permainan Othello dengan greedy by jarak ke tepi. pemain yang menggunakan koin putih yang akan memenangkan permainan. 4. Pemain yang menggunakan koin hitam akan memenangkan permainan jika JHitam > JPutih. periksa apakan p dan q masih termasuk dalam range yang telah ditetapkan. . pilihlah langkah yang menghasilkan kanan[p] atau kiri[p] terkecil. Fungsi seleksi. pilih berdasarkan urutan prioritas. semakin besar prioritas koordinat tersebut untuk dipilih. dan sebaliknya jika JPutih lebih besar nilainya. Fungsi kelayakan. 3. langkah yang dipilih menghasilkan jarak minimum dengan tepi arena.2. 5. Fungsi objektif. Jika terdapat lebih dari 1 nilai terkecil. kanan[p] dan kiri[p] yang memiliki nilai paling minimum. Pemilihan kanan[p] atau kiri[p] terkecil merupakan pemilihan optimum lokal yang diharapkan akan menjadi optimum global.

umumnya pemain mengkombinasikan kedua algoritma di atas untuk mendapatkan hasil yang optimum. Pada awal permainan. Penguasaan corner pada permainan othello juga penting.BAB III PENUTUP 3. namun tidak selalu menghasilkan solusi yang optimum. Semakin banyak frontier maka akan semakin buruk. Namun sebaliknya. Potential mobility atau frontier menggunakan liberties untuk mengevaluasi jumlah disc yang berbatasan dengan petak kosong. karena kemungkinan besar kemenangan akan diraih dengan menguasai daerah-daerah pojok. Jika terdapat langkah yang lebih baik dari langkah pertama maka akan dilakukan proses research.1 Kesimpulan Dari penjelasan sebelumnya yang berisi mengenai metode pencarian minimax dan proses perhitungan untuk fungsi evaluasi. saat telah menguasai daerah tepi pemain diharapkan dapat melompati koin sebanyak mungkin agar dapat memenangkan permainan . Negascout berasumsi langkah pertama yang ditelusuri adalah langkah terbaik dan menganggap bahwa langkah-langkah selanjutnya sebagai langkah terburuk. karena semakin banyak pula langkah bagus yang dapat dimainkan. Algoritma greedy dapat memecahkan masalah optimasi. jadi perlu diperhatikan. Pemberian nilai yang tepat akan mempengaruhi hasil dari perhitungan fungsi evaluasi. pemain diharapkan lebih fokus untuk mengincar daerah tepi arena agar dapat menyusun µbenteng pertahanan¶. Semakin banyak mobility atau jumlah langkah yang dapat dimainkan oleh pemain pada satu kali kesempatan maka akan semakin bagus. Proses pruning akan banyak dihasilkan dari penggunaan bound ini. dapat disimpulkan bahwa. Pada kenyataannya. selanjutnya untuk evaluasi total didapatkan dengan cara mencerminkannya keseluruh sisi-sisi papan. MTDF yang menggunakan upperbound dan lowerbound bekerja dengan melakukan pemanggilan alpha beta with memory secara berulang-ulang. karena lawan akan mendapat semakin banyak mobility tambahan dan juga akan mengurangi mobility yang didapat. Edge table digunakan untuk menyimpan nilai mobility dengan mengevaluasi satu sisi papan.

pdf www./MakalahIF2251-2008-024.pdf http://journal..ac.staff.id/download/Kecerdasan_buatan.ac.pdf www.ac.id/index./Bab+1+Pengenalan+Kecerdasan+Buatan..pdf ..id/Downloads/files/4338/1-AI.ac.hansmichael.com/download/gameplaying.gunadarma.pdf www.php/Snati/article/view/1278/1088 wsilfi.unimmer.uii.id/.DAFTAR PUSTAKA bsavitri.org/~rinaldi/Stmik/.gunadarma.informatika.staff..

MKom Disusun Oleh : ARGA BRAHMANTYO J2D009027 JURUSAN FISIKA UNIVERSITAS DIPONEGORO FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM SEMARANG 2010 . Ssi.MAKALAH TEKNOLOGI INFORMASI Memenangkan Permainan Orthello Menggunakan Kecerdasan Buatan KARYA TULIS ILMIAH Disusun untuk memenuhi tugas Mata Kuliah Teknologi Informasi Yang diampu oleh : Sukmawati Nur Endah.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->