So sánh các chiến lược tìm kiếm không có thong tin bé sung

Một phần của tài liệu Giáo trình trí tuệ nhân tạo (Trang 60 - 64)

Bang 2.4 So sánh các chiến lược tìm kiếm theo bốn tí được trình

bầy trong phần trên. Các so sánh này được thực hiện trên phiên bản tìm kiếm

tự ° °, Ở trong dấu ngoặc (trong hai

đủ nếu hệ số phân nhánh b hữu hạn; > day đủ nêu chí phí từng bude > e; tối

ưu nếu chỉ phí từng bước như nhau; * nếu cả hai hướng đều dùng tìm kiếm theo chiều rộng.

Bang 2.4 Đánh giá các chiến lược tìm kiếm không có thông tin bổ sung.

Tiêu chí (Tìm kiếm| Tìm kiếm _. Tìm kiếm | Tìm kiếm |Tìm kiếm | Tìm kiếm

theo |chỉphíđồng theochiều, độ sâu | sâu dần hai chiều

chiều nhất sâu giới hạn

rộng

Day du? | Co Coe) Không | Không Có) coe

Tối ưu? | Coe Có Không | Không | Có® | Coe

Thời gian hong gian| O(b) | 0(b**t€⁄#l) | O(bm) O() | 0(b!#€⁄2)( O(") on) O(0) Ow) ỉ9) 0) O(02)

2.3 CAC HE THONG LUAT SI

Tìm kiếm là cốt li của nhiều quá trình trí tuệ. Các hệ zhống lưật sinh (produetion system hay produetion rule system) còn gọi là hệ sinh cung cấp các cấu trúc tạo thuận lợi cho việc mô tả và thực hiện quá trình tìm kiếm.

2.3.1 Định nghĩa hệ thống luật sinh

Luậ

¡nh (production rule) làm một cấu trúc gồm hai phần có d;

<điều kiện> ~> <hành động>

về trái xác định điều. áp dụng luật (với kiện nảo thì có thể áp dung

luật này), về phải mô tả hành động được thực hiện khi luật được áp dụng,

Một hệ thống luật sinh bao gồm:

1.. Mội tập các luật sinh (production rules) bao gdm tắt cả các luật sinh có thể áp dụng được đối với bài toán dang xét. Các luật sinh được lưu trừ trong một vùng bộ nhớ được gọi là bộ nhớ luật sinh (production memory).

2. Một tập các trí thức/cơ sở dữ liệu chứa thông tin thích hợp cho nhiệm vụ xác định. Thông tin trong cơ sở dữ liệu này có thể được cấu trúc một

cách thích hợp. Một số phần của cơ sở đữ liệu liên quan đến giải quyết

bài toán hiện hành được lưu trữ trong một vùng bộ nhớ được gọi là bộ nhớ làm việc (working memory), các phân còn lại có thể được lưu trữ trong bộ nhé ng:

3.. Một chiến lược điều khiển, xác định thứ tự các luật được so sánh với cơ sở dữ liệu và phương pháp giải quyết xung đột khi một vài luật ùng tương hợp (các luật có về trái được làm thoả mãn bởi trạng thái

hành).

4. Mét bộ áp dụng luật: thực thì Ì

it do chiến lược điều khiển chọn ra.

2.3.2 Chiến lược điều khiển

Trong quá trình tìm kiếm lời giải cho một bài toán, thông thường có.

nhiều luật có thể áp dụng lên cùng một trạng thái, chọn lựa luật nào trong chúng để có thể đây nhanh tới trạng thái đích? Chiến lược điều khiển được xem như bộ quyết định trong chọn lựa luật. Một chiến lược điều khiển tốt sẽ

mang lại hiệu quả tìm kiếm cao.

Một chiến lược điều khiển tốt phải thoả mãn Hai tiêu chuẩn:

1. Tao ra sự vận động. Trong bài toán đong dầu, nếu chiến lược điều

khiển là áp dụng luật tương hợp với trạng thái hiện hành gặp đầu tiên trong day Cxy, Cyx, Cxz, Czx, Cyz, Czy. Trang thái ban đầu (7, 0, 0) luậ tương hợp là Cxy, áp dụng luật cho ra trang thái (2, 5, 0) luật đầu tiên trong đây tương hợp với trạng thái này là Cyx, áp dụng luật cho ra trạng thái (7, 0, 0) ... chiến lược điều khiên này không tạo ra sự vận động!

2. Có hệ thống. Trong bài toán đong dầu, nếu chiến lược điều khiển là

chọn ngẫu nhiên một quy tắc tương hợp với trạng thái hiện hành, chiến

lược này tốt hơn chiến lược trên vì nó tạo ra sự vận động. Tuy nhiên, việc chọn lựa ngẫu nhiên này có thể dẫn đến việc “gặp lại một trạng.

thải nhiều làn” hoặc "không gặp một trạng thái nào đó một lan nào cá”

trong quá trình tìm kiếm do chiến lược chọn ngẫu nhiên thiếu tính h

thống. Một chiến lược điều khiên phải cho phép mọi luật

năng được áp dụng. Hơn nữa, mục tiêu là tìm kiếm trạng thái đích, do vậy những luật đưa đến một trạng thái đã được xét đến không cần thiết được áp dụng.

2.3.3 Tim kiém heuristic

Heuristic 1a mét kỹ thuật cải thiện tính hiệu quả của quá trình tìm kiếm,

có thể phải hy sinh doi hoi về tinh đầy đủ. Heuristic giống như người hướng dẫn du lịch. Heurisc tốt có thê hướng dẫn tìm thấy một lời giải tốt cho một bài toán khó trong một thời gian ngắn hơn. Heurisc có ưu điểm là chỉ ra hướng có lợi trong toàn thể nhưng cũng có thé bỏ sót những lợi thế của các cá nhân đặc biệt.

Có heuristie tốt chung cho nhiều lĩnh vực bài toán, chẳng hạn heuristic lân cận gan nhất (nearest neighbor) lam việc bằng cách ở mỗi bước chọn ra ứng viên nỗi trội cục bộ. Có thể xây dựng các heuristic khai thác trí thức lĩnh vực để giải quyết các bài toán cá biệt.Không có heuristies, giải quyết vấn đề

ùng nỗ tổ hợp trở nên vô vọng.

tối ưu mà thường chỉ là toán đi hỏi một lời gì:

tối ưu, lời giải xắp xỉ tốt thường được chấp nhận. Con người thường chỉ

tìm kiếm một giải pháp tốt cho vấn đề hơn là tìm kiếm giải pháp tốt nhất.

Vớ dụ, giải phương trỡnh sinọx + sin6x + sin9x = 0. Lam thộ nao dộ gi

phương trình này? Với "trì thức kinh nghiệm” thu nhận được trong khi giải các phương trình “dạng tương tự”, định hướng ta đi theo con đường biến đổi thành tớch: sinọx + sin9x + sin6x = 2sin6xcos3x + sin6x = sin6x(2cos3x + 1).

Tri thire định hướng tìm kiếm lời giải này chính là trì thức heuristic,

„ Tri thức heurisic thường được kết hợp với thủ tục tìm kiếm dựa trên

quy tắc thông qua:

Các luật, chỉ ra luật nào hứa hẹn hơn các luật khác trong việc hướng tới đích

2. Ham heuristic đánh giá các trạng thái và chỉ ra tính "hứa hẹn nằm trên đường đi lời giải” “hứa hẹn sắp tới đích” của chúng. Hàm heuristic là một ánh xạ từ tập các trạng thái đến tập độ do tính hứa hẹn (thường

được biểu diễn bởi )

Xét ví dụ, bài toán 15-puzzle:

Giả sử cầu hình xuất phát là:

1114| 4 L7 10| 6 5

1) 2/13/15 9|12|8|3

cầu hình đích là:

11234 12|13|14| 5 i 15| 6 10|9|8 |7

Có thê biểu diễn trạng thái bài toán như một mảng hai chiều 4 x 4 nhận

giá trị nguyên, với quy ước phần tử mảng có giá trị 0 là 6 trống. Ta “nhận

thấy” rằng trạng thái có số các ô sai vị trí so với trạng thái đích càng nhỏ càng.

hứa hẹn nó càng ở gần đích, như vậy trước tiên-tã Sẽ khai thác các trạng thái có íL ô sai vị trí với hy vọng sẽ mau chóng hờn đạt tới đích. Ta xây dựng được.

mot him heuristic:

hi(trang thai) = s6 eae ô sai vị trí so với đích.

ta có hi(trạng thái ban đầu) = 14

60: sai, 6 1: sai, 6 2: sai, 6 3: sai, 6 4: sai, ô 5: đúng, ô 6: sai, ô 7: sai, 6 8: đúng, ô 9: sai, ô 10: sai, ô 11: sai, ô 12: sai, ô 13: sai, ô 14: sai, ô 15: sai.

Tìm kiểm theo hướng “khai thác” trạng thái có giá trị hy nhỏ.

“Hiểu bí luật di chuyền các ô” cho ta nhận thức “một ô ở toạ độ

(x, y) muốn di chuyển đến ô ở toạ độ (x', y`) cần ít nhất |x — x’| + ly — y'| bước chuyên chỗ”.

Hiểu biết này cho phép ta xây dựng hàm heuristic hạ:

ha(trạng thai) =

ứng trong trạng thị ng dz(vị trí của ô trong trạng thái, vị trí của ô tương.

)

khoảng cách Manhattan từ điểm A(x, y) đến điểm B(x', y`) ký hiệu dm và được tính bởi công thức: d„(A, B) = |x ~ x'| + |y ~ y’|. ta ký hiệu khoảng cách mahattan của vị trí ô số i dén vị trí của nó trong trạng thái đích là md(i).

ho(trang thai ban dau) =/S md(i) = 30

md(ô s6 0) = 2, md(6 86 1

4) = 1, md(6 số 5)= 0, md(ô số 6)

9) = 1, md(ô số 10) = 2, md(ô số 11) = 2, md(ô số 12) = 3, md(ô số 13) =

md(ô số 14) = 2, md(ô số 15) = 1.

Tìm kiếm theo hướng “khai thác” trạng thái có hz nhỏ.

án nhiều hơn h¡ vì nó bổ sung hiểu

biết về luật địch chuyển vào hiểu biết về sai khác giữa hai trạng mà hị khai thác. Câu hỏi đặt ra là heuristic hơn,hị hay hạ? Heuristic chira lượng trì

thức về lĩnh vực nhiều hơn thường là heuristic tốt hơn: h; tốt hơn hị.

h; chứa “lượng hiểu biết" về bài t

Một hàm heuristic được thiết kế tốt có thể giữ một phần quan trọng

trong việc định hướng một quá trình tìm kiếm hướng tới lời giải. Mục tiêu của ham heuristic Li định hướng quá trình tìm kiếm theo hướng có lợi nhất bằng

cách gợi ý con đường phải đi theo đầu tiên khi có nhiều hơn một con đường.

giúp ngắn thời gi nhưng cũng làm

ny sinh phi tôn “thời gian tính giá trị heuristic của các trạng thái”. Nếu hàm

heuristic quá phức tạp, thời gian cho tính các giá trị trở nên quan trọng. Cần có.

một sự thoả hiệp giữa thời gian tính giá trị hàm heuristic và sự tiết kiệm thời istie cung cấp, Việc sử dụng heurisie trong tìm.

kiếm sẽ được trình bày chỉ tiết hơn trong chương 3.

2.4 CAC DAC TRƯNG CỦA BÀI TOÁN

Tìm kiếm heuristie là một phương pháp chung có thể áp dụng cho một lớp rộng các bài toán, bao gồm các kỹ thuật đặc trưng, mỗi một kỹ thuật có biệt đối với một lớp nhỏ các bài toán. Đề lựa chọn phương pháp hiệu quả riê

thích hợp nhất cho một bài toán cụ thể, hướng chủ đạc

tích bài toán theo một

1.. Bài toán có thể phân tích thành các bài toán nhỏ hơn hoặc đễ hơn không?

Một phần của tài liệu Giáo trình trí tuệ nhân tạo (Trang 60 - 64)

Tải bản đầy đủ (PDF)

(173 trang)