Chương 2 CÁC KIẾN THỨC NỀN TẢNG
2.3. Kỹ thuật học tăng cường Q-Learning
2.3.1. Học tăng cường Q-Learning
Học tăng cường (RL - Reinforcement Learning) [114] là một kỹ thuật học mỏy mà một tỏc tử học bằng cỏch tương tỏc với mụi trường xung quanh để tối đa húa điểm thưởng nhận được. Cỏc yếu tố chớnh trong học tăng cường bao gồm: Tỏc tử
tương tỏc với mụi trường bằng cỏc hành động. Sau mỗi hành động, mụi trường trả lại cho tỏc tử một trạng thỏi và điểm thưởng tương ứng với trạng thỏi đú. Một chuỗi cỏc trạng thỏi và hành động từ trạng thỏi bắt đầu đến trạng thỏi kết thỳc được gọi là một tập (episode). Trong một tập, tỏc tử sẽ chọn ra cỏc hành động tối ưu để tối đa húa điểm thưởng nhận được sau mỗi tập. Cỏch mà tỏc tử chọn những hành động đú gọi là chiến lược và mục đớch là tỡm ra chiến lược tốt nhất. Hỡnh 2.20 dưới đõy mụ tả tương tỏc giữa tỏc tử - mụi trường.
Hỡnh 2.20. Mụ hỡnh học tăng cường
Tỏc tử sẽ thực thi một chuỗi hành động mà tạo ra tổng điểm thưởng lớn nhất dựa trờn điểm thưởng mong muốn của mỗi hành động ở mỗi bước. Tổng điểm
( , ) ( , ) max ( ', )
a
Q s a r s a Q s a (2.38) trong đú: Q(s,a) là Q-value khi thực hiện hành động a tại trạng thỏi s, r(s,a) là điểm thưởng nhận được, s' là trạng thỏi kế tiếp, γ là hệ số tiờu hao (discount factor) kiểm soỏt sự đúng gúp của điểm thưởng để đảm bảo càng "xa" đớch thỡ Q-value càng nhỏ.
Cụng thức (2.38) tạo ra một ma trận trạng thỏi - hành động được xem như một bảng tra cứu Q (Q-table). Với mỗi cặp trạng thỏi - hành động tỏc tử chỉ cần tỡm hành động cú Q-value lớn nhất bằng việc tra cứu bảng Q-table. Tuy nhiờn, học tăng cường là một tiến trỡnh ngẫu nhiờn nờn Q-value ở thời điểm (t-1) và thời điểm t sau khi thực hiện hành động là khỏc nhau và giỏ trị này được tớnh theo cụng thức:
1 ' ( , ) ( , ) max ( ', ') t ( , ) a TD a s r s a Q s a Q s a (2.39) với: a' là hành động kế tiếp, α là hệ số học.
Tại thời điểm t, ma trận Q(s,a) cần phải cập nhật trọng số dựa trờn giỏ trị TD(a,s) như sau:
1
( , ) ( , ) ( , )
t t t
Q s a Q s a TD a s (2.40) Quỏ trỡnh này được gọi là học Q (Q-Learning) và thuật toỏn Q-Learning [114] học tất cả cỏc giỏ trị Q(s,a) của mụi trường bằng việc thử và cập nhật để xõy dựng Q-table.
2.3.2. Thuật toỏn học tăng cường Deep Q-Learning
Thuật toỏn Q-Learning cú nhược điểm là yờu cầu số lượng trạng thỏi xỏc định để kớch thước bảng Q-table khụng quỏ lớn để cú thể dự đoỏn được. Để giải quyết vấn đề này, kỹ thuật học tăng cường Deep Q-Learning [114] sử dụng mạng nơ ron (đầu vào là trạng thỏi, đầu ra là Q-value của tất cả cỏc hành động) thay thế bảng Q- table để ước lượng cỏc giỏ trị Q-value với từng cặp trạng thỏi - hành động. Deep Q- Learning khắc phục vấn đề qỳa khớp (overfitting) của mạng nơ ron sử dụng kỹ thuật kinh nghiệm phỏt lại (Experience Replay) được mụ tả như sau: Hệ thống sẽ lưu lại cỏc trạng thỏi vào bộ nhớ thay vỡ mỗi trạng thỏi mạng cập nhật một lần, sau đú thực hiện lấy mẫu thành cỏc lụ (batch) và đưa vào mạng nơ ron.
Thuật toỏn học tăng cường Deep Q-Learning với kỹ thuật kinh nghiệm phỏt lại [114] được túm tắt sau đõy.
Thuật toỏn 2.1: Kỹ thuật Deep Q-Learning với kinh nghiệm
phỏt lại
Đầu vào: Cỏc trạng thỏi s;
Đầu ra: Cỏc Q-value của cỏc hành động tương ứng; Thuật toỏn:
1: Tỏc tử chọn hành động bằng một chiến lược và thực hiện hành động đú;
2: Mụi trường trả lại trạng thỏi s' và điểm thưởng r là kết quả của hành động a và lưu bộ kinh nghiệm (experience) (s, a, r, s') vào bộ nhớ;
3: Thực hiện lấy mẫu cỏc experience thành cỏc lụ (batch) và huấn luyện mạng nơ ron;
4: Lặp lại đến khi kết thỳc M tập (episode); 5: Return;