Aplikasi Algoritma Greedy pada Permainan Kartu Truf Pass

dokumen-dokumen yang mirip
Penerapan Algoritma Greedy Pada Permainan Kartu Truf

Penerapan Algoritma Greedy pada Permainan Kartu 100

Penerapan Algoritma Greedy dan Breadth First Search pada Permainan Kartu Sevens

Aplikasi Algoritma Greedy dalam Permainan Kartu Truf

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

Algorima Greedy Pada Self Serve Gas Station

APLIKASI ALGORITMA GREEDY DALAM PERMAINAN CAPSA BANTING

Penggunaan Algoritma Greedy Untuk Menyelesaikan Permainan Cluedo

IMPLEMENTASI ALGORITMA GREEDY PADA PERMAINAN CONGKLAK

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

Penerapan Algoritma Greedy dalam Permainan Othello

Aplikasi Algoritma Greedy dalam Penjurusan Mahasiswa Tingkat Pertama Institut Teknologi Bandung

Aplikasi Algoritma Greedy Pada Permainan Big Two

Implementasi Algoritma Greedy pada Permainan Ludo

IMPLEMENTASI ALGORITMA GREEDY PADA PERMAINAN OTHELLO

Penerapan Algoritma Greedy pada Permainan Tower Defense

Strategi Permainan Bridge menggunakan Algoritma Greedy

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

Penerapan Algoritma Greedy dalam Pembuatan Artificial Intelligence Permainan Reversi

Penerapan Prinsip Greedy dalam Permainan Kartu Hearts

Implementasi Algoritma Greedy Dua Sisi pada Permainan 2048

Penerapan Algoritma Greedy dan Backtrackng Dalam Penyelesaian Masalah Rubik s Cube

Algoritma Greedy untuk AI dalam Permainan DotA

Penerapan Algoritma Greedy pada Permainan Bubble Breaker

ALGORITMA GREEDY DALAM PERMAINAN DOTS AND BOXES

Penentuan Keputusan dalam Permainan Gomoku dengan Program Dinamis dan Algoritma Greedy

PENGGUNAAN ALGORITMA GREEDY DALAM PERMAINAN KARTU BLACK JACK

Penggunaan Algoritma Greedy untuk Menyelesaikan Permainan UNO Kartu (Klasik)

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

Penerapan Algoritma Greedy dalam Permainan Connect 4

Aplikasi Algoritma Greedy untuk Menyelesaikan Permainan Hedgewars

Penerapan Algoritma Greedy pada Permainan Fire Emblem

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

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

Penerapan Algoritma Greedy dalam Penyetokan Barang

Aplikasi Algoritma Greedy untuk Pergerakan Musuh pada Permainan Pac-Man

Penerapan Algoritma Greedy untuk Permainan Halma

Penerapan Algoritma Greedy dalam Permainan Tradisional Congklak

Implementasi Algoritma Greedy dalam Pembagian kerja pada Mesin yang Identik

Penentuan Rute Belanja dengan TSP dan Algoritma Greedy

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

Penerapan Algoritma Greedy dalam Pencarian Rantai Penjumlahan Terpendek

Design and Analysis of Algorithms CNH2G3- Week 8 Greedy Algorithm

Penerapan Algoritma Greedy dalam Algoritma Disk Scheduling Shortest Seek Time First

Penerapan Algoritma Greedy untuk Permainan Flood It

Penentuan Langkah Sederhana dalam Permainan Kartu Hearthstone dengan Algoritma Greedy

Algoritma Greedy untuk Pengambilan Keputusan dalam Permainan Kartu Hearts

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

Penggunaan Algoritma Greedy untuk Mencari Solusi Optimal dalam Permainan Brick Breaker

Penerapan Algoritma Greedy dalam Permainan MarketGlory

Strategi Perancangan Bot Player pada Permainan Tradisional Congklak dengan Algoritma Greedy

Penggunaan Algoritma Greedy untuk menyelesaikan Permainan Othello

Algoritma Greedy pada Board Game Saboteur

Penerapan Algoritma Greedy Pada Game Tower Defense: Tower of Greece

Penerapan algoritma Greedy dalam penentuan Porter Generic Strategies untuk suatu perusahaan

Aplikasi Algoritma Greedy untuk Optimasi Sistem Booking Hotel Online

Algoritma Greedy dalam Artificial Intelligence Permainan Tic Tac Toe

Aplikasi Algoritma MiniMax pada Beberapa Permainan Papan

Penyempurnaan Intelegensa Buatan Mode AI ++ Ragnapolis dengan Langkah Penjualan Kota Berbasiskan Algoritma Greedy

APLIKASI ALGORITMA GREEDY DALAM PENENTUAN SPESIFIKASI KOMPUTER RAKITAN

ALGORITHM. 5 Greedy Algorithm. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.com

Penerapan Algoritma Greedy dalam Algoritma Penjadwalan Prosesor Tunggal Shortest Job First

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

Penerapan Algoritma Greedy Dalam Permainan Clash Royale

PENGGUNAAN ALGORITMA GREEDY PADA MESIN PENCARI

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

Analisis Pengimplementasian Algoritma Greedy untuk Memilih Rute Angkutan Umum

Penerapan Teori Kombinatorial dan Peluang Dalam Permainan Poker

Penerapan Algoritma Greedy dalam Permainan Bantumi

Penggunaan Algoritma Greedy untuk Meminimalkan Belanja

PENGGUNAAN ALGORITMA GREEDY PADA PERMAINAN CAPSA SUSUN

PENERAPAN ALGORITMA GREEDY DALAM PENCARIAN SOLUSI TERBAIK PADA PERMAINAN TETRIS

Penerapan Algoritma Greedy dalam Optimasi Keuntungan Perusahaan Pengiriman Barang

Penentuan Lokasi Pemasaran Produk dengan Media Periklanan Menggunakan Algoritma Greedy

Aplikasi Algoritma Greedy pada Optimasi Pelaksanaan Misi dalam Permainan Assassins Creed : Revelations

Penggunaan Algoritma Greedy Dalam Perancangan Papan Teka Teki Silang

Aplikasi Algoritma Greedy pada Permainan Zuma

Analisis Beberapa Algoritma dalam Menyelesaikan Pencarian Jalan Terpendek

Eksplorasi Algoritma Brute Force, Greedy, dan Dynamic Programming untuk Persoalan Integer Knapsack

APLIKASI ALGORITMA GREEDY DALAM PERMAINAN JAWBREAKER

Penerapan Algoritma Greedy dalam Pembuatan Klasemen Kompetisi

Penyelesaian Berbagai Permasalahan Algoritma dengan Kombinasi Algoritma Brute Force dan Greedy

Penggunaan Algoritma Greedy dalam Optimasi Masalah Perkebunan

Penerapan Algoritma Greedy Pada Permainan Killbots

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

Design and Analysis Algorithm. Ahmad Afif Supianto, S.Si., M.Kom. Pertemuan 06

Penerapan Algoritma Greedy dalam Pemilihan Pemain di Game Football Manager

Penyelesaian Sum of Subset Problem dengan Dynamic Programming

Penentuan Langkah dengan Greedy dalam Permainan Ludo

Penerapan Algoritma Greedy untuk Menempatkan Pelanggan dalam Permainan Video Diner Dash

Implementasi Algoritma Runut Balik pada Permainan Texas Hold em Poker

Perancangan Algoritma Greedy pada AI Permainan Turn Based Strategy

Pendahuluan. Algoritma greedy merupakan metode yang paling populer untuk memecahkan persoalan optimasi.

Kompleksitas Algoritma untuk Penyelesaian Persoalan Penukaran Koin dengan Algoritma Greedy

Penerapan Algoritma DFS pada Permainan Sudoku dengan Backtracking

Aplikasi Algoritma Greedy untuk Menyelesaikan Permainan Magic Wingdom

Penerapan Algoritma Greedy dalam Meraih IP tertinggi dengan Waktu yang Terbatas

Menerapkan Prinsip Greedy Dalam Bermain Digimon Card Battle

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

Perbandingan Algoritma Greedy & Bactracking Dalam Penyelesaian Permainan 2048

Transkripsi:

Aplikasi Algoritma Greedy pada Permainan Kartu Truf Pass Dimpos A.G. Sitorus / 13513083 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia dimpossitorus@gmail.com Abstract Makalah ini berisikan penerapan salah satu algoritma yang diajarkan pada mata kuliah IF2211 Strategi Algoritma, yaitu algoritma Greedy pada permainan kartu truf pass Index Terms permainan kartu truf pass, truf pass, greedy, strategi algoritma, strategi permainan kartu I. PENDAHULUAN A. Latar Belakang Permainan kartu adalah salah satu permainan yang cukup banyak peminatnya di dunia. Cukup banyak strategi yang digunakan untuk memenangkan permainan kartu. Salah satunya adalah permainan truf pass. Penulis tertarik menyelesaikan permainan kartu truf pass ini dengan menggunakan algoritma greedy, dimana tujuan utama permainan kartu ini adalah menarik sebanyak mungkin kartu - paling sedikit sesuai dengan penawaran - untuk bisa memenangkan permainan ini. B. Tujuan Tujuan penulis membuat makalah tentang topik ini adalah: - Menambah pemahaman tentang algoritma Greedy - Mengimplementasikan algoritma greedy - Menambah pemahaman tentang permainan kartu strategi, terutama truf pass - Langkah awal pengembangan kecerdasan buatan untuk pengembangan permainan truf pass pada platform. II. TRUF PASS A. Deskripsi Singkat Truf Pass Truf pass adalah sebuah permainan kartu strategi yang cukup umum di Indonesia. Permainan ini bisa dikatakan adalah modifikasi dari permainan truf. Jika pada permainan kartu truf, pemain bermain sendiri untuk memenangkan permainan, maka pada truf pass, pemain bekerja sama, dua vs dua. Pemain yang satu tim adalah pemain yang bersebarangan secara diagonal. Setiap orang mendapat 13 kartu acak dari satu set kartu remi tanpa kartu joker. Dan seperti truf, pemain hanya mengetahui susunan kartu milik sendiri, bahkan kartu rekanan juga tidak kita ketahui. Pada awalnya permainan dimulai dengan melakukan penawaran. Untuk permainan pertama biasanya yang mengocok kartu yang memulai penawaran, untuk permainan selanjutnya, yang memenangkan permainan sebelumnya yang memulai penawaran. Pemenang permainan adalah tim yang berhasil menarik kartu sejumlah lebih besar atau sama dengan penawaran yang dilakukannya. B. Urutan Kekuatan Kartu Urutan kekuatan kartu sama dengan urutan pada truf, yaitu untuk bunga dimulai dari keriting ( ), diamond ( ), heart ( ), dan spade ( ). Untuk urutan angka dimulai dari 2,3,4,5,6,7,8,9,10, Jack, Queen, King, As(Ace). Kartu 7 lebih kuat daripada 7, 7 lebih kuat daripada 7. 7 lebih kuat daripada 7. Kartu 8 lebih kuat daripada 7, 9 lebih kuat daripada 8 dan seterusnya. C. Penawaran Jenis-jenis penawaran ada 5 yaitu, n keriting, n diamond, n heart, n spade dan n no truf, dimana n adalah jumlah yang akan ditarik dan no truf adalah jenis bunga tertinggi. Penawaran selalu dimulai dengan nilai 7 dan bunga yang diinginkan. Penawaran ini berfungsi sebagai penentu permainan. Angka yang disebut akan menjadi jumlah kartu yang akan ditarik, dan bunga yang disebut akan menjadi kartu truf pada permainan. Pemenang penawaran ini

adalah tim/pasangan yang menawarkan yang tertinggi (angka dan bunga tertinggi dalam penawaran). No truf sendiri adalah penawaran dimana permainan dimainkan tanpa kartu truf. Untuk pasangan pemenang penawaran, jumlah kartu yang harus ditarik adalah sejumlah n kartu, dan untuk pasangan lain adalah sejumlah (14 n) kartu. Jika misalnya penawaran tertinggi adalah 8 heart, maka permainan dimulai dengan kartu truf pada heart, jumlah kartu yang harus ditarik oleh pasangan pemenang penawaran adalah 8 kartu, dan jumlah kartu yang ditarik tim yang kalah penawaran adalah 6 kartu. Dan juga ada sistem double dan redouble. Double disebutkan oleh lawan. Redouble disebutkan oleh rekanan, jika tim lawan menyebutkan double. Double disini maksudnya mengalikan skor yang didapat oleh tim yang akan memenangkan permainan dengan dua. Redouble maksudnya mengalikan skor hasil double dengan dua, atau sama dengan mengalikan skor tim yang akan memenangkan pertandingan dengan 4. D. Aturan Bermain, Konvensi dan Scoring Permainan ini dimulai dengan pemain pertama menurunkan kartu. Boleh dimulai dari kartu yang bukan truf, dan juga boleh dimulai dengan kartu truf. Jika yang diturunkan bukan kartu truf, maka kita harus menurunkan kartu yang bunganya sesuai. Jika kita tidak mempunyai kartu pada bunga tersebut (sering disebut void), maka kita boleh menurunkan kartu truf, atau kita juga boleh menyampah atau menurunkan kartu lain yang bukan truf. Biasanya ini tergantung strategi dan kondisi permainan. Jika pemain pertama menurunkan kartu truf, kita harus menurunkan kartu truf, jika tidak ada, maka kita melakukan tindakan menyampah. Jika kita menurunkan kartu truf maka kita harus menurunkan dengan posisi terbalik, tidak menunjukkan angkanya. Jika seorang pemain mendapat kartu hanya angka saja, tidak terdapat gambar (Jack, Queen, King, atau As) maka terjadi void dan dilakukan pengocokan ulang. Namun jika void yang terjadi adalah salah satu jenis bunga kartu tidak ada, namun pada bunga lain terdapat kartu gambar (Jack, Queen, King, atau As), permainan tetap dilanjutkan. Ada beberapa konvensi umum/dasar yang berlaku untuk permainan truf ini. Pada umumnya pemain pertama memainkan kartu kecil dengan bunga yang ditawar oleh rekanannya. Misalnya rekanannya menawar kartu keriting, maka pemain pertama menurunkan kartu terkecil yang dimilikinya pada bunga keriting. Untuk orang kedua biasanya mengeluarkan kartu terkecil yang dimilikinya pada bunga kartu yang sedang dimainkan, namun tidak menutup kemungkinan mengeluarkan kartu tertinggi jika kartu tersebut memang kartu tertinggi ketika permainan sedang berlangsung, contoh As; King, jika As sudah turun; Queen jika King dan As sudah turun. Untuk pemain ketiga pada umumnya melakukan jihad, atau menurunkan kartu tertinggi yang dimilikinya. Namun tidak menutup kemungkinan menurunkan kartu rendah/terendah jika ternyata pemain kedua telah menurunkan kartu tertinggi. Pemain keempat biasanya bebas menurunkan kartu apa saja. Jika pemain ketiga menurunkan kartu tertinggi dan pemain keempat masih memiliki kartu yang lebih tinggi maka kartu tersebut akan diturunkan. Namun jika tidak ada kartu yang lebih tinggi, atau pemain kedua (rekanannya) telah menurunkan kartu terendah maka biasanya diturunkan kartu terendah. Untuk sistem penilaian, ada nilai kecil dan besar. Nilai kecil didapat dari jumlah kartu yang ditarik oleh tim yang memenangkan permainan. Misalnya dimenangkan oleh tim A dengan jumlah kartu yang ditarik adalah 8, maka skor disebut 8-0. Pada permainan selanjutnya, ternyata tim B menang dengan jumlah kartu 9, maka skor menjadi 0-1. Untuk nilai besar didapat dari nilai kecil jika telah mencapai 30. III. ALGORITMA GREEDY Algoritma greedy adalah salah satu algoritma pemecahan masalah yang cukup banyak digunakan. Algoritma ini cukup simple. Algoritma ini lebih mangkus dan lebih cerdas dibandingkan dengan algoritma brute force. Arti greedy sendiri adalah tamak, rakus atau loba. Semboyan algoritma ini adalah : Take what you can get now!. Algoritma greedy mempunyai karakteristik / prinsip optimalitas. Pada setiap langkah, algoritma greedy memilih nilai optimal lokal (maksimum lokal atau minimum lokal). Diharapkan dengan memilih nilai optimal lokal, maka akan terbentuk nilai optimal global. Elemen-elemen algoritma greedy adalah : 1. Himpunan kandidat Merupakan himpunan yang berisi elemen elemen pembentuk solusi. Pada setiap langkah, satu buah kandidat diambil dari himpunannya. Contohnya adalah himpunan simpul dalam graf untuk menentukan graf merentang minimum.

2. Himpunan solusi Merupakan himpunan yang berisi elemen elemen pembentuk solusi. Pada setiap langkah, satu buah kandidat diambil dari himpunannya. Contohnya adalah himpunan simpul dalam graf untuk menentukan graf merentang minimum. 3. Fungsi seleksi Fungsi yang pada setiap langkah memilih kandidat yang paling memungkinkan mencapai solusi optimal. Kandidat yang sudah dipilih pada suatu langkah tidak akan pernah dipertimbangkan lagi pada langkah selanjutnya. 4. Fungsi kelayakan Fungsi yang memeriksa apakah suatu kandidat yang dipilih dapat memberikan solusi yang layak, dimana kandidat tersebut dan himpunan solusi yang terbentuk tidak melanggar kendala/constraint yang ada. 5. Fungsi objektif : fungsi yang memaksimumkan atau meminimumkan nilai solusi Dengan kata lain, algoritma greedy melibatkan pencarian sebuah himpunan bagian S, dari himpunan kandidat, C; yang dalam hal ini, S harus memenuhi beberapa kriteria yang ditentukan, yaitu menyatakan suatu solusi dan S dioptimisasi oleh fungsi obyektif. Algoritma ini lebih mangkus dibandingkan algoritma brute force (exhaustive search), namun algoritma greedy sendiri bukan algoritma yang paling mangkus dalam menghasilkan nilai optimum, karena fungsi seleksinya hanya memilih optimum lokal, yang dimana optimum lokal tersebut belum tentu himpunan bagian dari solusi optimum global. Algoritma greedy sering digunakan untuk mendapatkan nilai/solusi hampiran (approximation value) jika nilai terbaik tidak mutlak diperlukan. Kelebihan : 1. Lebih mangkus dan lebih cerdas dibandingkan algoritma brute force. 2. Cukup sederhana untuk menghasilkan nilai optimum yang mendekati atau bahkan bisa sama, jika dibandingkan dengan algoritma yang lebih kompleks 3. Dapat memberikan nilai/solusi hampiran yang cukup baik untuk kompleksitas algoritma yang jauh lebih rendah dibandingkan exhaustive search. Kekurangan : 1. Algoritma greedy tidak beroperasi secara menyeluruh terhadap seluruh kemungkinan solusi yang ada, sehingga tidak dapat dipastikan bahwa hasilnya adalah solusi optimum terbaik 2. Terdapat beberapa fungsi seleksi yang berbeda sehingga kita harus memilih fungsi seleksi yang tepat untuk menghasilkan solusi yang paling optimum 3. Akibat dari kedua hal diatas, maka algoritma greedy tidak selalu berhasil memberikan solusi terbaik. IV. PENERAPAN ALGORITMA GREEDY A. Algoritma greedy untuk melakukan penawaran Penawaran pada awal permainan dimulai dari orang/rekanan yang mengkocok kartu. Setelah permainan berjalan, penawaran dimulai dari tim yang memenangkan permainan sebelumnya. 1. Himpunan kandidat Himpunan kandidat dalam persoalan permainan truf pass ini adalah 13 buah kartu yang dibagikan secara acak dari satu set kartu remi tanpa joker 2. Himpunan solusi Himpunan solusi dalam persoalan ini adalah bunga kartu yang menjadi truf dan 3. Fungsi seleksi Fungsi untuk menghitung jumlah kartu bernilai tinggi, dan menghitung jumlah kartu tiap bunga 4. Fungsi kelayakan Fungsi untuk memeriksa kartu penawaran. Memilih bunga yang mempunyai status terkuat, yaitu terdapat kartu tinggi, misalnya, terdapat As, Queen, Jack, 10. Atau terdapat cukup banyak kartu dalam bunga itu, contoh terdapat 6 kartu yang bernilai 4, 6, 7, 8, 9, Jack). Jika rekan menawar pada bunga yang sama dengan yang kita tawar atau dengan kartu terkuat kita, lakukan penawaran atas tawaran lawan pada bunga yang sama dengan rekanan kita. 5. Fungsi objektif Menghasilkan kartu penawaran dengan jumlah dan bunga tertentu yang terbaik (Kartu tinggi banyak, kartu cukup panjang, atau sesuai dengan penawaran rekan B. Algoritma greedy untuk menurunkan kartu Jika seorang pemain mempunyai katu tertinggi pada bunga tersebut, maka pemain tersebut mengeluarkan kartu tertinggi tersebut, jika tidak ada, mengeluarkan kartu terendah. Khusus untuk pemain ketiga mengeluarkan kartu tertinggi jika kedua pemain sebelumnya mengeluarkan kartu yang lebih rendah. Jika bunga kartu telah void, turunkan kartu truf. Untuk orang pertama, turunkan kartu terendah yang ditawar rekanan, kartu terbesar pada saat bermain atau kartu lain yang tertinggi atau terendah.

1. Himpunan kandidat Himpunan kandidat dalam persoalan permainan truf pass ini adalah 13 buah kartu yang dibagikan secara acak dari satu set kartu remi tanpa joker 2. Himpunan solusi Himpunan solusi dalam persoalan ini adalah kartu terkuat, sehingga kartu tersebut dapat melakukan penarikan 3. Fungsi seleksi Untuk pemain pertama, turunkan kartu terendah pada bunga yang ditawar oleh rekanan, atau kartu tertinggi di bunga manapun. Jika tidak memegang kartu tertinggi, maka turunkan kartu terendah di bunga manapun. Untuk pemain kedua, turunkan kartu tertinggi dalam permainan berjalan yang dimainkan oleh pemain pertama. Jika tidak ada turunkan kartu terendah. Untuk permain ketiga, jika rekanan menurunkan kartu tertinggi, maka turunkan kartu terendah.jika tidak, turunkan kartu yang tertinggi yang dimiliki walaupun bukan kartu tertinggi dalam permainan. Untuk pemain keempat, jika rekanan (pemain kedua) atau pemain lawan menurunkan kartu tertinggi, maka turunkan kartu terendah. Jika tidak, turunkan kartu yang lebih tinggi daripada kartu yang sudah diturunkan 4. Fungsi kelayakan Kartu yang diturunkan merupakan kartu tertinggi sehingga dapat melakukan penarikan. 5. Fungsi objektif Jumlah kartu yang ditarik lebih dari sama dengan penawaran. C. Implementasi Algoritma greedy untuk melakukan penawaran dalam pseudocode function tawar (Set kartu, penawaran penawaranterakhir, penawaran penawaranteman) -> Penawaran //Kamus data Lokal hasiltawar : Penawaran kartuterkuat : Kartu kartuterpanjang : Kartu ; kartuterkuat <- temukankartuterkuat(kartu) //menghasilkan kartu terkuat yang dimiliki if (penawaran terakhir = nil) hasiltawar.jumlah<-7 hasiltawar.kartu<kartuterkuat; if (penawaranteman=nil) if (kartuterkuat lebih tinggi penawaranterakhir.kartu) hasiltawar.kartu<kartuterkuat hasiltawar.kartu<kartuterkuat if (penawaranteman.kartu = kartuterkuat) if (kartuterkuat lebih tinggi penawaranterakhir.kartu) hasiltawar.kartu<-kartuterkuat hasiltawar.kartu<-kartuterkuat if (penawaranteman.kartu = kartuterpanjang) if (kartuterpanjang lebih tinggi penawaranterakhir.kartu) hasiltawar.kartu<kartuterpanjang hasiltawar.kartu<kartuterpanjang return hasiltawar kartuterpanjang <- temukankartuterpanjang(kartu) // menghasilkan kartu yang jumlahnya terbanyak

D. Implementasi Algoritma greedy untuk menurunkan kartu dalam pseudocode function adakartulebihtinggi() - > boolean //terdapat kartu yang lebih tinggi daripada kartu yang sudah diturunkan pemain sebelumnya function adakartutertinggi (Set kartukeluar) -> boolean { // menghasilkan nilai true jika terdapat kartu tertinggi pada kartu yang sedang kita miliki // set kartukeluar berisi kartu yang telah diturunkan oleh pemain // set kartukeluar diisi ketika keempat pemain sudah menurunkan kartunya // contoh : jika As sudah terdapat di set KartuKeluar maka King adalah tertinggi } function -> Kartu Return (HIGHEST_CARD) // HIGHEST_CARD adalah kartu tertinggi yang dimiliki pemain yang sesuai dengan bunga yang dimainkan function turunkankartuterendah() -> Kartu Return (LOWEST_CARD) // LOWEST_CARD adalah kartu terendah yang dimiliki pemain yang sesuai dengan bunga yang dimainkan function turunkantruftertinggi ()-> Kartu Return (HIGHEST_TRUF) // HIGHEST_TRUF adalah truf tertinggi yang dimiliki function turunkantrufterendah()- > Kartu Return (LOWEST_TRUF) // LOWEST_TRUF adalah truf tertinggi yang dimiliki function selectkartu {} If (urutanpemain = 1) if (adakartutertinggi()) if (kartuvoid) turunkantrufterkecil() turunkankartuterkecil() if (urutanpemain = 2) if (adakartutertinggi()) if (kartuvoid) turunkantrufterendah() turunkankartuterendah() if (urutanpemain = 3) if (adakartuyanglebihtinggi()) if (kartuvoid()) turunkantruftertinggi() turunkankartuterendah() if (adakartuyanglebihtinggi()) if (kartuvoid()) turunkantruftertinggi() turunkankartuterendah() IV. ANALISIS Permainan kartu truf pass adalah permainan yang mengutamakan strategi. Penerapan algoritma greedy dalam permainan ini cukup baik, namun terkadang tidak memberikan hasil yang diinginkan/ hasil optimal. Karena algoritma ini tidak memperhitungkan elemen-elemen lain, seperti kartu apa yang akan dikeluarkan pemain lain. Algoritma greedy hanya salah satu cara pendekatan untuk menyelesaikan permainan kartu truf pass. Masih banyak pendekatan lain yang dapat dilakukan untuk menyelesaikan permainan truf pass. Mungkin jika pendekatan/algoritma lain tersebut digabung bersama dengan greedy akan bisa memberikan hasil yang cukup optimal Jika hanya menggunakan algoritma greedy, pemain belum tentu selalu memenangkan permainan. Banyak faktor lain, seperti hasil pembagian kartu yang mungkin pemain hanya mendapat satu buah kartu gambar dan kartunya merata (kartunya paling banyak 4 pada tiap bunga), dan juga faktor keberuntungan dalam menurunkan truf.

V. KESIMPULAN Algoritma greedy pada permainan truf dapat digunakan dan kemungkinan menghasilkan solusi yang baik (memenangkan permainan) jika hasil pembagian kartu cukup bagus dan mendapat kartu tinggi cukup banyak. Algoritma greedy juga dapat dikembangkan secara lebih lanjut supaya bisa memberikan solusi yang lebih optimal. Dan mungkin dari algoritma ini dapat dikembangkan kecerdasan buatan (artificial intelligence) untuk permainan kartu truf sehingga dapat dikembangkan permainan truf pada device seperti Android, iphone, Windows Phone, dll. VI. UCAPAN TERIMA KASIH Penulis mengucapkan terima kasih terutama kepada Tuhan Yesus Kristus karena berkat anugerah yang diberikan-nya makalah ini dapat diselesaikan. Penulis juga mengucapkan terima kasih kepada Bapak Ir. Rinaldi Munir, M.T. selaku dosen pengajar kuliah IF3051 Strategi Algoritma karena berkat kuliah yang diberikan dan buku diktat yang ditulis oleh beliau makalah ini dapat dibuat dan disempurnakan. VII DAFTAR PUSTAKA [1] Rinaldi Munir, Diktat Kuliah Strategi Algoritmik, Program Studi Teknik Informatika ITB, 2006 [2] Anany Levitin, Design and Analysis of Algorithm. Pearson Education Inc. 2012 [3] Nikolaus Indra, Makalah Penerapan Algoritma Greedy pada Permainan Kartu Truf, Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, 2010 PERNYATAAN Dengan ini saya menyatakan bahwa makalah yang saya tulis ini adalah tulisan saya sendiri, bukan saduran, atau terjemahan dari makalah orang lain, dan bukan plagiasi. Bandung, 02 Mei 2015 Dimpos A.G. Sitorus