Tải bản đầy đủ (.pptx) (103 trang)

Đề tài CHƯƠNG 2 RULE BASED EXPERT SYSTEMS

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (797.82 KB, 103 trang )



ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH

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

  
 

KHOA: KHOA HỌC MÁY TÍNH
BÀI BÁO CÁO ĐỒ ÁN
MÔN HỆ CƠ SỞ TRI THỨC

Đề tài:

CHƯƠNG 2:
RULE-BASED EXPERT SYSTEMS
         Giáo viên hướng dẫn:  PHẠM THI VƯƠNG
  nhóm 2


Hệ chuyên gia dựa trên luật
-Lựa chọn phổ biến nhất cho việc xây dựng hệ thống nền tảng tri thức đó là: hệ thống dựa vào chỉ
dẫn chun mơn (các luật chuyên môn).

-Chương 2 tập trung vào cách biểu diễn tri thức d ựa trên tập lu ật và c ơ ch ế suy di ễn lu ật.


 2.1 Giới Thiệu,Tri

thức là gì?



 -Trong những năm 1970,cuối cùng người  ta đã chấp nhận rằng có thể làm cho máy tính 
giải quyết một tri thức,một vấn đề đã có giải pháp. Nói cách khác, nó có thể có tri thức, 
cách thức nhận biết, trong một số lĩnh vực cụ thể.


Tri thức là gì?
 -Tri thức là một sự hiểu biết về lý thuyết hoặc thực tế về một chủ đề, hoặc lĩnh vực.
-Tri  thức là tổng hợp của những  kiến thức hiện đang  được biết đến, và dường như kiến thức là 
sức mạnh. Những người có tri   thức được gọi là các chun gia. Họ là những người mạnh 
mẽ và quan trọng nhất trong các tổ chức của họ. Bất kỳ thành cơng cơng ty có ít nhất một 
vài đóng góp đáng kể của các chun gia và khơng thể duy trì trong kinh doanh mà khơng 
có họ.


Những ai được cơng nhận là một chun gia?
-Bất cứ ai cũng có thể được coi là một chun gia nếu họ có kiến thức sâu rộng  và kinh nghiệm 
thực tế trong một lĩnh vực cụ thể. Trong mỗi lĩnh vực đều có giới hạn riêng của nó. Ví dụ, các 
chun gia trong các nhà máy điện chỉ có thể có kiến thức chung về máy biến áp, trong khi các 
chun gia trong  tiếp thị bảo hiểm cuộc sống có thể có sự hiểu biết hạn chế của một chính 
sách bảo hiểm bất động sản. Nói chung, một chun gia là một người khéo léo có thể làm 
những điều người khác khơng  làm được.


Các chun gia suy nghĩ như thế nào?
 -Những suy nghĩ của con người  là cả một q trình xảy ra trong nội tâm, và nó là q phức tạp để 
được gọi  là một thuật tốn. Tuy nhiên, hầu hết các chun gia có khả năng thể hiện kiến thức 
của họ trong các khng khổ các Luật cho việc  giải quyết một vấn đề. 
   Hãy xem xét một ví dụ đơn giản: Hãy tưởng tượng  bạn gặp một người nước ngồi ! Ơng muốn 
vượt qua một con đường. Bạn có thể giúp anh ta? Bạn là một chun gia trong lĩnh vực đường 

bộ cắt ngang - bạn đã được vào cơng việc này trong nhiều năm. Vì vậy bạn có thể dạy cho 
người nước ngồi. Làm thế nào bạn làm điều này?


 -Cách giải quyết: 
Bạn giải thích để người nước ngồi rằng ơng có thể băng qua đường một cách an tồn khi đèn 
giao thơng là màu xanh lá cây, và ơng phải dừng lại khi đèn giao thơng màu đỏ. Đây là những 
Luật cơ bản.
Kiến thức của bạn có thể được xây dựng như các câu lệnh đơn giản sau đây: 
     IF the ‘traffic light’ is green //Nếu là đèn xanh thì hành động đi
     THEN the action is go
     IF the ‘traffic light’ is red //Nếu là đèn đỏ thì hành động dừng lại
     THEN the action is stop 


- Các câu lệnh đại diện dưới hình thức IF-THEN được gọi để biểu diễn các Luật. Thuật ngữ " rule" 
trong AI, là loại được sử dụng phổ biến nhất đại diện tri thức, có thể được định nghĩa là một 
cấu trúc IF-THEN có liên quan cung cấp thơng tin hoặc điều kiện trong phần IF và để một số 
hành động trong phần THEN. Một ngun tắc cung cấp một số mơ tả làm thế nào để  giải 
quyết một vấn đề. Quy định tương đối dễ dàng tạo ra và hiểu.


 2.2

Luật Biểu Diễn Phương Pháp Tri Thức

-Bất kỳ Luật bao gồm hai phần: phần IF, được gọi là các tiên quyết (tiền đề hoặc điều kiện) và một 
phần THEN được gọi là hệ quả (kết luận, hành động).
Cú pháp cơ bản của một Luật là:
IF<antecedent>

THEN <consequent>
Nói chung, một Luật có thể có nhiều tiền đề gia nhập bởi các từ khố AND(kết hợp), OR 
(hoặc) hoặc kết hợp cả hai. Tuy nhiên, đó là 1 thói quen tốt để tránh được sự pha trộn giữa sự 
kết hợp và chia rẽ trong cùng 1 quy luật.


 - Các tiền đề của 1 Luật :
IF <antecedent 1>
AND <antecedent 2>
.
.
.
AND <antecedent n>
THEN <consequent>
IF <antecedent 1>
OR <antecedent 2>
.
.
.
OR <antecedent n>
THEN <consequent>
 
Các hệ quả quả của một Luật cũng có thể có nhiều mệnh đề:
IF <antecedent>
THEN <consequent 1>
<consequent 2>
.
.
.
<consequent m>



 -Tiền đề ( antecedent ) của một Luật kết hợp hai phần: một đối tượng (ngơn ngữ đối tượng)
và giá trị của nó. Trong ví dụ qua đường, đèn giao thơng, các đối tượng ngơn ngữ có thể có 
một trong hai giá trị màu xanh lá cây hoặc màu đỏ. Các đối tượng và giá trị của nó được gán 
bởi một tốn tử. Tốn tử xác định các đối tượng và gán giá trị.
-Các tốn tử như  is, are, is not, are not được sử dụng để gán một giá trị tượng trưng cho một ngơn 
ngữ đối tượng. Tuy nhiên, hệ thống chun gia cũng có thể sử dụng tốn tử số học định nghĩa 
đối tượng số và gán cho nó giá trị bằng số.


. Ví dụ:
     IF ‘age of the customer’ < 18   //Nếu tuổi của khách hàng <18 và rút số tiền >1000
     AND ‘cash withdrawal’ > 1000                       
     THEN ‘signature of the parent’ is required  //Thì u cầu chữ kí phụ huynh


-Tương tự như Luật tiền đề, hệ quả kết hợp một đối tượng và giá trị kết nối bởi một tốn tử. 
Tốn tử gán giá trị cho các đối tượng ngơn ngữ.Trong ví dụ qua đường, nếu giá trị của 
đèn giao thơng màu xanh lá cây, Luật đầu tiên thiết lập Luật hành động đối tượng ngơn 
ngữ giá trị đi. Số đối tượng và thậm chí đơn giản biểu hiện số học cũng có thể được sử 
dụng trong một Luật hệ quả.
 
      IF ‘taxable income’ > 16283     //Nếu có thu nhập chịu thuế > 16283

      THEN ‘Medicare levy’ ¼ ‘taxable income’ 1.5 / 100    //Thì chịu thuế 1.5% ....


Có các loại qui tắc như: quan hệ, kiến nghị, chỉ thị, chiến lược và chẩn đốn (Durkin, 1994).
// Relation    Quan Hệ

IF the ‘fuel tank’ is empty     //Nếu bình chưa xăng xe hết xăng
THEN the car is dead   //Xe khơng đi được

// Recommendation     Khuyến cáo
IF the season is autumn         //Nếu đang là mùa thu,trời nhiều mây và
AND the sky is cloudy                                                                               
AND the forecast is drizzle    // dự báo có mưa phùn
THEN the advice is ‘take an umbrella’      //Thì nhớ mang theo dù

//Directive     Hướng dẫn 
IF the car is dead         //Nếu xe chết,bồn chưa xăng khơng cịn xăng 
AND the ‘fuel tank’ is empty
THEN the action is ‘refuel the car’   //Thì nộp nhiên liệu


Strategy        //Chiến lược
IF the car is dead      //Nếu xe chết thì kiểm tra bình xăng.
THEN the action is ‘check the fuel tank’;   
step1 is complete     //Bước 1 hồn tất
IF step1 is complete  //Nếu bước 1 hồn tất và bình xăng cịn đầy
AND the ‘fuel tank’ is full                                  
THEN the action is ‘check the battery’; //Thì kiểm tra pin
step2 is complete      //Bước 2 hồn tất

Heuristic         //Chẩn đốn
IF the spill is liquid   //Nếu vụ tràn dầu là chất lỏng và pH<6 và có mùi dấm
AND the ‘spill pH’ < 6
AND the ‘spill smell’ is vinegar
THEN the ‘spill material’ is ‘acetic acid’  //Thì 'tràn nhiên liệu' là 'acid acetic'



 2.3 Các thành phần chính trong đội ngũ chuyên gia phát triển hệ thống:
-Ngay sau khi tri thức thức được cung cấp bởi một chun gia (con người) , chúng ta có 
thể nhập  nó vào một máy tính. Chúng ta hy vọng các máy tính để hoạt động như một 
trợ lý thơng minh trong một số lĩnh vực chun mơn cụ thể  hoặc để giải quyết một vấn 
đề mà nếu khơng sẽ phải nhờ giải quyết bởi một chun gia (con người).Chúng ta cũng 
muốn các máy tính có thể tích hợp tri thức mới và cho thấy tri thức của mình trong một 
hình thức dễ dàng để đọc và hiểu, và để xử lý những câu đơn giản trong một ngơn ngữ 
tự nhiên hơn là một ngơn ngữ lập trình nhân tạo. 


 - Cuối cùng, chúng ta muốn máy tính của chúng ta xử lý như thế nào đó để nó đạt đến một 
kết luận cụ thể. Nói cách khác, chúng ta phải xây dựng một hệ thống chun gia, một 
chương trình máy tính có khả năng thực hiện ở cấp độ của mộtchun gia (con người)  
trong một vấn đề nào đó.
  - Các  hệ thống chun gia phổ biến nhất là hệ thống dựa trên ngun tắc. Một số lượng 
lớn chúng được  xây dựng và áp dụng thành cơng trong các lĩnh vực như kinh doanh và 
kỹ thuật,y học và địa chất, hệ thống điện và khai thác mỏ. Một số lượng lớn các cơng ty 
sản xuất  phần mềm dựa trên ngun tắc phát triển hệ thống chun gia - vỏ hệ thống  
chun gia  cho máy tính cá nhân.


Một vỏ hệ thống chun gia là gì?
 - Một  vỏ hệ thống  chun gia có thể được  xem xét như một hệ thống chun gia chưa có 
các tri thức . Vì vậy, tất cả người dùng phải làm là thêm tri thức thức  trong khng khổ  
các Luật và cung cấp dữ liệu liên quan để giải quyết một vấn đề.
Bây giờ chúng ta nhìn vào những ai cần để phát triển một hệ thống chun gia và những 
kỹ năng là cần thiết.



 - Nói chung, có năm nhóm các chun gia tham gia phát triển hệ thống: các chun gia lĩnh 
vực, các kỹ sư tri thức, lập trình viên, quản lý dự án (manager) và người dùng cuối. Sự 
thành cơng của hệ thống chun gia của họ hồn tồn phụ thuộc  các thành viên làm 
việc cùng nhau như thế nào. Các mối quan hệ cơ bản trong các nhóm  phát triển được 
tóm tắt trong hình 2.1.



   -Các  chun gia lĩnh vực là một người có kiến   thức và tay nghề cao có khả năng  giải quyếtvấn đề trong 
một lĩnh vực cụ thể. Người có chun mơn lớn nhất trong một lĩnh vực nhất định.Các chun mơn này 
được đưa vào trong các hệ thống chun gia. Vì vậy,các chun gia phải có khả năng truyền đạt kiến 
thức của mình, sẵn sàng tham gia trong việc phát triển hệ thống chun gia và cam kết một số lượng 
đáng kể thời gian cho dự án. Các chun gia lĩnh vực  là thành phần quan trọng nhất trong phát triển đội 
ngũ chun gia hệ thống.


  -Các kỹ sư tri thức là một người có khả năng thiết kế, xây dựng và thử nghiệm một hệ 
thống chun gia. Người này có trách nhiệm lựa chọn một nhiệm vụ thích hợp cho các 
hệ thống chun gia. Họ phỏng vấn các chun gia lĩnh vực để tìm hiểu một vấn đề cụ 
thể được giải quyết như thế nào. Thơng qua tương tác  với các chun gia, kỹ sư tri thức 
thiết lập những phương pháp suy luận chun gia sử dụng  để xử lý các sự kiện và các 
Luật và quyết định làm thế nào để đại diện cho họ trong các hệ thống  chun gia. Các 
kỹ sư  tri thức sau đó chọn một số phần mềm phát triển hoặc một vỏ hệ thống  chun 
gia, hoặc nhìn vào ngơn ngữ lập trình để mã hóa kiến thức (và đơi khi mã hóa bản thân 
mình). Và cuối cùng, kỹ sư chịu trách nhiệm kiểm tra, rà sốt và tích hợp hệ thống 
chun gia vào nơi  làm việc. Vì vậy, các kỹ sư tri thức cam kết để dự án từ giai đoạn 
thiết kế ban đầu đến bước cuối cùng của hệ thống chun gia và giao lại cho khách 
hàng, và thậm chí cả sau khi dự án hồn thành, người đó cũng có thể được tham gia 
trong việc duy trì hệ thống.



  -Lập trình viên là người phụ trách cho lập trình,mơ tả tri thức thức về một lĩnh vực mà trong đó 
máy tính có thể hiểu được.
Lập trình viên cần phải có kỹ năng trong  lập trình AI với các ngơn ngữ như : LISP, Prolog và 
OPS5 và cũng có một số kinh nghiệm trong các loại ứng dụng  khác nhau của vỏ hệ thống 
chun gia. Ngồi ra, các lập trình viên nên biết các ngơn ngữ lập trình thơng thường  và cơ 
bản như  C, Pascal, FORTRAN.
Nếu một lớp vỏ được sử dụng hệ thống chun gia, kỹ sư có thể dễ dàng mã hóa kiến thức vào 
hệ thống chun gia và do đó loại bỏ sự cần thiết cho các lập trình viên.


  Tuy nhiên, nếu vỏ hệ thống chun gia khơng thể sử dụng được, một lập trình viên phải 
xây dựng tri thức và biểu diễn các cấu trúc dữ liệu (tri thức cơ bản và cơ sở dữ liệu), cơ 
cấu kiểm sốt cấu trúc (cơng cụ suy luận) và đối thoại (giao diện người dùng). Các lập 
trình viên cũng có thể được tham gia vào thử nghiệm hệ thống chun gia.


 - Người  quản lý dự án là người lãnh đạo của nhóm chun gia phát triển hệ thống, chịu 
trách nhiệm theo dõi cho các dự án.Anh ta hoặc cơ ta làm cho chắc chắn rằng tất cả 
những chuyển giao và sự kiện quan trọng được đáp ứng,tương tác với những kiến   thức, 
chun gia kỹ sư, lập trình và người dùng cuối.


×