BACKDIAGRAM 3: sơ đồ mây suy diễn kiểu Prolog

Một phần của tài liệu Giáo trình: Hệ chuyên gia doc (Trang 93 - 94)

II. MộT Số SƠ Đồ CƠ BảN Để XĐY DựNG MÂY SUY DIễN

b.BACKDIAGRAM 3: sơ đồ mây suy diễn kiểu Prolog

Sơ đồ mây BACKDIAGRAM3 sử dụng câc tri thức kiểu suy diễn lùi vă ưu tiín theo độ sđu. Sơ đồ năy không thiết lập câc sự kiện mới mă chỉ đơn giản lă biến đổi PBS, danh sâch có thứ tự câc sự kiện đang còn phải thiết lập. Do không bao giờ lấy ra câc sự kiện đê thiết lập, nín câch hoạt động của mây lă đơn điệu. Mặt khâc, do câc trạng thâi trước của PBS có thể được khôi phục (quay lui), mây hoạt động theo chế độ thăm dò.

Giai đoạn SELECTION/RESTRICTION nhằm tập trung sử dụng câc tri thức (luật vă sự kiện) đối với phần tử đầu tiín của PBS. Tuỳ theo sự quay lui của mây, trạng thâi của PBS có thể xâc định được.

Ngôn ngữ thể hiện tri thức cho trong hình 3.16 vă được sử dụng trong sơ đồ mây BACKDIAGRAM3 tương tự ngôn ngữ Prolog. Câc biểu thức biểu diễn tri thức lă những «mệnh đề Horn». Chú ý rằng thông thường, câc hệ chuyín gia chỉ thừa nhận câc biến trong câc luật, mă không thừa nhận câc biến trong câc sự kiện như trong hai ví dụ trín.

Việc tạo sinh câc kết quả hợp giảiưu tiín theo độ sđucó thể dẫn đến vòng lặp, nhưng có thể trânh được trong chiến lược ưu tiín theo chiều rộng. Chẳng hạn, vòng lặp gđy ra bởi chiến lược ưu tiín theo độ sđu : nếu ta thím phần tử C9 văo cuối danh sâch câc tri thức KNOWLEDGESBASE như sau :

C9 : SON (x, y) FATHER (y, x)

Vă nếu xĩt lại băi toân GRANDFATHER (u, pierre) ở ví dụ 2, mây sẽ âp dụng vô hạn lần câc luật C6C9C6C9...

Procedure JUSTIFY (PROBLEMSTACK, REMAININGBASE, aproblem,

aknowledge, theconclusion, substitu1, substitu2, theproblems) 1. if PROBLEMSTACK =then return danh sâch rỗng

2. if REMAININGBASE =then ‘failure’

3. APROBLEMphần tử đầu tiín của PROBLEMSTACK 4. AKNOWLEDGEphần tử đầu tiín của REMAININGBASE

(tuỳ theo phĩp hợp nhất tín biến có thể thay đổi)

5. THECONCLUSIONphần kết luận của AKNOWLEDGE

6. SUBSTITU1UNIFICATION (APROBLEM, THECONCLUSION) 7. if SUBSTITU1‘failure’ then

7.1 begin

7.2 THEPROBLEMSđặt có thứ tự câc phần tử của PROBLEMSTACK khâc APROBLEM văo cuối danh sâch câc tiền đề của AKNOWLEDGE với việc âp dụng liín tiếp câc phĩp hợp nhất của danh sâch có thứ tự SUBSTITU1 cho biểu thức trước đó của THEPROBLEMS

7.3 SUBSTITU2JUSTIFY (THEPROBLEMS, KNOWLEDGESBASE)

7.4 if SUBSTITU2‘failure’ then return danh sâch nhận được bằng câch thay thế câc phần tử của SUBSTITU2 theo thứ tự văo cuối của SUBSTITU1

7.5 end

8. REMAININGBASEREMAININGBASE{AKNOWLEDGE} 9. JUSTIFY (PROBLEMSTACK, REMAININGBASE)

Một phần của tài liệu Giáo trình: Hệ chuyên gia doc (Trang 93 - 94)