Memenangkan Permainan Blackjack Menggunakan Machine Learning No ratings yet.

Salah satu hal hebat tentang pembelajaran Memenangkan Permainan Blackjack Menggunakan Machine Learning adalah ada begitu banyak pendekatan berbeda untuk memecahkan masalah. Jaringan saraf sangat bagus untuk menemukan pola dalam data, menghasilkan kemampuan prediksi yang benar-benar mengesankan. Pembelajaran penguatan menggunakan konsep berbasis penghargaan, meningkat seiring waktu. Dan kemudian ada pendekatan yang disebut algoritma genetika.

Algoritma genetika (GA) menggunakan prinsip-prinsip dari evolusi untuk memecahkan masalah. Ini bekerja dengan menggunakan populasi solusi potensial untuk suatu masalah, berulang kali memilih dan membiakkan kandidat yang paling sukses sampai solusi akhir muncul setelah beberapa generasi.

Untuk mendemonstrasikan seberapa efektif pendekatan ini, kami akan menggunakannya untuk memecahkan masalah yang kompleks – pembuatan strategi untuk memainkan permainan casino Blackjack (juga dikenal sebagai “21”).

Istilah “strategi” dalam hal ini berarti panduan untuk tindakan pemain yang mencakup semua situasi. Tujuannya adalah untuk menemukan strategi yang sebaik mungkin, menghasilkan kemenangan yang maksimal dari waktu ke waktu.

Tentang Strategi Memenangkan Permainan Blackjack

Memenangkan Permainan Blackjack Menggunakan Machine Learning

Tentu saja, pada kenyataannya tidak ada strategi kemenangan untuk Blackjack – aturan dibuat sehingga rumah selalu memiliki keunggulan. Jika Anda bermain cukup lama, Anda akan kehilangan uang.

Mengetahui hal itu, strategi terbaik yang mungkin dilakukan adalah meminimalkan kerugian. Menggunakan strategi seperti itu memungkinkan pemain untuk meregangkan bankroll sejauh mungkin sambil berharap keberuntungan jangka pendek. Itu benar-benar satu-satunya cara untuk mendapat untung di Blackjack.

Seperti yang Anda bayangkan, Blackjack telah dipelajari oleh ahli matematika dan ilmuwan komputer untuk waktu yang sangat lama. Kembali pada tahun 1960-an, seorang ahli matematika bernama Edward O. Thorp menulis sebuah buku berjudul Beat the Dealer, yang mencakup grafik yang menunjukkan strategi “Dasar” yang optimal.

Strategi lengkap untuk bermain Blackjack.

Meja tinggi di kiri untuk tangan keras, meja di kanan atas untuk tangan empuk, dan meja di kanan bawah untuk berpasangan.

Jika Anda tidak terbiasa dengan Blackjack, tangan yang lembut adalah tangan dengan Ace yang dapat dihitung sebagai 1 atau 11, tanpa total nilai tangan melebihi 21. Sepasang tangan sudah jelas, dan tangan yang keras pada dasarnya adalah segalanya, dikurangi menjadi nilai tegangan total.

Kolom di sepanjang bagian atas tiga tabel adalah untuk kartu atas dealer, yang mempengaruhi strategi. Perhatikan bahwa peringkat up card tidak termasuk Jack, Queen atau King. Itu karena semua kartu tersebut dihitung sebagai 10, jadi semuanya dikelompokkan bersama dengan Sepuluh (“T”) untuk menyederhanakan tabel.

Untuk menggunakan tabel, pemain pertama-tama akan menentukan apakah mereka memiliki pasangan, tangan lunak atau tangan keras, kemudian melihat di tabel yang sesuai menggunakan baris yang sesuai dengan pegangan tangan mereka, dan kolom yang sesuai dengan kartu atas dealer.

Sel dalam tabel akan menjadi “H” jika strategi yang benar adalah memukul, “S” jika strategi yang benar adalah berdiri, “D” untuk double-down, dan (hanya dalam tabel berpasangan) “P” untuk pemisahan .

Mengetahui solusi optimal untuk masalah seperti ini sebenarnya sangat membantu. Membandingkan hasil dari GA ke solusi yang diketahui akan menunjukkan seberapa efektif teknik tersebut.

Cara Kerja Genetika Algoritma Dalam Blackjack

Memenangkan Permainan Blackjack Menggunakan Machine Learning

genetika menyenangkan untuk digunakan karena sangat mudah dipahami: Anda mulai dengan populasi solusi potensial (awalnya, benar-benar acak), dan kemudian membiarkan evolusi melakukan tugasnya untuk menemukan solusi.

Proses evolusi itu didorong oleh perbandingan solusi kandidat. Setiap kandidat memiliki skor kebugaran yang menunjukkan seberapa baik itu. Skor tersebut dihitung sekali per generasi untuk semua kandidat, dan dapat digunakan untuk membandingkannya satu sama lain.

Dalam kasus strategi Blackjack, skor kebugarannya cukup mudah: jika Anda memainkan N tangan Blackjack menggunakan strategi tersebut, berapa banyak uang yang Anda miliki setelah selesai? (Karena house edge, semua strategi akan kehilangan uang, yang berarti semua skor kebugaran akan negatif. Skor kebugaran yang lebih tinggi untuk suatu strategi berarti ia kehilangan lebih sedikit uang daripada yang mungkin dimiliki orang lain.)

Cara menseleksi penggunaan GA

Ada sejumlah teknik pemilihan berbeda untuk mengontrol seberapa banyak pemilihan didorong oleh skor kebugaran vs. keacakan. Satu pendekatan sederhana disebut Seleksi Turnamen, dan ini bekerja dengan memilih N kandidat secara acak dari populasi dan menggunakan salah satu dengan skor kebugaran terbaik. Sederhana dan efektif.

Setelah dua orang tua dipilih, mereka disilangkan untuk membentuk seorang anak. Ini bekerja seperti reproduksi seksual biasa – materi genetik dari kedua orang tua digabungkan. Karena orang tua dipilih dengan memperhatikan kebugaran, tujuannya adalah untuk meneruskan elemen sukses dari kedua orang tua.

Secara alami, dalam hal ini “materi genetik” hanyalah 340 sel dari tiga tabel yang dimiliki setiap strategi. Sebuah sel pada anak diisi dengan memilih sel yang sesuai dari salah satu dari dua orang tua. Seringkali, persilangan dilakukan secara proporsional dengan skor kebugaran relatif, sehingga salah satu orang tua dapat berkontribusi lebih banyak sel tabel daripada yang lain jika mereka memiliki skor kebugaran yang jauh lebih baik.

Keragaman genetik penting, karena jika Anda tidak memiliki cukup, mudah terjebak dalam sesuatu yang disebut minimum lokal, yang pada dasarnya adalah solusi yang bekerja lebih baik daripada alternatif serupa, tetapi lebih rendah daripada solusi lain yang secara signifikan berbeda dengan Itu.

Untuk menghindari masalah itu, algoritma genetik terkadang menggunakan mutasi (pengenalan materi genetik yang benar-benar baru) untuk meningkatkan keragaman genetik, meskipun populasi awal yang lebih besar juga membantu.

Hasil Menggunakan GA Dalam Blackjack

Memenangkan Permainan Blackjack Menggunakan Machine Learning

Salah satu hal keren tentang GA adalah melihatnya mengembangkan solusi. Generasi pertama diisi dengan solusi yang benar-benar acak. Ini adalah solusi terbaik (berdasarkan skor) dari 750 kandidat di generasi 0 (generasi pertama, acak):

– Seperti yang Anda lihat, ini benar-benar acak. Pada generasi 12, beberapa hal mulai terbentuk:

Dengan hanya pengalaman 12 generasi, strategi yang paling sukses adalah yang Berdiri dengan keras 20, 19, 18, dan mungkin 17. Bagian dari strategi itu berkembang lebih dulu karena itu terjadi begitu sering kali dan hasilnya cukup jelas. Konsep dasar dikembangkan terlebih dahulu dengan GA, dengan detail yang akan diberikan pada generasi selanjutnya.

Petunjuk kualitas lainnya dalam strategi ini adalah hard 11 dan hard 10 holding. Menurut strategi optimal, mereka sebagian besar harus Double-Down, jadi sangat menggembirakan melihat begitu banyak kuning di sana.

Pasangan dan meja tangan lunak berkembang terakhir karena tangan itu jarang terjadi. Seorang pemain diberikan pasangan hanya 6% dari waktu, misalnya.

Generasi 33 Pada GA Dalam Blackjack

Memenangkan Permainan Blackjack Menggunakan Machine Learning

-Dengan generasi 100, meja keras di sebelah kiri benar-benar stabil – tidak berubah dari generasi ke generasi. Tangan lunak dan tabel pasangan semakin disempurnakan:

Dan kemudian generasi terakhir digunakan untuk menyempurnakan strategi. Perubahan dari generasi ke generasi jauh lebih kecil pada tahap ini, karena ini hanyalah proses mengerjakan detail terkecil.

-Akhirnya, solusi terbaik ditemukan lebih dari 237 generasi:

Seperti yang Anda lihat, hasil akhirnya tidak persis sama dengan solusi optimal, tetapi sangat, sangat mendekati. Tangan yang keras khususnya (tabel di sebelah kiri) hampir benar. Meja tangan dan pasangan yang lembut memiliki lebih banyak sel yang tidak cocok, tetapi itu kemungkinan karena jenis tangan tersebut lebih jarang muncul daripada tangan yang keras.

Menguji Kebugaran

Algoritma Genetika Pada dasarnya didorong oleh fungsi kebugaran. Tanpa cara yang baik untuk membandingkan kandidat satu sama lain, tidak mungkin proses evolusi dapat berjalan.

Ide tentang fungsi kebugaran itu sederhana. Meskipun kami mungkin tidak mengetahui solusi optimal untuk suatu masalah, kami memiliki cara untuk mengukur solusi potensial satu sama lain. Fungsi kebugaran mencerminkan tingkat kebugaran relatif dari kandidat yang diteruskan, sehingga skor dapat digunakan secara efektif untuk seleksi.

Untuk tujuan menemukan strategi Blackjack, fungsi kebugaran sangat mudah – ini adalah fungsi yang mengembalikan pendapatan akhir yang diharapkan setelah menggunakan strategi di sejumlah tangan.

Berapa Banyak Pemain

Memenangkan Permainan Blackjack Menggunakan Machine Learning

 

Baca Juga :  Dapatkan Bermain Dari Nol Menjadi Pemenang Dalam Bermain Blackjack

Ternyata, Anda perlu memainkan banyak permainan dengan strategi untuk menentukan kualitasnya. Karena keacakan bawaan dari setumpuk kartu, banyak tangan perlu dimainkan sehingga keacakan merata di seluruh kandidat. Itu sangat penting ketika GA kami mendekati solusi akhir.

Pada generasi awal, tidak masalah jika skor kesesuaian tidak tepat, karena perbedaan antara kandidat yang buruk dan kandidat yang baik biasanya cukup besar dan konvergensi ke solusi akhir terus berlanjut tanpa masalah. Namun, setelah GA masuk ke generasi selanjutnya, strategi kandidat yang dibandingkan hanya akan memiliki perbedaan kecil, jadi penting untuk mendapatkan kemenangan yang diharapkan secara akurat dari fungsi kebugaran. Untungnya, cukup mudah untuk menemukan jumlah tangan yang tepat yang dibutuhkan.

Dengan menggunakan satu strategi, beberapa tes dijalankan, menghasilkan serangkaian skor kebugaran. Variasi dari lari ke lari untuk strategi yang sama akan mengungkapkan berapa banyak variabilitas yang ada, yang sebagian didorong oleh jumlah tangan yang diuji. Semakin banyak tangan yang dimainkan, semakin kecil variasinya.

Dengan mengukur deviasi standar dari himpunan skor, kita mendapatkan gambaran tentang seberapa banyak variabilitas yang kita miliki di seluruh himpunan untuk pengujian N tangan. Namun karena kami bereksperimen dengan jumlah tangan yang berbeda yang dimainkan per tes, kami tidak dapat membandingkan deviasi standar, karena alasan berikut:

Deviasi standar diskalakan ke data yang mendasarinya. Kami tidak dapat membandingkan skor kebugaran (atau deviasi standarnya) dari tes menggunakan nomor tangan yang berbeda karena jumlah tangan yang lebih tinggi menghasilkan peningkatan yang sesuai dalam skor kebugaran.

Please rate this

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *