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

BÁO cáo hệ cơ sở TRI THỨC đề tài NGÔN NGữ JESS

24 2,1K 1

Đ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 24
Dung lượng 1,15 MB

Nội dung

BÁO CÁO HỆ CƠ SỞ TRI THỨC ĐỀ TÀI: NGÔN NGữ JESS NỘI DUNG TRÌNH BÀY • Sơ lược về Jess • Biểu diễn tri thức • Động cơ suy diễn • Giải quyết xung đột SƠ LƯỢC VỀ JESS • Jess là viết tắt của Java Expert System Shell • Jess là một công cụ quy tắc ra đời vào năm 1995 được viết hoàn toàn bằng Java dựa trên nền tảng của Clip bởi Ernest Friedman-Hill tại Sandia National Laboratories ở Canada • Jess thích hợp với Java: có thể gọi hàm API Java từ Jess và ngược lại. • Jess là một phiên bản nâng cao của thuật toán RETE. SƠ LƯỢC VỀ JESS Jess là một công cụ hệ thống chuyên gia bởi vì nó là một môi trường hoàn chỉnh cho phát triển hệ thống chuyên gia bao gồm: một trình soạn thảo tích hợp và một công cụ gỡ rối. Jess sử dụng cú pháp giống như Lisp sử dụng dấu ngoặc đơn thay dấu phân cách. Cấu trúc dữ liệu cơ bản là danh sách. Có thể truy cập JavaBean Tri thức được biểu diễn theo dạng IF-THEN SƠ ĐỒ KIẾN TRÚC JESS WORKIN G MEMORY RULE BASE INFERENC E ENGINE PATTER MATCHER AGENDA EXECUTION ENGINE CÁC KHÁI NIệM CƠ BảN atom atom ký tự, số và $*=+/<>_?#. Trường hợp ngoại lệ số, chuỗi ký tự, comments (;) 3 atom đặc biệt là nil, true, false lists lists đơn vị cơ bản của cú pháp trong Jess( a b c), variables variables (?) + atoms : ?x multivariable multivariable $+ variable: $?y (defrule example (grocery-list $?list) => (printout t "i need to buy " $?list crlf)) jess> (assert (grocery-list eggs milk bacon)) global variable global variable : ?*x* or ?*all-values* BIẾN VÀ DANH SÁCH • Tất cả là danh sách trong Jess • Ví dụ: cộng 2 số • (bind ?x 2) ; assign x = 2 • (bind ?y 3) ; assign y = 3 • (bind ?result (+ ?x ?y)) ; find sum DANH SÁCH HỢP LỆ TRONG JESS • (a b c) ; list of tokens • (1 2 3) ; list of integers • (+ 2 3) ; an expression • (“hello world!”) ; a string • (foo ?x ?y) ; a function call HÀM Hàm là một đoạn mã thực thi xác định bởi một tên cụ thể, mà trả về một giá trị hữu ích hoặc thực hiện một hiệu ứng phụ hữu ích (deffunction get-input() “get user input from console.” //được người dùng nhập vào từ giao diện điều khiển (bind ?s (read)) (return ?s)) (printout )// lệnh xuất ra BIểU DIễN Sự KIệN TRONG JESS (Bộ NHớ LÀM VIệC) • Sự kiện trong Jess được biểu diễn bằng bộ ba: O-A-V (Đối tượng – Thuộc tính – Giá trị) • Một đối tượng có thể có một hoặc nhiều thuộc tính với các kiểu giá trị khác nhau • Một thuộc tính cũng có thể có một hay nhiều giá trị. Chúng được gọi là các sự kiện đơn trị (single -valued) hay đa trị (multi-valued) => Linh động trong việc biểu diễn các tri thức cần thiết LẬP LUẬN KHẲNG ĐỊNH • Cơ sở lập luận lưu trữ các điều kiện ban đầu ;; Asserting a new “pattern” fact. (printout t “enter pattern name:” crlf) (bind ?x getinput) (assert pattern (name ? x)) LẬP LUẬN MỜ • Lập luận mờ không sắp xếp các lập luận có vùng tương ứng với các thuộc tính của JavaBean • defclass – tạo ra 1deftemplate từ 1 bean. • definstance – thêm 1 bean vào bộ nhớ làm việc. [...]... để kéo dữ liệu vào Jess từ một cơ sở dữ liệu yêu cầu  Để sử dụng cơ chế suy diễn lùi trong Jess trước tiên phải khai báo các mẫu sự kiện để phản ứng suy diễn lùi sử dụng hàm do-backward-chaining  Khai báo các luật sau cho phù hợp với các sự kiện  Khá phức tạp JESS LÀM VIỆC NHƯ THẾ NÀO? • Jess so khớp sự kiện trên cơ sở quy tắc • Các quy tắc chứa các lời gọi hàm thao tác trên cơ sở thực tế and/or... Đặc trưng Jess foreach apply if/then/else build while eval progn DEFTEMPLATE • Được sử dụng để định nghĩa cơ sở lập luận (deftemplate pattern “a design pattern.” (slot name) (slot type (default “creation”)) (slot intent) (slot solution)) LUẬT/ QUY TẮC • Là những cơ sở tri thức của hệ thống có thể thực hiện hành động dựa trên nội dung của sự kiện • Khai hỏa chỉ một lần trên tập các cơ sở lập luận... tắc ĐộNG CƠ SUY DIỄN Jess hỗ trợ 2 cơ chế suy diễn là suy diễn tiến và suy diễn lùi Trên thực tế thì suy diễn tiến được sử dụng phổ biến hơn  Suy diễn tiến o Khi tất cả các tiền đề được thỏa thì hành động sẽ được kích hoạt Ví dụ: Jess> (assert (human Socrates)) Jess> (defrule mortal (human ?X) => (assert (mortal ?X))) Jess> (watch facts) Jess> (run) ==> f-1 (MAIN::mortal Socrates) 1 ĐỘNG CƠ SUY DIỄN...BIỂU DIỄN TRI THỨC Luật/Quy tắc: chủ yếu dành cho kiến thức heuristic dựa trên kinh nghiệm Hàm: dành cho kiến thức thủ tục Lập trình hướng đối tượng: chủ yếu dành cho kiến thức thủ tục Các tính năng được hỗ trợ: lớp, thông điệp xử lý, trừu tượng, đóng gói, thừa kế và đa hình ĐỘNG CƠ SUY DIỄN Pattern matcher(tương hợp mẫu): quyết định quy tắc... trên nội dung của sự kiện • Khai hỏa chỉ một lần trên tập các cơ sở lập luận • Sử dụng mô hình ràng buộc để phù hợp cơ sở lập luận • Sử dụng nhanh hơn câu lệnh If-Then CÚ PHÁP ĐỂ BIỂU DIỄN QUY TẮC • Luật/ quy tắc có “tay trái” (LHS) và “tay phải” (RHS) • LHS chứa các cơ sở lập luận phù hợp với vùng nhất định • RHS chứa các lời gọi hàm • ĐƠN GIẢN • Kiểm tra trạng thái bộ nhớ làm việc... chuyền lùi AGENDA • Chứa tập các quy tắc ưu tiên • Jess thực hiện các hành động ở bên phải của các ưu tiên cao nhất Quá trình này tiếp tục cho đến khi không được kích hoạt hoặc gặp 1 lệnh dừng lại jess> (agenda) [activation: main::duck f-0 ; time=2 ; salience=0] for a total of 1 activations jess> • Mỗi luật chỉ được khai hỏa 1 lần GIẢI QUYẾT XUNG ĐỘT Jess cung cấp 2 chế độ khác nhau để giải quyết xung... luật được “khai hỏa” theo một trật tự nó được kích hoạt ƯU NHƯợC ĐIểM Ưu điểm • Dễ dàng mở rộng với các lệnh mới • Dễ học và sử dụng • Jess nhanh hơn một số hệ thống shell chuyên gia viết bằng C • Jess có môi trường mã Java Nhược điểm • Đòi hỏi không gian bộ nhớ lớn JESS call Java CảM ƠN THầY VÀ CÁC BạN ĐÃ LắNG NGHE! . BÁO CÁO HỆ CƠ SỞ TRI THỨC ĐỀ TÀI: NGÔN NGữ JESS NỘI DUNG TRÌNH BÀY • Sơ lược về Jess • Biểu diễn tri thức • Động cơ suy diễn • Giải quyết xung đột SƠ LƯỢC VỀ JESS • Jess là viết. những cơ sở tri thức của hệ thống có thể thực hiện hành động dựa trên nội dung của sự kiện • Khai hỏa chỉ một lần trên tập các cơ sở lập luận • Sử dụng mô hình ràng buộc để phù hợp cơ sở lập. vào Jess từ một cơ sở dữ liệu yêu cầu.  Để sử dụng cơ chế suy diễn lùi trong Jess trước tiên phải khai báo các mẫu sự kiện để phản ứng suy diễn lùi sử dụng hàm do-backward-chaining.  Khai báo

Ngày đăng: 09/10/2014, 22:31

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w