2.9. PHƯƠNG PHÁP LẬP KẾ HOẠCH ĐƯỜNG ĐI CHO ROBOT DI ĐỘNG35 1. Phương pháp A*
2.9.2. Phương pháp học tăng cường
Học tăng cường (RL) là một trong ba kiểu học máy chính bên cạnh học giám sát và học không giám sát. Bản chất của RL là thử và sai, nghĩa là thử đi thử lại và rút ra kinh nghiệm sau mỗi lần thử như vậy. RL đã được áp dụng cho tự điều hướng của robot di động dựa trên thông tin hình ảnh đầu vào và đã đạt được thành công đáng kể [111]. Các tác giả của nghiên cứu này đã phân tích hành vi của robot trong các mê cung tĩnh với hình học phức tạp, vị trí bắt đầu và hướng ngẫu nhiên, trong khi vị trí mục tiêu có thể thay đổi. Kết quả cho thấy phương pháp RL này có thể cho phép robot điều hướng trong môi trường rộng lớn và trực quan, trong đó có vị trí xuất phát và đích thay đổi thường xuyên nhưng bố cục mê cung luôn cố định. Yuke Zhu và các cộng sự đã cố gắng tìm chuỗi hành động với khoảng cách tối thiểu để di chuyển robot từ vị trí hiện tại đến mục tiêu được chỉ định bởi hình ảnh RGB [112].
Điều này có nghĩa là họ phải thu thập một số lượng lớn các hình ảnh khác nhau để xử lý trước khi huấn luyện mô hình điều hướng.
Thuật toán học tăng cường sâu (DRL) đã được áp dụng để giải quyết nhiều thách thức liên quan đến tự động điều khiển [113]. Cụ thể, thuật toán Q-Learning kết hợp với mạng nơ-ron, trong đó DRL giải quyết các vấn đề với không gian quan
sát nhiều chiều bằng cách sử dụng mạng nơ-ron để ước tính giá trị Q cho các hành động
tương ứng. Hầu hết, DRL được thực hiện trong môi trường ảo, vì quá trình đào tạo sử dụng phương pháp thử và sai có thể dẫn đến hư hỏng robot trong các nhiệm vụ.
Thuật toán Q-Learning
RL bao gồm 7 khái niệm chính là Agent, Environment, State, Action, Reward, Episode, Policy. Agent sẽ tương tác với Environment bằng các Actions. Sau mỗi Action, Environment trả lại cho Agent một State và Reward tương ứng với State đó.
Một loạt các tương tác giữa Agent và Environment từ thời điểm bắt đầu đến khi kết thúc được gọi là một Episode. Trong một Episode, Agent sẽ cố gắng chọn ra các Actions tối ưu để tối đa hóa Reward nhận được sau mỗi Episode. Cách mà Agent chọn những Actions đó gọi là Policy. Mục đích của RL là tìm ra Policy tốt nhất.
Để Agent biết phải chọn Action nào để đạt được Reward lớn nhất, một giá trị gọi là giá trị Q được tính bằng công thức:
𝑄(𝑠, 𝑎) = 𝑟(𝑠, 𝑎) + 𝛾 max 𝑄(𝑠′, 𝑎) (2.8)
𝑎
trong đó, Q(s,a) là giá trị Q khi thực hiện Action a tại State s; r(s,a) là Reward nhận được; s' là State kế tiếp, γ là hệ số discount, đảm bảo càng xa đích thì giá trị Q càng nhỏ [114].
Công thức này cho thấy giá trị Q của Action a tại State s bằng Reward r(s,a) cộng với giá trị Q lớn nhất của các State s' tiếp theo khi thực hiện các Action a. Như vậy có thể tạo ra một ma trận State-Action như một bảng tìm kiếm. Từ đó với mỗi State, Agent chỉ cần tìm Action nào có giá trị Q lớn nhất. Tuy nhiên, RL là một quá trình ngẫu nhiên nên giá trị Q ở thời điểm trước và sau khi thực hiện Action sẽ khác nhau. Khác biệt này gọi là khác biệt tạm thời TD [115], và được tính toán theo công thức:
𝑇𝐷(𝑎, 𝑠) = 𝑅(𝑠, 𝑎) + 𝛾 max 𝑄(𝑠′, 𝑎′) − 𝑄𝑡−1(𝑠, 𝑎) (2.9)
𝑎′
Như vậy, ma trận Q(s,a) cần phải cập nhật trọng số dựa trên TD:
𝑄𝑡(𝑠, 𝑎) = 𝑄𝑡−1(𝑠, 𝑎) + 𝛼𝑇𝐷(𝑎, 𝑠) (2.10) trong đó, α là tốc độ học. Qua các lần Agent thực hiện Action, Q(s,a) sẽ dần hội tụ.
Thuật toán SARSA
Thuật toán SARSA là một biến thể nhỏ của thuật toán Q-Learning phổ biến [116]. Đối với một Agent trong bất kỳ thuật toán học tăng cường nào, chính sách của nó có thể có hai loại: (1) On Policy: Agent học hàm giá trị theo Action hiện tại xuất phát từ chính sách hiện đang được sử dụng, (2) Off Policy: Agent học hàm giá trị theo Action xuất phát từ chính sách khác.
Q-Learning là một kỹ thuật Off Policy và sử dụng cách tiếp cận tham lam để tìm giá trị Q. Ngược lại, SARSA là On Policy và sử dụng Action được thực hiện bởi chính sách hiện tại để tìm giá trị Q. Sự khác biệt này có thể nhìn thấy trong sự khác biệt của phương trình cập nhật cho Q:
𝑄𝑡(𝑠𝑡, 𝑎𝑡) = 𝑄𝑡(𝑠𝑡, 𝑎𝑡) + 𝛼(𝑟𝑡+1 + 𝛾𝑄(𝑠𝑡+1, 𝑎𝑡+1) − 𝑄𝑡(𝑠𝑡, 𝑎𝑡)) (2.11) Phương trình cập nhật cho SARSA phụ thuộc vào State hiện tại, Action hiện tại, Reward nhận được, State tiếp theo và Action tiếp theo. Quan sát này dẫn đến việc đặt tên cho kỹ thuật học tập là SARSA, viết tắt của State – Action – Reward – State – Action, tượng trưng cho tập hợp (s, a, r, s', a').
Mô hình Deep Q-Learning
Mục đích của RL là chọn ra Action thích hợp cho một State nào đó; hay nói cách khác, State làm đầu vào và đầu ra là một Action. Như vậy có thể thay thế một bảng tìm kiếm Q(s,a) bằng một mạng nơ-ron đơn giản [117]. Mạng nơ-ron sẽ được huấn luyện để học cách ước lượng giá trị Q cho các Action một cách chính xác. Do đó, hàm Loss sẽ là sai số giữa giá trị Q thực tế và dự đoán. Hàm Loss này được viết dưới dạng đầy đủ theo phương trình:
𝐿𝑜𝑠𝑠 = (𝑟 + 𝛾 max 𝑄(𝑠′, 𝑎′, 𝜃′) − 𝑄(𝑠, 𝑎, 𝜃))2 (2.12)
𝑎′
Trang – 39 –