Sơ đồ BACKDIAGRAM− 1: sản sinh câc băi toân con theo chiều sđu

Một phần của tài liệu HeChuyenGia (Trang 79 - 81)

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

a. Sơ đồ BACKDIAGRAM− 1: sản sinh câc băi toân con theo chiều sđu

Mây suy diễn BACKDIAGRAM−1 cho trong hình 3.9. dưới đđy gồm bốn thủ tục lă SETUP-A-FACT, SETUP1, SETUP2 vă FACTS-CONJUNCTION-SETUP.

Mây được khởi động bằng câch gọi một trong câc thủ tục SETUP-A-FACT hay FACTS- CONJUNCTION-SETUP. Chẳng hạn, để thiết lập Q, ta có lời gọi : SETUP-A-FACT(‘Q’).

Thủ tục BACKDIAGRAM−1 tạo ra sự suy diễn lùi của câc luật bằng câch so sânh phần kết luận của câc luật với câc sự kiện cần thiết lập tại thời điểm đang xĩt. Đối với BACKDIAGRAM−1, phần kết luận của câc luật (thănh phần bín phải) lă phần khởi động của chúng. Chú ý rằng tại mỗi thời điểm, thủ tục duy trì tập hợp câc sự kiện cần thiết lập.

Ví dụ, lúc đầu, khi gọi SETUP-A-FACT(‘Q’), tập hợp câc sự kiện cần thiết lập chỉ chứa Q. Nếu luật 2 được sử dụng vă được khởi động thì sự kiện cần thiết lập Q sẽđược thay thế

bởi I, J vă L. Người ta nói rằng I, J vă L lă những băi toân con của băi toân Q hay băi toân Q lă cha của câc băi toân I, J vă L.

procedure SETUP-A-FACT (FACT)

1. if FACT in FACTSBASE then return ‘success’ 2. return SETUP1 (FACTSBASE)

procedure SETUP1 (RULES) 1. if RULES = ∅ then return ‘failure’

2. ARULE ← chọn một luật năo đó từ RULES (chẳng hạn luật gặp đầu tiín) 3. RULES ← RULES − { ARULE }

4. if (FACT in ARULE.conclusion) then

if SETUP2 (ARULE) = ‘success’ then return ‘success’ 5. return SETUP1 (RULES)

procedure SETUP2 (RULE, THEFACTS) 1. THEFACTS ← { F | F in ARULE.premise }

2. return FACTS-CONJUNCTION-SETUP (THEFACTS) procedure FACTS-CONJUNCTION-SETUP (FACTS) 1. if FACTS = ∅ then return ‘success’

2. AFACT ← chọn một sự kiện năo đó từ FACTS (chẳng hạn luật gặp đầu tiín)

3. FACTS ← FACTS − { AFACT }

4. if SETUP-A-FACT (AFACT) = ‘failure’ then return ‘failure’ 5. return FACTS-CONJUNCTION-SETUP (FACTS)

Hình 3.9. Sơđồ mây BACKDIAGRAM1

Ta gọi câc băi toân ban đầu ở mức 0 vă câc băi toân mă một cha của chúng lă ở mức n, còn câc cha khâc có thể ở mức nhỏ hơn hoặc bằng n. Để thiết lập một sự kiện Q, BACKDIAGRAM−1 tạo sinh vă giải câc băi toân con tuỳ theo một chiến lược lă trường hợp

đặc biệt của họ câc chiến lược ưu tiín theo chiều sđu : thủ tục sẽ giải câc băi toân con có mức

Phđn biệt giữa khởi động một luật vă rút ra kết luận của một luật

Khi một luật được sử dụng để thiết lập một sự kiện có mặt trong phần kết luận xuất phât từ câc sự kiện có mặt trong phần tiền đề, giả sửđê được thiết lập, người ta nói rằng đê rút ra kết luận của một luật.

Khi một luật được sử dụng theo kiểu suy diễn lùi để thay thế câc sự kiện có mặt trong phần tiền đề bởi sự kiện có mặt trong phần kết luận, người ta nói rằng đê khởi động một luật. Vấn đề lă không nín nhầm lẫn việc khởi động một luật vă rút ra kết luận của một luật.

Ví dụ hoạt động của thủ tục BACKDIAGRAM−1

Ta tiếp tục xĩt cơ sở sự kiện vă luật đê cho trong ví dụở hình 3.2. Để có thể thiết lập sự

kiện Q, người ta khởi động mây BACKDIAGRAM−1 bởi lời gọi SETUP-A-FACT (‘Q’).

Đồ thị câc băi toân con dưới đđy biểu diễn hoạt động của mây :

Hình 3.10. Đồ thị câc băi toân con thiết lập Q của mây BACKDIAGRAM1

Khi luật 2 được khởi động, dẫn đến câc sự kiện J, L vă I cần được thiết lập. Trước tiín, sự

kiện I được xem xĩt, từđó luật 1 được khởi động dẫn đến câc sự kiện M, L vă K. Mặc dù sự

kiện K được thiết lập, nhưng không có luật năo chứa L hay M trong phần khởi động, nín sự

kiện cần được thiết lập lại quay trở lại I. Do không có luật năo chứa I trong phần khởi động, sự kiện cần được thiết lập bđy giờ quay trở lại Q. Luật 4 được khởi động, dẫn đến câc sự kiện A vă B. Do A đê được thiết lập, mây xem xĩt sự kiện cần được thiết lập B. Từđó, luật 3 được khởi động dẫn đến câc sự kiện C, D vă E. Do C, D vă E đê được thiết lập, luật 3 ngay lập tức

được ghi nhận : B được thiết lập vă do đó, Q được thiết lập.

Vị trí của BACKDIAGRAM−1 đối với chu kỳ cơ bản tổng quât

Do suy diễn lùi, việc khởi động một luật dẫn đến một sự kiện Q, lă sự kiện cần được thiết lập (hay giả thuyết cần truy cập, hay băi toân, hay đích) được thay thế bởi nhiều sự kiện khâc cần thiết lập, chẳng hạn L, N, O vă P.

Tuy nhiín, câc băi toân con không có mặt một câch tường minh (explicit) trong cơ sở sự

kiện : chúng chỉđược ghi nhớ trong quâ trình gọi thủ tục. Những băi toân con chưa được giải quyết lăm thănh một phần tiềm ẩn (implicit) trong cơ sở sự kiện mă câc sự kiện năy có vai trò xâc định lựa chọn câc luật sẽđược sử dụng cho chu kỳ tiếp theo.

Hình 3.11. dưới đđy biểu diễn quâ trình khởi động câc luật của thủ tục BACKDIAGRAM−1 bởi một đồ thị trạng thâi để thiết lập Q.

E * D * C * M * L * * K Luật 3 Luật 1 = = (khởi động 4) (khởi động 2) * B * A * J * L * I Luật 4 Luật 2 = = (khởi động 3) (khởi động 1) * Q

Mây suy diễn 81 Phần bín phải của mỗi ô tương ứng với phần tường minh của cơ sở sự kiện, gồm câc sự

kiện đê thiết lập. Phần bín trâi tương ứng với phần ẩn, gồm câc sự kiện cần thiết lập hay câc băi toân chưa được giải quyết, được in chữđậm trong hình). Câc kết luận cuối cùng kĩo theo bởi câc luật 3 rồi 2 không được biểu diễn trong hình.

Hình 3.11. Đồ thị trạng thâi thiết lập Q của BACKDIAGRAM1

Trong BACKDIAGRAM−1, giai đoạn RESTRICTION trước tiín được cụ thể hoâ bởi sự

phđn biệt giữa một bín lă câc sự kiện đê thiết lập vă một bín lă câc băi toân. Chỉ có câc băi toân lă được so sânh với câc luật, để có thể khởi động chúng. Nghĩa lă việc RESTRICTION một mặt văo lúc đầu của mỗi chu kỳ cơ bản, chỉđến băi toân phải được giải quyết trong chu kỳ năy vă một mặt, thu hẹp tập hợp câc luật cần sử dụng (lệnh 3 của thủ tục SETUP1).

Về nguyín tắc, băi toân năy sẽđược xem xĩt trong số câc băi toân xuất hiện từ chu kỳ

trước đó (lệnh 2 của FACTS-CONJUNCTION-SETUP, hình 3.9), loại trừ hai trường hợp sau :

− Mọi băi toân xuất hiện từ chu kỳ trước đó bđy giờ được coi lă đê thiết lập (trả về

thông bâo ‘success’ bởi lệnh 1 rồi lệnh 5 của thủ tục FACTS-CONJUNCTION- SETUP). Trong trường hợp năy, băi toân đê lăm khởi động một luật ở chu kỳ trước đó

được coi lă đê thiết lập (trả về lần cuối cùng thông bâo ‘failure’ bởi thủ tục SETUP- A-FACT).

− Có thể xảy ra rằng một băi toân xuất hiện từ chu kỳ trước đó không thểđược thiết lập (không thực hiện thủ tục FACTS-CONJUNCTION-SETUP do lệnh 4). Trong trường hợp năy, băi toân đê lăm khởi động chu kỳ trước đó vẫn còn phải được thiết lập (trả

về lần cuối cùng thông bâo ‘failure’ bởi thủ tục SETUP-A-FACT).

Trong cả hai trường hợp, về nguyín tắc, việc RESTRICTION sẽđưa đến một băi toân lấy từ chu kỳ trước trực tiếp vă cứ thế tiếp tục.

Thủ tục BACKDIAGRAM−1 dừng, hoặc do tất cả câc băi toân lúc đầu được coi lă đê

được thiết lập, hoặc do một trong chúng không thểđược thiết lập.

Tuy nhiín, BACKDIAGRAM−1 có thể không bao giờ dừng, nếu ta thím văo cơ sở luật RULESBASE ở ví dụ (hình 3.2) một luật thứ 10 lă Q → L.

Câc bước GIẢI_QUYẾT_TRANH_ CHẤP vă FILTERING trong chu kỳ cơ bản của BACKDIAGRAM−1 đan xen nhau trong câc lệnh từ 1 đến 4 của thủ tục SETUP1. Giai đoạn EXECUTION được biểu diễn bởi thủ tục SETUP2.

Một phần của tài liệu HeChuyenGia (Trang 79 - 81)

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

(135 trang)