Các hệ cơ sở tri thức và các hệ chuyên gia
Hệ hỗ trợ ra quyết định được Michael S. Scô Morton đề xuất vào những năm 1070. Hệ gồm một số phần chính như: phần mềm máy tính; chức năng hỗ trợ ra quyết định; dữ liệu giao dịch, các mô hình. Có những đặc thù riêng giữa hệ hỗ trợ ra quyết ...
Hệ hỗ trợ ra quyết định được Michael S. Scô Morton đề xuất vào những năm 1070. Hệ gồm một số phần chính như: phần mềm máy tính; chức năng hỗ trợ ra quyết định; dữ liệu giao dịch, các mô hình. Có những đặc thù riêng giữa hệ hỗ trợ ra quyết định và hệ thống thông tin. Cụ thể như sau:.
Hệ thống thông tin có các tính chất.
• Tập trung vào thông tin, hướng đến các nhà quản lý cấp điều hành.
• Làm việc với dòng thông tin có cấu trúc
Các hệ hỗ trợ quyết định có các tính chất:
• Hướng đến các quyết định, các nhà lãnh đạo
• Tính uyển chuyển, thích ứng với hoàn cảnh và phản ứng nhanh
• Do người dùng khởi động và kiểm soát
• Hỗ trợ các quyết định các nhân của nhà lãnh đạo
Một cách hình dung về các thành phần của một hệ hỗ trợ ra quyết định (DDS - decision support system) (Hình 1) và quan hệ giữa chúng là sử dụng các khái niệm đối thoại (dialog), dữ liệu (data) mà mô hình (model). Đối với những người thiết kế hệ thống DDS cũng như những người sử dụng hệ thống, điều quan trọng là hiểu được các thành phần này được thiết kế như thế nào. Người sử dụng cần phải biết có thể yêu cầu cái gì ở DDS. Người thiết kế phải biết được DDS có thể cung cấp cái gì.

Các kỹ thuật mới có nhiều ảnh hưởng đến các thành phần đối thoại, dữ liệu, và mô hình; ví dụ như giao diện đồ hoạ hay cơ sở dữ liệu quan hệ. Ngoài ra trí tuệ nhân tạo cũng cung cấp các khả năng biểu diễn và sử dụng mô hình trong những hình thức mới.
Mở đầu
MYCIN là một hệ lập luận trong y học được hoàn tất vào năm 1970 tại Đại học Standford, Hoa Kỳ. Đây là một hệ chuyên gia dựa trên luật và sự kiện. MYCIN sử dụng cơ chế lập luật gần đúng để xử lý các luật suy diễn dựa trên độ đo chắc chắn. Tiếp theo sau MYCIN, hệ EMYCIN ra đời, EMYCIN là một hệ chuyên gia tổng quát được tạo lập bằng cách loại phần cơ sở tri thức ra khỏi hệ MYCIN, EMYCIN cung cấp một cơ chế lập luận và tuỳ theo bài toán cụ thể sẽ bổ sung tri thức riêng của bài toán đó để tạo thành hệ chuyên gia.
Lý thuyết về sự chắc chắn dùng cho hệ chuyên gia
Lý thuyết về sự chắc chắn dựa trên số lần quan sát. Đầu tiên theo lý thuyết xác suất cổ điển thì tổng số của sự tin tưởng và sự phản bác một quan hệ phải là 1. Tuy vậy trong thực tế các chuyên gia lại gán cho kết luận của họ những mệnh đề đại loại như “ có vẻ đúng”. “gần đúng”, “đúng khoảng 70%”…
Lý thuyết về sự chắc chắn dùng độ đo chắn chắn để lượng định những mệnh đề trên và cung cấp một số luật nhằm kết hợp các độ đo chắc chắn để dẫn đến kết luận. Trước khi tìm hiểu độ đo chắc chắn, chúng ta xét “ sự tin cậy” và “ sự phản bác” một quan hệ. Gọi MB(H/E) là độ đo sự tin cậy của giả thuyết khi có chứng cứ E. MD(H/E) là độ đo sự không tin cậy và giả thuyết khi có chứng cứ E. Thế thì:
0 < MB(H/E) < 1 khi MD(H/E) = 0 0 < MD(H/E) <1 khi MB(H/E) = 0
Độ đo chắc chắn CF(H/E) được tính bằng công thức: CF(H/E) = MB(H/E) - MD(H/E)
Khi giá trị của độ đo chắc chắn tiến dần về 1 thì chứng cớ biện minh cho giả thuyết nhiều hơn.
Khi giá trị của độ đo chắc chắn tiến dần về -1 thì chứng cớ phản bác giả thuyết nhiều hơn. Khi CF có giá trị 0 có nghĩa là có rất ít chứng cớ để biện minh hay phản bác giả thuyết. Khi các chuyên gia tạo ra các luật suy diễn, họ phải cung cấp độ đo chắc chắn của luật. Trong quá trình lập luận, chúng ta sẽ thu nhận được độ đo chắc chắn của chứng cớ và dựa vào hai độ đo chắc chắn trên để tính được độ đo chắc chắn của giả thuyết ( còn được gọi là kết luận).
Luật đơn giản
Luật đơn giản có dạng sau: If(e) then (c)
Gọi CF(e) là độ đo chắc chắn của chứng cớ. CF(r) là độ đo chắc chắn của luật suy diễn
Thế thì CF(c) là độ đo chắc chắn của kết luận sẽ được tính bằng công thức: CF(c) = CF(e) * CF(r)
Công thức này chính là nền tảng cho cơ chế lập luận của MYCIN.
Lập luận phức tạp
Trong thực tế chúng ta có thể gặp các luật phưc tạp như sau:
IF (e1 AND e2) then (c)
Toán tử AND được dùng để liên kết chứng cớ e1 và e2. Lúc bấy giờ ta có: CF (e1 END e2) = MIN (CF(e1),CF(e2))
Với luật có dạng OR như sau:
If (e1 OR e2) then (c)
Thì CF (e1 OR e2) = MAX( CF(e1),CF(e2)) Với luật có dạng AND và OR như sau: If ((e1 AND e2) OR e3) then (c)
Thì CF ((e1 AND e2) OR e3) = MAX (MIN(CF(e1),CF(e2),CF(e3)) Ngoài ra độ đo chắc chắn có dạng NOT được tính như sau: CF (NOT e) = - CF (e)
Sau khi tính được độ đo chắc chắn của chứng cớ liên kết, ta dùng công thức nêu trong mục Luật đơn giản để tính CF kết luận.
Trong các hệ dựa trên luật, chúng ta còn có thể sử dụng phương pháp lập luận lùi. Lập luận lùi cho phép ta tìm ra các phép thế biến mà giả thuyết đưa ra trở thành đúng (là hệ quả logic của cơ sở tri thức). Do đó trong hệ dựa trên luật chúng ta có thể sử dụng lập luận lùi để tìm ra các câu trả lời cho các câu hỏi được đặt ra bởi người sử dụng.
Một câu hỏi đặt ra có thể xem như một giả thuyết (ký hiệu là Hyp) cần kiểm tra. Giả thuyết có thể là một câu phân tử hoặc là hội của các câu phân tử:
Hyp = H1 Λ … Λ H m
trong đó Hi (i = 1, ..., m) là các câu phân tử.
Mục đích của chúng ta là kiểm chứng xem giả thuyết có thể trở thành đúng không, và nếu có thì với các phép thế biến nào nó trở thành đúng.
Chúng ta sẽ xử lý Hyp như một danh sách các giả thuyết Hi: Hyp = [H1, ..., Hm]
Chúng ta sẽ xét mỗi luật
P 1 ∧… ∧ Pm ⇒ Q
như một cặp (conds, conc); trong đó Conds là danh sách các điều kiện của luật. Conds = [P1, ..., Pm]
và Conc là kết luận của luật, Conc = Q.
Một sự kiện S (câu phân tử) được xem như một luật không có điều kiện, tức là Conds = [ ] và Conc = S.
Tư tưởng của phương pháp lập luận lùi là như sau. Với mỗi giả thuyết trong danh sách các giả thuyết, ta tìm những luật có phần kết luận hợp nhất với giả thuyết đó. Nếu luật này là một sự kiện thì ta loại bỏ giả thuyết đang xét khỏi danh sách các giả thuyết. Nếu không thì ta xem các điều kiện của luật là các giả thuyết mới xuất hiện và giả thuyết đang xét được thay bởi các giả thuyết mới đó. Khi đó ta nhận được một danh sách các giả thuyết mới. Lặp lại quá trình trên cho danh sách các giả thuyết mới này. Trong quá trình trên ta lưu lại hợp thành của các phép thế đã sử dụng θ. Nếu tới một bước nào đó, danh sách các giả thuyết trở thành rỗng, thì ta kết luận giả thuyết ban đầu là đúng với phép thế biến θ.
Sau đây là thủ tục suy diễn lùi. Trong thủ tục này, Hyp và θ là các biến địa phương trong thủ tục. Giá trị ban đầu của Hyp là danh sách các giả thuyết ban đầu (biểu diễn câu hỏi được đặt ra), còn giá trị ban đầu của θ là phép thế rỗng.
procedure
Backward_Chaining (Hyp, θ);begin
H ← giả thuyết đầu tiên trong danh sách Hyp;for
mỗi luật R = (conds, Q)do
if
H hợp nhất với Q bởi phép thế θ1then
1. Loại H khỏi danh sách Hyp;
2. Thêm các điều kiện của luật Conds vào danh sách Hyp;
3. Áp dụng phép thế θ1 vào các giả thuyết trong danh sách Hyp;
4. Lấy hợp thành của các phép thế θ và θ1 để nhận được phép thế θ mới, tức là θ ←θθ1;
5.if
Hyp = [ ]then
cho ra θ
else
Backward_Chaining (Hyp, θ);end
;
Trong thủ tục lập luận lùi, mỗi θ được cho ra là một phép thế biến làm cho giả thuyết ban đầu trở thành đúng, tức là (Hyp) θ = H1θ Λ ... ΛHmθ là đúng (là hệ quả logic của cơ sở tri thức). Do đó mỗi phép thế biến θ được cho ra bởi thủ tục là một câu trả lời cho câu hỏi đặt ra. Ví dụ. Giả sử cơ sở tri thức chứa các sự kiện sau
House(Tom) (Tom là ngựa) (1)
House(Ken) (2)
House(Kit) (3)
House(Bin) (4)
Mother(Tom, Bin) (Tom là mẹ Bin) (5)
Mother(Tom, Ken) (6)
Mother(Bin, Kit) (7)
Fast(Kit) (Kit chạy nhanh) (8)
Winner(Bin) (Bin thắng cuộc) (9)
Giả sử cơ sở tri thức chứa hai luật sau
House(x) Λ Mother(x, y) Λ Fast(y) ⇒ Valuable(x) (10)
(nếu 1. x là ngựa, và
2. x là mẹ y, và
3. y chạy nhanh thì x có giá )
Winner(z) ⇒ Fast(z) (11)
(nếu z thắng cuộc thì x chạy nhanh)
Câu hỏi đặt ra là: con ngựa nào có giá ?
Giả thuyết ban đầu Hyp = [Valuable(w)] và θ = [ ]. Giả thuyết Valuable(w) hợp nhất được với kết luận của luật (10) bởi phép thế θ1 = [w/x], do đó ta nhận được danh sách các giả thuyết mới Hyp = [House(x), Mother(x, y), Fast(y)]
và θ = θθ1 = [w/x]
Giả thuyết House(x) hợp nhất được với sự kiện (1) bởi phép thế θ1 = [x/Tom], ta nhận được danh sách các giả thuyết mới
Hyp = [Mother(x, y), Fast(y)]
và θ = [w/x][x/Tom] = [w/Tom]
Giả thuyết Mother(Tom, y) hợp nhất được với sự kiện (5) bởi phép thế θ1 = [y/Bin], ta nhận được danh sách các giả thuyết
Hyp = [Fast(y)]
và θ = [w/Tom][y/Bin] = [w/Tom, y/Bin]
Giả thuyết Fast(Bin) hợp nhất được với kết luận của luật (11) bởi phép thế [z/Bin], do đó ta có Hyp = [Winner(Bin)]
và θ = [w/Tom, y/Bin, z/Bin]
Giả thuyết Winner(Bin) trùng với sự kiện (9) (hợp nhất được bởi phép thế θ1 = []). Do đó danh sách các giả thuyết trở thành rỗng với phép thế θ = [w/Tom, y/Bin, z/Bin]. Như vậy với phép thế này thì giả thuyết Valuable(w) trở thành đúng, hay nói cách khác, Tom là con ngựa có giá.
Từ các luật được sử dụng trong quá trình lập luận trên, và từ phép thế θ thu được, ta có thể xây dựng nên cây chứng minh cho Valuable(Tom) (xem hình 2).
Cây chứng minh cho Valuable(Tom)
Chúng ta còn tìm được một phép thế biến khác θ = [w/Bin, y/Kit] để cho Valuable(w) trở thành đúng. Do đó, ta tìm ra Tom và Bin là các con ngựa có giá.