Top Banner
Bùi Đức Dương – Khoa Công nghệ Thông tin Các hệ cơ sở tri thức
142

CacHeCSTT

Oct 20, 2015

Download

Documents

Nam Nì Nợm
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CacHeCSTT

Bùi Đức Dương – Khoa Công nghệ Thông tin

Các hệ cơ sở tri thức

Page 2: CacHeCSTT

KBS

CSTT

2

Nội dung

Hệ học 4

Tổng quan 1

Biểu diễn và suy diễn tri thức 2

Hệ MYCIN 3

Hệ mờ 5

Page 3: CacHeCSTT

Bùi Đức Dương – Khoa Công nghệ Thông tin

Chương 1

TỔNG QUAN

Page 4: CacHeCSTT

KBS

CSTT

4 4

1. Giới thiệu

Hệ cơ sở tri thức (KBS - Knowledge Based Systems):

Chương trình máy tính được thiết kế để mô hình hóa

khả năng giải quyết vấn đề của chuyên gia con người.

Hệ cơ sở tri thức là hệ thống dựa trên tri thức, cho phép

mô hình hóa các tri thức của chuyên gia, dùng tri thức

này để giải quyết vấn đề phức tạp cùng lĩnh vực.

Khác biệt giữa các hệ CSTT & CT truyền thống: cấu trúc

Hệ cơ sở tri thức đơn giản:

Cơ sở tri thức Động cơ suy diễn

Symbol - KBS

Page 5: CacHeCSTT

KBS

CSTT

5 5

2. Cơ sở tri thức

Cơ sở tri thức: Chứa các tri thức chuyên sâu

Có nhiều dạng (cách biểu diễn)

Đối tượng – Thuộc tính – Giá trị

Luật dẫn

Mạng ngữ nghĩa

Frames

Logic

Có thể không chắc chắn, mập mờ

Page 6: CacHeCSTT

KBS

CSTT

6

3. Động cơ suy diễn

Động cơ suy diễn thay đổi theo độ phức tạp của CSTT

Các kiểu suy diễn cơ bản:

Suy diễn tiến

Suy diễn lùi

Các cách điều khiển hoạt động của Hệ CSTT:

Data driven

Target driven

Sự kiện, tri thức

bên ngoài

Sự kiện, tri thức

bên trong

Động cơ

suy diễn Tri trức

mới

Page 7: CacHeCSTT

KBS

CSTT

7

Là hệ CSTT chuyên biệt, được thiết kế cho một lĩnh vực

ứng dụng cụ thể.

Ví dụ: Chẩn đoán bệnh Y khoa, chẩn đoán hỏng hóc máy tính...

Kỹ sư tri thức (Knowledge Engineer): thiết kế, xây dựng

và thử nghiệm Hệ chuyên gia

Các thành phần cơ bản:

Bộ giao tiếp ngôn ngữ tự nhiên

Động cơ suy diễn

Cơ sở tri thức

Cơ chế giải thích WHY-HOW

Bộ nhớ làm việc

Tiếp nhận tri thức

4. Hệ chuyên gia

Page 8: CacHeCSTT

KBS

CSTT

8

Động cơ suy diễn

Tìm kiếm

Điều khiển

Bộ xử lý NNTN

Giải thích

Cơ sở tri thức

Sự kiện

Luật

Vùng nhớ

làm việc

Tiếp nhận

tri thức

Chuyên gia

4. Hệ chuyên gia

Page 9: CacHeCSTT

KBS

CSTT

9

Động cơ suy diễn

Tìm kiếm

Điều khiển

Bộ xử lý NNTN

Giải thích

Cơ sở tri thức

Sự kiện

Luật

Vùng nhớ

làm việc

Tiếp nhận

tri thức

Chuyên gia

Nằm trong TP giao diện người máy: Nhận thông tin và đưa ra

trả lời

4. Hệ chuyên gia

Page 10: CacHeCSTT

KBS

CSTT

10

Động cơ suy diễn

Tìm kiếm

Điều khiển

Bộ xử lý NNTN

Giải thích

Cơ sở tri thức

Sự kiện

Luật

Vùng nhớ

làm việc

Tiếp nhận

tri thức

Chuyên gia

TP này giải thích các hoạt động khi có yêu cầu

4. Hệ chuyên gia

Page 11: CacHeCSTT

KBS

CSTT

11

Động cơ suy diễn

Tìm kiếm

Điều khiển

Bộ xử lý NNTN

Giải thích

Cơ sở tri thức

Sự kiện

Luật

Vùng nhớ

làm việc

Tiếp nhận

tri thức

Chuyên gia

Khớp sự kiện trong vùng nhớ với CSTT rút ra kết luận

4. Hệ chuyên gia

Page 12: CacHeCSTT

KBS

CSTT

12

Động cơ suy diễn

Tìm kiếm

Điều khiển

Bộ xử lý NNTN

Giải thích

Cơ sở tri thức

Sự kiện

Luật

Vùng nhớ

làm việc

Tiếp nhận

tri thức

Chuyên gia

Thu nhận tri thức từ chuyên gia, kỹ sư và user, lưu trữ vào

CSTT

4. Hệ chuyên gia

Page 13: CacHeCSTT

KBS

CSTT

13

Động cơ suy diễn

Tìm kiếm

Điều khiển

Bộ xử lý NNTN

Giải thích

Cơ sở tri thức

Sự kiện

Luật

Vùng nhớ

làm việc

Tiếp nhận

tri thức

Chuyên gia

Lưu trữ, biểu diễn tri thức; CSTT gồm sự kiện và luật

4. Hệ chuyên gia

Page 14: CacHeCSTT

KBS

CSTT

14

4. Hệ chuyên gia

Động cơ suy diễn

Tìm kiếm

Điều khiển

Bộ xử lý NNTN

Giải thích

Cơ sở tri thức

Sự kiện

Luật

Vùng nhớ

làm việc

Tiếp nhận

tri thức

Chuyên gia

Chứa các sự kiện của vấn đề đang xét

Page 15: CacHeCSTT

KBS

CSTT

15

5. Hệ hỗ trợ ra quyết định (DSS)

DSS : Decision Support System

Chức năng: Hỗ trợ ra quyết định

Hoạt động: Tương tác với User

Tính chất:

User khởi động và kiểm soát

Hướng đến quyết định của nhà quản lý

Trả lời câu hỏi tình huống

Uyển chuyển, linh hoạt

Làm việc với các bài toán có cấu trúc yếu

Page 16: CacHeCSTT

KBS

CSTT

16 16

6. Hệ học

Một số trường hợp không có sẵn tri thức

Kỹ sư tri thức cần thu nhận từ chuyên gia lĩnh vực:

Cần biết luật mô tả thuộc lĩnh vực

Bài toán không được biểu diễn tường minh theo luật, sự kiện hay

quan hệ.

Hai cách tiếp cận cho hệ thống học

Học từ ký hiệu: Hình thức hóa các luật, sự kiện hay quan hệ

Học từ dữ liệu số

Sử dụng trong hệ thống mô hình hóa dạng số

Mạng Neural nhân tạo, thuật giải di truyền, bài toán tối ưu

Không tạo ra CSTT tường minh

Page 17: CacHeCSTT

KBS

CSTT

17

7. Hệ điều khiển mờ

Mờ hóa: Chuyển đổi giá trị rõ thành các vector mờ

Xác định các luật hợp thành và thuật toán xác định giá trị

mờ

Giải mờ: Phương pháp điểm trọng tâm

Page 18: CacHeCSTT

KBS

CSTT

18

8. Các lĩnh vực ứng dụng Hệ CSTT

Diễn giải: Mô tả tình huống các dữ liệu thu thập được

Dự báo: Đề xuất các tri thức về dự báo một tình huống

Thiết kế: Lựa chọn cấu trúc phù hợp

Chẩn đoán: Dựa vào dữ liệu quan sát, chẩn đoán vấn đề

Vạch kế hoạch: Đề xuất các phương án

Dẫn dắt: So sánh dữ liệu & kết quả đạt được

Gỡ rối: Mô tả các phương pháp khắc phục của hệ thống

Hướng dẫn: Sửa chữa lỗi của học viên

Điều khiển: Dẫn dắt cấu trúc tổng thể của hệ thống

Page 19: CacHeCSTT

Bùi Đức Dương – Khoa Công nghệ Thông tin

Chương 2

BIỂU DIỄN &

SUY DIỄN TRI THỨC

Page 20: CacHeCSTT

KBS

CSTT

20

1. Giới thiệu

Mục tiêu biểu diễn tri thức trong máy tính:

Phục vụ cho việc thu nhận tri thức

Truy xuất tri thức

Thực hiện các phép suy luận

Một số yếu tố cơ bản:

Tính tự nhiên, đồng bộ và dễ hiểu của biểu diễn tri thức.

Mức độ trừu tượng của tri thức: tri thức được khai báo cụ

thể hay nhúng vào hệ thống dưới dạng các mã thủ tục?

Tính đơn thể và linh động của cơ sở tri thức (có cho phép

dễ dàng bổ sung tri thức, mức độ phụ thuộc giữa các tri

thức, ...)

Tính hiệu quả trong việc truy xuất tri thức và sức mạnh

của các phép suy luận (theo kiểu heuristic) .

Page 21: CacHeCSTT

KBS

CSTT

21

Các loại tri thức

Tri thức thủ tục

Mô tả cách thức giải quyết một vấn đề

Đề xuất các giải pháp thực hiện công việc

Tiêu biểu là các luật, chiến lược, lịch trình & thủ tục

Tri thức khai báo

Mô tả vấn đề trực quan

Tiêu biểu là các phát biểu đơn giản (True/False); danh sách các khẳng định

Siêu tri thức (meta – knowledge)

Mô tả tri thức về tri thức

Giúp lựa chọn tối ưu tri thức

1. Giới thiệu

Page 22: CacHeCSTT

KBS

CSTT

22

Tri thức heuristic

Mô tả các “mẹo” dẫn dắt tiến trình lập luận

Không đảm bảo tối ưu về kết quả (chính xác dưới 100%)

Chuyển các luật, sự kiện… thành tri thức heuristic để thuận

tiện trong xử lý

Tri thức có cấu trúc

Mô tả tri thức theo cấu trúc

Mô tả mô hình tổng quan hệ thống theo quan điểm của

chuyên gia: khái niệm, khái niệm con & các đối tượng

Diễn tả chức năng và mối liên hệ giữa các tri thức dựa theo

cấu trúc xác định.

1. Giới thiệu

Page 23: CacHeCSTT

KBS

CSTT

23

2. Các PP biểu diễn tri thức

Bộ ba Đối tượng – Thuộc tính – Giá trị

Quả cam màu vàng

Trong các sự kiện O – A – V:

Một đối tượng có thể có nhiều thuộc tính

Một thuộc tính có một (đơn trị/single - valued) hay nhiều

giá trị (đa trị/multi - valued): Cho phép biểu diễn tri thức

linh hoạt

Xác định độ tin cậy: Nhân tố chắc chắn CF (certainly

factor)

O – A –V: Object-Attribute-Value

Ví dụ: Quả cam màu vàng

Page 24: CacHeCSTT

KBS

CSTT

24

Là cấu trúc tri thức dùng để liên kết thông tin đã biết với

thông tin khác giúp đưa ra các suy luận, kết luận

7 dạng luật cơ bản

Quan hệ

IF Không cài đặt HĐH

THEN Máy tính sẽ không khởi động được

Lời khuyên

IF Máy tính không khởi động được

THEN Xử lý dữ liệu bằng tay

Hướng dẫn

IF Máy tính không khởi động AND Phần cứng tốt

THEN Kiểm tra hệ điều hành

Các luật dẫn

2. Các PP biểu diễn tri thức

Page 25: CacHeCSTT

KBS

CSTT

25

Chiến lược

IF Máy tính không khởi động được

THEN Đầu tiên kiểm tra có điện không, sau đó đến phần cứng

và phần mềm

Diễn giải

IF Máy tính khởi động được

THEN Hệ điều hành bình thường

Chẩn đoán

IF Phần cứng tốt AND chạy chậm AND hay shutdown đột ngột

THEN Bị virus

Thiết kế:

IF Là nam giới AND làm ngành CNTT

THEN Nên mua máy Dell OR máy ASUS

2. Các PP biểu diễn tri thức

Page 26: CacHeCSTT

KBS

CSTT

26

Luật có biến

Áp dụng cần thực hiện cùng một phép toán trên một tập hay

các đối tượng.

Ví dụ: IF X là viên chức AND X là nam AND Tuổi X>60

THEN X có thể nghỉ hưu

Luật không chắc chắn

Sự kiện có thể không chắp chắc chắn: Mệnh đề phát biểu (luật)

đưa thêm hệ số chắc chắn CF.

Ví dụ: IF Giá vàng tăng THEN Giá đất tăng, CF=0.9

Siêu luật (meta-rules)

Luật mô tả cách thức dùng các luật khác (Không có thông tin

mới)

Ví dụ: IF Máy không khởi động AND Phần cứng tốt

THEN Sử dụng các luật liên quan đến HĐH

Mở rộng cho các luật

2. Các PP biểu diễn tri thức

Page 27: CacHeCSTT

KBS

CSTT

27

Là phương pháp biểu diễn tri thức dùng đồ thị: Nút biểu

diễn đối tượng; cung biểu diễn quan hệ.

Sẻ Chim

Bay

Cánh

Di chuyển

Mở rộng mạng ngữ nghĩa: Thêm các nút (đối tượng bổ

sung) và nối vào đồ thị bằng các cung:

Thêm một đối tượng tương tự

Thêm đối tượng đặc biệt hơn

Thêm một đối tượng tổng quát hơn

Mạng ngữ nghĩa

2. Các PP biểu diễn tri thức

Page 28: CacHeCSTT

KBS

CSTT

28

Ví dụ

Sẻ Chim

Bay

Cánh

Di chuyển

Con

vật

Kh.

khí

Thở

Cánh

cụt

Di chuyển

Chân

2. Các PP biểu diễn tri thức

Page 29: CacHeCSTT

KBS

CSTT

29

Có hình thức như bảng mẫu, tờ khai….

Cấu trúc cơ bản:

Tên frame

Lớp

Các thuộc tính: Biểu diễn như O – A - V

Frames

PHIẾU ĐIỂM

Họ tên

MSSV

Môn Điểm

CTDL 10

TTNT 7

CSTT 9

Tên frame

Lớp

Thuộc Tính Giá trị

TT1 GT1

TT2 GT2

... ...

Thuộc tính

2. Các PP biểu diễn tri thức

Page 30: CacHeCSTT

KBS

CSTT

30

Logic

Sử dụng ký hiệu để thể hiện tri thức & toán tử

Phép

toán

NOT AND OR Kéo

theo

Tương

đương

Ký hiệu , , , & , , + , → ,

Logic mệnh đề

Logic vị từ

2. Các PP biểu diễn tri thức

Page 31: CacHeCSTT

KBS

CSTT

31

Logic mệnh đề

Mệnh đề: Phát biểu/khẳng định đúng/sai

Các phép toán logic

X Y X X Y X Y X → Y X Y

T T F T T T T

T F F F T F F

F T T F T T F

F F T F F T T

Ví dụ:

IF Phần cứng hỏng (A) OR Chưa cài đặt HĐH (B)

THEN Máy tính không khởi động được (C)

Có thể biểu diễn là: A B → C

2. Các PP biểu diễn tri thức

Page 32: CacHeCSTT

KBS

CSTT

32

Logic vị từ

Phép toán mệnh đề suy diễn tự động nhưng chưa đủ khi cần

phải truy cập vào thành phần nhỏ trong câu, dùng biến số trong câu.

Ví dụ:

“Mọi sinh viên trường ĐHNT đều có bằng tú tài. Lan không có bằng

tú tài. Do vậy, Lan không là sinh viên trường ĐHNT”

“Lan” là một đối tượng cụ thể của “SV trường ĐHNT” – không thể

đặc tả được “quan hệ” này trong mệnh đề được mà chỉ có thể là:

“LAN là sinh viên trường ĐHNT thì Lan có bằng tú tài. Lan không có

bằng tú tài. Do vậy, Lan không là sinh viên trường ĐHNT”

Mệnh đề phải giải quyết bằng cách liệt kê tất cả các trường hợp

Không khả thi

Do đó, chúng ta cần một Logic khác hơn là phép toán mệnh đề

2. Các PP biểu diễn tri thức

Page 33: CacHeCSTT

KBS

CSTT

33

Vị từ là một phát biểu nói lên quan hệ giữa một đối tượng

với các thuộc tính của nó hay quan hệ giữa các đối tượng

với nhau.

Vị từ được biểu diễn bởi một tên được gọi là tên vị từ, theo

sau nó là một danh sách các thông số.

Ví dụ:

Phát biểu: “Nam là sinh viên trường ĐHNT”

Biểu diễn: sv_NT(“Nam”)

Ý nghĩa: đối tượng tên là “Nam” có thuộc tính là “sinh

viên trường ĐHNT”.

2. Các PP biểu diễn tri thức

Page 34: CacHeCSTT

KBS

CSTT

34

Biểu thức Vị từ: là sự kết hợp của các vị từ bởi các

phép toán vị từ.

Các phép toán:

Phủ định - một ngôi.

X Với mọi - một ngôi

X Tồn tại - một ngôi

^ Hội - hai ngôi.

v Tuyển - hai ngôi.

=> Suy ra - hai ngôi.

= Tương đương - hai ngôi.

2. Các PP biểu diễn tri thức

Page 35: CacHeCSTT

KBS

CSTT

35

Ví dụ:

Chuyển các câu sau sang biểu thức vị từ:

“Mọi sinh viên trường ĐHNT đều có bằng tú tài.

Lan không có bằng tú tài.

Do vậy, Lan không là sinh viên trường ĐHNT”

Với sv_NT(X) cho biết: “X là sinh viên trường DHNT”

tu_tai(X) cho biết: “X có bằng tú tài”

Các câu trên được chuyển qua vị từ là:

X(sv_NT(X) => tu_tai(X)).

tu_tai(“Lan”).

Do vậy, sv_NT(“Lan”).

2. Các PP biểu diễn tri thức

Page 36: CacHeCSTT

KBS

CSTT

36

Hiện nay vẫn chưa có một kiểu biểu diễn tri thức nào phù hợp

với mọi tình huống.

Khi phải làm việc với nhiều nguồn tri thức khác nhau (khác

loại, khác tính chất), nhiều lúc phải hy sinh tính đồng bộ bằng

cách sử dụng cùng lúc nhiều kiểu biểu diễn tri thức, mỗi kiểu

biểu diễn ứng với một nhiệm vụ con.

“Dịch" một tri thức từ kiểu biểu diễn này sang kiểu biểu diễn

khác. Tuy thế nhưng một số hệ chương trình trí tuệ gần đây

vẫn dùng cùng lúc nhiều kiểu biểu diễn dữ liệu khác nhau.

Một trong những ví dụ kết hợp nhiều kiểu biểu diễn tri thức

mà chúng ta đã từng làm quen là kiểu kết hợp giữa frame và

mạng ngữ nghĩa trong việc trợ giúp giải bài toán hình học.

2. Các PP biểu diễn tri thức

Page 37: CacHeCSTT

KBS

CSTT

37

Một trong những sự phối hợp tương đối thành công là sự

kết hợp giữa luật sinh và frame.

Luật sinh không đủ hiệu quả trong nhiều ứng dụng, đặc biệt

là trong các tác vụ định nghĩa, mô tả các đối tượng hoặc

những mối liên kết tĩnh giữa các đối tượng. Nhưng những

yếu điểm này lại chính là ưu điểm của frame.

Ngày nay, đã có rất nhiều hệ thống đã tạo ra một kiểu biểu

diễn lai giữa luật sinh và frame có được ưu điểm của hai

cách biểu diễn. Sự thành công của các hệ thống nổi tiếng

như KEE, Level5 Object và Nexpert Object đã minh chứng

cho điều này.

2. Các PP biểu diễn tri thức

Page 38: CacHeCSTT

KBS

CSTT

38

Ví dụ kết hợp biểu diễn tri thức bằng luật sinh và frame trong bài

toán điều chế chất hóa học

Vấn đề : Cho trước một số chất hóa học. Hãy xây dựng chuỗi các

phản ứng hóa học để điều chế một số chất hóa học khác.

Đây là một ứng dụng hết sức tự nhiên của tri thức biểu diễn dưới

dạng luật vì bản thân các phản ứng hóa học tiêu chuẩn đều được

thể hiện dưới dạng luật. Chẳng hạn ta có các phản ứng sau :

Na + Cl2 → NaCl

Fe + Cl2 → FeCl2

Cu + Cl2 → CuCl2

Cl2 + H2O → HCl + HClO

MnO2 + 4HCl → MnCl2 + Cl2+ H2O

HCl + KMnO4 → KCl + MnCl2 + H2O + Cl2

NaCl + H2O → Cl2 + H2+ NaOH

...

2. Các PP biểu diễn tri thức

Page 39: CacHeCSTT

KBS

CSTT

39

Như vậy, nếu xem một chất hóa học là một sự kiện và một phương

trình phản ứng như là một luật dẫn thì bài toán điều chế chất hóa

học, một cách rất tự nhiên, trở thành bài toán suy luận tiến trong

cơ sở tri thức dạng luật dẫn.

Tuy nhiên, số lượng các phản ứng là rất lớn, nên ta không thể sử

dụng các luật dựa trên các phản ứng cụ thể như vậy mà phải sử

dụng các phản ứng tổng quát hơn như :

Axit + Bazơ → Muối + Nước

Kiềm + Nước → Xút + H2

(trong hóa học cũng có nhiều phản ứng rất đặc biệt không thể tổng

quát được, trong trường hợp này, ta sẽ xem phản ứng đó như là

một luật riêng!).

Để mô tả được các phản ứng tổng quát như trên, ta sẽ sử dụng

các frame.

2. Các PP biểu diễn tri thức

Page 40: CacHeCSTT

KBS

CSTT

40

Modus ponens

1. E1

2. E1 → E2

Modus tollens

1. ¬ E2

2. E1 → E2

3. Suy diễn tri thức

Suy diễn là quá trình rút ra tri thức mới từ các tri thức cũ.

¬ E1

E2

Page 41: CacHeCSTT

KBS

CSTT

41

Suy diễn tiến

Thêm thông tin vào

bộ nhớ làm việc

Xét luật đầu tiên

Kết luận vào

bộ nhớ làm việc

Xét luật tiếp theo

Dừng suy diễn

Giả thiết khớp

với bộ nhớ Còn luật

True

False

False

True

3. Suy diễn tri thức

Page 42: CacHeCSTT

KBS

CSTT

42

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

Input: Tập luật Rule= {r1, r2, ..., rm}; GT; KL.

Output: Return “True” nếu GT→KL

Ngược lại, return “False”.

Method:

TĐ=GT;

T= Filter(Rule, TĐ);

while (KL TĐ) and (T ) do

{

r = Get(T);

TĐ=TĐ{q}; // r: left→q

Rule = Rule \ {r};

T= Filter(Rule, TĐ);

}

if (KL TĐ) then return “True”

else return “False”

3. Suy diễn tri thức

Page 43: CacHeCSTT

KBS

CSTT

43

Suy diễn lùi

Thủ tục bắt đầu tìm kiếm từ dữ liệu đích của bài toán.

Chọn tất cả các luật ứng với vế kết luận hợp với dữ liệu đích,

thiết lập dữ liệu ở vế điều kiện phát sinh ra đích làm dữ liệu đích

mới.

Tại mỗi điểm dữ liệu đích mới, chọn tất cả các luật ứng với vế kết

luận hợp với đích mới, thiết lập dữ liệu ở điều kiện làm dữ liệu

đích mới hơn.

Thủ tục này lặp lại cho tất cả các đích mới cho đến khi nào dữ

liệu ban đầu của bài toán được tìm thấy.

3. Suy diễn tri thức

Page 44: CacHeCSTT

KBS

CSTT

44

Thêm thông tin vào

bộ nhớ làm việc

Kiểm tra bộ nhớ làm

việc

Đích khớp với

giả thiết Còn luật Quay lui

True

False True

Kết luận vào đích

True

Tìm đích mới

Dừng

False False

3. Suy diễn tri thức

Page 45: CacHeCSTT

KBS

CSTT

45

Suy diễn lùi với logic mệnh đề

Input: Tập luật Rule= {r1, r2, ..., rm}; GT; KL.

Output: Return “True” nếu GT→KL

Ngược lại, return “False”.

Method:

If (KL GT) then return “True”

Else

{

TĐ=; Vết = ; First=1; QuayLui= False;

}

For (Each qKL) do TĐ=TĐ{(q,0)};

Repeat

{

first ++;

(f,i)=Get(TĐ);

3. Suy diễn tri thức

Page 46: CacHeCSTT

KBS

CSTT

46

If (fGT) then { j=TìmLuật(f,i,Rule); // rj: Leftj → f If (Tìm có rj) THEN { Vết = Vết {(f,j)}; For (Each t (Leftj\GT)) do TĐ = TĐ {(t,0)}; } else { QuayLui=True; While ((fKL) and Quaylui) do { Repeat { (g,k)=Get(Vết); TĐ = TĐ \ Leftk; } Until (fLeftk);

3. Suy diễn tri thức

Page 47: CacHeCSTT

KBS

CSTT

47

l=Tìmluat(g,k,Rule);

If (Tìm có rl) Then

{

TĐ = TĐ \ Leftk;

For (Each t(Leftl\GT)) do

TĐ= TĐ{(t,0)};

Vết = Vết {(g,l)};

Quaylui = False;

} //end if3

else f=g;

} //end while

} //end if2

} //end if1

Until (TĐ = ) or ((f KL) and (First>2));

If (f KL) then Return False

else Return True;

3. Suy diễn tri thức

Page 48: CacHeCSTT

KBS

CSTT

48

Ví dụ: Cho cơ sở tri thức:

1. Cat(X)^Mother(X,Y)^Beauty(Y) → Good(X).

2. Cat(mimi).

3. Cat(lili).

4. Cat(kiki).

5. Mother(mimi,kiki).

6. Mother(kiki,titi).

7. Beauty(titi).

8. Beauty(kiki).

Áp dụng thuật toán suy lùi vào cơ sở tri thức trên để

chứng minh: Good(kiki).

3. Suy diễn tri thức

Page 49: CacHeCSTT

KBS

CSTT

49

Giải:

+ Giả thiết ban đầu; Good(kiki) hợp nhất với kết luận của

luật 1 bởi phép thế:

θ = [X | kiki] => tập giả thiết mới:

Cat(kiki)^Mother(kiki,Y)^Beauty(Y) (9)

+ Hợp nhất: Unify(9, 4, θ = [] ) => tập giả thiết mới:

Mother(kiki,Y)^Beauty(Y) (10)

+ Hợp nhất: Unify(10,6, θ = [Y | titi] => tập giả thiết mới:

Beauty(titi) trùng với sự kiện 7 trong tập các sự kiện đã cho.

+ Vậy Good(kiki) là đúng.

3. Suy diễn tri thức

Page 50: CacHeCSTT

KBS

CSTT

50

So sánh ưu điểm

Suy diễn lùi

Phù hợp với bài toán đưa ra giả

thuyết rồi kiểm chứng giả thuyết

đó đúng hay không.

Tập trung vào đích đã cho. Tạo

ra một loạt câu hỏi liên quan đến

vấn đề, hoàn cảnh đang xét.

Chỉ tìm trên một không gian con

CSTT liên quan đến bài toán

đang xét.

Suy diễn tiến

Làm việc tốt đối với bài toán

thu thập thông tin rồi tìm ra

điều cần suy diễn.

Cho khối lượng lớn các

thông tin (mới) từ một số

thông tin ban đầu.

Lý tưởng cho các bài toán

lập kế hoạch, điều hành,

điều khiển và diễn dịch.

3. Suy diễn tri thức

Page 51: CacHeCSTT

KBS

CSTT

51

So sánh nhược điểm

Suy diễn lùi

Thường phải tiếp dòng suy

diễn: Không dừng đúng lúc.

Suy diễn tiến

Không cảm nhận được: Chỉ

một số thông tin là quan

trọng. Hệ thống có thể hỏi

câu không liên quan và câu

trả lời có thể không quan

trọng.

3. Suy diễn tri thức

Page 52: CacHeCSTT

KBS

CSTT

52

Giới thiệu về SWI-Prolog

3. Suy diễn tri thức

Page 53: CacHeCSTT

KBS

CSTT

53

4. Chứng minh mệnh đề

Bài toán chứng minh mệnh đề

Cho giả thiết:

VT = GT1, GT2, …, GTn

Và kết luận:

VP = KL1, KL2, … KLm

Chứng tỏ: VT VP

Ví dụ:

[(p q) (p s) q] q s

Page 54: CacHeCSTT

KBS

CSTT

54

4. Chứng minh mệnh đề

Thuật giải Vương Hạo

Bước 1: Phát biểu lại giả thiết và kết luận của vấn đề dưới

dạng chuẩn như sau:

GT1, GT2, …, GTn → KL1, KL2, … KLm

Trong đó các GTi và KLj được xây dựng từ các biến mệnh đề

và các phép toán , , ¬.

Ví dụ:

[(p → q) (p → s) q] → [q ¬s]

≡ (¬p q) (¬p s) q → q ¬s

Bước 2: Thay dấu “” ở trong GTi và dấu “” ở trong KLj bằng

dấu “,” (phẩy).

Ví dụ:

(¬p q) (¬p s) q → q ¬s

≡ (¬p q), (¬p s), q → q , ¬s

Page 55: CacHeCSTT

KBS

CSTT

55

4. Chứng minh mệnh đề

Thuật giải Vương Hạo

Bước 3: Chuyển vế các GTi và KLj có dạng phủ định.

Ví dụ:

(¬p q), (¬p s), q → q , ¬s

≡ ¬p q, ¬p s, q, s → q

Bước 4: Nếu GTi còn dấu “” và KLj còn dấu “” thì dòng đó

được tách thành hai dòng con.

Ví dụ:

¬p q, ¬p s, q, s → q

≡ 1. ¬p , ¬p s, q, s → q

2. q, ¬p s, q, s → q

Từ bước 2 đến bước 4 không cần làm theo thứ tự.

Page 56: CacHeCSTT

KBS

CSTT

56

Bước 5: Dòng tồn tại chung một mệnh đề ở cả 2 vế thì coi

như đúng (được CM).

Ví dụ:

p, q s p: mệnh đề đúng

Bước 6:

+ Nếu một dòng không còn dấu liên kết tuyển và hội mà cả ở

hai vế đều không có chung biến mệnh đề nào thì dòng đó sai.

Ví dụ:

p, ¬q, s q: mệnh đề sai

+ Một vấn đề được giải quyết một cách trọn vẹn nếu mọi

dòng dẫn xuất đều đúng.

4. Chứng minh mệnh đề

Page 57: CacHeCSTT

KBS

CSTT

57

Ví dụ:

(p q ) (s q) (r s) (p) → r u

Giải:

(p q ) (s q) (r s) (p) → r u

p q , s q, r s , p → r, u

p q , s q, r s → r , u, p

Tách phép : (p q) thành 2 dòng con

1: p, s q, r s → r , u, p (đcm vì có p ở hai phía)

2: q , s q, r s → r , u, p

s q, r s → r , u, p, q

4. Chứng minh mệnh đề

Page 58: CacHeCSTT

KBS

CSTT

58

Tách phép : (s q) thành 2 dòng con

2.1: q, r s → r , u, p, q (đcm vì có q ở hai phía)

2.2: s , r s → r , u, p, q

r s → r , u, p, q, s

Tách phép : (r s) thành 2 dòng con

2.2.1: r → r , u, p, q, s (đcm vì có r ở cả hai phía)

2.2.2: s → r , u, p, q, s (đcm vì có s ở cả hai phía)

Các dòng dẫn xuất từ dạng chuẩn ban đầu đều được chứng

minh, vậy vấn đề được chứng minh.

4. Chứng minh mệnh đề

Page 59: CacHeCSTT

KBS

CSTT

59

Thuật giải Robinson

Thuật giải Robinson hành động dựa trên phương pháp chứng minh

bằng phản chứng.

Bước 1: Đưa vấn đề về dạng chuẩn như sau:

GT1, GT2, ...,GTn → KL1, KL2,...,KLm

Trong đó các GTi và KLj được xây dựng từ các biến mệnh đề và

các phép logic: ,, .

Bước 2: Nếu GTi có phép thì thay bằng dấu",". Nếu KLj có phép

thì thay bằng dấu ",".

Bước 3: Biến đổi dạng chuẩn ở Bước 1 về dạng sau:

GT1, GT2, ...,GTn , KL1, KL2,..., KLm

Bước 4: Nếu trong danh sách mệnh đề ở Bước 3 có mệnh đề đối

ngẫu (p và p) thì mệnh đề được chứng minh. Ngược lại thì chuyển

sang Bước 5.

4. Chứng minh mệnh đề

Page 60: CacHeCSTT

KBS

CSTT

60

Bước 5: Xây dựng một mệnh đề mới bằng cách tuyển một cặp

mệnh đề trong danh sách mệnh đề. Nếu mệnh đề mới có các biến

mệnh đề đối ngẫu thì loại bỏ các biến đó. Thay thế hai mệnh đề

vừa tuyển trong danh sách mệnh đề bằng mệnh đề mới, áp dụng

phép hợp giải:

i) p ( p q) → q

ii) ( p q) ( p r) → q r

Bước 6: Nếu không xây dựng được thêm một mệnh đề mới nào và

trong danh sách mệnh đề không có hai mệnh đề nào đối ngẫu nhau

thì vấn đề không được chứng minh. Nếu danh sách mệnh đề không

còn mệnh đề nào (danh sách rỗng), vấn đề được chứng minh.

4. Chứng minh mệnh đề

Page 61: CacHeCSTT

KBS

CSTT

61

Ví dụ:

p q , (s q) (r s) , p u → r, u

Giải:

p q , (s q) (r s) , p u → r, u

p q , s q, r s , p , u → r, u

p q , s q, r s , p , u, r, u

ĐPCM

4. Chứng minh mệnh đề

Page 62: CacHeCSTT

KBS

CSTT

62

Ví dụ:

p q , (s q) (r s) , p → r, u

Giải:

p q , (s q) (r s) , p → r, u

p q , s q, r s , p → r, u

p q , s q, r s , p, r, u

(p q , s q), r s , p, r, u

(p s, r s) , p , r, u

(p r , p) , r, u

r , r, u

ĐPCM

4. Chứng minh mệnh đề

Page 63: CacHeCSTT

Bùi Đức Dương – Khoa Công nghệ Thông tin

Chương 3

HỆ MYCIN

Page 64: CacHeCSTT

KBS

CSTT

64

64

1. Giới thiệu

Là hệ chuyên gia lập luận y học, về lĩnh vực chuẩn đoán

bệnh nhiễm trùng máu

1970-1973, Standford University, Mỹ.

Được viết trên ngôn ngữ INTERLISP, một nhánh của

LISP

Dùng cơ chế lập luận gần đúng xử lý luật: Sử dụng CF.

EMYCIN (empty MYCIN): Cải tiến MYCIN, bỏ phần

CSTT của nó để được một hệ thống dùng để phát triển các

ES khác.

Page 65: CacHeCSTT

KBS

CSTT

65

65

Các đặc điểm chính

Sử dụng kỹ thuật suy luận lùi.

Có khả năng phân tách tri thức và điều khiển.

Có tích hợp meta-rules.

Có thể dùng khi thiếu thông tin hay thông tin không

chính xác.

Có khả năng nhớ được các thông tin trong một phiên

làm việc với người bệnh cụ thể.

Dễ sử dụng – giao tiếp với bác sĩ qua tiếng Anh.

Cung cấp các chức năng giải thích: WHY, HOW.

1. Giới thiệu

Page 66: CacHeCSTT

KBS

CSTT

66

66

2. Độ đo chắc chắn

Các nguyên nhân của sự không chắc chắn:

Dữ liệu/thông tin/tri thức có thể: không đủ, không đáng tin

cậy, không đúng, không chính xác

Các phép suy luận có thể không hợp logic: suy luận

ngược từ kết luận về điều kiện (abduction reasoning)

Xử lý trường hợp không chắc chắn:

Tiếp cận thống kê: quan tâm đến mức độ tin tưởng

(belief) của một khẳng định.

Lý thuyết xác suất Bayesian (Bayesian Probability Theory)

Đại số chắc chắn Stanford (The Stanford Certainty Algebra)

Suy luận theo Logic mờ (Fuzzy Logic) quan tâm đến mức

độ thật (truth) của một khẳng định.

Page 67: CacHeCSTT

KBS

CSTT

67

Các chuyên gia đo sự tự tin trong các kết luận của họ và

các bước suy luận bằng từ „không có lẽ‟, „gần như chắc

chắn‟, „có khả năng cao‟, „có thể‟. Đây không phải là xác

suất mà là heuristic có từ kinh nghiệm.

Không phải là xác suất, mà là độ đo sự tự tin.

Lý thuyết chắc chắn là một cố gắng hình thức hóa tiếp

cận heuristic vào suy luận với sự không chắc chắn

2. Độ đo chắc chắn

Page 68: CacHeCSTT

KBS

CSTT

68

MB(H | E): độ tin tưởng của giả thuyết H, cho trước E

MD(H | E): độ không tin tưởng

0 < MB(H | E) < 1 trong khi MD(H | E) = 0

0 < MD(H | E) < 1 trong khi MB(H | E) = 0

CF (H | E) = MB(H | E) – MD(H | E)

CF(fact) [-1,1] : dữ liệu đã cho, dữ liệu suy luận được, giả thuyết.

CF tiến về 1 cho thấy sự tin tưởng dữ kiện là đúng

CF tiến về -1 cho thấy sự tin tưởng dữ kiện là không đúng

CF gần 0 cho thấy tồn tại rất ít bằng chứng cho việc ủng hộ hay

chống lại dữ kiện (Đề xuất giới hạn?).

CF(rule) [-1,1] : thể hiện sự tin tưởng của các chuyên gia vào độ

tin cậy của luật.

2. Độ đo chắc chắn

Page 69: CacHeCSTT

KBS

CSTT

69

Truyền CF trên các luật

Luật đơn giản: If (e) then (c)

Trong đó:

CF(e): độ tin tưởng của chứng cứ

CF(r): độ tin tưởng của luật

CF(c): độ tin tưởng của kết luận

Ví dụ:

CF(bệnh nhân bị sốt) = 0.8

CF(If bệnh nhân bị sốt Then bệnh nhân bị cúm) = 0.5

CF(bệnh nhân bị cúm) = 0.8*0.5= 0.4

CF (c) = CF(e) * CF(r)

2. Độ đo chắc chắn

Page 70: CacHeCSTT

KBS

CSTT

70

Luật phức tạp (dạng 1):

If (e1 AND e2) then (c)

CF (e1 AND e2) = min { CF(e1), CF(e2) }

Luật phức tạp (dạng 2):

If (e1 OR e2) then (c)

CF (e1 OR e2) = max { CF(e1), CF(e2) }

Luật phức tạp (dạng 3):

If ((e1 AND e2) OR e3) then (c)

CF ((e1 AND e2) OR e3) = max {min{CF(e1), CF(e2)}, CF(e3)}

2. Độ đo chắc chắn

Page 71: CacHeCSTT

KBS

CSTT

71

Toán tử NOT:

CF(NOT e) = - CF(e)

CF từ nhiều luật:

If e1 then c : CF1(c)

If e2 then c : CF2(c)

CF(c) = CF1(c) + CF2(c) – CF1(c) * CF2(c), khi CF1(c), CF2(c) >0

CF(c) = CF1(c) + CF2(c) + CF1(c) * CF2(c), khi CF1(c), CF2(c) <0

CF1(c) + CF2(c)

1- min ( |CF1(c)|, |CF2(c)| ) CF(c) = trường hợp khác

2. Độ đo chắc chắn

Page 72: CacHeCSTT

KBS

CSTT

72

Mạng suy diễn

Một số dạng cơ bản

If (e) then (c), CF(r)=0.7

Suy diễn đơn giản

c

e

0.7

If (e1 AND e2) then (c), CF(r)=0.8

Suy diễn có AND

c

0.8 e1

e2

3. Chuỗi lập luận

Page 73: CacHeCSTT

KBS

CSTT

73

If (e1 OR e2) then (c), CF(r)=0.9

Suy diễn có OR

c

0.9 e1

e2

If ((NOT e1)OR e2) then (c), CF(r)=0.8

Suy diễn có NOT

c

0.8 e1

e2

3. Chuỗi lập luận

Page 74: CacHeCSTT

KBS

CSTT

74

If (e1 AND e2) then (c), CF(r)=0.7

If (e3) then (c), CF(r)=0.9

Nhiều luật có cùng kết luận

If (NOT e1) then (c1), CF(r1)=0.8

If (e1 AND e2) then (c2), CF(r2)=0.7

Một chứng cứ được dùng trong 2 luật

0.9

e1 e2 e3

0.7

c

e1 e2

c1

0.7

c2

0.8

3. Chuỗi lập luận

Page 75: CacHeCSTT

KBS

CSTT

75

Ví dụ: Thể hiện mạng ngữ nghĩa cho 7 luật sau

r1: If (e1) then (c1) CF(r1)=0.8

r2: If (e2) then (c2) CF(r2)=0.9

r3: If (e3) then (c2) CF(r3)=0.7

r4: If (e4) then (c3) CF(r4)=0.6

r5: If (NOT e5) then (c3) CF(r5)=0.5

r6: If (c2 AND c3 ) then (c4) CF(r6)=0.9

r7: If (c1 OR c4 ) then (c5) CF(r7)=0.8

3. Chuỗi lập luận

Page 76: CacHeCSTT

KBS

CSTT

76

Mạng suy diễn với c5 là giả thiết hướng đến

c1

0.8

e1 c3

e2 e3 e4

0.5

e5

0.6 0.9 0.7

0.9 0.8

c5

r1: If (e1) then (c1) CF(r1)=0.8

r2: If (e2) then (c2) CF(r2)=0.9

r3: If (e3) then (c2) CF(r3)=0.7

r4: If (e4) then (c3) CF(r4)=0.6

r5: If (NOT e5) then (c3) CF(r5)=0.5

r6: If (c2 AND c3 ) then (c4) CF(r6)=0.9

r7: If (c1 OR c4 ) then (c5) CF(r7)=0.8

c2

c4

3. Chuỗi lập luận

Page 77: CacHeCSTT

KBS

CSTT

77

c1

c2

c4

0.8

e1 c3

e2 e3 e4

0.5

e5

0.6 0.9 0.7

0.9 0.8

c5

3. Chuỗi lập luận

Page 78: CacHeCSTT

KBS

CSTT

78

Lập luận trên mạng suy diễn

Giả sử ta có các độ đo chắc chắn như sau:

CF(e1)= 0.9,

CF(e2)= 0.9,

CF(e3)= -0.3,

CF(e4)= 0.4,

CF(e5)= -0.3. Hãy tính CF(c5)?

Các lập luận từ các CF

Dựa vào luật r1 tính được CF(c1)

CF(c1) = CF(e1) *CF(r1) = 0.9 * 0.8 =0.72

3. Chuỗi lập luận

Page 79: CacHeCSTT

KBS

CSTT

79

Dựa vào luật r2, r3 tính được CF(c2)

Với r2: CF(c2) = CF(e2) *CF(r2) = 0.9* 0.9 =0.81

Với r3: CF(c2) = CF(e3) *CF(r3) = -0.3* 0.7 = -0.21

Do CF(c2) của r2 trái dấu CF(c2) của r3 ta có:

CF(c2) = [0.81+(-0.21)] / [1- min(0.81, 0.21)] = 0.74

Dựa vào luật r4, r5 tính được CF(c3)

Với r4: CF(c3) = CF(e4) *CF(r4) = 0.4* 0.6 =0.24

Với r5: CF(c3) = CF(NOT e5) *CF(r5) = -(-0.3)* 0.5 = 0.15

Do CF(c3) của r4 và CF(c3) của r5 cùng dương, ta có:

CF(c3) = 0.24 + 0.15 – 0.24 * 0.15 = 0.324

3. Chuỗi lập luận

Page 80: CacHeCSTT

KBS

CSTT

80

80

Dựa vào luật r6 tính được CF(c4)

CF(c4) = min (CF(c2) , CF(c3)) * CF(r6) = min (0.74, 0.324) * 0.9

= 0.324* 0.9 =0.292

Dựa vào luật r7 tính được CF(c5)

CF(c5) = max (CF(c1) , CF(c4)) * CF(r7) = max (0.72, 0.292) * 0.8

= 0.72* 0.8 =0.58

Vậy, độ chắc chắn của giả thiết c5 là 0.58

3. Chuỗi lập luận

Page 81: CacHeCSTT

KBS

CSTT

81 81

c2

c3

c5

0.88

c4

e4 e5 e6

0.8

e7

0.6 0.7

0.9

c6 Ví dụ.

c1

e2 e3

0.91

0.7

e1

0.9

0.87 0.95 0.79 0.82

0.94 0.9

0.8

0.8

1. Tập luật tương ứng?

2. Suy luận tính CF(c6)?

3. Chuỗi lập luận

Page 82: CacHeCSTT

KBS

CSTT

82

4. Một phiên làm việc với hệ MYCIN

Mục đích:

Giúp đỡ các bác sĩ trong việc chẩn đoán và điều trị các bệnh

truyền nhiễm

Nhận dạng các cơ quan bị nhiễm bệnh

Chọn các loại thuốc khống chế các cơ quan này

Giao diện người dùng:

Đối thoại với bác sĩ để thu thập dữ liệu

Dữ liệu tổng quát về bệnh nhân

Các kết quả xét nghiệm

Các triệu chứng của bệnh nhân

EMYCIN = MYCIN – Tri thức Y học

= Sườn hệ chuyên gia (ES shell)

Page 83: CacHeCSTT

KBS

CSTT

83

Ví dụ 1.

Một vài thông tin về bệnh nhân

1. MYCIN: Họ tên ?

USER: Jack Durkin.

2. MYCIN: Tuổi ?

USER: 24

3. MYCIN: Giới tính ?

USER: Nam

4. MYCIN: Chủng tộc?

USER: CAUCASIAN

4. Một phiên làm việc với hệ MYCIN

Page 84: CacHeCSTT

KBS

CSTT

84

MYCIN cố gắng xác định bản chất lây nhiễm

5. MYCIN: Có bất kỳ phép cấy vi khuẩn cho Jack Durkin liên qua

đến bệnh hiện tại?

USER: Có

6. MYCIN: Mẫu vật lấy từ đâu?

USER: CSF

7. MYCIN: Ngày, giờ thực hiện cấy?

USER: 7- July-7:00

….

MYCIN: Gần đây Jack Durkin có các triệu chứng như: choáng

váng, hôn mê không?

USER: Có.

….

4. Một phiên làm việc với hệ MYCIN

Page 85: CacHeCSTT

KBS

CSTT

85

Ví dụ 2.

1. System: What is the patient's name?

User: George Washington

2. System: What is the patient's age?

User: 252 years

3. System: Is the patient male or female?

User: Male

4. System: What are the symptoms?

User: Headache, dizziness, upset, stomach, high fever

4. Một phiên làm việc với hệ MYCIN

Page 86: CacHeCSTT

KBS

CSTT

86

5. System: When did these symptoms first appear?

User: December 13,1799

6. System: I conclude that the patient has a viral infection,

my recommendation is that he should take two aspirin,

drink plenty of fluid, get lots of rest and call me in the

morning.

George Washington died the next day of a viral infection no

antibiotics

4. Một phiên làm việc với hệ MYCIN

Page 87: CacHeCSTT

Bùi Đức Dương – Khoa Công nghệ Thông tin

Chương 4

HỆ HỌC

Page 88: CacHeCSTT

KBS

CSTT

88

1. Giới thiệu

Trong nhiều trường hợp, ta không có sẵn tri thức

Kỹ sư tri thức cần thu nhận tri thức từ các chuyên gia

Cần biết các luật mô tả lĩnh vực cụ thể

Bài toán không được biểu diễn tường minh theo luật,

sự kiện hay quan hệ.

Hai hướng tiếp cận cho hệ thống học:

Học từ ký hiệu

Học từ dữ liệu số

Page 89: CacHeCSTT

KBS

CSTT

89

2. Các hình thức học

Học vẹt

Học bằng cách chỉ dẫn

Học bằng quy nạp

Học bằng tương tự

Học dựa trên giải thích

Học dựa trên tình huống

Học không giám sát (Khám phá)

Page 90: CacHeCSTT

KBS

CSTT

90

3. Cây định danh

Xây dựng cây định danh dựa trên sự phân hoạch của

các thuộc tính

Phân hoạch:

Nút cha là thuộc tính được phân hoạch

Các nút con: Các giá trị phân biệt ứng với thuộc tính được phân

hoạch.

Là công cụ phổ biến trong một số ứng dụng

Page 91: CacHeCSTT

KBS

CSTT

91

3. Cây định danh

Ví dụ 1:

Bảng quan sát người đi tắm biển có/không bị rám nắng

TT Tên Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

1 Hoa Đen TB Nhẹ Không Bị rám

2 Lan Đen Cao Vừa Có Không

3 Xuân Râm Thấp Vừa Có Không

4 Hạ Đen Thấp Vừa Không Bị rám

5 Thu Bạc TB Nặng Không Bị rám

6 Đông Râm Cao Nặng Không Không

7 Mơ Râm TB Nặng Không Không

8 Đào Đen Thấp Nhẹ Có Không

Page 92: CacHeCSTT

KBS

CSTT

92

3. Cây định danh

Râm Đen Bạc

Dùng thuốc

Màu tóc

Không Có

Hoa, Hạ

Thu Đông, Xuân, Mơ

Lan, Đào

Một cây định danh tương ứng

Page 93: CacHeCSTT

KBS

CSTT

93

3. Cây định danh

Chuyển tri thức học từ dạng cây sang luật:

Đi từ nút gốc đến nút lá;

Lấy nút trong làm giả thiết;

Lấy nút lá làm kết luật .

Với cây định danh Ví dụ 1, ta có luật:

If (Màu tóc = Đen) and (Dùng thuốc = Không) then (Bị rám)

Page 94: CacHeCSTT

KBS

CSTT

94

4. Thuật toán Quinlan

Xây dựng các vector đặc trưng

VA(j) = (T(j, r1), T(j, r2),… T(j, rn))

Trong đó:

A: Thuộc tính dẫn xuất; r1, r2,… rn: Các thuộc tính mục tiêu

T(j, ri) = TAij/TAj

TAij : tổng số phần tử trong phân hoạch có thuộc tính A là j và thuộc

tính mục tiêu là ri.

TAj : tổng số phần tử trong phân hoạch có thuộc tính A là j.

Lưu ý: T(j, r1)+ T(j, r2)+… +T(j, rn) = 1

Vector đơn vị: Có 1 thành phần bằng 1; còn lại bằng 0.

Thuộc tính được chọn để phân hoạch là thuộc tính có

nhiều vector đơn vị nhất

Page 95: CacHeCSTT

KBS

CSTT

95

4. Thuật toán Quinlan

Ví dụ 2. Dựa trên bảng cho trong Ví dụ 1

Thuộc tính Màu tóc (3 giá trị)

Vmàu tóc(Đen) = (T(Đen/Bị rám), T(Đen/Không bị rám))

= (2/4, 2/4) = (0.5, 0.5)

Vmàu tóc(Râm) = (T(Râm/Bị rám), T(Râm/Không bị rám))

= (0/3, 3/3) = (0.0, 1.0)

Vmàu tóc(Bạc) = (T(Bạc/Bị rám), T(Bạc/Không bị rám))

= (1/1, 0/1) = (1.0, 0.0)

Số vector đơn vị: 02

Page 96: CacHeCSTT

KBS

CSTT

96

4. Thuật toán Quinlan

Thuộc tính Chiều cao (3 giá trị)

VChiều cao(Cao) = (0/2, 2/2) = (0.0, 1.0)

VChiều cao(TB) = (2/3, 1/3)

VChiều cao(Thấp) = (1/3, 2/3)

Số vector đơn vị: 01

Thuộc tính Cân nặng (3 giá trị)

VCân nặng(Nặng) = (1/3, 2/3)

VCân nặng(Vừa) = (1/3, 2/3)

VCân nặng(Nhẹ) = (1/2, 1/2)

Số vector đơn vị: 0

Page 97: CacHeCSTT

KBS

CSTT

97

4. Thuật toán Quinlan

Thuộc tính Dùng thuốc (2 giá trị)

VDùng thuốc(Có) = (0/3, 3/3) = (0.0, 1.0)

VDùng thuốc(Không) = (3/5, 2/5)

Số vector đơn vị: 01

Vậy, ta chọn thuộc tính màu tóc để phân hoạch!

Râm Đen Bạc

Màu tóc

Thu Đông, Xuân, Mơ Hoa, Hạ, Lan, Đào

Page 98: CacHeCSTT

KBS

CSTT

98

4. Thuật toán Quinlan

Màu tóc TT Tên Chiều

cao

Cân

nặng

Dùng

thuốc Kết quả

Đen 1 Hoa TB Nhẹ Không Bị rám

Đen 2 Lan Cao Vừa Có Không

Đen 3 Hạ Thấp Vừa Không Bị rám

Đen 4 Đào Thấp Nhẹ Có Không

Thuộc tính Chiều cao (3 giá trị)

VChiều cao(Cao) = (0/1,1/1) = (0.0, 1.0)

VChiều cao(TB) = (1/1, 0/1) = (1.0, 0.0)

VChiều cao(Thấp) = (1/2, 1/2)

Số vector đơn vị: 02

Page 99: CacHeCSTT

KBS

CSTT

99

4. Thuật toán Quinlan

Thuộc tính Cân nặng (2 giá trị)

VCân nặng(Vừa) = (1/2, 1/2)

VCân nặng(Nhẹ) = (1/2, 1/2)

Số vector đơn vị: 0

Thuộc tính Dùng thuốc (2 giá trị)

VDùng thuốc(Có) = (0/2, 2/2) = (0.0, 1.0)

VDùng thuốc(Không) = (2/2, 0/2) = (1.0, 0.0)

Số vector đơn vị: 02

Có 2 thuộc tính cùng có 2 vector đơn vị:

Chiều cao: Tỷ lệ 2/3

Dùng thuốc: Tỷ lệ 2/2

Chọn thuộc tính Dùng thuốc để phân hoạch

Page 100: CacHeCSTT

KBS

CSTT

100

4. Thuật toán Quinlan

Râm Đen Bạc

Dùng thuốc

Màu tóc

Không Có

Hoa, Hạ

Thu Đông, Xuân, Mơ

Lan, Đào

Cây định danh kết quả

Page 101: CacHeCSTT

KBS

CSTT

101

4. Thuật toán Quinlan

Râm Đen Bạc

Dùng thuốc

Màu tóc

Không Có

Hoa, Hạ

Thu Đông, Xuân, Mơ

Lan, Đào Kết quả học:

If (Màu tóc = Râm) then (Bị rám = Không)

If (Màu tóc = Bạc) then (Bị rám = Có)

If (Màu tóc = Đen) AND (Dùng thuốc = Không) then (Bị rám = Có)

If (Màu tóc = Đen) AND (Dùng thuốc = Có) then (Bị rám = Không)

Page 102: CacHeCSTT

KBS

CSTT

102

5. Học theo độ bất định

Độ bất định (entropy) của thuộc tính X

Thuật toán

b

bc

c b

bc

b t

b

n

n

n

n

n

nXE 2log)(

Trong đó:

nb: số mẫu nhánh b; nt: tổng số mẫu; nbc: số mẫu trong nhánh b

của lớp c;

Repeat

- Tính độ bất định cho mọi thuộc tính

- Chọn thuộc tính có độ bất định nhỏ nhất để phân hoạch

Until (Hết thuộc tính phân hoạch)

Page 103: CacHeCSTT

KBS

CSTT

103

5. Học theo độ bất định

Ví dụ 3. Dựa trên bảng cho trong Ví dụ 1

Thuộc tính Màu tóc (3 giá trị)

Tập tóc đen: 2/4 người bị rám; 2/4 người không bị rám

Tập tóc bạc: 1/1 người bị rám; 0/1 người không bị rám

Tập tóc râm: 0/3 người bị rám; 3/3 người không bị rám

E(Màu tóc) = 4/8(-2/4log22/4-2/4log2/4)

+ 1/8(-1/1log21/1-0/1log0/1)

+3/8(-0/3log20/3-3/3log3/3)

= 0.5 + 0 + 0 =0.5.

Tương tự ta có:

E(Chiều cao)= 0.69; E(Cân nặng)=0.94; E(Dùng thuốc)=0.61.

Vậy, ta chọn Màu tóc làm thuộc tính phân hoạch

Page 104: CacHeCSTT

KBS

CSTT

104

5. Học theo độ bất định

Ở bước tiếp theo, ta sẽ tính được:

E(Chiều cao)=0.5;

E(Cân nặng)=1.0;

E(Dùng thuốc)=0.0;

Vậy ta chọn Dùng thuốc làm thuộc tính phân hoạch và

được cây định danh kết quả.

Page 105: CacHeCSTT

KBS

CSTT

105

6. Thuật giải ILA

ILA: Inductive Learning Alogrithm

Ví dụ . Bảng quan sát người đi tắm biển có/không bị rám nắng

TT Tên Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

1 Hoa Đen TB Nhẹ Không Bị rám

2 Lan Đen Cao Vừa Có Không

3 Xuân Râm Thấp Vừa Có Không

4 Hạ Đen Thấp Vừa Không Bị rám

5 Thu Bạc TB Nặng Không Bị rám

6 Đông Râm Cao Nặng Không Không

7 Mơ Râm TB Nặng Không Không

8 Đào Đen Thấp Nhẹ Có Không

Page 106: CacHeCSTT

KBS

CSTT

106

Chia bảng m mẫu thành n

bảng con theo tt quyết định

i=1; //số bảng con đã xét

R=; //Tập luật

Xét bảng con (i) Chia các tt theo các tổ hợp

phân biệt j thuộc tính

6. Thuật giải ILA

j=1; //số thuộc tính kết hợp

j++ Tìm tổ hợp lớn nhất

Tổ hợp lớn

nhất =

True False Đánh dấu các dòng thỏa

tổ hợp lớn nhất

Các dòng đều

đã đánh dấu

Thêm luật mới vào R

i++

True

False

i>n //Hết bảng con

False

END

True

Page 107: CacHeCSTT

KBS

CSTT

107

6. Thuật giải ILA

Ví dụ 5:

Bảng quan sát người đi tắm biển cho trong Ví dụ 1

TT Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

1 Đen TB Nhẹ Không Bị rám

2 Đen Cao Vừa Có Không

3 Râm Thấp Vừa Có Không

4 Đen Thấp Vừa Không Bị rám

5 Bạc TB Nặng Không Bị rám

6 Râm Cao Nặng Không Không

7 Râm TB Nặng Không Không

8 Đen Thấp Nhẹ Có Không

Page 108: CacHeCSTT

KBS

CSTT

108

6. Thuật giải ILA

Bước 1: Chia thành 2 bảng con

Bảng TT Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

1

1 Đen TB Nhẹ Không Bị rám

2 Đen Thấp Vừa Không Bị rám

3 Bạc TB Nặng Không Bị rám

Bảng TT Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

2

1 Đen Cao Vừa Có Không

2 Râm Thấp Vừa Có Không

3 Râm Cao Nặng Không Không

4 Râm TB Nặng Không Không

5 Đen Thấp Nhẹ Có Không

Page 109: CacHeCSTT

KBS

CSTT

109

6. Thuật giải ILA

Xét bảng con i=1;

Bảng TT Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

1

1 Đen TB Nhẹ Không Bị rám

2 Đen Thấp Vừa Không Bị rám

3 Bạc TB Nặng Không Bị rám

j=1 (1 thuộc tính):

Có 4 tổ hợp {Màu tóc}, {Chiều cao}, {Cân nặng} và {Dùng thuốc}

{Màu tóc} {Chiều cao} {Cân nặng} {Dùng thuốc}

Bạc (1)

Tổ hợp lớn nhất: {Màu tóc}= “Bạc”

Page 110: CacHeCSTT

KBS

CSTT

110

6. Thuật giải ILA

Bảng TT Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

1

1 Đen TB Nhẹ Không Bị rám

2 Đen Thấp Vừa Không Bị rám

3 Bạc TB Nặng Không Bị rám

Tổ hợp lớn nhất: ;

Đánh dấu dòng có {Màu tóc}= “Bạc”

j=2 (2 thuộc tính):

{Màu tóc, Chiều cao}, {Màu tóc, Cân nặng}; {Màu tóc, Dùng thuốc}

{Chiều cao, Cân nặng}, {Chiều cao, Dùng thuốc}; {Cân nặng, Dùng thuốc}

R = R {IF Màu tóc = Bạc THEN Kết quả = Bị rám}

{Màu tóc} {Chiều cao} {Cân nặng} {Dùng thuốc}

Page 111: CacHeCSTT

KBS

CSTT

111

6. Thuật giải ILA

{Màu tóc, Chiều cao} {Màu tóc, Cân nặng} {Màu tóc, Dùng thuốc}

Đen, TB (1) Đen, Không (2)

{Chiều cao, Cân nặng} {Chiều cao, Dùng thuốc} {Cân nặng, Dùng thuốc}

TB, Nhẹ (1) TB, Không (1) Nhẹ, Không (1)

Vừa, Không (1)

Tổ hợp lớn nhất: {Màu tóc, Dùng thuốc}= “Đen, Không”

Bảng TT Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

1

1 Đen TB Nhẹ Không Bị rám

2 Đen Thấp Vừa Không Bị rám

3 Bạc TB Nặng Không Bị rám

Đánh dấu dòng có {Màu tóc, Dùng thuốc}= “Đen, Không”

R = R {IF Màu tóc = Đen AND Dùng thuốc =Không

THEN Kết quả = Bị rám}

Page 112: CacHeCSTT

KBS

CSTT

112

6. Thuật giải ILA

Xét bảng con i=2;

Bảng TT Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

2

1 Đen Cao Vừa Có Không

2 Râm Thấp Vừa Có Không

3 Râm Cao Nặng Không Không

4 Râm TB Nặng Không Không

5 Đen Thấp Nhẹ Có Không

j=1 (1 thuộc tính):

{Màu tóc} {Chiều cao} {Cân nặng} {Dùng thuốc}

Râm (3) Cao (2) Có (3)

Tổ hợp lớn nhất: {Màu tóc}= “Râm” và {Dùng thuốc}=“Có”

Chọn tổ hợp đầu tiên: {Màu tóc}= “Râm”

Page 113: CacHeCSTT

KBS

CSTT

113

6. Thuật giải ILA

Bảng TT Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

2

1 Đen Cao Vừa Có Không

2 Râm Thấp Vừa Có Không

3 Râm Cao Nặng Không Không

4 Râm TB Nặng Không Không

5 Đen Thấp Nhẹ Có Không

R = R {IF Màu tóc = Râm THEN Kết quả =Không}

Đánh dấu các dòng có : {Màu tóc}= “Râm”

{Màu tóc} {Chiều cao} {Cân nặng} {Dùng thuốc}

Cao (1) Có (2)

Tổ hợp lớn nhất: {Dùng thuốc}=“Có”

Page 114: CacHeCSTT

KBS

CSTT

114

6. Thuật giải ILA

Bảng TT Màu tóc Chiều cao Cân nặng Dùng thuốc Kết quả

2

1 Đen Cao Vừa Có Không

2 Râm Thấp Vừa Có Không

3 Râm Cao Nặng Không Không

4 Râm TB Nặng Không Không

5 Đen Thấp Nhẹ Có Không

R = R {IF Dùng thuốc= Có THEN Kết quả =Không}

Đánh dấu các dòng có : {Dùng thuốc}= “Có”

Đánh dấu hết dòng

Đã xét hết các bảng con Kết thúc

Page 115: CacHeCSTT

Bùi Đức Dương – Khoa Công nghệ Thông tin

Chương 5

HỆ MỜ

Page 116: CacHeCSTT

KBS

CSTT

116 www.themegallery.com

Tập rõ (Crisp set - Cantor)

A là tập rõ, x là phần tử có 2 khả năng: x A hoặc x A

là hàm đặc trưng của tập A: (x)=1 nếu x A và (x)=0 nếu x

A.

Tập mờ (Fuzzy set)

Là khái niệm mở rộng để phản ánh mức độ x là phần tử thuộc

tập hợp mờ A.

Hàm thành viên A(x): phản ánh mức độ x thuộc về A.

Một tập mờ A trong tập vũ trụ U được xác định bởi hàm:

A: U →[0,1]

1. Tập rõ – tập mờ

Page 117: CacHeCSTT

KBS

CSTT

117 www.themegallery.com

Hàm đặc trưng vs. Hàm thành viên

Tập rõ

1

Tập mờ

1

Ví dụ:

Tập rõ: ”Nhiệt độ”.

Tập mờ: ”Lạnh”:

Nhiệt độ Nha Trang là 28oC: (Nha Trang)=0.2

Nhiệt độ Hà Nội là 16oC: (Hà Nội)=0.7

1. Tập rõ – tập mờ

Page 118: CacHeCSTT

KBS

CSTT

118

Biểu diễn tập mờ

Tập vũ trụ U hữu hạn, rời rạc

Tập vũ trụ U liên tục

Ux

A

x

xA

)(

Ux

A

x

xA

)(

Ví dụ:

cbaA

cbaU

6.07.03.0

},,{

Ví dụ: Cho tập mờ A = {“Số gần 7”} , ta có thể biểu diễn

Ux

x

x

A

x

eA

ex2

2

)7(

)7()(

1. Tập rõ – tập mờ

Page 119: CacHeCSTT

KBS

CSTT

119 www.themegallery.com

1. Tập rõ – tập mờ

Biến ngôn ngữ Là biến nhận các từ trong ngôn ngữ tự nhiên

Biến ngôn ngữ xác định bởi bộ 4 (x, T, U, M)

x: Tên biến. Ví dụ: “Tốc độ”. “Nhiệt độ”, “Chiều cao”

T: Tập các giá trị ngôn ngữ mà x có thể nhận. Ví dụ: Với x là

“Tốc độ” thì T={chậm, vừa, nhanh}

U: Là miền giá trị của x. Ví dụ: Với x là “Tốc độ”, U=[0..100]

M: Luật ngữ nghĩa, ứng mỗi từ tT với một tập mờ A

Gia tử: Tăng thêm tính mơ hồ

Ví dụ. Tập mờ gồm những xe chạy “rất” nhanh

Rất(A)(x) = ((A)(x))2

Page 120: CacHeCSTT

KBS

CSTT

120

xkhi

xkhix

xkhix

xkhi

xSx

1

))/()((21

))/()((2

0

),,,()(2

2

www.themegallery.com

Có 3 dạng

Dạng tăng

Hàm S tăng

1

0.5

0

2. Các dạng hàm thành viên

Page 121: CacHeCSTT

KBS

CSTT

121 www.themegallery.com

Dạng giảm

),,,(1)( xSx

Hàm S giảm

1

0.5

0

2. Các dạng hàm thành viên

Page 122: CacHeCSTT

KBS

CSTT

122 www.themegallery.com

Dạng chuông

Hàm dạng chuông

xkhixS

xkhixSxx

),2/,,(

),2/,,(),,()(

1

0.5

0 + - +/2 -/2

2. Các dạng hàm thành viên

Page 123: CacHeCSTT

KBS

CSTT

123 www.themegallery.com

Hàm thành viên cho các biến rời rạc

Cho tập vũ trụ E = Tốc độ = {20, 50, 80, 100}, đơn vị km/h

Xét tập mờ T1 = Nhanh

Nhanh(20) = 0: 20km/h là không nhanh

Tương tự: Nhanh(50) = 0.5, Nhanh(80) = 0.7, Nhanh(100) = 1

Nhanh

1

0.5

0

80 20 100 50

0.7

E

2. Các dạng hàm thành viên

Page 124: CacHeCSTT

KBS

CSTT

124 www.themegallery.com

Tương tự với tập mờ T2 = Vừa và T3 = Chậm

1

0.5

0

80 20 100 50

0.2

E

Vừa

1

0

80 20 100 50

0.6

Chậm

E

2. Các dạng hàm thành viên

Page 125: CacHeCSTT

KBS

CSTT

125 www.themegallery.com

2. Các dạng hàm thành viên

Hàm thành viên cho các biến liên tục

Cho tập vũ trụ E = Tốc độ, đơn vị km/h

Xét tập mờ T1 = Nhanh và T2 = Vừa

2)100/()( xxNhanh

1005050/)100(

502030/)20(

200

)(Vua

xifx

xifx

xif

x

Page 126: CacHeCSTT

KBS

CSTT

126

3. Các phép toán trên tập mờ

Cho 3 tập mờ A, B, C với A(x), B(x), C(x)

C = A B: C(x) = min {A(x), B(x)}

C = A B: C(x) = max {A(x), B(x)}

C = A: C(x) = 1- A(x)

0.5

0

80 20 100 50

0.2

E

NhanhChậm

NhanhChậm

1

0.5

0

80 20 100 50

0.7

E

Ví dụ:

Page 127: CacHeCSTT

KBS

CSTT

127

4. Suy diễn mờ

Mệnh đề mờ: Khẳng định giá trị cho biến ngôn ngữ

<Miền xác định X> is <tập mờ A>

Ví dụ: Chiều cao là vừa

Logic mờ sử dụng tập mờ trong các mệnh đề mờ

IF X is A THEN Y is B

Ví dụ: Chiều cao là vừa thì trọng lượng là trung bình

Hệ chuyên gia lưu trữ liên kết (A,B) trong ma trận M.

Hai kỹ thuật suy diễn thông dụng:

Suy diễn Max-Min

Suy diễn cực đại

Page 128: CacHeCSTT

KBS

CSTT

128 www.themegallery.com

5. Nguyên lý xử lý các bài toán mờ

Bộ lập luận mờ

Bộ mờ hóa Bộ giải mờ

Vào E Ra U

Bộ mờ hóa: Chuyển đổi dữ liệu thành trị mờ

Bộ lập luận mờ: Đưa ra kết quả mờ

Bộ giải mờ: Biến đổi trị mờ thành trị rõ

Page 129: CacHeCSTT

KBS

CSTT

129 www.themegallery.com

Bài toán 1

Ví dụ: Xét bài toán mờ xác định bởi các luật sau

Luật 1: If x is A1 and y is B1 Then z is C1

Luật 2: If x is A2 or y is B2 Then z is C2

Vào: x0, y0

Ra: z0

Dữ liệu đầu vào là các giá trị rõ

5. Nguyên lý xử lý các bài toán mờ

Page 130: CacHeCSTT

KBS

CSTT

130 www.themegallery.com

Bài toán 1 Phương pháp giải quyết

Ứng với tập mờ A1 ta có hàm thành viên A1(x)

Ứng với tập mờ A2 ta có hàm thành viên A2(x)

Ứng với tập mờ B1 ta có hàm thành viên B1(x)

Ứng với tập mờ B2 ta có hàm thành viên B2(x)

Ứng với tập mờ C1 ta có hàm thành viên C1(x)

Ứng với tập mờ C2 ta có hàm thành viên C2(x)

5. Nguyên lý xử lý các bài toán mờ

Page 131: CacHeCSTT

KBS

CSTT

131 www.themegallery.com

C C2 C1

A2 A2

A1 A1 B1 B1

C1 C1

B2 B2 C2 C2

x0 y0

w1

w2

c(z)= W1xc1 + W2xc2

5. Nguyên lý xử lý các bài toán mờ

Page 132: CacHeCSTT

KBS

CSTT

132 www.themegallery.com

Hàm thành viên cho kết luận

)()(1

zWzn

i

KLiC i

n

i

i

n

i

ii WzDefuzzy11

/).()(

Giải mờ

5. Nguyên lý xử lý các bài toán mờ

Page 133: CacHeCSTT

KBS

CSTT

133 www.themegallery.com

Ví dụ

Giải bài toán bơm nước lấy từ Giếng vào Hồ.

Giếng Hồ

10

0

y

2

x 0

Với biến ngôn ngữ Giếng có các tập mờ nước cao (N.Cao),

nước vừa (N.Vừa) và nước thấp (N.Thấp).

Với biến ngôn ngữ Hồ có các tập mờ hồ đầy (H.Đầy), hồ lưng

(H.Lưng) và hồ cạn (H.Cạn)

Với biến ngôn ngữ thời gian bơm có các tập mờ bơm lâu

(B.Lâu), bơm hơi lâu (B.Hơi Lâu) và bơm vừa (B.Vừa)

5. Nguyên lý xử lý các bài toán mờ

Page 134: CacHeCSTT

KBS

CSTT

134 www.themegallery.com

1

H.Đầy

1

H.Lưng H.Cạn 1

2 2 2 1

202/ xifxH.Đầy(x)

212

10

xifx

xifxH.Lưng(x)

202/1 xifxH.Cạn(x)

Các hàm thành viên của Hồ nước

5. Nguyên lý xử lý các bài toán mờ

Page 135: CacHeCSTT

KBS

CSTT

135 www.themegallery.com

10010/ yifyN.Cao(y)

1055/)10(

1005/

yify

yifyN.Vừa(y)

10010/1 xifyN.Thấp(y)

Các hàm thành viên của Giếng

1

N.Cao

1

N.Vừa N.Thấp 1

10 10 10 5

5. Nguyên lý xử lý các bài toán mờ

Page 136: CacHeCSTT

KBS

CSTT

136

30030/ zifzB.Lâu(z)

3020)20(05.01

20020/

zifz

zifzB.Hơi Lâu(z)

Các hàm thành viên của kết luận cho từng luật

301515/)30(

15015/

zifz

zifzB.Vừa(z)

1

B.Lâu

1

B.Vừa B.Hơi Lâu

1

30 30 15 20 30

0.5

5. Nguyên lý xử lý các bài toán mờ

Page 137: CacHeCSTT

KBS

CSTT

137

H.Đầy H.Lưng H.Cạn

N.Cao 0 B.Vừa B.Lâu

N.Vừa 0 B.Vừa B.Hơi Lâu

N.Thấp 0 0 0

Căn cứ vào bảng trên ta có 4 luật

Luật 1: If x is H.Lưng and y is N.Cao Then z is B.Vừa

Luật 2: If x is H.Lưng and y is N.Vừa Then z is B.Vừa

Luật 3: If x is H.Cạn and y is N.Cao Then z is B.Lâu

Luật 4: If x is H.Cạn and y is N.Vừa Then z is B.Hơi Lâu

Bảng mô tả

5. Nguyên lý xử lý các bài toán mờ

Page 138: CacHeCSTT

KBS

CSTT

138

Cho đầu vào: x0=1; y0=3

1

H.Lưng

2 1

1

N.Cao

10

1

B.Vừa

30 15

1

H.Lưng

2 1

1

B.Vừa

30 15

1

N.Vừa

10 5

H.Cạn 1

2

1

N.Cao

10

1

B.Lâu

30

H.Cạn 1

2

1

N.Vừa

10 5

B.Hơi Lâu

1

20 30

0.5

5. Nguyên lý xử lý các bài toán mờ

Page 139: CacHeCSTT

KBS

CSTT

139

Cho đầu vào: x0=1; y0=3

H.Lưng N.Cao

B.Vừa

H.Lưng

1

B.Vừa N.Vừa

H.Cạn N.Cao

B.Lâu

H.Cạn

2

N.Vừa

10

B.Hơi Lâu

30 3

r1

r2

r3

r4

5. Nguyên lý xử lý các bài toán mờ

Page 140: CacHeCSTT

KBS

CSTT

140

Ta có

H.Lưng(x0)=1

N.Cao(y0)=0.3 W1=min { 1; 0.3} = 0.3

H.Lưng(x0)=1

N.Vừa(y0)=0.6 W2=min { 1; 0.6} = 0.6

H.Cạn(x0)=0.5

N.Cao(y0)=0.3 W3=min {0.5; 0.3} = 0.3

H.Cạn(x0)=0.5

N.Vừa(y0)=0.6 W4=min {0.5; 0.6} = 0.5

5. Nguyên lý xử lý các bài toán mờ

Page 141: CacHeCSTT

KBS

CSTT

141

Suy ra

)()(1

zWzn

i

KLiC i

= W1xB.Vừa(z)+ W2xB.Vừa(z)+W3xB.Lâu(z)+ W4xB.Hơi Lâu(z)

= 0.3xB.Vừa(z)+ 0.6xB.Vừa(z)+0.3xB.Lâu(z)+ 0.5xB.Hơi Lâu(z)

Giải mờ

(min)66.16≈)z(/)z(.z=)z(Defuzzy ∫∫30

0

C

30

0

C μμ

5. Nguyên lý xử lý các bài toán mờ

Page 142: CacHeCSTT

Bùi Đức Dương – Khoa Công nghệ Thông tin