Một số mô hình kiến trúc hệ chuyên gia

Một phần của tài liệu Mô hình hệ chuyên gia và xây dựng chương trình ứng dụng (Trang 32)

2.5.1. Mô hình kiểu mẫu

Hình 2.3: Mô hình kiểu mẫu

Người sử dụng

Bộ giải thích

Bộ nhớ làm việc Cơ sở tri thức Mô tơ suy diễn

Suy diễn Điều khiển Giao diện

người, máy Bộ thu nạp tri thức

Chuyên gia con người

27

- Giao diện người, máy: Thực hiện giao tiếp giữa hệ chuyên gia và người sử dụng. Nhận các thông tin từ người dùng (các câu hỏi, các yêu cầu về lĩnh vực) và đưa ra các lời khuyên, các câu trả lời, các cách giải thích về lĩnh vực đó.

- Bộ giải thích: Giải thích các hoạt động của hệ khi có yêu cầu của người sử dụng.

- Bộ thu nạp tri thức: Làm nhiệm vụ thu nhận tri thức từ chuyên gia con người, từ kỹ sư tri thức và cả người sử dụng thông qua các câu hỏi và yêu cầu của họ, sau đó lưu trữ vào cơ sở tri thức.

- Cơ sở tri thức: Lưu trữ, biểu diễn các tri thức trong lĩnh vực mà hệ đảm nhận, làm cơ sở cho các hoạt động của hệ. Cơ sở tri thức bao gồm các sự kiện và các luật.

- Mô tơ suy diễn: Làm nhiệm vụ xử lý và điều khiển các tri thức được biểu diễn trong cơ sở tri thức nhằm đáp ứng các câu hỏi, các yêu cầu của người sử dụng.

- Để thực hiện được các công việc của các thành phần trên thì trong cấu trúc hệ chuyên gia phải có một hệ điều khiển và quản lý việc tạo lập, tích lũy

tri thức cho lĩnh vực hệ đảm nhận gọi là “Hệ quản trị cơ sở tri thức”. Hệ quản

trị cơ sở tri thức thực chất là quản lý và điều khiển công việc của bộ thu nạp tri thức, bộ giải thích, mô tơ suy diễn. Nó phải đảm bảo các yêu cầu:

- Giảm dư thừa tri thức, dữ liệu.

- Tính nhất quán và phi mâu thuẫn của tri thức. - Tính toàn vẹn và an toàn.

- Giải quyết các vấn đề cạnh tranh. - Chuyển đổi tri thức.

28

2.5.2. Mô hình J.L.Ermine

Hình 2.4: Mô hình J.L.Ermine

2.5.3. Mô hình C.Ernest

29

2.5.4. Mô hình E.V.Popov

Hình 2.6: Mô hình E.V.Popov

2.6. Mô tơ suy diễn 2.6.1. Cơ chế suy diễn 2.6.1. Cơ chế suy diễn a) Suy diễn tiến

- Suy diễn tiến là lập luận từ các sự kiện, sự việc để rút ra các kết luận.

Ví dụ: Nếu thấy trời mưa trước khi ra khỏi nhà (sự kiện) thì phải lấy áo mưa (kết luận).

- Trong phương pháp này, người sử dụng cung cấp các sự kiện cho hệ chuyên gia để hệ thống (máy suy diễn) tìm cách rút ra các kết luận có thể. Kết luận được xem là những thuộc tính có thể được gán giá trị. Trong số những kết luận này, có thể có những kết luận làm người sử dụng quan tâm, một số khác không nói lên điều gì, một số khác có thể vắng mặt. (adsbygoogle = window.adsbygoogle || []).push({});

- Các sự kiện thường có dạng: Attribute = Value

- Lần lượt các sự kiện trong cơ sở trí thức được chọn và hệ thống xem xét tất cả các luật mà các sự kiện này xuất hiện như là tiền đề. Theo nguyên

30

tắc lập luận trên, hệ thống sẽ lấy ra những luật thỏa mãn. Sau khi gán giá trị cho các thuộc tính thuộc kết luận tương ứng, người ta nói rằng các sự kiện đã được thỏa mãn. Các thuộc tính được gán giá trị sẽ là một phần của kết quả chuyên gia. Sau khi mọi sự kiện đã được xem xét, kết quả được xuất ra cho người sử dụng dùng.

Vecto suy diễn tiến

Các phương pháp suy diễn sẽ dần dần chuyển từ các giả thiết về kết luận, bằng cách thêm vào giả thiết các sự kiện đã được khẳng định là đúng, dựa trên 2 phương thức:

- Modus ponens: B B A A,  Nghĩa là nếu A đúng, AB đúng thì B cũng đúng. - Modus tollens: A B A B    ,

Nghĩa là nếu B sai, AB đúng thì A cũng sai.

Nói một cách khác, giả sử A, B, -A, -B là các sự kiện, trước khi áp dụng luật AB, ta có tập {A} (hoặc tập {B} tương ứng) thì sau khi thực hiện n luật ta sẽ có thêm {B} (hoặc{-A} tương ứng).

Kết quả là có tập sự kiện {A,B} (hoặc {-A,-B}) Ta có thể viết:

{A} AB {A,B}

{-B} AB {-A,-B}

Như vậy, quá trình suy diễn bắt đầu từ tập các giả thiết, làm nở dần dần bằng cách thêm vào các sự kiện mới cho đến khi một trong các kết luận cần chứng minh được thực hiện.

Chữ “tiến” ở đây sẽ được dùng với nghĩa với mỗi quy tắc luật AB, ta sẽ chuyển từ vế trái sang vế phải dấu .

31

Suy diễn tiến với logic mệnh đề:

Đầu vào:

 Tập các mệnh đề đã cho GT = {g1,g2,…,gm}

 Tập các luật RULE có dạng Horn: p1p2…pnq

 Tập các mệnh đề kết luận: KL = {q1,q2,…,qk} Đầu ra:

Thông báo thành công nếu mọi qi  KL có thể suy ra từ giả thiết GT nhờ sử dụng tập luật RULE.

Thuật toán:

Tgian là tập các sự kiện (mệnh đề) đúng trong thời điểm đang xét, ban đầu Tgian = GT.

Sat là tập luật có dạng p1p2…pnq sao cho

i = (i,n) pi Tgian {

Tgian = GT;

Sat = lọc (RULE,Tgian);

While KL Tgian and Sat  do

{

r get (Sat) ; (adsbygoogle = window.adsbygoogle || []).push({});

/*Lấy một luật khả hợp từ tập Sat, giả sử r có dạng p1p2…pnq */ TgianTgian  {q};

RULERULE \ {r};

Sat = lọc (RULE,Tgian);

};

If KL Tgian then exit (“thành công”) else exit (“không thành công”);

32

b) Suy diễn lùi

- Phương pháp suy diễn lùi tiến hành các lập luận theo chiều ngược lại (đối với phương pháp suy diễn tiến). Từ một giả thuyết (như là một kết luận), hệ thống đưa ra một tình huống trả lời gồm các sự kiện là cơ sở của giả thuyết đã cho này.

- Ví dụ: Nếu ai đó vào nhà mà cầm áo mưa và quần áo bị ướt thì giả

thuyết này là trời mưa. Để củng cố giả thuyết này, ta hỏi người đó xem “có phải trời mưa không?”. Nếu người đó trả lời là “có” thì giả thuyết trời mưa là

đúng và trở thành một sự kiện. Nghĩa là trời mưa nên phải cầm áo mưa và quần áo bị ướt.

- Suy diễn lùi là cho phép nhận được giá trị của một thuộc tính. Đó là

câu trả lời cho câu hỏi “giá trị của thuộc tính A là bao nhiêu?” với A là một

đích.

- Để xác định giá trị của A, cần có các nguồn thông tin. Những nguồn này có thể là những câu hỏi hoặc có thể là những luật. Căn cứ vào các câu hỏi, hệ thống nhận được một cách trực tiếp từ người sử dụng những giá trị của thuộc tính liên quan. Căn cứ vào các luật, hệ thống suy diễn có thể tìm ra giá trị sẽ là kết luận của một trong số các kết luận có thể của thuộc tính liên quan, …

- Ý tưởng của thuật toán suy diễn lùi như sau: Với mỗi thuộc tính đã cho, người ta định nghĩa nguồn của nó:

 Nếu thuộc tính xuất hiện như là tiền đề của một luật (phần đầu của luật), thì nguồn sẽ thu gọn thành một câu hỏi.

 Nếu thuộc tính xuất hiện như là hậu quả của một luật (phần cuối của luật), thì nguồn sẽ là các luật mà trong đó thuộc tính là kết luận.

 Nếu thuộc tính là trung gian, xuất hiện đồng thời như là tiền đề và như là kết luận, khi đó nguồn có thể là các luật hoặc có thể là các câu hỏi mà chưa được nêu ra.

33

- Nếu mỗi lần với câu hỏi đã cho, người sử dụng trả lời hợp lệ, giá trị trả lời này sẽ được gán cho thuộc tính và xem như thành công. Nếu nguồn là các luật, hệ thống sẽ lấy lần lượt các luật mà thuộc tính định xuất hiện như kết luận, để có thể tìm giá trị các thuộc tính thuộc tiền đề. Nếu các luật thỏa mãn, thuộc tính kết luận sẽ được ghi nhận.

c) Cơ chế hỗn hợp

Sử dụng kết hợp cả 2 phương pháp suy diễn trên. 2.6.2. Cơ chế điều khiển

a) Chọn hướng suy diễn

Cho fgt = # GT GT: tập các sự kiện ban đầu fkl = # KL KL: Tập các sự kiện kết quả

ftruoc = max #{r  R/ r có thể áp dụng cho 1 tập con F nào đó}

= max # lọc (F,R)

fsau = max # {r R/ r có cùng một sự kiện ở vế phải} - Các luật heuristic:

 Luật 1: Nếu fsau < ftruoc thì chọn suy diễn tiến.

 Luật 2: Nếu fsau > ftruoc thì chọn suy diễn lùi. (adsbygoogle = window.adsbygoogle || []).push({});

 Luật 3: Nếu fsau = ftruoc và fgt < fkl thì chọn suy diễn tiến.

 Luật 4: Nếu fsau = ftruoc và fgt > fkl thì chọn suy diễn lùi.

 Luật 5: Nếu fsau = ftruoc và fgt = fkl người thiết kế có thể chọn 1 trong 2 phương pháp suy diễn để sử dụng.

b) Giải quyết các vấn đề cạnh tranh - Cạnh tranh trong suy diễn tiến:

 Tình huống cạnh tranh xảy ra khi và chỉ khi tồn tại F và r1, r2  R mà:

r1: left1q1, r2: left2q2, left1F, left2F # lọc (F,R)  2 ta có lọc ({a},R) = {r1,r2}

34

Đặt vấn đề: Làm thế nào để chọn 1 luật r trong số các luật có thể áp dụng được bằng lọc (F,R)?

 Giải pháp 1: Tổ chức các luật có thể sử dụng được như một hàng đợi.

 Giải pháp 2: Tổ chức các luật có thể sử dụng theo xếp chồng.

 Giải pháp 3: Sử dụng heuristic.

Đối với mỗi r  R bằng kỹ thuật heuristic ta đánh giá liên hệ hàm ước lượng h trong KL với một phần vế phải của luật r, r: leftq

H(r,KL) = h(q,KL)

Nguyên tắc: Luật r: leftq sẽ được chọn khi và chỉ khi h(q,KL)

min/max.

 Giải pháp 4: Thực hiện sắp xếp thứ tự các sự kiện (Đồ thị FPG - Fact Precedence Graph).

Cho tập luật R và mỗi sự kiện của R là một nút, các luật là các dây cung trong đồ thị FPG.

 Giải pháp 4’: Sử dụng đồ thị VÀ/HOẶC.

Mỗi luật r: p1p2…pnq tương đương với một cụm cung kiểu “VÀ”.

 Giải pháp 5: Đồ thị thứ tự luật (RPG – Rule Precedence Graph). Một luật rj là sắp thứ tự với luật ri (ký hiệu là r j  ri) nếu và chỉ nếu tồn tại một sự kiện f sao cho:

rj: leftf ; ri: fq

Một luật r được gọi “khởi đầu – initial” nếu và chỉ nếu: r: leftq và left GTINITIAL

Mỗi luật r được gọi là “kết thúc – final” nếu và chỉ nếu: r: left q và q GTFINAL

Biểu diễn trong đồ thị RPG:

35

 Cho App(r)  điểm – vào(r) = {r’} tồn tại một đỉnh r’r trong RPG; r: leftq; mỗi r’  App(r) có thể áp dụng

Nếu left  {q’/ r’  App(r)}GT Thì luật r cũng có thể được áp dụng. Suy diễn trong đồ thị RPG như sau:

 Chọn một luật trong APPLICABLE

 Thực hiện luật đó Chú ý: Đối với

Suy diễn theo chiều rộng APP = hàng đợi. Suy diễn theo chiều sâu APP = xếp chồng. c) Việc giới hạn (adsbygoogle = window.adsbygoogle || []).push({});

Thao tác lọc thường tốn thời gian để tính toán, nên phải lướt qua tập luật R để tìm ra tập có thể áp dụng được APPLICABLE. Để giảm nhẹ con số thử nghiệm, người ta quyết định chỉ lọc một phần các luật, hoặc sự kiện được đưa vào. Đó là việc giới hạn phải làm trước khi lọc.

36

Chương 3: XÂY DỰNG CHƯƠNG TRÌNH ỨNG DỤNG

3.1. Phát biểu bài toán

Đoán nhận tính cách thông qua đặc tả khuôn mặt là một bài toán thuộc thể loại nhân tướng học hay vận mệnh của con người được các chuyên gia sử dụng.

Bài toán được phát biểu như sau:

Cho các bộ phận trên khuôn mặt và tính cách có thể có ứng với từng đặc điểm của từng bộ phận trên khuôn mặt người, dựa trên các luật đưa ra tính cách có thể có ứng với mỗi khuôn mặt người.

Nhiệm vụ của bài toán cần phải giải quyết là từ những giả thiết và kết luận của bài toán, xây dựng được chương trình đoán nhận tính cách của con người thông qua đặc tả khuôn mặt. Khi người sử dụng lựa chọn các đặc điểm ứng với từng bộ phận trên khuôn mặt người và đưa ra yêu cầu đoán nhận tính cách ứng với khuôn mặt đó, thì hệ thống phải đưa ra được tính cách tương ứng.

3.2. Nhân tướng học 3.2.1. Giới thiệu 3.2.1. Giới thiệu

Với mỗi người, khuôn mặt trước hết là sự biểu hiện cá tính và tâm trạng. Đó là những cảm xúc thông thường như buồn, vui, lo lắng, giận hờn,… Nhưng đồng thời nó cũng thể hiện sức khỏe, nhân cách, địa vị xã hội,… của người đó.

Nhìn mặt đoán tính cách vốn là một kinh nghiệm có từ lâu đời, đến nay nó vẫn được sử dụng như một “môn nghệ thuật” với những kỹ năng và mức độ khác nhau. Ở phương Đông “môn nghệ thuật” này được gọi với cái tên quen thuộc là “Nhân tướng học”. Cho đến nay, nó là một chuyên ngành khoa học được mọi người công nhận.

37

Nhân tướng học Á - Đông không chỉ dừng chân ở việc đoán tính cách. Khoa này còn đào sâu cả địa hạt phú quý, bệnh tật, thọ yểu, sinh kế, nghề nghiệp. Mặt khác nhân tướng học còn tìm hiểu - qua nét tướng mỗi cá nhân - những chi tiết liên quan đến những người khác có liên hệ mật thiết với mình: Cha mẹ, vợ chồng, anh em, con cái, bạn bè. Sau cùng, nhân tướng học Á - Đông còn rộng rãi và táo bạo hơn hẳn khoa tâm lý phương Tây. Từ nội tâm và liên hệ của con người, nhân tướng học Á - Đông tiên đoán luôn vận mạng, dám khẳng định cả sự thành bại, thịnh suy, xét cả quá khứ lẫn tương lai, chứ không dừng lại ở một giai đoạn nào.

Tóm lại, nhân tướng học là một bộ môn nhân văn, từ người mà ra, do con người mà có và nhằm phục vụ cho con người trong việc “tri kỷ, tri bỉ”.

Tuy nhiên trong khuôn khổ khóa luận này, chúng ta chỉ tìm hiểu đến một phần của khoa nhân tướng học: Tìm hiểu cá tính biểu hiện trên khuôn mặt. Qua đó ta có thể nắm chắc một trong những yếu tố quan trọng để phát triển và duy trì mối quan hệ hài hòa, hiệu quả giữa con người với nhau.

3.2.2. Những nét cơ bản về cá tính biểu hiện qua khuôn mặt

Thuật tìm hiểu tính cách qua khuôn mặt về cơ bản dựa trên kích thước, hình dạng, vị trí, tính chất và màu sắc của một số cơ quan thể hiện trên khuôn mặt.

Một trong những dấu hiệu quan trọng nhất trong thuật tìm hiểu cá tính biểu hiện trên khuôn mặt là khuôn mặt có cân đối hay không. Khuôn mặt của một người càng mất cân đối, thì người ấy càng có nhiều khả năng bị rối loạn tâm lý, trong cuộc sống gặp nhiều khó khăn, khổ sở và nhiều thất vọng.

Cũng như bộ não được chia thành hai phần với các chức năng khác nhau, các bên của khuôn mặt cũng phản ánh nhiều đặc điểm khác nhau. Ở hầu hết mọi người, bên trái của khuôn mặt biểu thị cá tính và tính khí, trong khi bên phải mô tả cảm xúc, địa vị xã hội và kinh tế, các mối quan hệ giữa cá nhân với người khác.

38

Có 3 loại khuôn mặt cơ bản, với mỗi loại tương ứng với một loại cá tính và vận may cụ thể: Tam giác, tròn, vuông. Khuôn mặt được chia thành 3 vùng theo phương nằm ngang: Trán, vùng từ chân mày đến cuối mũi và từ cuối mũi đến cằm.

Ta quan sát các đặc tả khuôn mặt chủ yếu dựa trên các bộ phận chính như: Trán, mắt, mũi, miệng, tai, cằm. Ngoài ra cũng có thể dựa trên một số chi tiết khác như: Nếp nhăn, chân mày, gò má (lưỡng quyền), nốt ruồi, răng, … 3.2.3. Cá tính biểu hiện qua vầng trán

Một phần của tài liệu Mô hình hệ chuyên gia và xây dựng chương trình ứng dụng (Trang 32)