Sự khác biệt giữa lặp lại giá trị và lặp lại chính sách là gì?


93

Trong học tập củng cố, sự khác biệt giữa lặp chính sáchlặp giá trị là gì?

Theo những gì tôi hiểu, trong phép lặp giá trị, bạn sử dụng phương trình Bellman để tìm chính sách tối ưu, trong khi, trong phép lặp chính sách, bạn chọn ngẫu nhiên một chính sách π và tìm phần thưởng của chính sách đó.

Tôi nghi ngờ là nếu bạn đang chọn một chính sách ngẫu nhiên π trong PI, thì làm thế nào nó được đảm bảo là chính sách tối ưu, ngay cả khi chúng ta đang chọn một số chính sách ngẫu nhiên.


13
Sẽ thích hợp hơn nếu đặt câu hỏi này trên các trang web như ai.stackexchange.com , stats.stackexchange.com hoặc datascience.stackexchange.com .
nbro

Câu trả lời:


123

Chúng ta hãy nhìn chúng cạnh nhau. Các phần chính để so sánh được đánh dấu. Các số liệu từ cuốn sách của Sutton và Barto: Học tập củng cố: Giới thiệu .

nhập mô tả hình ảnh ở đây Những điểm chính:

  1. Lặp lại chính sách bao gồm: đánh giá chính sách + cải tiến chính sách và cả hai được lặp đi lặp lại cho đến khi chính sách hội tụ.
  2. Phép lặp giá trị bao gồm: tìm hàm giá trị tối ưu + một trích xuất chính sách . Không có sự lặp lại của cả hai bởi vì một khi hàm giá trị là tối ưu, thì chính sách ngoài nó cũng phải tối ưu (tức là hội tụ).
  3. Việc tìm kiếm hàm giá trị tối ưu cũng có thể được coi là sự kết hợp giữa cải tiến chính sách (do max) và đánh giá chính sách bị cắt ngắn (gán lại v_ (các) chỉ sau một lần quét tất cả các trạng thái bất kể hội tụ).
  4. Các thuật toán để đánh giá chính sáchtìm hàm giá trị tối ưu rất giống nhau ngoại trừ hoạt động tối đa (như được đánh dấu)
  5. Tương tự, bước quan trọng để cải thiện chính sáchtrích xuất chính sách là giống hệt nhau ngoại trừ bước trước là kiểm tra tính ổn định.

Theo kinh nghiệm của tôi, lặp lại chính sách nhanh hơn lặp lại giá trị , vì một chính sách hội tụ nhanh hơn một hàm giá trị. Tôi nhớ điều này cũng được mô tả trong cuốn sách.

Tôi đoán sự nhầm lẫn chủ yếu đến từ tất cả các thuật ngữ hơi giống nhau này, điều này cũng khiến tôi bối rối trước đây.


3
Tôi đồng ý rằng việc lặp lại chính sách hội tụ với số lần lặp lại ít hơn và tôi cũng đã đọc ở một số nơi rằng nó nhanh hơn. Tôi đã thực hiện một số thí nghiệm giải quyết mê cung và thế giới hộp đơn giản bằng cả hai phương pháp trong Burlap. Tôi nhận thấy rằng phép lặp giá trị thực hiện nhiều lần lặp hơn nhưng mất ít thời gian hơn để đạt được sự hội tụ. YMMV.
Ryan

1
@Chrom, bạn nên đọc đối lập. Đây là một trích dẫn từ cuốn sách, "Sự lặp lại chính sách thường hội tụ trong một vài lần lặp lại đáng ngạc nhiên. Điều này được minh họa bằng ví dụ trong Hình 4.1. ", Từ Trang 65 của phiên bản 2017nov5 của cuốn sách.
zyxue

3
Vâng, tôi đã chơi với một số hương vị của Grid world. Tôi chỉ đang cố gắng chỉ ra rằng "Nhanh hơn" về số lần lặp có lẽ sẽ có lợi cho PI. Nhưng "Nhanh hơn" tính theo giây có thể thực sự có lợi cho VI.
Ryan

3
Để làm rõ, việc lặp lại chính sách sẽ tốn ít lần lặp hơn nhưng phức tạp hơn về mặt tính toán so với phép lặp giá trị; cái nào nhanh hơn tùy thuộc vào môi trường.
RF Nelson

2
Tôi biết rằng đây là một bài viết cũ. Nhưng tôi thực sự khuyên bạn nên xem xét điều này ( medium.com/@m.alzantot/… ) Liên kết cung cấp một mã và nó làm cho nó rõ ràng hơn nhiều đối với tôi.
song song

72

Trong thuật toán lặp lại chính sách , bạn bắt đầu với một chính sách ngẫu nhiên, sau đó tìm hàm giá trị của chính sách đó (bước đánh giá chính sách), sau đó tìm chính sách mới (cải tiến) dựa trên hàm giá trị trước đó, v.v. Trong quá trình này, mỗi chính sách được đảm bảo là một cải tiến nghiêm ngặt so với chính sách trước đó (trừ khi nó đã là tối ưu). Với một chính sách, hàm giá trị của nó có thể được lấy bằng toán tử Bellman .

Trong phép lặp giá trị , bạn bắt đầu với một hàm giá trị ngẫu nhiên và sau đó tìm một hàm giá trị mới (cải tiến) trong một quá trình lặp lại, cho đến khi đạt đến hàm giá trị tối ưu. Lưu ý rằng bạn có thể dễ dàng rút ra chính sách tối ưu từ hàm giá trị tối ưu. Quá trình này dựa trên toán tử Bellman tối ưu .

Theo một nghĩa nào đó, cả hai thuật toán đều có chung một nguyên tắc hoạt động và chúng có thể được coi là hai trường hợp lặp lại chính sách tổng quát . Tuy nhiên, toán tử Bellman tối ưu chứa một toán tử max , không tuyến tính và do đó, nó có các tính năng khác nhau. Ngoài ra, có thể sử dụng các phương pháp kết hợp giữa lặp giá trị thuần túy và lặp lại chính sách thuần túy.


1
Mô tả tốt về điều này. Hãy để tôi thêm điều này trong phần lặp lại chính sách, nó sử dụng phương trình kỳ vọng belman và trong phép lặp giá trị sử dụng phương trình cực đại melman. Đối với phép lặp giá trị, nó có thể ít lần lặp hơn nhưng đối với một lần lặp lại có thể có rất nhiều công việc. Đối với chính sách lặp lại nhiều lần lặp lại hơn
Shamane Siriwardhana

không có toán tử max trong lặp lại chính sách? nếu không thì làm thế nào để cập nhật chính sách dựa trên hàm giá trị mới?
huangzonghao

Không, thuật toán SARSA là một ví dụ điển hình của việc lặp lại chính sách. Như bạn có thể thấy trong mã giả này ( completeideas.net/book/ebook/node64.html ), bản cập nhật hàm giá trị không chứa bất kỳ toán tử max nào. Tuy nhiên, nếu ý của bạn là toán tử max để chọn các hành động tốt nhất từ ​​hàm giá trị (tức là các hành động tham lam), thì có, có một hoạt động tối đa trong quá trình đó.
Pablo EM

10

Sự khác biệt cơ bản là -

Trong Lặp lại chính sách - Bạn chọn ngẫu nhiên một chính sách và tìm hàm giá trị tương ứng với nó, sau đó tìm một chính sách mới (cải tiến) dựa trên hàm giá trị trước đó, và như vậy, điều này sẽ dẫn đến chính sách tối ưu.

Trong Lặp lại giá trị - Bạn chọn ngẫu nhiên một hàm giá trị, sau đó tìm một hàm giá trị mới (cải tiến) trong một quy trình lặp lại, cho đến khi đạt đến hàm giá trị tối ưu, sau đó suy ra chính sách tối ưu từ hàm giá trị tối ưu đó.

Việc lặp lại chính sách hoạt động trên nguyên tắc “Đánh giá chính sách —-> Cải tiến chính sách”.

Sự lặp lại giá trị hoạt động dựa trên nguyên tắc “Hàm giá trị tối ưu —-> chính sách tối ưu”.


0

Theo như tôi được biết, trái ngược với ý tưởng của @zyxue, VI thường nhanh hơn PI nhiều.

Lý do rất đơn giản, như bạn đã biết, Phương trình Bellman được sử dụng để giải quyết hàm giá trị cho chính sách nhất định. Vì chúng ta có thể giải quyết trực tiếp hàm giá trị cho chính sách tối ưu , nên việc giải quyết hàm giá trị cho chính sách hiện tại rõ ràng là lãng phí thời gian.

Đối với câu hỏi của bạn về khả năng chuyển đổi của PI, tôi nghĩ bạn có thể bỏ qua thực tế rằng nếu bạn cải thiện chiến lược cho mỗi trạng thái thông tin, thì bạn sẽ cải thiện chiến lược cho toàn bộ trò chơi. Điều này cũng dễ dàng chứng minh, nếu bạn đã quen thuộc với Giảm thiểu sự hối tiếc phản thực - tổng sự hối tiếc cho mỗi trạng thái thông tin đã tạo thành giới hạn trên của sự hối tiếc tổng thể, và do đó giảm thiểu sự hối tiếc cho mỗi trạng thái sẽ giảm thiểu sự hối tiếc tổng thể, dẫn đến chính sách tối ưu.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.