Artificial Intelligence - Phân loại tác tử
Tiếp theo về tác tử của phần trước (link: https://viblo.asia/tanphan/posts/NbmebAdpGYO) Chủ đề hôm nay là phân loại tác tử nhé mọi người 4 loại tác tử cơ bản: Tác tử phản xạ đơn giản Tác tử phản xạ dựa trên mô hình Tác tử dựa trên mục tiêu Tác tử dựa trên lợi ích Tác tử phản xạ đơn giản ...
Tiếp theo về tác tử của phần trước (link: https://viblo.asia/tanphan/posts/NbmebAdpGYO) Chủ đề hôm nay là phân loại tác tử nhé mọi người 4 loại tác tử cơ bản:
- Tác tử phản xạ đơn giản
- Tác tử phản xạ dựa trên mô hình
- Tác tử dựa trên mục tiêu
- Tác tử dựa trên lợi ích
Tác tử phản xạ đơn giản
Tác tử hành động theo một quy tắc có điều kiện phù hợp với trạng thái hiện thời của môi trường
Hiểu đơn giản là tác tử có 1 tập luật và có lưu trữ (biết) 1 loạt các trạng thái của môi trường, nếu gặp trạng thái này thì có luật này, luật này sẽ trả ra 1 hành động tương ứng
class SimpleReflexAgent static RULES #tập luật dạng điều kiện -> hành động def reflex action = action_rule load_rule end def load_rule rule_match state, rules end def state interpret_input percept end end
Có thể hình dung qua sơ đồ sau: Sơ đồ này khá đơn giản, nhìn qua là hình dùng được nên mình sẽ không nói kĩ nhé :v
Tác tử phản xạ dựa trên mô hình
Tác tử sử dụng mô hình nội bộ để giám sát trạng thái hiện tại của môi trường Cách tác tử lựa chọn hành động giống như tác tử phản xạ đơn giản
class ReflexAgentWithState static RULES #tập luật dạng điều kiện -> hành động static state #trạng thái hiện thời của môi trường static action #action gần nhất def reflex action = action_rule load_rule end def load_rule rule_match state, rules end def state update_state state, action, percept end end
Sơ đồ mô hình: Nào cùng tìm hiểu chút nhé : Đầu tiên sensors của tác tử nhận input từ môi trường. nhưng ngoài việc nhận input, đối sánh luật và đưa ra hành động, tác tử này thông minh hơn 1 tí, nó kiểm tra state của môi trường, đối chứng xem môi trường thay đổi như thế nào và xem lại nó đã làm gì trước đó để đưa ra 1 hành động thích hợp nhất (hay tìm 1 luật phù hợp nhất trong trường hợp này). Tác tử dạng này tiến hóa hơn tác tử dạng trước một chút, đó là thay vì chỉ nhận input từ môi trường và đối chiếu luật đưa ra hành động, tác tử này biết thêm thông tin về môi trường (cụ thể là sự thay đổi của môi trường) và sử dụng hành động trước đó để đưa ra hành động hiện thời phù hợp.
Tác tử dựa trên mục tiêu
Biết thông tin về môi trường như tác tử dựa trên mô hình, ngoài ra tác tử này còn biết thêm thông tin về mục tiên nó cần đạt được.
Ví dụ đơn giản nhất: tác tử máy lau nhà khi đứng giữa 4 viên gạch đều có thể đi (theo 4 hướng), tác tử có thêm 1 mục tiêu là ưu tiên lau viên gạch bẩn nhất. vậy là nó sẽ xử lí thêm 1 lượng thông tin và tìm ra viên gạch bẩn nhất để lau trước. Tác tử dựa trên mục tiêu sẽ có 1 quy trình làm việc chuẩn sau:
- Theo dõi trạng thái hiện tại của môi trường
- Lưu trữ 1 tập các mục tiêu
- Đưa ra hành động để hướng tới mục tiêu Mô hình: Theo mô hình trên, ta thấy là đã không còn 1 tập luật gì hết cả, mà thay vào đấy là goals, ta thay thế tập luật bằng tập các mục tiêu cần phải đạt được, vậy nên sau khi nhận input từ môi trường, xử lí thông tin môi trường này nọ, tiếp theo sẽ là tìm ra hành động. ở đây, tác tử sẽ phân tích xem, nếu hành động này thì goal là gì, nó sẽ chọn ra hành động miễn hướng đến 1 loạt các mục tiêu được đề ra.
Tác tử dựa trên lợi ích
Tác tử có thông tin về môi trường, có thông tin về mục tiêu nhưng hoạt động dựa trên hiệu quả của hành động.
Để dễ hiểu, quay lại bài toán robot lau nhà, thừa nhận rằng robot ưu tiên lau gạch bẩn nhất là 1 mục tiêu nhỏ, lau sạch toàn bộ căn phòng là mục tiêu lớn, nhưng đi theo viên gạch nào sẽ làm cho việc lau nhà hiệu quả nhất (tiết kiệm pin, thời gian, ít viên gạch bị lau lại lần 2... là 1 trong các tiêu chí đánh giá hiệu quả của robot) Từ đó, ta sinh ra hàm đánh giá lợi ích của tác tử. Mô hình: Mô hình này tiến hóa hơn mô hình phản xạ dựa trên mục tiêu là tác tử có thêm 1 hàm đành giá hiệu quả trước khi đưa ra hành động trên mục tiêu. dễ hiểu vậy thôi =)) Được rồi dừng ở đây thôi. Bài tiếp theo mình sẽ nói về tác tử có khả năng học và chúng ta sẽ đi vào những giải thuật cơ bản nhất của trí tuệ nhân tạo nhé, chúc mọi người ăn tết vui vẻ