1. Trang chủ
  2. » Luận Văn - Báo Cáo

TÌM HIỂU HỆ CHUYÊN GIA VÀ CÁC PHƯƠNG PHÁP SUY DIỄN

23 3K 18

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 23
Dung lượng 308 KB

Nội dung

CHƯƠNG 1: HỆ CHUYÊN GIA1.1 Giới thiệu hệ chuyên gia Trong lĩnh vực trí thông minh nhân tao, một hệ chuyên gia là một hệ thống máy tính cókhả năng mô phỏng hay hành động giống như một chu

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN



BÁO CÁO BIỂU DIỄN TRI THỨC VÀ

SUYLUẬN

TÌM HIỂU HỆ CHUYÊN GIA VÀ CÁC

PHƯƠNG PHÁP SUY DIỄN

Tháng 03 Năm 2014

Trang 4

CHƯƠNG 1: HỆ CHUYÊN GIA

1.1 Giới thiệu hệ chuyên gia

Trong lĩnh vực trí thông minh nhân tao, một hệ chuyên gia là một hệ thống máy tính cókhả năng mô phỏng hay hành động giống như một chuyên gia thật sự, liên quan đến cácvấn đề như dự đoán, đưa ra lời khuyên, hổ trợ quyết định…

Sự tương đương của hệ chuyên gia và chuyên gia được thể hiện qua:

• Khả năng suy luận dựa trên không gian kiến thức của con người

• Giải quyết các vấn đề phức tạp bằng heuristic hay các kỹ thuật gần đúng

• Giải thích và điều chỉnh các giải pháp dựa trên các sự kiện

Các hệ chuyên gia được thiết kế để có thể giải quyết các vấn đề phức tạp bằng cáchsuy luận trên cơ sở tri thức, và được biểu diển chủ yếu theo dạng:

IF…THEN…ELSE

Hơn là các thủ tục code thường dùng Dưới đây là một vài điểm nội bật của hệchuyên gia khi so sánh với các chuyên gia khi được phát triển và ứng dụng trong các lĩnhvực

• Chi phí thấp

• Các kết quả trả về thường là mang lại kết quả đúng

• Độ tin cậy và tính sẵn sàng cao

• Thay thế con người trong những môi trường nguy hiểm

• Sao chép khả năng của một chuyên gia

• Có khả năng giải thích và suy luận mà không qua cảm xúc, thái độ

Trang 5

Hình 1.1: Phân hệ của hệ chuyên gia trong hệ thống AI

1.2 Kiến trúc hệ chuyên gia

Một hệ chuyên gia bao gồm những thành phần sau:

Bộ hổ trợ giải thích (Explanation facility): cung cấp các kiến thức trong quá trình

suy luận khi đưa ra một kết luận hay một quyết định nào đó

Bộ hổ trợ thao tác kiến thức (Knowledge acquisition facility): cung cấp phương

tiện đề nắm bắt các sự kiện và lưu trữ kiến thức được suy luận từ chuyên gia vàotrong cở sở tri thức

Cơ sở tri thức(Knowledge base): lưu trử các tri thức của con người, thường là

theo các luật IF THEN…ELSE

Không gian làm việc (Working memory ): một cơ sở dữ liệu các sự kiện, được sử

dụng trong các luật suy diễn

• Bô suy diễn(Inference engine): thực hiện quá trình suy diễn trên các luật, có thểdựa vào độ ưu tiên hoặc các kiến thức heuristic đề tìm lời giải

Bộ ghi nhật ký(Agenda): một danh sách các luật đã thảo mãn theo độ ưu tiên, qua

quá trình suy diễn các sự kiện

Bộ so khớp mẫu (Pattern matcher): so sánh các luật và các sự kiện

Trang 6

Hình 1.2: Mô hình hệ chuyên gia

Quá trình thực thi của hệ chuyên gia

Bộ phận được xem là quan trọng bậc nhất trong hệ chuyên gia là bộ suy diện Bộ suydiễn hoạt động theo quy trình tròn sau đây:

Bộ so khớp mẫu (Pattern matcher): sử dụng các thuật toán để tạo ra danh sách

các luật, dựa vào các sự kiện đã tìm được trong bộ không gia làm việc, ví dụ nhưthuật toán Rete

Bộ ghi nhật ký(Agenda): xác định thứ tự mà các luật phát sinh từ danh sách

Bộ giải quyết mâu thuẫn(conflict resolver): chọn các luật có độ ưu tiên các nhất

từ bộ ghi nhật ký

• Bộ thực thi hành động: thực thi các kết quả suy luận vế phài (Right hand side) củacác luật được chọn và xóa các luật này từ bộ ghi nhật ký

Bộ so khớp mẫu (Pattern matcher): được kích hoạt trở lại, thực hiện cập nhật bộ

ghi nhật ký với các luật thỏa mãn vế trái và xóa các luật không thỏa

Trang 7

Quy trình này tiếp tục cho đến khi không còn luật nào tồn tại trong bộ ghi nhật ký.Một luật được kích hoạt khi và chỉ khi vế trái của nó thỏa mãn Tính năng quan trongnày trong hệ chuyên gia được gọi là sự khúc xạ (Refraction) Nó đảm bảo rằng một hệchuyên gia sẽ không bị lặp vòng vô tận

1.2.1 Quá trình thu thập tri thức (Knowledge Engineering):

Thu thập tri thức là một quá trình trích rút dữ liệu của một lĩnh vực cụ thể, thông qua cácchuyên gia, sau đó cấu trúc, định dạng và tích hợp vào trong cơ sở tri thức của hệ chuyêngia

Các dữ liệu rút trích được có thể bao gồm nhiều luật logic hay các kiến thức heuristicđược sử dụng bởi các chuyên gia trong một số trường hợp cụ thể nào đó Không giốngnhư một thuật toán đảm bảo sẽ tìm ra được lời giải chính xác hoàn toàn trong một khoảngthời gian nhất định Hệ chuyên gia chỉ đảm bảo sẽ tìm ra được lời giải hợp lý nhất

Dựa vào trình độ, mức độ kiến thức của chuyên gia trong quá trình hiểu biết sự kếtnồi giữa các kiến thức hay các suy luận, hệ quả; một kỹ sư lập trình kiến thức có thể xâydựng nên một hệ chuyên gia sử dụng các quy tắc heuristic Các kiến thức này thườngđược biểu diễn dưới dạng các luật được gọi là cơ sở tri thức

1.2.2 Biểu diễn tri thức

Một chương trình máy tính gồm cấu trúc dữ liệu và các thuật toán Trong khi đó hệchuyên gia bao gồm hai phần chính là cơ sở tri thức và bộ suy diễn

Tri thức là một phần trong mô hình phân cấp “Tháp kiến thức”:

Trang 8

Hình: 1.3 Tháp tri thức

• Dữ liệu tạp (Noise): các loại dữ liệu không xác định, không rõ rang

• Data: những dữ liệu hữu ích, có thể dùng đề trích xuất các thông tin

• Thông tin (Information): những dữ liệu hữu ích cho kiến thức

• Kiến thức (Knowledge): các luật được rút ra từ các thông tin

• Siêu tri thức (Metaknowledge): các luật được rút ra từ các tri thức

1.3 Các ứng dụng của hệ chuyên gia

Hayes-Roth chia các ứng dụng của hệ chuyên gia thành 10 loại:

Loại

Diễn dịch (Interpretation)

Trang 9

1.4 Một số hạn chế của hệ chuyên gia

• Hệ chuyên gia có thể hoạt động tốt trong một lĩnh vực hẹp với một độ phức tạpnhất định Viêc mô hình hóa một hệ chuyên gia cho nhiều lĩnh vực có thê gấy tácdụng ngược lại

• Hệ chuyên gia không hoàn toàn đảm bảo chất lượng hay tính đúng đắn của cácluật trong quá trình suy luận

• Viêc thêm các luật, các tri thức mới có thể sẽ xung đột với những luật hiện tại và

có thể giảm độ tin cậy của hệ thống

Trang 10

CHƯƠNG 2: CÁC PHƯƠNG PHÁP SUY LUẬN

2.1 Suy diễn lùi

Suy diễn lùi là một phương pháp suy luận, được diễn tả là một quá trình kết xuất ngược

từ tập đích (goals) Suy diễn lùi thường được ứng dụng trong hệ chứng minh bài toán tựđộng, các bộ suy diễn, hệ hổ trợ tìm chứng cứ và trong nhiều ứng dụng trong các hệthống AI

Suy diễn lùi được hiện thực trong hệ thống lập trình logic bởi SLD resolution Cácluật suy diễn là dựa trên module ponens Đầy là một trong hai phương pháp được sử dụngtrong các hệ thống suy diễn và phép logic kéo theo Suy diễn lùi thường sữ dụng chiếnlược tìm kiếm theo chiều sau – DFS Ví dụ như trong ứng dụng prolog

Quá trình hoạt động:

Suy diễn lùi bắt đầu với một danh sách các dữ liệu đích và thực hiện suy luận ngược

từ kết quả cho đến các tiên đề suy ra nó Trong một bô suy diễn sử dụng suy diễn ngược,

sẽ tìm kiếm các luật suy diễn cho đến khi tìm được một mệnh đề THEN… mà thỏa nãnvới tập đích.Nếu như mà tập RHS của luật là chưa xác định thì nó sẽ them luật này vàotập đích và tiếp tục quá trình suy diễn

Một ví dụ của suy diển lùi:

Trang 11

“chớp đỏ”

A N D

Điện vào máy “có”

• Cĩ âm thanh đọc ổ cứng

• Tình trạng đèn màn hình "xanh" hoặc "chớp đỏ"

• Khơng sử dụng được máy tính

• Điện vào máy tính "cĩ" hay "khơng"

Trang 12

lỏng, hệ thống phải lần lượt đi vào các nhánh để kiểm tra các điều kiện như điện vào máy

"có", âm thanh ổ cứng "không"…Tại một bước, nếu giá trị cần xác định không thể đượcsuy ra từ bất kỳ một luật nào, hệ thống sẽ yêu cầu người dùng trực tiếp nhập vào Chẳnghạn như để biết máy tính có điện không, hệ thống sẽ hiện ra màn hình câu hỏi "Bạn kiểmtra xem có điện vào máy tính không (kiểm tra đèn nguồn)? (C/K)" Để thực hiện được cơchế suy luận lùi, người ta thường sử dụng ngăn xếp (để ghi nhận lại những nhánh chưakiểm tra)

Phương pháp suy diễn lùi thường được dùng trong các hệ chuyên gia, các ngôn ngữlập trình như Prolog, Knowledge Machine và ECLiPSe hổ trợ suy diễn lùi qua bộ suydiễn của chúng

2.2 Suy diễn tiến

Đây cũng là một phương pháp dùng trong bộ suy diễn của hệ chuyên gia và đối lặp vớivới phương pháp suy diễn lùi Nó cũng dựa trên modus ponens

Suy diễn tiến bắt đầu với tập sự kiện và sử dụng các luật suy diễn để suy ra nhiều dữkiện khác cho đến khi.tập đích được tìm thấy một bộ suy diễn sử dụng suy diễn tiến khi

sử dụng kỹ thuật này sẽ tìm kiếm trên tập luật đến khi kết quả (IF mệnh đề) là đúng, vàthêm tập dữ kiện của mệnh đề THEN, đề tiếp tục quá trình suy ra tập đích cần tìm

Trang 13

If G⊂ T then write (“thành công”)

Else write (“không thành công”);

End;

2.3 Suy diễn Heuristic

Suy diễn heutistic là phương pháp suy diễn dựa vào kinh nghiệm, như là một phươngpháp tạm thời nhưng hợp lý nhấm tìm ra giải pháp cho vần đề hiện tại

Suy diễn heuristic có thể giúp khám phá ra giải pháp nhanh chóng cho các vấn đề suyluận phức tạp, đặc biệt là yêu cầu về mặt thời gian tìm kiếm và không gian dữ liệu tínhtoán lớn

Trang 14

quan hệ các thuộc tính mục tiêu

Một luật sẽ có một độ ưu tiên nhất định, nếu như nhiều luật cùng thỏa mãn điều kiệnđầu vào thì ưu tiên chọn luật có độ ưu tiên cao

Mỗi luật sẽ có những thuộc tính đính kèm, để giúp quá trình chọn luật hiệu quả hơnnhằm sinh ra những quan hệ, những sự kiện mà hướng đến mục tiêu

Suy diễn heuristic thường được kết hợp với suy diễn tiến trong các bộ máy suy diễn

để tăng tính hiệu quả của chương trình

2.4 Phương pháp loại bỏ luật thừa và luật mâu thuẫn

Các luật trong Bộ suy diễn có thể có khả năng thừa, trùng lắp hoặc mâu thuẫn Do quátrình xây dựng tập luật và cập nhật trong quá trình hoạt động, dẫn tới kết quả không chínhxác

Tuy quá trình xem xét và thao tác tối ưu hóa các luật là một thao tác khó, vì giữa cácluật thường tồn tại các quan hệ không tường minh Dưới đây là một số phương pháp tối

ưu hóa tập luật:

2.4.1 Loại bỏ luật thừa

Rút gọn vế phải

Quy tắc: thực hiện loại bỏ những sự kiện bên vế phải nếu sự kiện đã xuất hiện ở vế trái.Nếu sau khi rút gọn mà vế phải rỗng thì loại bỏ luật khỏi cơ sở luật

Ví dụ: A ∧ B → A ∧ C là hoàn toàn tương đương với A ∧ B → C

Thuật toán loại bỏ thừa vế phải:

for each rule r trong R do

Trang 15

for each event a < RHS(r) do

if a < LHS(r) thenremove A from RHS(r)endif

Thuật giải

For each luật r do X : A1 ∧ A2, …, An → Y thuộc R

For each event Ai thuộc r do

Gọi luật r1 : X\{Ai} → Y và S = ( R\{r} ) ∪ {r1}

If bao đóng (X\{Ai}, S) ≡ bao đóng (X, R) then

X := X \ {Ai}End if

Trang 16

Luật thừa: luật dẫn A → B được gọi là thừa nếu luật này có thể suy luận từ nhưng luậtcòn lại trong tập luật

Ví dụ: tập 3 luật {A → B, B → C, A → C} thì luất thứ 3 là luật có thể suy luận từ hai luật còn lại, do đó đây là luật thừa

2.4.2 Luật mâu thuẫn

Gọi R: tập luật của cơ sở tri thức

r ∈R: X → Y

(X)R – {r} : tập các mệnh đề suy được từ mệnh đề X bằng các luật thuộc R – {r}  Y: phủ định của Y

Trang 17

Luật r được gọi là mâu thuẫn nếu: Y ∈ (X)R – {r}

- Kiểm tra nếu  Y ∈(X)R’ không?

Nếu đúng: thì luật r mâu thuẫn đối với tập luật R’

Ngược lại r không mâu thuẫn

Loại bỏ luật mâu thuẫn trong CSTT

B1: Xét luật r trong R của CSTT

Kiểm tra r có mâu thuẫn với tập R – {r} không?

B2: Nếu mâu thuẫn thì R = R – {r}

B3: Quay lai B1 với luật khác

Vòng lặp suy diễn

Trang 18

1 2 R

3

Rn

Hình 2.1: Vòng lặp suy diền

Thuật toán:

Gọi R: tập luật sẵn có của cơ sở tri thức

r: X → Y là luật mới cần thêm vào

B1 Xác định (Y)R = {Aj / Aj các mệnh đề có thể suy diễn từ Y dựa trên tập luật R} (baođóng của Y trên R)

B2 Nếu X ∈ (Y)R thì luật r gây ra vòng lặp

2.5 Hệ chuyên gia chẩn đoán một số triệu chứng cơ bản của ô tô

2.5.1 Quy trình hoạt động

Ứng dụng là tập hợp các luật trên công cụ phát triển hệ chuyên gia CLIPS, cho phép dựđoán các vấn đề hỏng hốc cơ bản phát sinh trong quá trình sử dụng ô tô CLIPs hổ trợmạnh định nghĩa độ ưu tiên , các thuộc tính, các toán tử kết hợp luật…

Quá trình dự đoán thông qua các tập luật được định nghĩa trước và các thông tinthông qua tương tác với người dùng Các câu hỏi đưa ra bởi hệ thống sẽ biến đổi tùy theokết quả trả lời trước đó, và theo một trình tự ưu tiêu nhất định Tập các câu hỏi của hệthống:

• Xe khởi động được không ?

• Xe nổ máy không ?

Trang 19

• Xe chạy bình thường không ?

• Xe phát tiếng kêu không ?

• Tốc độ chạy của động có có yêu không ?

• Có khí ga bóc ra từ xe không?

• Quan sát bề mặt các bộ phân của xe thấy như thế nào ?

• Hệ thống đanh lửa hoạt động không ?

Một luật trong CLIPS:

(defrule normal-engine-state-conclusions ""

(declare (salience 10)) ; Độ ưu tiên của luật

(working-state engine normal) ; Phần vế trái của luật

=>

(assert (repair "Khong can sua chua.")) ; phần về phài của luật

(assert (spark-state engine normal))

(assert (charge-state battery charged))

(assert (rotation-state engine rotates))); hàm assert dùng để xây dựng sự kiện mới

CLIPS dùng một trình quản lý các sự kiện phát sinh hiện tại của hệ thống, đề xácđịnh luật nào được thỏa đề thực thi và tạo thêm các sự kiện thông qua cơ chế suy diễntiến của nó

Bên cạnh đó trong CLIPs, cho phép định nghĩa các function để xử lý các kết quảnhận được qua tương tác với người dùng Các function có thể là một câu hỏi với nhiềukết quả tùy chọn, hoặc là câu hỏi yes/no

Một dạng hàm trong CLIPs:

(deffunction yes-or-no-p (?question)

(bind ?response (ask-question ?question yes no y n))

(if (or (eq ?response yes) (eq ?response y))

Trang 20

2.5.2 Các chức năng chính

Hình 2.2: Hộp thoại hiện thị các sự kiện

Hình 2.3: Tiến trình các luật kích hoạt trong CLIPs

Trang 21

Hình 2.4: Một trường hợp chẩn đoán của chương trình

Trang 22

CHƯƠNG 3: KẾT LUẬN

Trong các hệ thống thông minh hiện nay, hệ chuyên gia ngày càng đóng một vai trò quantrọng để hổ trợ con người đưa ra những dự đoán, chẩn đoán, lời khuyên…trong nhiềulĩnh vực Hệ thống chuyên gia được phát triển là dựa vào những qui tắc, những kiến thứccủa chuyên gia nên nó có thể phần nào thay thế được chuyên gia để đưa ra một số quyếtđịnh

Quá quá trình tìm hiểu và nghiên cưu, Báo cáo đã trình bày chi tiết các bộ phận cấuthành nên hệ chuyên gia, mà trong đó hai thành phần quan trọng nhất là cơ sở tri thức và

bộ suy diễn

Bên cạnh đó, báo cáo cũng giới thiệu một số phương pháp suy diễn thường được sửdụng trong hệ chuyên gia là suy diễn lùi, suy diễn tiến và suy diễn heuristic Một số hổtrợ suy diễn mạnh như Prolog, Knowledge Machine, ECLiPSe , CLIPS

Cùng với đó, Báo cáo trình bày ứng dụng demo chẩn đoán các hỏng hốc thôngthường của ô tô quá công cụ phát triển các hệ chuyên gia CLIPs

Trang 23

TÀI LIỆU THAM KHẢO

[1] PGS.TS Đỗ Văn Nhơn(2014), Bài giảng Biểu diễn tri thức và suy luận, Đại học

CNTT, Đại học Quốc gia Tp.HCM

[2] GS-TSKH Hoàng Kiếm – Bài giảng seminar chuyên đề Công nghệ tri thức vả ứngdụng 2013

[3] Elsevier , EXPERT SYSTEMS WITH APPLICATIONS An International Journal, 2014

[4] Yuliadi Erdani, Developing Backward Chaining Algorithm of inference Engine in Ternary Grid Expert System , 2012

[5] www.en.wikipedia.org/wiki/Expert

[6] www.en.wikipedia.org/wiki/Inference_engine

Ngày đăng: 19/05/2015, 02:05

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] PGS.TS Đỗ Văn Nhơn(2014), Bài giảng Biểu diễn tri thức và suy luận, Đại học CNTT, Đại học Quốc gia Tp.HCM Sách, tạp chí
Tiêu đề: Bài giảng Biểu diễn tri thức và suy luận
Tác giả: PGS.TS Đỗ Văn Nhơn
Năm: 2014
[2] GS-TSKH. Hoàng Kiếm – Bài giảng seminar chuyên đề Công nghệ tri thức vả ứng dụng. 2013 Khác
[3] Elsevier , EXPERT SYSTEMS WITH APPLICATIONS An International Journal, 2014 Khác
[4] Yuliadi Erdani, Developing Backward Chaining Algorithm of inference Engine in Ternary Grid Expert System , 2012 Khác
[6] www.en.wikipedia.org/wiki/Inference_engine Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w