Contents — find the section you need

Q-learning adalah metode pembelajaran penguatan off-policy yang memperbarui nilai untuk setiap pasangan keadaan-tindakan: “berapa banyak keuntungan yang akan diperoleh dari pilihan ini dalam jangka panjang?” Labirin kecil dapat dipecahkan dengan sebuah meja, tetapi gambar kamera dan banyak sambungan membuat meja tersebut menjadi terlalu besar. Deep Q-Network (DQN) menggantikan meja tersebut dengan jaringan saraf dan menggunakan pemutaran ulang pengalaman dan jaringan target untuk mengurangi data yang berkorelasi dan ketidakstabilan referensi diri.

Ringkasan 30 detik

  • Q(s,a) adalah pengembalian masa depan yang diharapkan setelah mengambil tindakan a dalam keadaan s. Memilih nilai Q terbesar memberikan kebijakan serakah.
  • Q-learning menggunakan nilai Q maksimum dalam keadaan berikutnya bahkan ketika kebijakan perilaku mengeksplorasi tindakan lain. Ini adalah properti off-policy.
  • DQN memetakan pengamatan berdimensi tinggi seperti gambar ke nilai Q untuk sejumlah tindakan diskrit yang terbatas. Torsi kontinu memerlukan diskretisasi atau metode Actor-Critic.
  • Pengalaman replay mengacak transisi lama, sementara jaringan target mempertahankan target pembelajaran hampir tetap untuk beberapa pembaruan.

  • Robot harus menempatkan batas kecepatan, gaya, arus, dan penghentian darurat di luar pembelajar. Hadiah tinggi bukanlah bukti keamanan perangkat keras.

1. Masukkan nilai Q ke dalam tabel

Dalam MDP dari panduan dasar RL, memilih tindakan a dalam keadaan s menghasilkan hadiah r dan keadaan berikutnya s'. Q-learning tidak menyimpan model eksplisit P dari lingkungan yang tidak diketahui; ia memperbarui nilai Q dari pengalaman (s,a,r,s') saja:

Q(s_t,a_t)\leftarrow Q(s_t,a_t)+\alpha\left[r_{t+1}+\gamma\max_{a'}Q(s_{t+1},a')-Q(s_t,a_t)\right]

Tanda kurung adalah kesalahan perbedaan temporal (TD). Kesalahan positif meningkatkan nilai tindakan; kesalahan negatif menurunkannya. \alpha adalah laju pembelajaran dan \gamma adalah faktor diskon. Pada keadaan terminal, nilai keadaan berikutnya adalah nol.

Diagram 1 · Use the button to switch views
Q-learning: memperbarui tabel dari transisi

Gambar 1 — Q-learning menggeser nilai sebelumnya sedikit ke arah target yang dibuat dari hadiah yang diamati dan nilai maksimum keadaan berikutnya.

Labirin 5×5 hanya memiliki 25 keadaan dan empat tindakan, jadi 100 entri tabel sudah cukup. Dengan eksplorasi ε-greedy, pengalaman secara bertahap menyebarkan nilai tujuan ke belakang melalui labirin. Mengatur laju pembelajaran ke 1 dan sepenuhnya mempercayai satu pengalaman membuatnya rentan terhadap gangguan lingkungan, sehingga nilai antara 0 dan 1 biasanya digunakan untuk merata-ratakan pengalaman.

2. Pembelajaran off-policy dan eksplorasi ε-greedy

Target \max_{a'}Q(s',a') adalah tindakan estimasi terbaik, Tidak selalu merupakan tindakan yang sebenarnya dilakukan oleh kebijakan perilaku eksplorasi. Oleh karena itu, Q-learning dapat mempelajari kebijakan serakah sementara ε-greedy mengumpulkan data. Mulailah dengan ε yang besar untuk mencakup ruang keadaan dan kurangi secara perlahan. Pada mesin fisik, lakukan pengacakan hanya dalam perintah kandidat yang telah divalidasi dan pertahankan pemantauan tabrakan pada prioritas tertinggi.

3. Mengapa tabel gagal untuk gambar dan nilai kontinu

Jika suatu keadaan adalah setiap piksel gambar kamera dan setiap motor memiliki 256 tingkat kecepatan, tabel tersebut tidak dapat muat dalam memori praktis. Gambar yang hampir identik juga akan diperlakukan sebagai keadaan yang tidak terkait. DQN mendekati tabel dengan jaringan saraf Q_\theta(s,a).

Jaringan tersebut memetakan gambar ke satu nilai Q per tindakan diskrit. Untuk atas/bawah/kiri/kanan, outputnya adalah (Q(s,\mathrm{up}),Q(s,\mathrm{down}),Q(s,\mathrm{left}),Q(s,\mathrm{right})). Kerugiannya adalah

L(\theta)=\mathbb{E}_{(s,a,r,s')\sim D}\left[\left(y-Q_\theta(s,a)\right)^2\right],\qquad y=r+\gamma\max_{a'}Q_{\theta^-}(s',a')

di mana D adalah buffer pemutaran ulang dan \theta^- termasuk dalam jaringan target. Untuk transisi terminal, y=r.

4. Pengalaman pemutaran ulang: mengacak log yang berkorelasi

Log robot bersifat sekuensial: frame pada t dan t+1 terlihat hampir identik. Sebuah mini-batch yang terdiri dari frame yang berdekatan menghasilkan gradien yang bias. DQN menyimpan (s_t,a_t,r_{t+1},s_{t+1},done) dalam buffer pemutaran ulang dan mengambil sampel mini-batch secara acak.

Desain buffer Manfaat Biaya
Pengambilan sampel seragam sederhana, melemahkan korelasi temporal kegagalan yang jarang diambil sampelnya lebih sedikit
Pemutaran ulang yang diprioritaskan berfokus pada kesalahan TD besar membutuhkan koreksi kepentingan dan pencatatan
FIFO ukuran tetap mengikuti lingkungan yang berubah kegagalan lama yang jarang terjadi menghilang
Penyimpanan episode mempertahankan konteks keberhasilan/kegagalan batch dapat berkorelasi lagi

Jangan menimpa jejak audit dengan pra-pemrosesan pembelajaran. Simpan stempel waktu sensor mentah, tindakan yang diminta dan yang sebenarnya dibatasi, dan bendera tabrakan secara terpisah dari tensor pelatihan yang dinormalisasi.

5. Jaringan target: tunda guru

Jika jaringan yang sama yang sedang diperbarui menghitung target y dan prediksi Q_\theta secara bersamaan, target akan bergerak setiap kali. Pembaruan yang dimaksudkan untuk mengurangi kesalahan juga menggeser target berikutnya, yang menyebabkan divergensi atau osilasi. DQN menyimpan salinan Q_{\theta^-} dan menyinkronkannya sebagai \theta^-\leftarrow\theta setiap beberapa ratus atau ribuan pembaruan.

Memperpanjang interval sinkronisasi menstabilkan target tetapi membuatnya usang. Perataan Polyak adalah alternatif yang lebih halus:

\theta^-\leftarrow\tau\theta+(1-\tau)\theta^-

Catat pilihan, interval sinkronisasi, kerugian, dan distribusi nilai Q dalam konfigurasi eksperimen dan log.

6. Estimasi Berlebihan dan Ganda DQN

Mengambil nilai maksimum dari estimasi yang bising akan lebih menguntungkan tindakan yang terlihat tinggi. Double DQN memisahkan pemilihan tindakan dan evaluasi tindakan:

a^*=\arg\max_{a'}Q_\theta(s',a'),\qquad y=r+\gamma Q_{\theta^-}(s',a^*)

Ini tidak menghilangkan semua bias, tetapi sering mengurangi pertumbuhan Q yang tidak stabil. Bendera terminal yang hilang, masker tindakan yang salah, atau skala hadiah yang tidak konsisten dapat terlihat serupa, jadi periksa data sebelum mengubah algoritma.

7. Di mana DQN berada dalam robot

DQN mengasumsikan himpunan tindakan yang terbatas. Diskretisasi sudut kemudi atau torsi sendi dapat berfungsi untuk demonstrasi kasar, tetapi grid halus tumbuh dengan cepat dan menciptakan perintah yang tersentak-sentak. DDPG, TD3, dan SAC menghasilkan tindakan kontinu secara langsung dan seringkali lebih cocok untuk kontrol torsi atau katup hidrolik.

DQN tetap berguna untuk pilihan tingkat tinggi: jalur kiri atau kanan, kandidat genggaman A/B/C, atau mode kecepatan rendah/sedang/tinggi. Berikan referensi yang dihasilkan ke lapisan PID atau MPC. [PID Artikel dan Artikel MPC menunjukkan cara menjaga batasan dan pengawas di lapisan bawah tersebut.

8. Gambar kurva selain hadiah

Catat tingkat keberhasilan, tingkat tabrakan, panjang episode, Q rata-rata dan maksimum, kesalahan TD, dan frekuensi aksi bersamaan dengan hadiah episode rata-rata. Hadiah yang meningkat dengan tingkat tabrakan yang meningkat biasanya menunjukkan bug hadiah atau penghentian. Nilai Q yang meledak dengan kerugian yang menurun menunjukkan ketidaksesuaian skala, bendera terminal yang hilang, atau target bootstrap yang salah.

Pisahkan lingkungan evaluasi dari pelatihan. Ubah pencahayaan, gesekan lantai, muatan, tata letak rintangan, dan penundaan komunikasi. Kebijakan yang berhasil di simulator tetapi mengabaikan eksposur kamera, zona mati motor, atau penurunan baterai belum menunjukkan kinerja DQN pada perangkat keras.

Daftar periksa implementasi

  1. Simpan status, aksi diskrit, hadiah, bendera terminal, dan stempel waktu sebagai satu transisi.

  2. Perbaiki dan rekam ε , laju pembelajaran, diskon, ukuran buffer, ukuran batch, dan interval target.

  3. Lacak nilai Q, kesalahan TD, kerugian, tingkat keberhasilan/tabrakan, dan frekuensi aksi berdasarkan ID eksperimen.

  4. Pisahkan pra-pemrosesan pemutaran ulang dari log audit mentah.

  5. Uji unit mask aksi, status terminal, waktu habis, dan nilai sensor yang tidak valid.

  6. Verifikasi bahwa batas, pengawas, dan penghentian darurat tetap di atas DQN dan berfungsi melalui gangguan jaringan.

  7. Singkirkan kondisi dan kegagalan yang tidak terlihat dari pelatihan.

Ringkasan

Q-learning mengubah persamaan optimalitas Bellman menjadi pembaruan tabel tanpa memerlukan model dinamika yang diketahui. DQN mendekati tabel tersebut dengan jaringan, tetapi pemutaran ulang pengalaman dan jaringan target sangat penting untuk menjaga agar target yang mengacu pada diri sendiri tidak memperkuat noise. DQN adalah lapisan keputusan diskrit yang berguna; torsi kontinu dan keselamatan termasuk dalam pengontrol lain. Melacak kesalahan TD, tabrakan, penundaan, dan distribusi Q—tidak hanya reward—mengubah skrip penelitian menjadi sistem robot yang dapat diaudit.

Periksa pemahaman Anda
Apakah nilai Q yang besar menjamin imbalan yang besar?

Q adalah perkiraan pengembalian yang diharapkan. Keadaan atau tindakan yang tidak familiar dapat menghasilkan kesalahan estimasi yang besar.

Referensi

What to read next

Review the backgroundDasar-Dasar Pembelajaran Penguatan — MDP, Persamaan Bellman, dan Eksplorasi untuk RobotContinue the seriesGradien Kebijakan, PPO, dan SAC — Kontrol Kontinu Stabil untuk RobotExplore another aspect of this fieldPengantar Pembelajaran Penguatan Multi-Agen — Optimasi di Dunia di Mana Pihak Lain Juga Belajar