b belajar.myudak

TD(0): belajar dari setiap langkah

Terapkan update TD(0) untuk setiap transisi [s, r, s2, done] secara berurutan:

V(s)←V(s)+α[r+γV(s′)⏟target−V(s)]V(s) \leftarrow V(s) + \alpha\bigl[\underbrace{r + \gamma V(s')}_{\text{target}} - V(s)\bigr]

Jika done, targetnya cukup rr. Kembalikan V setelah semua transisi.

V = [0, 0], transisi [0, 1, 1, done], α = 0.5  →  [0.5, 0]

Bootstrapping

Metode Monte-Carlo menunggu episode selesai untuk tahu return sebenarnya GtG_t. TD tidak menunggu: ia memakai perkiraannya sendiri untuk masa depan, V(s′)V(s'), sebagai pengganti. Ini disebut bootstrapping.

  • Kelebihan: belajar setiap langkah, bisa untuk tugas yang tidak pernah berakhir, dan variansnya jauh lebih kecil.
  • Kekurangan: targetnya bias selama VV masih salah. Tetapi biasnya mengecil seiring VV membaik.

Selisih δ=r+γV(s′)−V(s)\delta = r + \gamma V(s') - V(s) disebut TD error. Inilah sinyal belajar inti di Q-learning, actor-critic, dan GAE di PPO. (Menariknya, neuron dopamin di otak memberi sinyal yang mirip TD error.)

Penjelasan

Yang diminta. List V setelah semua update.

Langkah di kode: salin V (supaya input tidak berubah). Untuk setiap transisi: target = r jika done, selain itu r + gamma * V[s2]. Lalu V[s] += alpha * (target - V[s]).

Cek case 2. Transisi pertama [0, 0, 1, 0]: target 0+V(1)=00 + V(1) = 0, jadi V(0)V(0) tetap 0. Kedua [1, 1, 2, done]: V(1)=0+0.5(1−0)=0.5V(1) = 0 + 0.5(1 - 0) = 0.5. Ketiga, sekali lagi dari state 0: target sekarang V(1)=0.5V(1) = 0.5, jadi V(0)=0.25V(0) = 0.25. Nilai merambat mundur satu langkah setiap kali jalur yang sama dilalui.

Yang dikembalikan: list float.

Topik
rltemporal differencenilai
Petunjuk 1

Target TD = r + γ · V[s2], atau cukup r jika done (tidak ada masa depan).

Petunjuk 2

V[s] += α · (target − V[s]). Update berurutan: transisi berikutnya memakai V yang sudah diperbarui.

Python 3.14 · NumPy

Pengaturan editor

Ukuran font
Ukuran huruf di editor.
Ukuran tab
Lebar indentasi. Otomatis: 2 spasi untuk TypeScript, 4 untuk Python.
Key bindings
Ganti ke mode Vim.
Nomor baris relatif
Nomor baris dihitung dari posisi kursor (berguna untuk gerakan Vim).
Word wrap
Baris panjang dilipat agar muat di lebar editor.
IntelliSense
Saran kode otomatis saat mengetik (Ctrl+Spasi tetap bisa dipakai saat mati).

Nilai ditulis sebagai JSON. Output yang diharapkan dihitung dari solusi referensi.