Khởi tạo bộ nhớ lăm việc

Một phần của tài liệu GIÁO TRÌNH HỆ CHUYÊN GIA (Trang 110 - 112)

II. Hệ SảN XUấT OPS5

b. Khởi tạo bộ nhớ lăm việc

Hệ chuyín gia MYCIN vă ngôn ngữ OPS5 111

Để lập trình OPS5, người sử dụng cần khởi tạo bộ nhớ lăm việc WM gồm câc lớp dữ liệu vă câc sự kiện. Việc tạo ra WM ở giai đoạn năy được gọi lă bước khởi tạo (literalization section) cho một chương trình OPS5. Sau đó, sử dụng lệnh makeđể tạo ra câc phần tử nhớ

vận hănh.

Ví dụ, để khởi tạo WM với lớp dữ liệu hồ-sơ-xin-việc vừa được khai bâo trín đđy, ta khởi tạo câc giâ trị thuộc tính như sau :

( make hồ-sơ-xin-việc ↑ họ-lót hoăng-thị

↑ tín ngọ ↑ phâi nữ ↑ tuổi 21 ↑địa-chỉ 18-ong-ich-khiím-da-nang ↑ nghề-nghiệp giâo-viín ) Mỗi khi WM đê được khởi tạo, dùng lệnh : ( wm )

để xem nội dung của WM. Để xoâ nội dung của WM, gọi lệnh :

( remove )

Do OPS5 lăm việc ở chếđộ diễn dịch nín mỗi khi chương trình được tải văo shell OPS5, nội dung trước đó của WM bị xóa sạch sẽđểđược khởi tạo lại, ngay cả khi chạy lại cùng một chương trình. Khả năng năy lăm câc chương trình OPS5 chạy nhanh hơn vì mỗi chương trình chỉ lăm việc với một tập câc sự kiện đê được định nghĩa riíng.

OPS5 quan niệm rằng nếu như nội dung WM không được xóa sạch thì tất cả câc sự kiện vẫn còn tồn tại mỗi khi chạy chương trình. Khi đó, kết quả thu được có thể sai, hoặc xuất hiện lỗi chạy chương trình.

Tuy nhiín, người ta không khởi tạo WM ngay bín ngoăi shell OPS5 mă thường kết hợp khởi tạo WM bằng lệnh make ngay trong câc luật của chương trình vì điều năy sẽ tạo ra một lượng lớn câc sự kiện đầy đủ phong phú chứ không hạn chế gõ từng lệnh, khởi tạo từng sự

kiện một ở ngoăi shell OPS5.

II.3. Lăm vic vi OPS5

II.3.1.Hot động ca mây suy din

Mây suy diễn OPS5 hoạt động như sau. Đầu tiín, câc sự kiện về băi toân do người sử

dụng cung cấp được thu nhận đểđặt văo bộ nhớ lăm việc WM. Sau đó, mây suy diễn tựđộng so khớp câc thănh phần bín trâi luật với câc sự kiện lưu trữ trong WM để quyết định luật năo sẽ sử dụng. Sau khi đê xâc định được luật, mây sẽ thực hiện câc hănh động trong phần bín phải luật đó. Mây suy diễn sẽ tiếp tục vòng lặp của mình với câc luật kế tiếp cho đến khi không còn luật năo trong chương trình nữa. Nói câch khâc, khi không còn gì để so khớp nữa, mây suy diễn sẽ ngừng vă chương trình kết thúc tại đó.

Sơđồ hoạt động của mây suy diễn như sau :

Begin { Inference Engine }

Nhập dữ liệu văo bộ nhớ lăm việc WM

While Chưa hết luật Do Begin

Lấy một luật tiếp theo

So khớp câc thănh phần bín trâi luật với câc phần tử của WM

If So khớp thănh công

Then Thực hiện câc lệnh bín phải của luật đó

EndIf End

112 Hệ chuyín gia

End { Monitor }

II.3.2.Tp xung đột vă câch gii quyết xung đột

Thông thường, một chương trình OPS5 chỉ cho phĩp một luật được sử dụng trong suốt một vòng lặp của mây suy diễn. Nhưng vấn đề đặt ra lă không phải lúc năo mây suy diễn cũng chỉ tìm thấy một luật duy nhất. Trong một số trường hợp, mây suy diễn có thể tìm thấy nhiều luật mă có câc thănh phần bín trâi so khớp phù hợp với câc sự kiện trong WM. Khi gặp tình huống như vậy, mây suy diễn phải lựa chọn một luật phù hợp nhất để sử dụng. Có thể

tóm tắt quâ trình hoạt động của mây suy diễn qua bốn bước lặp sau đđy : 1. Mây suy diễn lọc toăn bộ tập hợp câc xung đột.

2. Nếu :

• tập hợp câc xung đột lă rỗng, hoặc nếu :

• một số lượng tối đa câc chu kỳđê được thực hiện, hoặc nếu :

• luật sử dụng trước đó lă một điểm dừng hoặc chứa lệnh dừng halt nằm bín phải luật,

Thì dừng mây suy diễn.

3. Nếu không, chọn một luật năo đó trong tập hợp câc xung đột tuỳ theo chiến lược giải quyết xung đột đang âp dụng.

4. Sử dụng luật đê chọn : thực hiện câc lệnh nằm bín phải luật.

Ở bước 3, một nhóm câc luật có câc thănh phần bín trâi được mây suy diễn so khớp phù hợp với WM được gọi lă tập xung đột (conflict set). Sau khi tập xung đột được tạo ra, bước tiếp theo, mây suy diễn cần chọn một luật để thực hiện bằng câch sử dụng một trong hai

chiến lược giải quyết xung đột (conflict resolution strategy) lă LEX (LEXicographical ordering) vă MEA (Means-Ends Analysis).

Câc chiến lược giải quyết xung đột LEX vă MEA sử dụng một thẻ thời gian (time tag, đôi khi còn được gọi lă thẻ tiếp cận, access tag) lă một con số gắn cho một phần tử của WM. Số

năy có nghĩa khi một phần tử của WM được tạo ra hay vừa mới được sửa đối.

Một phần của tài liệu GIÁO TRÌNH HỆ CHUYÊN GIA (Trang 110 - 112)

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

(135 trang)