AlphaZero:AI Google Menaklukkan Catur dan Permainan dalam 24 Jam
Permainan papan (seperti catur) merupakan bidang yang dipelajari secara luas dalam sejarah kecerdasan buatan. Pionir seperti Turing, Babbage, von Neumann dan Shannon mengembangkan teori, algoritma, dan perangkat keras untuk menganalisis dan memainkan permainan catur. Dan dalam beberapa tahun terakhir, kita telah melihat program serupa yang mengungguli manusia dalam permainan yang jauh lebih kompleks seperti Go dan Shogi (catur Jepang).
Deepmind Google memiliki rekam jejak yang fenomenal dalam mengalahkan manusia dalam permainan papan. Pada tahun 2015, proyek mereka AlphaGo menjadi program komputer Go pertama yang mengalahkan manusia (pemain Go profesional). Dan sekarang mereka telah mengembangkan program AlphaGo yang dapat mempelajari permainan catur dengan sendirinya dan mengalahkan manusia atau program komputer lainnya (termasuk Stockfish dan Deep Blue) dalam waktu hampir 4 jam.
Program AI konvensional (permainan papan) sangat dioptimalkan untuk domainnya, dan tidak dapat digeneralisasikan ke masalah lain tanpa campur tangan manusia. Program AlphaZero, di sisi lain, dapat mencapai kinerja manusia super di beberapa domain yang menantang. Tanpa pengetahuan sebelumnya kecuali aturan permainan dan mulai dari permainan acak, AlphaZero mencapai tingkat permainan manusia super dalam waktu 24 jam dalam permainan Catur, Shogi dan Go, dan mengalahkan program terbaik dunia dalam setiap kasus. Bagaimana mereka melakukan hal ini dan apa hasil sebenarnya? Mari kita cari tahu.
Metodologi
Pada bulan Oktober 2017, Deepmind mengumumkan bahwa algoritme AlphaGo Zero mereka telah mencapai kinerja manusia super menggunakan jaringan saraf konvolusi dalam dan dilatih hanya dengan pembelajaran penguatan. Para insinyur telah menggunakan pendekatan yang sama untuk membangun algoritma umum, yang disebut AlphaZero, yang menggantikan augmentasi khusus domain dan pengetahuan buatan tangan yang digunakan dalam algoritma permainan konvensional dengan jaringan saraf dalam dan algoritma pembelajaran penguatan tabula rasa .
AlphaZero menggunakan MCTS tujuan umum Algoritme (Pencarian Pohon Monte-Carlo) daripada pencarian alfa-beta. Ia mempelajari perkiraan nilai dan memindahkan probabilitas dengan bermain melawan dirinya sendiri, lalu menggunakan informasi yang dipelajari untuk memandu pencariannya.
Perbedaannya dengan Algoritma AlphaGo Zero
Algoritme AlphaGo Zero memperkirakan dan mengoptimalkan probabilitas kemenangan, dengan mempertimbangkan hasil biner menang atau kalah. AlphaZero, di sisi lain, memperkirakan dan mengoptimalkan hasil yang diharapkan, dengan mempertimbangkan hasil seri atau potensi hasil lainnya.
Aturan permainan Go tidak berubah terhadap refleksi dan rotasi. Fakta ini dimanfaatkan dengan sangat baik di AlphaGo dan versi lanjutannya AlphaGo Zero dalam 2 cara.
- Tambahkan data pelatihan dengan membuat 8 simetri untuk setiap posisi.
- Transformasi posisi melalui refleksi atau rotasi yang dipilih secara acak sebelum dihitung oleh jaringan saraf, dalam algoritme MCTS, sehingga penghitungan dirata-ratakan pada bias yang berbeda.
Dalam catur dan shogi, aturannya asimetris, dan Anda tidak dapat mengasumsikan kesimetrian secara umum. Di AlphaZero, data pelatihan tidak ditambah dan posisi dewan tidak diubah selama MCTS.
AlphaGo Zero menggunakan pemain terbaik dari iterasi sebelumnya untuk menghasilkan permainan mandiri. Setelah setiap iterasi selesai, performa pemain baru dievaluasi terhadap pemain terbaik. Jika dimenangkan dengan margin 55 persen, pemain terbaik akan diganti dan permainan mandiri selanjutnya dihasilkan oleh pemain baru. Namun, AlphaZero mempertahankan satu jaringan saraf (diperbarui terus-menerus) daripada berhenti sejenak hingga iterasi selesai.
Pengoptimalan dan Pelatihan AlphaZero
AlphaZero menggunakan hyper-parameter untuk semua game tanpa optimasi khusus game apa pun. Untuk memastikan eksplorasi, faktor kebisingan diintegrasikan, yang disesuaikan secara proporsional dengan jumlah gerakan yang sah untuk jenis permainan tersebut.
Seperti AlphaGo Zero, keadaan papan dikodekan oleh bidang spasial dan tindakan dikodekan oleh bidang spasial atau vektor datar, berdasarkan aturan dasar setiap permainan.
Pengembang menerapkan AlphaZero pada catur, shogi, dan Go. Arsitektur jaringan, hyper-parameter, dan pengaturan yang sama digunakan untuk ketiga game. Sebuah contoh individual dari algoritma dilatih untuk setiap permainan. Mulai dari parameter yang diinisialisasi secara acak, pelatihan yang dilakukan selama 700.000 langkah, menggunakan 5.000 Tensor Processing Unit generasi pertama untuk membuat game self-play dan 64 Tensor Processing Unit generasi kedua untuk melatih jaringan saraf.
Referensi: arxiv.org
Hasil
Seperti yang Anda lihat pada gambar, AlphaZero mengungguli Stockfish setelah 300.000 langkah (setelah 4 jam) dalam catur; itu mengungguli Elmo dalam 110.000 langkah (dalam waktu 2 jam); dan mengungguli AlphaGo Lee dalam 165.000 langkah (setelah 8 jam).
Contoh AlphaZero yang terlatih penuh (dilatih selama 3 hari) diuji melawan AlphaGo Zero, Elmo dan Stockfish, memainkan 100 pertandingan dengan kecepatan waktu 1 menit per gerakan. Hasilnya cukup mengesankan (disebutkan pada tabel di bawah).
AlphaGo Zero dan AlphaZero menggunakan satu mesin dengan 4 Unit Pemrosesan Tensor, Elmo dan Stockfish melakukan yang terbaik menggunakan 64 thread dan ukuran hash 1 GB. AlphaZero mengalahkan mereka semua, kalah 8 game dari Elmo dan tidak satupun dari Stockfish.
Pengembang Google juga memeriksa kinerja pencarian MCTS di AlphaZero. Ia mencari 40.000 posisi per detik di shogi dan 80.000 di catur, dibandingkan dengan 35.000.000 untuk Elmo dan 70.000.000 untuk Stockfish. AlphaZero menggunakan jaringan neural dalam untuk fokus secara lebih selektif pada opsi yang paling menjanjikan, atau bisa dikatakan pendekatan yang lebih mirip manusia.
Baca:15 Mesin Catur Terbaik Berdasarkan Ratingnya
Meskipun AlphaZero masih dalam tahap awal, ini merupakan langkah penting menuju tujuannya. Jika pendekatan serupa dapat diterapkan pada masalah terstruktur lainnya, seperti pelipatan protein, penemuan bahan baru, atau penurunan konsumsi energi, hasilnya berpotensi berdampak positif pada masa depan kita.