Penerapan Prinsip Greedy dalam Permainan Kartu Hearts

dokumen-dokumen yang mirip
Penerapan Algoritma Greedy pada Permainan Kartu 100

Penerapan Algoritma Greedy dan Breadth First Search pada Permainan Kartu Sevens

APLIKASI ALGORITMA GREEDY DALAM PERMAINAN CAPSA BANTING

Penerapan Algoritma Greedy Pada Permainan Kartu Truf

Algoritma Greedy untuk Pengambilan Keputusan dalam Permainan Kartu Hearts

Strategi Permainan Bridge menggunakan Algoritma Greedy

PENGGUNAAN ALGORITMA GREEDY DALAM PERMAINAN KARTU BLACK JACK

IMPLEMENTASI ALGORITMA GREEDY PADA PERMAINAN OTHELLO

Penerapan Algoritma Greedy untuk Permainan Halma

Penggunaan Algoritma Greedy Untuk Menyelesaikan Permainan Cluedo

PENERAPAN ALGORITMA GREEDY DALAM PENCARIAN SOLUSI TERBAIK PADA PERMAINAN TETRIS

IMPLEMENTASI ALGORITMA GREEDY PADA PERMAINAN CONGKLAK

Implementasi Brute Force dan Greedy dalam Permainan Big Two (Capsa)

Penerapan Algoritma Greedy dalam Permainan Othello

Algoritma Greedy pada Board Game Saboteur

Penerapan Algoritma Greedy dalam Permainan Connect 4

Penyelesaian Permainan Sliding Puzzle 3x3 Menggunakan Algoritma Greedy Dengan Dua Fungsi Heuristik

Aplikasi Algoritma Greedy dalam Permainan Kartu Truf

Penentuan Langkah Sederhana dalam Permainan Kartu Hearthstone dengan Algoritma Greedy

Penerapan Algoritma Greedy dalam Permainan Bantumi

Implementasi Algoritma Greedy pada Permainan Ludo

Pemilihan Monster yang Akan Digunakan dalam Permainan Yu-Gi-Oh! Capsule Monster Coliseum

Solusi Terbaik Permainan Rocket Mania Deluxe dengan Pendekatan Algoritma BFS dan Algoritma Greedy

Menerapkan Prinsip Greedy Dalam Bermain Digimon Card Battle

Penggunaan Algoritma Greedy untuk menyelesaikan Permainan Othello

ALGORITMA GREEDY DALAM PERMAINAN DOTS AND BOXES

Penerapan Algoritma Greedy dalam Pembuatan Artificial Intelligence Permainan Reversi

Aplikasi Algoritma Greedy pada Permainan Kartu Truf Pass

Algoritma Greedy dalam Strategi Permainan Centipede

Penggunaan Algoritma Greedy untuk Menyelesaikan Permainan UNO Kartu (Klasik)

Penerapan Algoritma Greedy dalam Pencarian Rantai Penjumlahan Terpendek

Penerapan Algoritma Greedy pada Permainan Fire Emblem

Penerapan Algoritma Greedy dalam Permainan Tetris

Penerapan Algoritma Greedy untuk Permainan Flood It

Penerapan Algoritma Greedy pada Permainan Bubble Breaker

Penerapan Algoritma Greedy untuk Menempatkan Pelanggan dalam Permainan Video Diner Dash

Aplikasi Algoritma Greedy Pada Permainan Big Two

Penerapan Algoritma Greedy dan Backtrackng Dalam Penyelesaian Masalah Rubik s Cube

Penerapan Algoritma Greedy dalam Penyetokan Barang

Praktikum tentang Collection Permainan Remi

Algorima Greedy Pada Self Serve Gas Station

Penerapan Algoritma Greedy Dalam Permainan Clash Royale

Penggunaan Algoritma Brute Force dan Greedy dalam Permainan Atomas

Strategi Perancangan Bot Player pada Permainan Tradisional Congklak dengan Algoritma Greedy

Aplikasi Algoritma Greedy untuk Menyelesaikan Permainan Hedgewars

Penerapan Algoritma Greedy pada Intelegensia Buatan untuk Transfer Pemain dalam Permainan Simulasi Sepakbola

Penerapan Algoritma Greedy Pada Game Tower Defense: Tower of Greece

Pencarian Solusi Optimal dalam Permainan Congklak dengan Program Dinamis

Algoritma Greedy untuk AI dalam Permainan DotA

Penentuan Keputusan dalam Permainan Gomoku dengan Program Dinamis dan Algoritma Greedy

APLIKASI ALGORITMA GREEDY DALAM PERMAINAN JAWBREAKER

APLIKASI KOMBINATORIAL DALAM TEXAS HOLD `EM

Aplikasi Algoritma Greedy dalam Penjurusan Mahasiswa Tingkat Pertama Institut Teknologi Bandung

Implementasi Algoritma Greedy Dua Sisi pada Permainan 2048

Penerapan Algoritma Greedy pada Artificial Inteligence dalam Permainan Defence of the Ancient

Penerapan Algoritma Greedy dalam Permainan Tradisional Congklak

PERBANDINGAN APLIKASI ALGORITMA BRUTE-FORCE DAN KOMBINASI ALGORITMA BREADTH FIRST SEARCH DAN GREEDY DALAM PENCARIAN SOLUSI PERMAINAN TREASURE HUNT

Penggunaan Algoritma Greedy untuk Mencari Solusi Optimal dalam Permainan Brick Breaker

Aplikasi Algoritma MiniMax pada Beberapa Permainan Papan

Penggunaan Algoritma Greedy Dalam Perancangan Papan Teka Teki Silang

Perancangan Algoritma Greedy pada AI Permainan Turn Based Strategy

Aplikasi Algoritma Greedy untuk Pergerakan Musuh pada Permainan Pac-Man

PENGGUNAAN ALGORITMA GREEDY PADA PERMAINAN CAPSA SUSUN

Aplikasi Kombinatorial dan Peluang Diskrit dalam Permainan Poker

Implementasi Algoritma Greedy, BFS, Branch and Bound, dan Metode Heuristik dalam Permainan Reversi

Aplikasi Algoritma Greedy pada Permainan Zuma

Aplikasi Algoritma Greedy dalam Permainan Kartu Yu-Gi-Oh!

Algoritma Greedy dalam Artificial Intelligence Permainan Tic Tac Toe

Penerapan Algoritma Greedy dalam Permainan MarketGlory

Perbandingan Algoritma Dijkstra dan Algoritma Floyd-Warshall dalam Penentuan Lintasan Terpendek (Single Pair Shortest Path)

Penerapan Algoritma Greedy pada Permainan Tower Defense

Penerapan Algoritma Greedy dalam Pemilihan Pemain di Game Football Manager

ANALISA PENGGUNAAN ALGORITMA GREEDY PADA PERMAINAN FIVE LINK

Perbandinganan Penggunaan Algoritma Greedy dan Modifikasi Algoritma Brute Force pada Permainan Collapse XXL

dengan Algoritma Branch and Bound

Penggunaan Algoritma Greedy dalam Optimasi Masalah Perkebunan

Aplikasi Algoritma Greedy untuk Menyelesaikan Permainan Magic Wingdom

Menentukan Starting Lineup Futsal Terbaik dengan Algoritma Branch and Bound

Analisis Beberapa Algoritma dalam Menyelesaikan Pencarian Jalan Terpendek

Penerapan Algoritma Brute Force pada Permainan Kartu 24 (24 game)

Penentuan Langkah dengan Greedy dalam Permainan Ludo

Aplikasi Algoritma Greedy, BFS dan DFS pada Penyelesaian Permainan Mahjong Solitaire

Penerapan Algoritma Greedy dalam Strategi Bermain The Sims Medieval

PERBANDINGAN ALGORITMA GREEDY DAN BRUTE FORCE DALAM SIMULASI PENCARIAN KOIN

Penggunaaan Algoritma Greedy Dalam Aplikasi Vending Machine

Penerapan Algoritma Greedy untuk Menentukan Loadout dalam Permainan PAYDAY 2

Aplikasi Kombinatorial dan Peluang dalam Permainan Poker

Penerapan Greedy pada Jalan Jalan Di Bandung Yuk! V1.71

Aplikasi Algoritma Greedy pada Permainan Pixelated

Implementasi Algoritma Greedy untuk Pembelian Saham

APLIKASI GREEDY PADA ALGORITMA HUFFMAN UNTUK KOMPRESI TEKS

Penentuan Rute Terbaik pada Permainan Taxi Rider

Penerapan Algoritma Greedy Pada Permainan Killbots

Penerapan Algoritma Greedy dalam Algoritma Penjadwalan Prosesor Tunggal Shortest Job First

Penerapan Strategi Algoritmik dalam Perancangan Kecerdasan Buatan Permainan Capsa

Penerapan Algoritma Greedy dan Algoritma BFS untuk AI pada Permainan Greedy Spiders

PENGGUNAAN ALGORITMA GREEDY PADA MESIN PENCARI

Penentuan Rute Belanja dengan TSP dan Algoritma Greedy

Penerapan Algoritma Greedy dalam Algoritma Disk Scheduling Shortest Seek Time First

Penggunaan Algoritma Greedy Dalam Permainan. Warcraft III Tower Defense

Transkripsi:

Penerapan Prinsip Greedy dalam Permainan Kartu Hearts Adrian Edbert Luman Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung Jalan Ganesha 10, Bandung e-mail: gabunakadree@yahoo.com ABSTRAK Trick-taking adalah salah satu jenis permainan kartu. Obyek dari permainan trick-taking berbasis pada ronde atau trick, di mana pada setiap ronde setiap pemain memainkan satu kartu dari tangan, dan berdasarkan nilai dari kartu yang dimainkan salah satu pemain menang atau take ronde tersebut. Permainan kartu Hearts adalah salah satu dari permainan trick-taking game. Algoritma greedy yang berdasarkan optimasi pada setiap langkah akan dapat diterapkan pada permainan trick-taking yang bersifat ronde. Optimasi lokal pada setiap fase dan trick pada permainan diharapkan dapat mencapai optimum global yaitu memenangkan satu kali permainan Hearts. Kata kunci: Hearts, Queen of Spades, Two of Clubs, passing cards, breaking hearts, leading, shooting the moon. 1. PENDAHULUAN Permainan kartu Hearts berawal dari permainan reversis yang populer sekitar tahun 1750 di Spanyol. Dalam permainan ini, poin penalti diberikan untuk setiap trick yang dimenangkan, ditambah poin penalti khusus jika mengambil kartu Jack of Hearts atau Queen of Hearts. Seiring berjalan waktu, kartu penalti tambahan ditambahkan pada Reverse, dan sekitar tahun 1850, permainan menjadi salah satu variasi permainan Hearts, di mana setiap kartu Hearts bernilai 1 poin. Queen of Spades pertama kali diperkenalkan pada Black Maria yang kemudian menjadi permainan Hearts umum, dan tak lama kemudian, shooting the moon diperkenalkan untuk menambah kompleksitas permainan. Passing cards, Breaking Hearts, dan leading Two of Clubs ditambahkan belum lama ini. Gambar 1. Kartu Penalti dalam permainan Hearts 2. Hearts Prinsip permainan kartu Hearts adalah mendapatkan kartu penalti dengan nilai sesedikit mungkin pada akhir setiap permainan. Permainan secara keseluruhan akan berakhir pada saat salah satu pemain sudah mencapai poin penalti tertentu, pemain yang sudah melebihi poin tersebut akan dianggap kalah dan pemain dengan poin penalti terendah pada menjadi pemenang permainan. 2.1 Pembagian kartu Permainan kartu Hearts menggunakan 52 kartu remi. Pada kartu Hearts dengan 4 pemain maka setiap pemain akan mendapatkan 13 kartu. Apabila jumlah pemain hanya berjumlah 3 maka kartu Two of Clubs atau Two of Diamonds dikeluarkan dari tumpukan kartu sebelum permainan, dan setiap pemain mendapatkan 17 kartu. Pada saat ada 5 pemain, kartu Two of Clubs dan Two of Diamonds keduanya dikeluarkan dari permainan dan setiap pemain mendapatkan 10 kartu. 2.2 Passing cards Permainan kartu Hearts pada awalnya tidak menyebutkan mengenai passing cards, namun permainan kartu Hearts sekarang pada umumnya menggunakan peraturan ini. Pada awal permainan, setiap pemain MAKALAH IF2251 STRATEGI ALGORITMIK TAHUN 2007

memilik 3 buah kartu, yang tidak diinginkan atau dapat merugikan pemain lain, dan memberikannya pada pemain lain. Ada banyak variasi mengenai passing, yang paling umum adalah rotasi passing setiap permainan baru. Pada permainan pertama pemain pass ke pemain di sebelah kirinya, pada pemain di sebelah kanannya pada permainan kedua, kemudian pada pemain di seberang, dan tidak melakukan pass pada permainan ke-empat. Kartu hearts tidak boleh lead selama belum pecah (dibuang dalam lead kartu lain), kecuali pemain yang melakukan lead tidak memiliki kartu lain selain kartu hearts. Gambar 3. Fase Permainan dalam Permainan Hearts Buatan Microsoft Gambar 2. Passing Cards dalam Permainan Hearts Buatan Microsoft Pada gambar di atas pemain dapat memilih 3 kartu di tangan untuk kemudian diberikan kepada pemain di sebeleh kirinya. Titik putih pada gambar kartu pemain lawan menandakan kartu yang akan diberikan kepada pemain lain. 2.3 Permainan kartu Permainan kartu Hearts menggunakan 52 kartu remi. Pada kartu Hearts dengan 4 pemain maka setiap pemain akan mendapatkan 13 kartu. Pada gambar di atas pemain utara lead menggunakan kartu Two of Spades pada trick ini pemain selatan memenangkan trick menggunakan kartu Jack of Spades dan akan melakukan lead pada trick berikutnya. 2.4 Penilaian Setiap kartu hearts yang dimenangkan dalam trick bernilai 1 poin penalti untuk pemain yang memenangkan trick, dan pemain yang memenangkan trick di mana ada kartu Queen of Spades mendapatkan 13 poin penalti. Total poin penalti dalam setiap satu kali permainan Hearts adalah 26 poin. Pemain dengan kartu Two of Clubs harus melakukan lead untuk memulai trick pertama. Pada permainan dengan 3 atau 5 pemain permainan dimulai dengan kartu Three of Clubs. Pada trick pertama tidak boleh ada kartu penalti yang dimainkan, namun apabila pemain hanya memiliki kartu penalti pada tangan maka pemain diperbolehkan memainkan kartu penalti tersebut. Kemungkinan seorang pemain mendapatkan kartu secara kasar adalah 1 dalam 45 milyar. Kemungkinan ini semakin kecil dengan diberlakukannya peraturan passing cards.

Gambar 4. Fase Penilaian dalam Permainan Hearts Buatan Microsoft Pada gambar di atas pemain selatan dan barat mendapatkan 0 poin penalti sedangkan pemain utara dan timur mendapatkan 13 poin penalti. Pemain utara mendapatkan 13 poin penalti melalui kartu Queen of Spades yang bernilai 13 poin sedangkan pemain timur mendapatkan 13 poin penalti melalui 13 kartu hearts yang bernilai 1 poin penalti setiap kartu. 2.5 Shooting the Moon Shooting the moon, adalah variasi scoring yang umum. Apabila seorang pemain mendapatkan semua kartu penalti dalam satu kali permainan, nilai pemain tersebut tidak akan berubah sementara tambahan 26 poin penalti ditambahkan pada setiap ketiga pemain lain. Percobaan untuk shoot the moon sering kali merupakan strategi yang beresiko, karena kegagalan mendapatkan satu saja kartu penalti akan berakibat poin penalti dari kartu sisanya ditambahkan dalam nilai seorang pemain. Gambar 5. Shooting the Moon Pada gambar di atas pemain selatan melakukan shoot the moon. Pemain selatan tidak mendapatkan tambahan poin penalti, sementara ketiga pemain lain masing-masing mendapatkan 26 poin penalti. 3. Greedy dalam Strategi Hearts Terdapat dua fase dalam permainan kartu Hearts di mana prinsip greedy dapat diterapkan di dalamnya. Yang pertama pada fase passing cards dan yang kedua pada fase permainan. Shooting the Moon dalam permainan Hearts akan sulit diaplikasikan dengan algoritma greedy sebab algoritma greedy tidak menjamin tercapainya optimum global untuk setiap optimum lokal yang dihasilkan. Sementara strategi shooting the moon akan berakibat fatal apabila optimum global tidak tercapai. 3.1 Greedy dalam Passing Cards Passing cards merupakan fase paling awal di mana pemain dapat mulai menentukan strategi yang akan digunakan dalam permainan. Algoritma greedy yang diterapkan bertujuan untuk memenangkan permainan Hearts dengan cara yang paling aman, yaitu dengan cara memberikan kartu bernilai penalti paling besar dari tangan dengan harapan kartu tersebut akan dimainkan oleh pemain lain dan berakibat kepada pemain tersebut memenangkan trick pada saat kartu itu dimainkan. Strategi greedy yang digunakan : Pada setiap langkah, pilih kartu dengan nilai poin penalti paling tinggi untuk diberikan pada pemain lain.

Elemen-elemen persoalan passing cards dalam skema umum algoritma greedy adalah: - Himpunan kandidat adalah kartu yang terdapat pada tangan setelah fase pemabagian kartu. - Himpunan solusi, S, adalah 3 buah kartu yang merupakan himpunan bagian dari himpunan kandidat dengan poin penalti tertinggi yang mungkin. - S disebut layak apabila jumlah kartu tidak lebih dari 3. - Fungsi Obyektif adalah memaksimalkan nilai poin penalti dari kartu yang diberikan. - Fungsi Seleksi memilih kartu dengan poin penalti tertinggi di antara kartu yang tersisa. 3.2 Fase Permainan Pada saat passing cards telah dilewati maka fase selanjutnya adalah memainkan kartu pada setiap trick. Algoritma greedy yang digunakan di sini bertujuan memenangkan permainan Hearts dengan cara berusaha untuk tidak memenangkan satupun trick dalam permainan. Strategi ini dilakukan dengan cara mengeluarkan kartu tertinggi yang paling mungkin dengan tidak Dalam penerapan strategi ini perlu ditambahkan 2 buah kasus khusus, yaitu: - Pada saat mendapat lead. - Pada saat kartu di tangan tidak ada yang lebih rendah dibanding kartu yang sudah dimainkan. Kedua kasus tersebut di atas akan diperiksa pada setiap trick apabila salah satu dari kasus khusus ditemukan maka penanganan kasus khusus akan mendapatkan prioritas di atas algoritma greedy yang ada. 3.2.1 Greedy dalam Permainan Strategi greedy yang digunakan : Pada setiap langkah, lihat kartu pemain lain yang sudah dikeluarkan kemudian mainkan kartu dengan poin tertinggi yang tidak akan Elemen-elemen persoalan memainkan kartu dalam skema umum algoritma greedy adalah: - Himpunan kandidat adalah kartu yang terdapat pada tangan. - Himpunan solusi, S, adalah kartu yang merupakan himpunan bagian dari himpunan kandidat dengan poin penalti tertinggi yang tidak akan - S disebut layak apabila kartu yang dikeluarkan sesuai dengan peraturan permainan Hearts. - Fungsi Obyektif adalah memaksimalkan nilai poin penalti dari kartu yang dimainkan tanpa - Fungsi Seleksi memilih kartu dengan poin penalti tertinggi di antara kartu yang tersisa. 3.2.2 Pada saat Mendapat Lead Pada saat pemain mendapat lead maka tujuan dari pemain adalah sesegera mungkin memberikan lead pada pemain lain agar strategi greedy dapat digunakan kembali. Oleh karena itu yang harus dilakukan adalah mengeluarkan kartu dengan poin paling rendah yang dimiliki oleh pemain. 3.2.3 Pada saat Kartu di Tangan Tidak Ada yang Lebih Rendah Dibanding Kartu yang Sudah Dimainkan Secara strategik ada 2 kemungkinan di mana kartu di tangan tidak ada yang lebih rendah dibanding kartu yang sudah dimainkan. Pertama ketika pemain mendapat giliran terakhir, kedua ketika pemain tidak mendapatkan giliran terakhir. Kedua kemungkinan tersebut memiliki penanganan yang berbeda. Ketiak pemain mendapat giliran terakhir maka yang menjadi tujuan dari pemain adalah mengeluarkan kartu dengan nilai tertinggi sesuai peraturan, tentu saja dengan sebisa mungkin menghindari kartu dengan poin penalti. Hal ini bertujuan untuk menghindari kemungkinan yang sama terjadi pada trick-trick berikutnya. Pada saat pemain tidak mendapatkan giliran terakhir maka yang menjadi tujuan dari pemain adalah mengeluarkan kartu terkecil sesuai peraturan. Hal ini dilakukan dengan harapan pemain lain setelahnya mengeluarkan kartu dengan nilai yang lebih tinggi dan 4. Simulasi Permainan Berikut simulasi permainan kartu Hearts menggunakan aplikasi permainan Hearts buatan Microsoft:

Gambar 6. Passing cards Strategi greedy memilih kartu Queen of Spades untuk diberikan disusul oleh kartu Queen of Hearts dan Eigth of Hearts. Gambar 8. Kasus khusus fase permainan (lead) Pada kasus tersebut pemain mengeluarkan kartu Ten of Diamonds karena pada saat itu kartu hearts belum pecah sehingga kartu terkecil yang mungkin adalah kartu tersebut. Gambar 7. Kasus khusus fase permainan (tidak ada kartu rendah) Pada kasus tersebut pemain mengeluarkan kartu Six of Clubs karena tidak ada lagi kartu lain yang dapat dimainkan yang lebih rendah daripada kartu Two of Clubs. Gambar 9. Algoritma Greedy Pada kasus tersebut pemain mengeluarkan Ace of Hearts sesuai dengan algoritma greedy yang ada.

Gambar 10. Fase Penilaian Dengan menggunakan algoritma greedy yang ada pemain masih belum dapat memenangkan permainan Hearts namun poin penalti yang didapat termasuk rendah sehingga ada kemungkinan pemain dapat keluar sebagai pemenang pada akhir permainan menggunakan algoritma greedy yang ada. 5. KESIMPULAN Penerapan algoritma greedy pada permainan Hearts belum dapat memberikan hasil yang optimal, algoritma greedy gagal pada bagian akhir fase permainan di mana pemain dipaksa untuk mendapatkan lead untuk setiap trick yang tersisa sehingga mengakibatkan pemain tidak dapat memenangkan permainan. Strategi greedy yang lebih baik dapat dibuat dengan memperhitungkan jumlah kartu yang tersisa di tangan masing-masing pemain sehingga dapat mencegah terjadinya lead pada bagian akhir permainan. REFERENSI [1] Wikipedia http://en.wikipedia.org/wiki/hearts Waktu akses : 03 Januari 2010, pukul 00.00 04.00 [2] Wikipedia http://en.wikipedia.org/wiki/card_game Waktu akses : 03 Januari 2010, pukul 00.00 01.00 [3] Munir, Rinaldi. 2005. Diktat Kuliah Strategi Algoritmik IF2251 Strategi Algoritmik. Departemen Teknik Informatika ITB