Setelah sebelumnya sudah saya bahas tentang 2 jenis machine learning (ML) yaitu supervised dan unsupervised learning, kali ini kita masuk ke jenis yang lain yaitu reinforcement learning.
Namun sebelum melanjutkan pembahasan, saya review sedikit tentang 2 jenis ML sebelumnya, agar pembaca mudah memahaminya ketika membahas reinforcement learning.
Supervised learning (SL) adalah jenis ML di mana kita sudah tahu tujuannya (maksudnya adalah hasil akhirnya). Dengan tahu hasilakhirnya, kita bisa memberi tahu kepada mesin (program) cara melakukannya. Contoh mudahnya adalah kita membuat program mendeteksi spam di email. Kita memberitahu program beberapa contoh (sample) mana email yang termasuk ke dalam spam dan mana email yang normal. Hasil akhirnya kita sudah tahu, yaitu programnya bisa mendeteksi email ke dalam dua jenis (normal dan tidak).
Sementara unsupervised learning (UL) adalah jenis ML yang kita belum tahu tujuan akhirnya. Kita tidak bisa mengajarkan kepada program cara melakukan sesuatu. Contohnya adalah clustering, di mana kita ingin membagi dataset ke dalam beberapa kelompok. Walaupun kita ingin program ini melakukan sesuatu, namun ini bukanlah tujuan yang dimaksud, karena hasil akhirnya belum jelas. Biarkan program melakukan sendiri dengan caranya, dan kita terima hasil akhirnya. Hasil akhir yang dihasilkan misalnya program kita bisa membagi dataset ke dalam 5 kluster, 7 kluster atau bahkan 10 kluster. Kita tinggal memilih mau hasil yang mana. Hasil akhir dari unsupervised learning tidak sejelas supervised learning.
Berbeda dengan keduanya, reinforcement learning (RL) berjalan untuk memaksimalkan reward yang ditawarkan. Yang dimaksud reward di sini adalah penghargaan atau insentif untuk program itu sendiri (dalam bahasa teknis, istilahnya adalah agent). Layaknya manusia yang suka diberi reward (komisi uang misalnya), maka agent dalam RL juga menyukainya.
Contoh nyata dari aplikas RL adalah program catur seperti Deep Blue yang bisa mengalahkan grandmaster Garry Kasparov, atau AlphaGo yang bisa mengalahkan pemegang gelar dunia catur jepang (catur Go) yaitu Lee Sedol. Kita juga bisa mendesain game seperti tic-tac-toe dengan RL. Bahkan teknik RL juga bisa digunakan untuk menyelesaikan game yang sudah ada seperti Mario Bros misalnya. Kita juga bisa mengajarkan ke sebuah robot bagaimana caranya berjalan hingga berlari.
Berikut adalah contoh bagaimana sebuah robot dilatih untuk bisa melakukan aktivitas tenis meja melawan manusia.
Ada banyak steps (langkah-langkah) yang harus dilalui agar kita bisa membuat program seperti video di atas. Tenang saja, kita akan mulainya secara perlahan tapi pasti.
Untuk melanjutkan membaca silakan klik tombol halaman selanjutnya di bawah ini.
Halo Pak, saya mau bertanya tentang definisi S dan S’, misalkan saya ambil dalam permaninan mario bros pada saat melompati box, bisa dikatakan Mario adalah Agent, Melompat adalah Action, Box adalah environtment, nah bagian S dan S’ yang mana yah pak? mohon pencerahan nya Pak, Terima Kasih
Halo, S adalah kondisi (state) saat ini (sebut saja saat t, di mana t adalah satuan waktu), dan S’ istilah untuk S yg baru yaitu ketika Mario melompat (saat t+1), S’ ini juga disebut S(t+1).
Ketika kita berada di t+1 (perspektif waktunya maju sebanyak 1 satuan), maka t+1 menjadi t, dan S’ menjadi S.
Kemudian, misal setelah melompat tadi, Mario jongkok (saat t+2), maka state yang baru tetap disebut sebagai S’ atau bisa kita tulis secara matematis menjadi S(t+2).
Ketika kita berada di t+2, maka S’ tadi menjadi S (state saat ini).
Semoga paham ya penjelasan saya di atas.
Terima Kasih atas jawaban nya pak, maaf jika saya bertanya lagi, jika S+1 itu pd saat mario melompat, dan S+2 itu pd saat mario jongkok, berarti S(Skondisi) sepertinya hampir sama dengan Action yah pak? koreksi jika saya salah pak, apakah bisa dikatakan juga S+1 itu Kondisi Mario dibelakang Box (sebelum melompat), dan S+2 itu Kondisi Mario didepan/diatas Box (sesudah melompat)? mohon bantuan penjelasan lagi pak, Terima kasih
State berbeda dengan action.
State adalah kondisi setelah action. Ia tidak hanya merangkum action yang sudah dilakukan tapi juga lingkungan di sekitarya.
Sementara action adalah aksi dari Agen itu sendiri.
– Jadi sebelum Mario melompat ia berada di S (kondisi saat ini).
– Ia melakukan action melompat, maka sekarang state nya menjadi S(t+1).
– Ia melakukan action jongkok, maka state nya menjadi S(t+2).
Cara membayangkannya cukup buat tabel, ada kolom state dan ada kolom action.
Semoga menjawab.
Terima kasih Jawaban nya pak, saya mengerti sekarang.