Đặc trưng cơ bản của Hệ Chuyên Gia• Hiệu quả cao: khả năng trả lời với mức độ tinh thông bằng hoặc cao hơn so với chuyên gia con người trong cùng lĩnh vực; • Thời gian trả lời thỏa đáng:
Trang 1TÌM HIỂU VỀ HỆ CHUYÊN GIA VÀ BIỂU DIỄN TRI THỨC
TRONG HỆ CHUYÊN GIA
Giáo viên hướng dẫn: PGS TS Đỗ Văn Nhơn
Sinh viên thực hiện : Lê Văn Đào
Mssv: CH1101071
BÀI THU HOẠCH CHUYÊN ĐỀ:
Trang 2Giới thiệu Hệ chuyên gia – Expert System
• Theo E Feigenbaum: “Hệ chuyên gia là một chương trình máy tính thông minh sử dụng tri thức
(knowledge) và các thủ tục suy luận (inference
procedures) để giải những bài toán tương đối khó khăn đòi hỏi các chuyên gia mới giải quyết được”
• Là 1 hệ thống tin học có thể mô phỏng năng lực ra quyết định và khả năng của 1 chuyên gia
• Là một trong những lĩnh vực ứng dụng của Trí tuệ nhân tạo
Trang 3Hệ chuyên gia
• Sử dụng tri thức của các chuyên gia để giải quyết các vấn đề (bài toán) khác nhau thuộc mọi lĩnh vực
• Các thuật ngữ expert system, knowledge-based
system và knowledge-based expert system thường có nghĩa như nhau
Trang 4Máy suy diễn (inference engine)
Hệ thống giao tiếp với người dùng (user interface)
Trang 5Hệ chuyên gia
• Hoạt động:
– Người dùng cung cấp các sự kiện (facts) là những
gì đã biết, có thật hay những thông tin hữu ích cho HCG;
– Máy suy diễn dựa trên các tri thức trong cơ sở tri
thức để suy diễn (suy luận) và đưa ra câu trả lời
cho người dùng qua hệ thống giao tiếp;
– Người dùng nhận được câu trả lời là những lời
khuyên hay gợi ý đúng đắn
Trang 6Hệ chuyên gia
• Mỗi Hệ Chuyên Gia chỉ hoạt động trong một lĩnh vực
vấn đề (problem domain): y học, tài chính, khoa học
hay công nghệ
• Tri thức chuyên gia để giải quyết 1 vấn đề đặc trưng
được gọi là lĩnh vực tri thức (knowledge domain).
• Ví dụ: Hệ Chuyên Gia về lĩnh vực y học để phát hiện
các căn bệnh lây nhiễm có lĩnh vực tri thức về một số căn bệnh lây nhiễm, triệu chứng và cách chữa trị
chúng
Trang 7Hệ chuyên gia
• Quan hệ giữa lĩnh vực vấn đề và lĩnh vực tri thức
Lĩnh vực vấn đề (problem domain)
Lĩnh vực tri thức (knowledge domain)
Trang 8Đặc trưng cơ bản của Hệ Chuyên Gia
• Hiệu quả cao: khả năng trả lời với mức độ tinh thông bằng hoặc cao hơn so với chuyên gia con người trong cùng lĩnh vực;
• Thời gian trả lời thỏa đáng: Thời gian trả lời bằng
hoặc nhanh hơn chuyên gia con người để đi đến
cùng 1 quyết định – là 1 hệ thời gian thực;
• Độ tin cậy cao: Không xảy ra sự cố hoặc giảm sút độ tin cậy khi sử dụng;
• Dễ hiểu: Giải thích các bước suy luận 1 cách dễ hiểu
và nhất quán
Trang 9Ưu điểm của Hệ Chuyên Gia
• Ngày càng phổ cập: được phát triển không ngừng với hiệu quả sử dụng không thể phủ nhận;
• Giá thành hạ;
• Giảm rủi ro: giúp con người tránh được môi trường rủi ro, nguy hiểm;
• Tính sẵn sàng: có thể hoạt động bất cứ lúc nào;
• Đa lĩnh vực: về nhiều lĩnh vực khác nhau;
• Tin cậy: luôn đảm bảo độ tin cậy khi khai thác;
• Khả năng giải thích: có thể diễn giải các câu trả lời 1 cách rõ ràng và chi tiết;
• Trả lời nhanh: trả lời thời gian thực, khách quan;
• Tính ổn định, suy luận lôgic và đầy đủ;
• Như một người hướng dẫn thông minh;
• Có thể truy cập như một cơ sở dữ liệu thông minh.
Trang 10Lĩnh vực ứng dụng
• Chuẩn đoán: lập luận dựa trên các sự kiện quan sát được;
• Hướng dẫn: dạy học thông minh để sinh viên có thể hỏi các câu hỏi vì sao (why?), như thế nào (how?) và cái gì xảy ra nếu (what if?) giống như hỏi thầy giáo;
• Giải thích: giải thích các dữ liệu thu nhận được;
• Theo dõi kiểm tra: So sánh dữ liệu thu được với dữ liệu
chuyên môn để đánh giá hiệu quả;
• Lập kế hoạch: lập kế hoạch sản xuất theo yêu cầu;
• Dự đoán: dự đoán hậu quả nếu một tình huống xảy ra;
• Chữa trị: Đưa ra cách giải quyết một vấn đề;
• Điều khiển: điều khiển 1 quá trình bao gồm: diễn giải, chuẩn đoán, kiểm tra, lập kế hoạch, dự đoán và chữa trị.
Trang 11Kiến trúc tổng quát
• Các thành phần cơ bản
Máy suy diễn
Lịch công việc Bộ nhớ làm việc
Bộ giải thích Bộ thu nhận tri thức
Giao diện người dùng
Cơ sở tri thức (các luật)
Cơ sở tri thức (các luật)
Trang 12Kiến trúc tổng quát
• Cơ sở tri thức: gồm các phần tử (đơn vị) tri thức,
thường là các luật, được tổ chức như 1 CSDL
• Máy suy diễn: suy luận dựa trên luật; xem xét những luật nào thỏa mãn các sự kiện, các đối tượng; chọn luật có ưu tiên cao nhất
• Lịch công việc (agenda): danh sách các luật ưu tiên
do máy suy diễn tạo ra thỏa mãn các sự kiện, đối
tượng có mặt trong bộ nhớ làm việc
Trang 13• Giao diện người dùng: là nơi người dùng và Hệ
chuyên gia trao đổi với nhau
Trang 14Biểu diễn tri thức
• Bằng nhiều cách khác nhau:
– Các luật sinh (sản xuất)
– Lôgic
– Mạng ngữ nghĩa
– Ngôn ngữ nhân tạo
– Bộ ba Đối tượng-Thuộc tính-Giá trị (O-A-V: Attribute-Value)
Object-– Frame …
Trang 15Biểu diễn tri thức bằng luật sinh
• Hầu hết Hệ Chuyên Gia hiện nay dùng luật sinh biểu diễn tri thức, do:
– Tính đơn thể: các luật có tính độc lập, có thể mở rộng một cách dễ dàng;
– Khả năng giải thích: cách biểu diễn dùng các luật IF THEN, cho phép dễ dàng giải thích cách suy luận;– Tương tự quá trình nhận thức của con người trong giải quyết vấn đề
Trang 16Biểu diễn tri thức bằng luật sinh
• Dạng 1: IF <điều kiện> THEN <hành động>
• Dạng 2: IF <điều kiện> THEN <kết luận> DO <hành
động>
• Luật có thể có tên, phần <điều kiện> còn gọi là vế trái của luật, tiền đề, mẫu so khớp; phần sau THEN là
phần kết luận hay hệ quả
• Ví dụ: Các luật giao thông:
– IF <đèn đỏ sáng> THEN dừng
– IF đèn xanh sáng THEN đi
Trang 17Biểu diễn tri thức bằng lôgic
• Lôgic vị từ:
Tom là cha của Mary FATHER(Tom,Mary)
Tất cả mọi người đều
Trang 18Biểu diễn tri thức bằng lôgic
• Cho tri thức sau:
– Marc tóc vàng; Jean tóc nâu
– Pierre là cha của Jean; Marc là cha của Pierre
– Marc là con của George
– Nếu Y là con của X thì X là cha của Y
– Nếu X là cha của Z, Z là cha của Y, thì X là ông của Y
• Được biểu diễn bằng cơ sở tri thức:
– BLOND(marc) (1) BROWN(jean) (2)
– FATHER(pierre,jean) (3) FATHER(marc,pierre) (4)
– SON(marc,george) (5)
– SON(Y,X) FATHER(X,Y) (6)
– FATHER(X,Z), FATHER(Z,Y) GRANDFATHER(X,Y) (7)
– (1),(2),(3),(4),(5) là sự kiện (fact); (6),(7) là luật (rule).
Trang 19Biểu diễn tri thức bằng mạng ngữ nghĩa
• Sử dụng đồ thị gồm các nút (node) và các cung (arc) nối các nút Nút thể hiện các đối tượng, thuộc tính của đối tượng và giá trị thuộc tính; cung thể hiện mối quan hệ giữa các nút.
• Tri thức “Sẻ là một loài chim; chim có cánh và biết bay” được biểu diễn bằng mạng ngữ nghĩa sau:
Trang 20Biểu diễn tri thức bằng ngôn ngữ nhân tạo
• Hiện nay các Hệ Chuyên Gia đối thoại với người sử dụng bằng ngôn ngữ tự nhiên không nhiều
• Các Hệ Chuyên Gia thường dùng 1 ngôn ngữ nhân tạo để biểu diễn tri thức
Trang 21Kỹ thuật suy luận trong Hệ Chuyên Gia
• Suy diễn tiến (forward chaining): lập luận từ các sự kiện, sự việc và dựa trên các luật để rút ra kết luận Ví dụ:
– Có luật: Nếu trời mưa Lấy áo mưa và sự kiện Trời mưa, kết luận Lấy
áo mưa
• Suy diễn lùi (backward chaining): Từ một giải thuyết (như là kết luận), hệ thống đưa ra trả lời là các sự kiện cơ sở đưa đến giả thuyết này Ví dụ: Nếu có sự kiện 1 người cầm áo mưa đi vào nhà và quần áo hơi bị ướt, Hệ Chuyên Gia có thể kết luận
là trời mưa Để củng cố giả thuyết này HCG sẽ hỏi “Có phải
trời mưa không?”.
• Phối hợp (mixed chaining)
• Rút gọn vấn đề (problem reduction)
• Quay lui (backtracking) …
Trang 22Biểu diễn tri thức bằng lôgic vị từ cấp 1
(First-order predicate language)
• Bảng ký hiệu:
– Hằng (constant) bằng chữ thường, ví dụ: tom, blue;
– Biến (variable) bằng chữ hoa, ví dụ: X, Y;
– Các vị từ (predicate) bằng chữ hoa, ví dụ: MAN, FATHER, P; – Bậc-số đối của 1 vị từ Ví dụ: ISRAINING, MAN(tom),
FATHER(tom,mary), BETWEEN(X,Y,Z) lần lượt có bậc là 0, 1, 2,
3 Khi bậc là 0 (ISRAINING) thì vị từ còn được gọi là mệnh đề (proposition).
– Hàm viết dùng chữ thường: f(X), successor(M,N) có bậc là 1
và 2.
– ∀ : lượng tử với mọi; ∃ : lượng tử tồn tại
Trang 23Biểu diễn tri thức bằng lôgic vị từ cấp 1
• Term:
– Các hằng và biến là term
– Nếu f là 1 hàm và t1, …, tn là term, thì f(t1,…,tn) là 1 term.
• Atom là biểu thức P(t1, …,tn), với P là vị từ, t1,…,tn là term Ví dụ: MAN(tom), FATHER(tom,mary), P(f(X),blue) là các atom.
• Công thức chỉnh (well-formed formula): (CTC)
– Các atom là các CTC
– Nếu G và H là các CTC, thì: ¬ G, G ∧ H, G ∨ H, G → H, G ↔ H cũng là
các CTC được tạo thành từ G và H dùng các phép toán nối lôgic.
– Nếu G là 1 CTC và X là biến, thì (∀ X)G và ( ∃X)G cũng là CTC
• ( ∃ X)G – tồn tại 1 giá trị của X để G đúng
• ( ∀ X)G – với mọi giá trị của X, G đúng
Trang 24Biểu diễn tri thức bằng lôgic vị từ cấp 1
• Ví dụ về các CTC:
– CTC: ( ∀ X)( ∃ Y)((P(X,Y) ∧ Q(X,Y)) R(X)), ¬ (P(a)P(b))
¬ P(b).
– Không phải là CTC: ¬ f(a), f(P(a))
• Biến tự do – không được lượng tử hóa ví dụ P(X) và
• Gọi là lôgic vị từ cấp 1 vì không có các lượng tử cho vị
cao hơn higher-order)
Trang 25Biểu diễn tri thức bằng lôgic vị từ cấp 1
• Tri thức: “Mọi con người đều sẽ chết” được biểu
• Có những tri thức phát biểu bằng ngôn ngữ tự nhiên nhưng không biểu diễn được bằng lôgic vị từ cấp 1 như: “Hai vật giống nhau thì chúng có cùng mọi tính chất”, biểu diễn bằng lôgic vị từ cấp cao hơn
Trang 26Các luật suy diễn
• Luật suy diễn: từ 1 hoặc nhiều Công thức chỉnh có thể suy dẫn đến các Công thức chỉnh khác.
• Modus ponens: từ G và GH, suy ra H
Trang 27Bài toán suy diễn
• Bài toán: Cho trước một tập cố định các CTC, bằng cách áp dụng 1 số hữu hạn lần các luật suy diễn có thể suy được một CTC đã cho hay không?
• Các CTC ban đầu gọi là các tiên đề (axiom), các CTC được suy
ra là các định lý (theorem), dãy các áp dụng của các luật suy diễn từ các tiên đề dẫn đến định lý là một phép chứng minh (proving) của định lý.
• Kỹ thuật hợp giải vấn đề (problem resolution) như tìm kiếm trong không gian trạng thái có thể xem như việc tìm kiếm một chứng minh cho định lý đã cho: Tập hợp các tiên đề ban đầu
là trạng thái đầu, các luật suy diễn là các phép chuyển trạng thái và trạng thái đích là tập hợp các CTC trong đó có chứa
định lý cần chứng minh.
Trang 28Ngữ nghĩa (semantics) của lôgic vị từ
• Một diễn giải (interpretation) của 1 CTC G, ký hiệu I,
được xác định như sau:
– Chọn 1 miền diễn giải (interpretation domain) ký hiệu D ≠ ∅
– Gán cho mỗi hằng trong G một phần tử trong D
– Gán cho mỗi mệnh đề (vị từ bậc 0) một phần tử của tập giá trị chân lý {true,false} (ký hiệu {T,F})
– Gán cho mỗi vị từ bậc n một ánh xạ từ D n lên {T,F}: P(X1,
…,Xn): D n {T,F}
– Gán cho mỗi hàm bậc n một ánh xạ từ D n lên D: f(X1,
…,X n ): D n D
Trang 29Ngữ nghĩa (semantics) của lôgic vị từ
• Ví dụ: Cho các miền diễn giải D1, D2, D3 và các CTC:
• Một diễn giải là không đầy đủ nếu các phép gán cần thiết chỉ được mô tả một phần
Trang 30Ngữ nghĩa (semantics) của lôgic vị từ
• Giá trị của một công thức G theo một diễn giải I:
– Nếu G là một atom, với mỗi phép lựa chọn C các giá trị trong D cho các biến của G, ta nhận được giá trị T hoặc F theo cách đ/n I Ví dụ:
T(f(X),a) nhận giá trị T với X=4.
– Nếu G ở dạng ( ∀ X)G’, thì giá trị của G theo I là T nếu giá trị của G’ theo
I cho mọi giá trị của biến X (trong D) là T, ngược lại là F Ví dụ: Giá trị của G 1 theo I 1 là F.
– Nếu G ở dạng ( ∃ X)G’, giá trị của G theo I là T nếu giá trị của G’ theo I đối với ít nhất 1 giá trị của biến X là T, ngược lại là F Ví dụ: ( ∃ Y)Q(X,Y) theo I 2 là T, G 2 theo I 2 là F.
– Giá trị của các công thức dùng các phép kết nối ¬ , ∨ , ∧ như thông
thường.
– Giá trị của các công thức dùng các phép kết nối →↔ như sau: G H =
¬ G ∨ H; G ↔ H là T nếu G=H, ngược lại là F.
Trang 31Các tính chất của lôgic vị từ cấp 1
• Nếu G là T theo I, ta nói I là model của G
• G là valid (tautology-hằng đúng) nếu với mọi diễn giải
I, G đều là T, ngược lại G là non-valid
• G là inconsistent (contradiction) nếu với mọi diễn
giải, G đều là F, ngược lại G là consistent
• Ví dụ: G1 = (∀X)(P(X) ∨ ¬Q(X)) là consistent vì với I1: D={1}, P(1)=T, Q(1)=T, thì G là T; nhưng G là non-valid
vì với I2: D={1}, P(1)=F, Q(1)=T, thì G là F
• G2 = (∀X)(P(X) ∨ ¬P(X)) là valid
Trang 32Các tính chất của lôgic vị từ cấp 1
• Tính quyết định được và tính nửa quyết định được:
– Không tìm được 1 thuật toán tổng quát để quyết định xem với 1 số hữu hạn các phép toán có thể xác định 1 công thức bất kỳ là valid hay không Như vậy, lôgic vị từ cấp 1 là indecidability
– Có thể xây dựng các thuật toán tổng quát để xác định validability của một họ các CTC Vì vậy, lôgic
vị từ cấp 1 được gọi là half-decidability
Trang 33Các tính chất của lôgic vị từ cấp 1
• Hai công thức G và H là tương đương nếu và chỉ nếu
Trang 34• Luật thay tên biến:
– ( ∀ X)G(X) tương đương ( ∀ Y)G(Y)
– ( ∃ X)G(X) tương đương ( ∃ Y)G(Y)
• ¬ (( ∀ X)G(X)) = ( ∃ X)( ¬ G(X))
• ¬ (( ∃ X)G(X)) = ( ∀ X)( ¬ G(X))
• ( ∀ X)(G(X) ∧ H(X)) = (( ∀ X)G(X)) ∧ (( ∀ X)H(X))
• ( ∃ X)(G(X) ∧ H(X)) = (( ∃ X)G(X)) ∧ (( ∃ X)H(X))
Trang 35Hệ quả lôgic (logical consequence)
• Công thức G được gọi là hệ quả lôgic (HQLG) từ các công thức
H 1 , …, H n nếu mọi model của H 1 , …, H n đều là model của G.
– P(a) là hệ quả lôgic của ( ∀ X)P(X)
• G là HQLG của H 1 , …, H n iff H 1 ∧ … ∧ H n → G là hằng đúng:
– =>: Nếu G là HQLG của H 1 , …, H n => theo đ/n, I là model của H 1 , …, H n
thì I cũng là model của G:
• Nếu I là model của H 1 , …, H n , và G thì ¬ (H 1 ∧ … ∧ H n ) ∨ G là T theo I.
• Nếu I không là model của H 1 , …, H n => ¬ (H 1 ∧ … ∧ H n ) là T theo I => ¬ (H 1 ∧ …
∧ H n ) ∨ G là T theo I.
• Vậy, ∀ I thì ¬ (H 1 ∧ … ∧ H n ) ∨ G là T, nghĩa là H 1 ∧ … ∧ H n → G là hằng đúng.
– <=: Nếu H 1 ∧ … ∧ H n → G là hằng đúng, c/m: G là HQLG của H 1 , …, H n
(bài tập).
Trang 36Hệ quả lôgic
• G là Hệ quả logic của H1, …, Hn iff (H1∧ …∧ Hn) ∧(¬G)
là không nhất quán (inconsistent): bài tập
<=> ¬(H1∧ …∧ Hn)∨G là hằng đúng <=> (H1∧ …∧ Hn)
Trang 37Định lý và Hệ quả logic
• Tính đúng đắn: Nếu các theorem, nhận được bằng cách áp dụng một nhóm các luật suy diễn đã cho từ một tập tiên đề bất kỳ nào đó, là Hệ quả logic của
chúng thì các luật suy diễn là đúng đắn Ví dụ:
– Modus ponens và luật Cụ thể hóa
• Tính đầy đủ: Một nhóm các luật suy diễn là đầy đủ nếu với bất kỳ tập các CTC nào đó, mọi Hệ quả logic của chúng đều được suy diễn từ chúng như những định lý, nghĩa là sau khi áp dụng 1 số hữu hạn lần các luật suy diễn của nhóm
Trang 38Hợp giải (Resolution)
• Là một luật suy diễn áp dụng vào 1 tập các CTC hoặc 1 tập các mệnh đề.
• Dạng chuẩn trước (prenex normal form) của 1 CTC có được bằng cách áp
– Đổi tên biến:
• ( ∀ X)G(X) tương đương ( ∀ Y)G(Y)
• ( ∃ X)G(X) tương đương ( ∃ Y)G(Y)
– Dịch chuyển các dấu lượng tử
– Các phép biến đổi trên cho một CTC mới tương đương với CTC đã cho
Trang 39Chuyển qua dạng mệnh đề
• Từ dạng chuẩn trước G’ của CTC G, ta có thể tạo
ra dạng mệnh đề G’’ của G bằng 5 bước biến đổi sau đây
– Loại bỏ ∃ : Từ ( ∃ X)G(X), G(X) chỉ có các lượng tử ∀ đối với các biến Y1, …, Yn, loại bỏ lượng tử ∃ X và thay thế mỗi vị trí của X trong G(X) bằng 1 hàm f(Y1,…, Yn), chứa tất cả các biến với lượng tử ∀ nằm bên trái lượng tử ∃ trong công thức.Hàm f được gọi là hàm Skolem (Skolem function).
– Khi ko có lượng tử ∀ nằm bên trái lượng tử ∃ trong công
thức, hàm Skolem không có tham biến và được gọi là 1 hằng Skolem (Skolem constant).
– Ví dụ: ( ∃ X)P(X) trở thành P(a); ( ∀ X)( ∃ Y)FOLLOW(Y,X) thành ( ∀ X)FOLLOW(f(X),X)
Trang 40Chuyển qua dạng mệnh đề
• Chuyển qua dạng chuẩn hội: dùng các luật kết hợp và phân phối để chuyển công thức đã cho thành phép
– Ví dụ: ( ¬ P(X) ∧ Q(X,a)) ∨ ¬ R(Y,f(X),b) thành ( ¬ P(X) ∨
¬ R(Y,f(X),b)) ∧ (Q(X,a)) ∨ ¬ R(Y,f(X),b))
• Loại bỏ tất cả các phép hội: Các công thức được
liên kết bởi phép hội được tách làm tập các công thức
– Ví dụ: ( ¬ P(X) ∨ ¬ R(Y,f(X),b)) ∧ (Q(X,a)) ∨ ¬ R(Y,f(X),b)) thành
¬ P(X) ∨ ¬ R(Y,f(X),b) và Q(X,a)) ∨ ¬ R(Y,f(X),b)