Q-Learning
Assalamu’alaikum warahmatullah wabarakatuh. Hai gais! Kita masih harus
lanjut nih bahas model – model yang udah aku pelajari di mata kuliah Machine
Learning. Nah, sekarang kira – kira akan bahas apa yaa.. Yuk Check It’s Out!!
Q-Learning
A.
Pengertian Q-Learning
Q -learning adalah algoritma pembelajaran
penguatan tanpa model . Q-learning adalah algoritma
pembelajaran berbasis nilai . Algoritme berbasis nilai
memperbarui fungsi nilai berdasarkan persamaan (khususnya persamaan Bellman).
Sedangkan tipe lainnya, policy based mengestimasi
fungsi nilai dengan greedy policy yang diperoleh dari perbaikan kebijakan
terakhir.
Q-learning adalah
pembelajar di luar kebijakan . Berarti mempelajari
nilai kebijakan optimal secara independen dari tindakan agen. Di sisi
lain, pembelajar on-policy mempelajari nilai kebijakan
yang dijalankan oleh agen, termasuk langkah-langkah eksplorasi dan akan
menemukan kebijakan yang optimal, dengan mempertimbangkan eksplorasi yang
melekat pada kebijakan tersebut.
Apa itu 'Q'?
'Q' dalam
Q-learning berarti kualitas. Kualitas di sini mewakili seberapa berguna
tindakan tertentu dalam mendapatkan imbalan di masa mendatang.
-
Definisi Q-learning
- Q * (s, a) adalah
nilai yang diharapkan (reward diskon kumulatif) dari melakukan a in state
dan kemudian mengikuti kebijakan yang optimal.
- Q-learning menggunakan Perbedaan
Temporal (TD) untuk memperkirakan nilai Q * (s, a). Perbedaan
temporal adalah agen yang belajar dari lingkungan melalui episode tanpa
pengetahuan sebelumnya tentang lingkungan.
- Agen memelihara tabel Q
[S, A] , di mana S adalah himpunan status dan A adalah
himpunan tindakan .
- Q [s, a] mewakili estimasi
saat ini dari Q * (s, a).
Di bagian ini, pembelajaran Q telah
dijelaskan bersama dengan demo.
Katakanlah seorang
agen harus berpindah dari titik awal ke titik akhir di sepanjang jalur yang
memiliki rintangan. Agen harus mencapai target dalam jalur sesingkat mungkin
tanpa mengenai rintangan dan dia harus mengikuti batas yang dicakup oleh
rintangan. Demi kenyamanan kami, saya telah memperkenalkan ini dalam lingkungan
grid yang disesuaikan sebagai berikut.
Agen dan
Lingkungannya
-
Memperkenalkan Q-Table
Q-Table adalah struktur data yang
digunakan untuk menghitung imbalan masa depan maksimum yang diharapkan untuk
tindakan di setiap negara bagian. Pada dasarnya, tabel ini akan memandu kita ke
tindakan terbaik di setiap negara bagian. Untuk mempelajari setiap nilai dari
Q-table digunakan algoritma Q-Learning.
-
Fungsi-Q
Fungsi-Q menggunakan persamaan
Bellman dan mengambil dua masukan: keadaan (s) dan aksi (a).
B.
Proses Algoritma Q-learning
1.
Langkah 1: Inisialisasi Q-Table
Pertama, Q-table
harus dibangun. Ada n kolom, di mana n = jumlah tindakan. Ada m baris, di mana m
= jumlah status.
Dalam contoh kita n
= Ke Kiri, Ke Kanan, Ke Atas dan Ke Bawah dan m = Mulai, Diam, Jalan Yang
Benar, Jalan Yang Salah dan Akhir. Pertama, mari kita inisialisasi nilai pada
0.
2.
Langkah 2: Pilih Tindakan
3.
Langkah 3: Lakukan Tindakan
Kombinasi langkah 2
dan 3 dilakukan untuk waktu yang tidak ditentukan. Langkah-langkah ini berjalan
hingga waktu pelatihan dihentikan, atau saat loop pelatihan berhenti seperti
yang ditentukan dalam kode.
Pertama, tindakan
(a) di negara bagian dipilih berdasarkan Q-Table. Perhatikan bahwa, seperti
yang disebutkan sebelumnya, saat episode pertama kali dimulai, setiap nilai Q
harus 0.
Kemudian, perbarui
nilai Q untuk berada di awal dan ke kanan menggunakan persamaan Bellman yang
disebutkan di atas.
Konsep strategi
rakus Epsilon ikut bermain di sini. Pada awalnya, tingkat epsilon
akan lebih tinggi. Agen akan menjelajahi lingkungan dan memilih tindakan secara
acak. Ini terjadi secara logis, karena agen tidak tahu apa-apa tentang
lingkungan. Saat agen menjelajahi lingkungan, laju epsilon menurun dan agen
mulai mengeksploitasi lingkungan. Selama proses eksplorasi, agen semakin
percaya diri dalam memperkirakan nilai-Q.
Dalam contoh Agen kami, saat
pelatihan agen dimulai, agen sama sekali tidak menyadari lingkungan. Jadi
katakanlah itu mengambil tindakan acak ke arah yang 'benar'.
Tindakan: Agen mengikuti 'benar'
Sekarang kita dapat
memperbarui nilai-Q untuk berada di awal dan bergerak ke kanan menggunakan
persamaan Bellman.
Tabel Q yang
diperbarui
4.
Langkah
4: Mengukur Imbalan
Sekarang kami telah mengambil
tindakan dan mengamati hasil dan penghargaan.
5.
Langkah
5: Evaluasi
Kita perlu memperbarui fungsi Q (s, a).
Proses ini diulangi
lagi dan lagi sampai pembelajaran dihentikan. Dengan cara ini Tabel-Q
diperbarui dan fungsi nilai Q dimaksimalkan. Di sini Q (keadaan, tindakan)
mengembalikan imbalan masa depan yang diharapkan dari tindakan
itu pada keadaan itu.
Penjelasan Persamaan Bellman untuk episode
Dalam contoh, saya telah memasukkan
skema penghargaan sebagai berikut.
Hadiah ketika jangkauan semakin dekat
ke tujuan = +1
Imbalan saat terkena rintangan = -1
Hadiah saat idle = 0
Gambar (a) Imbalan Positif, (b) & (c) Imbalan Negatif
Awalnya, kami menjelajahi lingkungan
agen dan memperbarui Q-Table. Ketika Q-Table siap, agen mulai mengeksploitasi
lingkungan dan mulai mengambil tindakan yang lebih baik. Tabel Q akhir bisa
seperti berikut (misalnya).
Contoh tabel-Q
akhir
Berikut adalah hasil yang
menghasilkan jalur terpendek agen menuju tujuan setelah pelatihan.
Navigasi agen
menuju tujuan
Wassalamu’alaikum Warahmatullah
Wabarakatuh, Sekian dan Terima kasih 😊
Referensi
[1] H. Nguyen dan H. La, “Review of
Deep Reinforcement Learning for Robot Manipulation,” pada Konferensi
Internasional IEEE Ketiga tentang Komputasi Robot (IRC) 2019, Napoli,
Italia, 2019, hlm. 590–595.
[2]
https://www.freecodecamp.org/news/an-introduction-to-q-learning-reinforcement-learning-14ac0b4493cc/
[3]
https://courses.cs.ut.ee/MTAT.03.292/2014_spring/uploads/Main/Q-learning.pdf
[4] https://towardsdatascience.com/introduction-to-various-reinforcement-learning-algorithms-iq-learning-sarsa-dqn-ddpg-72a5e0cb6287
[5]
https://blog.dominodatalab.com/deep-reinforcement-learning/
Komentar
Posting Komentar