Proses Keputusan Markov

Reinforcement Learning dengan Gymnasium di Python

Fouad Trad

Machine Learning Engineer

MDP

  • Memodelkan lingkungan RL secara matematis

Gambar yang menunjukkan lingkungan kompleks (kota cerdas) dan komponen yang harus diekstrak: state, aksi, reward, dan probabilitas transisi.

Reinforcement Learning dengan Gymnasium di Python

MDP

  • Memodelkan lingkungan RL secara matematis

Diagram yang menunjukkan bagaimana dari lingkungan kompleks kita mengekstrak komponen MDP (state, aksi, reward, dan probabilitas transisi) untuk menyelesaikan lingkungan dengan teknik RL berbasis model.

Reinforcement Learning dengan Gymnasium di Python

Sifat Markov

  • State masa depan hanya bergantung pada state saat ini dan aksi

Gambar papan catur dengan beberapa panah untuk langkah yang mungkin.

Reinforcement Learning dengan Gymnasium di Python

Frozen Lake sebagai MDP

  • Agen harus mencapai tujuan tanpa jatuh ke lubang

Gambar yang menunjukkan lingkungan frozen lake.

Reinforcement Learning dengan Gymnasium di Python

Frozen Lake sebagai MDP - state

  • Posisi yang dapat ditempati agen

Gambar yang menunjukkan tiga posisi berbeda dari agen dalam lingkungan Frozen Lake.

Reinforcement Learning dengan Gymnasium di Python

Frozen Lake sebagai MDP - state terminal

  • Menyebabkan episode berakhir

Gambar yang menampilkan state terminal pada lingkungan frozen lake.

Reinforcement Learning dengan Gymnasium di Python

Frozen Lake sebagai MDP - aksi

  • Atas, bawah, kiri, kanan

Gambar yang menampilkan aksi di Frozen Lake beserta labelnya: 0-kiri, 1-bawah, 2-kanan, 3-atas.

Reinforcement Learning dengan Gymnasium di Python

Frozen Lake sebagai MDP - transisi

  • Aksi tidak selalu menghasilkan keluaran yang diharapkan

Gambar yang menunjukkan agen di pojok kiri atas grid frozen lake berniat bergerak ke kanan.

Reinforcement Learning dengan Gymnasium di Python

Frozen Lake sebagai MDP - transisi

  • Aksi tidak selalu menghasilkan keluaran yang diharapkan

Gambar yang menunjukkan agen dapat bergerak ke kanan.

Reinforcement Learning dengan Gymnasium di Python

Frozen Lake sebagai MDP - transisi

  • Aksi tidak selalu menghasilkan keluaran yang diharapkan

Gambar yang menunjukkan agen juga bisa bergerak ke bawah.

Reinforcement Learning dengan Gymnasium di Python

Frozen Lake sebagai MDP - transisi

  • Aksi tidak selalu menghasilkan keluaran yang diharapkan

Gambar yang menunjukkan agen juga bisa tetap di tempat.

Reinforcement Learning dengan Gymnasium di Python

Frozen Lake sebagai MDP - transisi

  • Aksi tidak selalu menghasilkan keluaran yang diharapkan

Gambar yang menunjukkan saat agen memilih bergerak ke kanan, ada probabilitas untuk ke kanan, ke bawah, atau tetap di tempat.

  • Probabilitas transisi: peluang mencapai suatu state diberikan state dan aksi
Reinforcement Learning dengan Gymnasium di Python

Frozen Lake sebagai MDP - reward

  • Reward hanya diberikan di state tujuan

Gambar yang menunjukkan agen di state tujuan.

Reinforcement Learning dengan Gymnasium di Python

State dan aksi di Gymnasium

import gymnasium as gym


env = gym.make('FrozenLake', is_slippery=True)
print(env.action_space)
print(env.observation_space)
print("Number of actions: ", env.action_space.n)
print("Number of states: ", env.observation_space.n)
Discrete(4)

Discrete(16)
Number of actions: 4
Number of states: 16
Reinforcement Learning dengan Gymnasium di Python

Reward dan transisi di Gymnasium

env.unwrapped.P: kamus dengan kunci pasangan state-aksi

print(env.unwrapped.P[state][action])
[
  (probability_1, next_state_1, reward_1, is_terminal_1), 
  (probability_2, next_state_2, reward_2, is_terminal_2), 
  etc.
]
Reinforcement Learning dengan Gymnasium di Python

Reward dan transisi di Gymnasium - contoh

state = 6
action = 0

print(env.unwrapped.P[state][action])
[(0.3333333333333333, 2, 0.0, False), 
(0.3333333333333333, 5, 0.0, True), 
(0.3333333333333333, 10, 0.0, False)]

Gambar yang menunjukkan nomor aksi: 0-kiri, 1-bawah, 2-kanan, 3-atas.

Gambar yang menunjukkan agen di state nomor 6 dengan penomoran state dari kiri atas ke kanan bawah, baris demi baris.

Reinforcement Learning dengan Gymnasium di Python

Ayo berlatih!

Reinforcement Learning dengan Gymnasium di Python

Preparing Video For Download...