Tải bản đầy đủ (.docx) (37 trang)

Hệ chuyên gia tư vấn chọn mua smartphone

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 (595.57 KB, 37 trang )

Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN

_________________

Môn: HỆ CHUYÊN GIA
Đề tài: Hệ chuyên gia tư vấn chọn mua smartphone
Sinh viên thực hiện:
1
2
3

Trịnh Khắc Tùng
Trần Công Tưởng
Nguyễn Thị Anh

Giảng viên hướng dẫn:
ThS: Lê Thị Thủy

PAGE 1

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

Hà Nội, tháng 6 năm 2016

PAGE 2



TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

MỤC LỤC

PAGE 3

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

BẢNG PHÂN CÔNG NHIỆM VỤ

Họ và tên
Nguyễn Thị Anh

Trịnh Khắc Tùng

Trần Công Tưởng

Nhiệm vụ
- Viết báo cáo
- Xây dựng tập luật về hệ điều hành
window
- Đưa ra yêu cầu chức năng của
chương trình

- Xây dựng tập luật về hệ điều hành
IOS
- Cài đặt chương trình trên (PHP).
- Xây dựng tập luật về hệ điều hành
Android
-Kiểm thử chương trình, báo cáo đánh
giá.
- In tài liệu báo cáo.

NỘI DUNG
I-

PAGE 4

Tổng quan hệ chuyên gia và giới thiệu về bài toán
1. Tổng quan hệ chuyên gia
Khái niệm:
TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

Hệ chuyên gia là một loại hệ cơ sở tri thức được thiết kế cho một
lĩnh vực ứng dụng cụ thể. Ví dụ: Hệ chuyên gia về chẩn đoán bệnh
trong y khoa, hệ chuyên gia chẩn đoán hỏng hóc máy tính và cung
cấp các ý kiến dựa trên kinh nghiệm của chuyên gia con người đã
được đưa vào hệ chuyên gia.
Các hệ chuyên gia làm việc như một chuyên gia thực thụ
Hệ chuyên gia được thiết kế để giải quyết các vấn đề phức tạp về lý
luận tri thức.



Thiết kế của một HCG dựa trên luật: (Rule–Based

ES)
Hình 1_1 cho thấy các module quan trọng nhất tạo nên một
hệ chuyên gia dựa trên luật. Người dùng tương tác với hệ
chuyên gia thông qua một giao diện người dùng (user
interface), giao diện này đơn giản hóa việc giao tiếp và che
giấu phần lớn sự phức tạp của hệ thống (ví dụ như cấu trúc
bên trong của cơ sở các luật). Các hệ chuyên gia sử dụng một
số lượng phong phú các kiểu giao diện, bao gồm hỏi và trả
lời, điều khiển bởi trình đơn, ngôn ngữ tự nhiên, hay đồ họa,
… Việc quyết định sử dụng giao diện như thế nào là sự thỏa
hiệp giữa nhu cầu của người dùng với những đòi hỏi của cơ
sở tri thức và hệ suy diễn.
Trái tim của hệ chuyên gia là cơ sở tri thức tổng
quát (general knowledge base), chứa tri thức giải quyết vấn
đề của một ứng dụng cụ thể. Trong một hệ chuyên gia dựa
trên luật tri thức này được biểu diễn dưới dạng các luật if…
then…. Cơ sở tri thức bao gồm tri thức tổng quát (general

PAGE 5

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

knowledge)


cũng

như

thông

tin

của

một

tình huống cụ thể (case-specific). Hình 1_1. Kiến trúc của một hệ
chuyên gia tiêu biểu.
Động cơ suy diễn (inference engine) áp dụng tri thức cho việc giải
quyết các bài toán thực tế. Về căn bản nó là một trình thông dịch
cho cơ sở tri thức. Trong hệ sinh (production system), động cơ suy
diễn thực hiện chu trình điều khiển nhận dạng – hành động
(recognize-act control cycle). Việc tách biệt cơ sở tri thức ra khỏi
động cơ suy diễn là rất quan trọng vì nhiều lý do:


Sự tách biệt của tri thức dùng để giải quyết vấn đề và động cơ suy
diễn sẽ tạo điều kiện cho việc biểu diễn tri thức theo một cách tự
nhiên hơn. Ví dụ, các luật if…then… gần gũi với cách con người

PAGE 6

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.



Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

mô tả những kỹ thuật giải quyết vấn đề của họ hơn so với một
chương trình đưa luôn tri thức này vào phần mã máy tính cấp thấp.


Bởi vì cơ sở tri thức được cách ly khỏi các cấu trúc điều khiển cấp
thấp của chương trình, các nhà xây dựng HCG có thể tập trung một
cách trực tiếp vào việc nắm bắt và tổ chức GQVĐ hơn là phải thực
hiện trên các chi tiết của việc cài đặt vào máy tính.



Sự phân chia tri thức và điều khiển cho phép thay đổi một phần cơ
sở tri thức mà không tạo ra các hiệu ứng lề trên các phần khác của
chương trình.



Sự tách biệt này cũng cho phép một phần mềm điều khiển và giao
tiếp có thể được sử dụng cho nhiều hệ thống khác nhau. Một trình
cốt lõi của HCG (expert system shell) có tất cả các thành phần của
hình 1_1, trừ phần cơ sở tri thức và dữ liệu của tình huống cụ thể.
Các nhà lập trình có thể sử dụng “trình cốt lõi rỗng của HCG” và
tạo ra một cơ sở tri thức mới thích hợp với ứng dụng của họ. Các
đường chấm chấm trong hình 1_1 biểu thị các module của trình cốt
lõi.




Như đã thảo luận trong chương 5 về hệ sinh, sự module hóa này
cho phép chúng ta thử nghiệm nhiều chế độ điều khiển khác nhau
trên cùng một cơ sở luật.
Một hệ con giải thích (explanation subsystem) ch phép chương
trình giải thích quá trình suy luận của nó cho người dùng. Các giải
thích này bao gồm các lập luận biện minh cho các kết luận của hệ
thống (trả lời cho câu hỏi how), giải thích vì sao hệ thống cần dữ
liệu đó (trả lời cho câu hỏi why),…

PAGE 7

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

Nhiều HCG còn bao gồm một trình soạn thảo cơ sở tri
thức (knowledge-base editor). Trình soạn thảo này giúp các nhà lập
trình xác định và hiệu chỉnh lỗi trong quá trình làm việc của
chương trình, thường là bằng cách truy xuất những thông tin cung
cấp bởi hệ con giải thích. Chúng cũng có thể hỗ trợ cho việc bổ
sung tri thức mới, giúp duy trì cú pháp luật chính xác, và thực hiện
các kiểm tra tính nhất quán trên cơ sở tri thức đã cập nhật.
Việc sử dụng trình cốt lõi HCG có thể giúp ta giảm đáng kể thời
gian thiết kế và cài đặt chương trình. Ví dụ, HCG MYCIN dùng để
chẩn đoán bệnh viêm màng não xương sống và nhiễm trùng máu
được phát triển trong khoảng 20 năm-người (person-year).
EMYCIN (Empty MYCIN) là một trình cốt lõi của MYCIN được

tạo ra bằng cách loại bỏ tri thức chuyên ngành khỏi chương trình
MYCIN. Sử dụng EMYCIN, các kỹ sư tri thức đã cài đặt PUFF,
một chương trình phân tích các vấn đề về phổi cho các bệnh nhân,
trong khoảng 5 năm-người. Đây là một sự tiết kiệm đáng kể và là
một khía cạnh quan trọng chứng tỏ sức sống trên phương diện
thương mại của công nghệ hệ chuyên gia.
Đối với người lập trình, điều quan trọng là phải lựa chọn đúng trình
cốt lõi HCG để phát triển một HCG mới. Các bài toán khác nhau
đòi hỏi các quá trình lập luận khác nhau: tìm kiếm hướng đích so
với tìm kiếm hướng dữ liệu chẳng hạn. Chiến lược điều khiển cung
cấp bởi trình cốt lõi cần phải thích hợp với ứng dụng; phương pháp
suy luận y học dùng cho ứng dụng PUFF rất giống với phương
pháp mà HCG MYCIN sử dụng; điều đó làm cho việc sử dụng trình
cốt lõi EMYCIN trở nên thích hợp. Nếu trình cốt lõi có quá trình
suy luận không thích hợp, thì việc sử dụng nó có thể là một sai lầm
và tệ hơn là bắt đầu từ xây dựng từ đầu.
PAGE 8

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone



Các vấn đề phù hợp để xây dựng HCG

Các HCG thường đòi hỏi sự đầu tư đáng kể về tiền bạc và sức lực
con người. Những cố gắng để giải quyết một bài toán quá phức tạp,
quá ít hiểu biết, hoặc có những yếu tố không phù hợp khác đối với

công nghệ hiện tại có thể dẫn đến những thất bại hao tiền tốn của.
Các nhà nghiên cứu đã xây dựng một tập hợp các chỉ dẫn có tính
không hình thức cho việc xác định xem khi nào thì một bài toán
thích hợp để giải quyết bằng HCG:


Sự cần thiết phải có một giải pháp phải biện minh cho chi phí
và sức lực của việc xây dựng HCG, vì nếu không đó sẽ là một sự
lãng phí. Công ty máy tính DEC đã bỏ ra tiền và công sức để xây
dựng HCG XCON để tự động hóa công tác tạo cấu hình cho máy
tính. Kết quả, XCON đã giúp công ty tiết kiệm được tài chính và
duy trì lòng tin của khách hàng. Tương tự, người ta đã cây dựng
nhiều HCG trong các lĩnh vực như khai thác khoáng sản, kinh
doanh quốc phòng, và y học, là những nơi tồn tại tiềm năng to lớn
cho việc tiết kiệm tiền bạc, thời gian và sinh mạng con người.



Hiểu biết chuyên môn của con người không sẵn có ở mọi nơi
cần đến nó. Có rất nhiều HCG đã được xây dựng trong ngành y, vì
sự chuyên môn và tính phức tạp trongkỹ thuật của y học hiện đại đã
khiến cho các bác sĩ gặp nhiều khó khăn trong việc theo kịp những
tiến bộ của các phương pháp chẩn đoán và điều trị. Số lượng các
chuyên gia đáp ứng được các yêu cầu này rất hiếm và phải trả thù
lao cao cho công việc của họ, do đó mà các hệ chuyên gia được
nhìn nhận như là một cứu cánh. Nhờ có HCG, các bác sĩ ở địa
phương có thể chẩn đoán và điều trị bệnh ở mức độ chuyên gia.
Trong ngành địa chất, bằng cách bố trí HCG tại những nơi khai

PAGE 9


TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

thác, nhiều vấn đề có thể được giải quyết mà không cần các chuyên
gia con người phải có mặt. Tương tự, sự lãng phí những kiến thức
chuyên môn có giá trị do việc chuyển đổi nhân viên hay những
người sắp về hưu có thể biện minh cho việc xây dựng các hệ
chuyên gia.


Vấn đề có thể được giải quyết bằng cách sử dụng các kỹ thuật
suy luận ký hiệu. Những giải pháp vấn đề không nên đòi hỏi sự
khéo léo tay chân hay khả năng cảm thụ. Tuy rằng chúng ta đã có
những robot và các hệ nhìn, hiện tại chúng vẫn thiếu khả năng tinh
tế và linh hoạt của con người. Các hệ chuyên gia chỉ thích hợp với
các vấn đề mà con người có thể giải quyết thông qua sự suy luận
trên các ký hiệu.



Phạm vi xác định vấn đề được cấu trúc tốt và không đòi hỏi sự
suy luận theo lẽ thường tình (commonsense reasoning). Mặc dù
các hệ chuyên gia đã được xây dựng trong nhiều lĩnh vực đòi hỏi tri
thức kỹ thuật chuyên môn hóa, nhiều sự suy luận theo lẽ thường
của con người vẫn nằm ngoài khả năng hiện tại của chúng. Các lĩnh
vực mang tính kỹ thuật cao có ưu điểm là được hiểu biết và hình
thức hóa kỹ lưỡng: các thuật ngữ được định nghĩa đấy đủ và các

chủ đề đã có sẵn những mô hình khái niệm rõ ràng và cụ thể.



Vấn đề có thể không giải quyết được bằng cách sử dụng các
phương pháp tính toán truyền thống. Không nên sử dụng công
nghệ HCG để “phát minh lại chiếc bánh xe” (reinvent the wheel).
Nếu một bài toán có thể giải quyết một cách thỏa đáng bằng những
kỹ thuật truyền thống hơn như các phương pháp số, thống kê, … thì
chúng không phải là một cử ứng viên cho việc thiết kế HCG.

PAGE

10

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone



Có sự hợp tác và hiểu ý nhau giữa các chuyên gia. Tri thức sử
dụng bởi các chuyên gia hiếm khi tìm thấy trong các sách giáo khoa
mà chỉ có được nhờ kinh nghiệm và sự đánh giá của con người khi
làm việc trong lĩnh vực đó. Điều quan trọng là các chuyên gia đó
sẵn sàng và có khả năng chia sẻ tri thức. Các chuyên gia có thể sẽ
không hợp tác khi họ cảm thấy bị đe dọa bởi hệ thống, sợ rằng hệ
thống có thể thay thế họ, hoặc nghĩa rằng đề án không thể thành
công, chỉ lãng phí thời gian của họ, khi đó họ sẽ không bỏ ra thời

gian và nỗ lực cần thiết.Một điều quan trọng khác là ban quản lý
phải hỗ trợ dự án và chi phép các chuyên gia sử dụng thời gian làm
việc chính thức của họ để cộng tác với các kỹ sư tri thức.



Vấn đề cần giải quyết phải có kích thước và quy mô đúng
mức. Vấn đề không được vượt quá khả năng của công nghệ hiện
tại. Ví dụ, một chương trình cố gắng nắm bắt mọi hiểu biết chuyên
môn của một bác sĩ y khoa sẽ không khả thi trong khi đó một
chương trình cố vấn cho các bác sĩ trong việc sử dụng một phần
nào đó của thiết bị chẩn đoán sẽ thích hợp hơn.
Mặc dù một vấn đề lớn có thể không phù hợp với giải pháp của hệ
chuyên gia, ta có thể phân chia nó thành các vấn đề nhỏ hơn, độc
lập nhau và phù hợp với HCG. Điều này tương ứng với chiến lược
phân rã “top-down” sử dụng trong công nghệ phần mềm truyền
thống. Một cách giải quyết khác là ta bắt đầu bằng một chương
trình đơn giản có khả năng giải quyết một phần của vấn đề rồi từng
bước tăng dần chức năng của nó để xử lý phạm vi lớn hơn của vấn
đề. Chiến lược này gọi là “đường kẻ mỏng” (thin line), ám chỉ mục
tiêu của nó là tạo ra một khuôn mẫu hy sinh bề rộng của khả năng
ứng dụng nhằm ưu tiên việc tạo ra một lời giải đầy đủ cho tập hợp

PAGE

11

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.



Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

nhỏ các bài toán thử nghiệm. Kỹ thuật này tỏ ra hiệu quả để khám
phá các vấn đề phức tạp và chưa được hiểu rõ. Người ta sử dụng
thành công kỹ thuật này trong việc tạo ra XCON: ban đầu chương
trình được thiết kế chỉ để định cấu hình cho các máy tính VAX 780;
sau đó nó được mở rộng để xử lý luôn tất cả các hệ máy VAX và hệ
máy PDP-11.


Qui trình công nghệ tri thức

Những người liên quan chủ yếu trong việc xây dựng một HCG
là kỹ sư tri thức (knowledge engineer), chuyên gia (domain expert)
và người dùng cuối (end-user).
Kỹ sư tri thức là chuyên gia về ngôn ngữ và biểu diễn trong TTNT,
với nhiệm vụ chính là chọn các công cụ phần mềm và phần cứng
cho đề án, giúp đỡ chuyên gia phát biểu các tri thức cần thiết, và cài
đặt các tri thức đó vào một cơ sở tri thức đúng đắn và hiệu quả.
Thông thường, kỹ sư tri thức này ban đầu không hiểu biết gì về lĩnh
vực ứng dụng.
Chuyên gia cung cấp tri thức về lĩnh vực ứng dụng. Thông thường,
đây là một người đã từng công tác trong lĩnh vực ứng dụng và hiểu
biết những kỹ thuật giải quyết vấn đề của nó, chẳng hạn như các
cách làm tắt, xử lý dữ liệu không chính xác, đánh giá những giải
pháp cục bộ, và tất cả những kỹ năng khác chứng tỏ anh ta có đẳng
cấp của một chuyên gia. Chuyên gia chịu trách nhiệm chính trong
việc giải thích rõ những kỹ năng này với kỹ sư tri thức.
Trong phần lớn các ứng dụng, người dùng cuối quyết định những
ràng buộc thiết kế chính. Chừng nào người dùng đó còn chưa hài

lòng, thì còn phải đầu tư sức lực cho việc phát triển chương trình.
PAGE

12

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

Những kỹ năng và nhu cầu của người dùng cần phải xem xét trong
suốt quá trình thiết kế: chương trình có làm cho công việc của
người dùng dễ dàng hơn, nhanh hơn, thuận tiện hơn không? Người
dùng cần sự giải thích ở mức độ nào? Môi trường làm việc của
người dùng có đặt ra những hạn chế nào đó cho việc sử dụng
chương trình? Ví dụ như, một giao diện đòi hỏi việc gõ bàn phím sẽ
không phù hợp với thao tác trong khoang lái của một máy bay
chiến đấu phản lực.
Giống như hầu hết các công việc lập trình trong TTNT, việc xây
dựng HCG đòi hỏi một chu trình phát triển theo kiểu không truyền
thống dựa trên một bản mẫu được tạo ra ban đầu và việc xem xét lại
mã lệnh một cách tăng dần. Phương pháp lập trình này còn gọi là
lập trình thăm dò (exploratory programming).
Nói chung quá trình xây dựng hệ thống bắt đầu với việc kỹ sư tri
thức cố gắng làm quen với phạm vi xác định vấn đề (problem
domain). Điều này giúp ích cho việc giao tiếp với chuyên gia. Nó
được thực hiện bằng những bài phỏng vấn mở đầu với chuyên gia
đó, bằng sự quan sát các chuyên gia trong quá trình họ làm việc,
hoặc thông qua việc đọc những tài liệu giới thiệu về lĩnh vực
chuyên ngành đó. Tiếp theo kỹ sư tri thức và chuyên gia bắt đầu

quá trình khai thác những tri thức giải quyết vấn đề của chuyên gia
này. Công việc này được thực hiện bằng cách đưa cho chuyên gia
một loạt các bài toán ví dụ và yêu cầu anh ta giải thích những kỹ
thuật được sử dụng để đạt được lời giải. Trong giai đoạn này, việc
sử dụng các băng video hoặc audio là rất quan trọng.
Thông thường, sẽ tốt hơn nếu kỹ sư tri thức là một người mới làm
quen với lĩnh vực ứng dụng, vì những chuyên gia có thể quên đề
PAGE

13

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

cập đến những bước thao tác đã trở thành hiển nhiên hay thậm chí
là tự động đối với họ sau nhiều năm công tác trong lĩnh vực đó. Vì
vậy, các kỹ sư tri thức không biết gì về lĩnh vực này có thể sẽ phát
hiện những bước nhảy cóc này, và do đó sẽ yêu cầu chuyên gia làm
sáng tỏ vấn đề.
Ngay sau khi kỹ sư đã có được cái nhìn tổng quát về lĩnh vực của
vấn đề và đã cùng chuyên gia giải quyết một số bài toán, anh ta sẽ
bắt tay vào thiết kế hệ thống: chọn phương pháp biểu diễn tri thức,
như luật hay frame chẳng hạn, xác định chiến lược tìm kiếm, tiến
(forward), lùi (backward), theo chiều sâu (depth-first), tốt nhất
(best-first),… và thiết kế giao diện người dùng. Sau khi triển khai
thiết kế này đến mức có thể hài lòng, kỹ sư tri thức bắt đầu xây
dựng một bản mẫu (prototype).
Bản mẫu này cần phải có khả năng giải quyết những bài toán trong

một phạm vi nhỏ của lĩnh vực và cung cấp một nền thử nghiệm cho
những xác nhận thiết kế sơ bộ. Ngay sau khi bản mẫu được cài đặt
xong, kỹ sư tri thức và chuyên gia sẽ thử nghiệm và cải tiến tri thức
của nó bằng cách cho nó giải quyết một số bài toán và hiệu chỉnh
những khuyết điểm của nó. Sau mỗi lần như vậy, họ thường có một
phiên bản chương trình sáng sủa hơn. Nếu những giả thiết trong
quá trình thiết kế bản mẫu tỏ ra là đúng đắn, thì bản mẫu có thể
được dùng để xây dựng hệ thống cuối cùng. Tuy nhiên, bản mẫu
cũng có thể bị loại bỏ nếu nó trở nên cồng kềnh hoặc các nhà thiết
kế quyết định thay đổi phương pháp tiếp cận cơ sở đối với vấn đề.
Đặc trưng lớn thứ hai của lập trình HCG là cần xem chương trình
như không bao giờ “kết thúc”. Một cơ sở tri thức kiểu heuristic lớn

PAGE

14

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

sẽ luôn luôn có những hạn chế của nó, vì tri thức thì luôn đổi mới
và vì vậy cần phải được cập nhật.


Mô hình khái niệm và vai trò của chúng trong việc
thu thập tri thức

Trong HCG, tri thức đóng vai trò quyết định cho sự thành công

cũng như hiệu quả giải quyết vấn đề của HCG. Tri thức này có
được từ quá trình thu thập tri thức của các chuyên gia, tri thức này
thường mơ hồ, không chính xác, và chỉ được phát biểu dài dòng
theo từng bộ phận. Người kỹ sư tri thức có nhiệm vụ dịch những
hiểu biết không hình thức này sang một ngôn ngữ hình thức thích
hợp cho máy tính (xem hình 1-2). Đây là một nhiệm vụ khó khăn,
tuy nhiên, khó khăn trước tiên vẫn là việc tích lũy tri thức do nhiều
nguyên nhân:


Các kỹ năng của con người có được thường thông qua thực nghiệm.
Sau nhiều năm thực hành, những kỹ năng này tích hợp chặt chẽ với
nhau và hoạt động ở một cấp độ vô thức cao. Vì vậy, sẽ rất khó
khăn cho các chuyên gia khi phải mô tả chính xác những gì họ làm
trong quá trình giải quyết vấn đề.



Tri thức của con người thường nằm ở dạng là “biết làm thế nào”
(how) để đối phó với tình huống hơn là biết cần phải khắc họa
trong óc một cách lý trí xem tình huống ấy là cái gì (what). Một ví
dụ dễ thấy về đặc điểm này ở người biểu diễn xe đạp một bánh:
trong thực tế, một người biểu diễn thành công không thể cùng lúc
giải nhiều phương trình sai phân nhằm giữ thế cân bằng; mà thực ra
anh ta chỉ phối hợp có tính trực giác những cảm giác về “trọng

PAGE

15


TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

lực”, “xung lực” và “quán tính” để tạo thành một thủ tục điều khiển
thích hợp.


Tri thức của con người không căn cứ theo sự thật, không khách
quan, vì hiểu biết của con người thể hiện một mô hình của cá nhân
hay cộng đồng về thế giới. Những mô hình đó bị ảnh hưởng bởi
những tập quán, những quá trình xã hội, và những quá trình tiềm ẩn
khác…



Tri thức luôn luôn thay đổi. Điều đó không chỉ do các chuyên gia
tiếp nhận thêm những tri thức mới, mà còn do tri thức đang tồn tại
có thể trở thành mục tiêu của những cải cách triệt để.
Hệ quả là, công nghệ tri thức là một quá trình khó khăn và cần
được xem xét khi kéo dài chu trình sống của bất kỳ HCG nào. Để
đơn giản hóa nhiệm vụ này, người ta cài đặt một mô hình khái
niệm (conceptual model) nằm giữa hiểu biết chuyên môn của con
người với chương trình như trong hình 1_2. Mô hình khái niệm này
thể hiện nhận thức của người kỹ sư tri thức về lĩnh vực đó, nó có
thể bao gồm các từ điển dữ liệu, các biểu diễn đồ họa của không
gian trạng thái và những lời bình đi kèm đều có thể là một phần của
mô hình này.
Mô hình khái niệm không có tính hình thức hoặc có thể thi hành

trực tiếp trên máy tính. Nó chỉ là một cấu trúc thiết kế trung gian,
một mô hình mẫu để có thể bắt đầu đưa ra các ràng buộc và mã hóa
các kỹ năng của con người. Nếu như kỹ sư tri thức sử dụng mô hình
phép tính mệnh đề, thì nó có thể bắt đầu như một tập hợp các mạng
đaon giản biểu diễn những trạng thái suy luận của người chuyên gia
thông qua các tình huống giải quyết vấn đề điển hình. Chỉ sau khi

PAGE

16

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

được cải tiến thêm, mạng này mới trở thành các luật if… then
tường minh.

2.

Giới thiệu bài toán

Hiện nay, khoa học công nghệ phát triển rất nhanh chóng làm thay đổi rất
nhiều trong đời sống hàng ngày của chúng ta.Ngày nay, ta thấy rằng chiếc
điện thoại di động dường như là vật bất ly thân đối với mỗi người ở mọi
tầng lớp. Bởi nó đáp ứng rất nhiều nhu cầu của con người trong cuộc sống
hiện đại ngày nay từ nhu cầu thiết yếu trao đổi thông tin tới nhu cầu giải
trí, tới phục vụ cho các mục đích chuyên môn khác.
Những chiếc điện thoại ngày nay không những chỉ giúp con người trao

đổi thông tin mà nó còn cung cấp rất nhiều các tiện ích khác: nghe nhạc,
chụp hình, truy cập internet.....
Nhưng hiện tại có rất nhiều hãng và sản phẩm điện thoại di động ra đời
với rất nhiều các kiểu dáng màu sắc tính năng, giá cả... khiến cho việc
việc lựa chọn một chiếc điện thoại phù hợp với mục đích sử dụng, công
việc, khả năng tài chính... trở nên khó khăn hơn.
PAGE

17

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

Hệ tư vấn mua điện thoại di động sẽ hỗ trợ cho người sử dụng chọn được
chiếc điện thoại phù hợp với cá nhân người sử dụng.
II- Cơ sở lý thuyết
1. Biểu diễn tri thức
Biểu diễn tri thức (knowledge representation) là một lĩnh vực nghiên cứu

-

quan trọng của Trí tuệ nhân tạo. Nhằm phát triển các phương pháp, cách
thức biểu diễn tri thức và các công cụ hỗ trợ việc biểu diễn tri thức.
Có rất nhiều phương pháp biểu diễn tri thức, và phải phụ thuộc vào tri

-

thức cụ thể của từng bài toán ta mới chọn được một phương pháp biểu

diễn hợp lý nhất.


Biểu diễn tri thức bằng luật sản xuất (Production rules)



Biểu diễn tri thức bằng khung (Frames)



Biểu diễn tri thức sử dụng mạng ngữ nghĩa (Semantic networks )



Biểu diễn tri thức bằng ontology



Các mô hình xác suất

Khi biểu diễn tri thức cho một bài toán, việc biểu diễn này được coi là tốt khi
chúng thỏa mãn được 4 yếu tố sau


Tính hoàn chỉnh (Completeness)



Tính ngắn gọn (Conciseness)




Tính hiệu quả về tính toán (Computational efficiency)



Tính rõ ràng, dễ hiểu (Transparency)

Với bài toán cụ thể đang xét- bài toán tư vấn mua điện thoại di động, việc biểu
diễn tri thức sử dụng luật là một phương pháp biểu diễn hợp lý.
1.1. Biểu diễn tri thức dựa trên luật
Phương pháp biểu diễn tri thức bằng luật sinh được phát minh bởi Newell và
Simon trong lúc hai ông đang cố gắng xây dựng một hệ giải bài toán tổng quát.
Đây là một kiểu biểu diễn tri thức có cấu trúc và được sử dụng phổ biến nhất
trong các hệ cơ sở tri thức.
PAGE

18

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

Ý tưởng cơ bản là tri thức có thể được cấu trúc bằng một cặp điều kiện – hành
động: "NẾU điều kiện xảy ra THÌ hành động sẽ được thi hành".
Trong biểu diễn tri thức sử dụng luật, ta cần xác định:
Tập các sự kiện F (Facts)




{A1,A2, A3...... An, B1,B2, B3,...... Bm}


Tập các luật R(rules) áp dụng trên các sự kiện có dạng sau:

IF A1 AND A2 AND... AND An THEN B
(trong đó A1,A2,...... An, B) là các sự kiện trong F.
A1,A2, A3,...... An – được gọi là điều kiện (Conditions)
B: là kết luận (conclusion).
Trong biễu diễn tri thức dựa trên luật, cơ chế suy luận trên các luật sản xuất bao
gồm hai cơ chế: suy diễn tiến


Suy diễn tiến: là quá trình suy luận xuất phát từ một số sự kiện ban đầu,
xác định các sự kiện có thể sinh ra từ sự kiện này.

Vấn đề tối ưu luật: Tập các luật trong một cơ sở tri thức rất có khả năng thừa,
trùng lặp hoặc nguy hiểm hơn là mâu thuẫn nhau. Dĩ nhiên là hệ thống có thể đổ
lỗi cho người dùng về việc đưa vào hệ thống những tri thức như vậy. Tuy việc
tối ưu một cơ sở tri thức về mặt tổng quát là một thao tác khó (vì giữa các tri
thức thường có quan hệ không tường minh), nhưng trong giới hạn cơ sở tri thức
dưới dạng luật, ta vẫn có một số thuật toán đơn giản để loại bỏ các vấn đề này.
Ưu điểm của phương pháp biểu diễn tri thức dựa trên luật:
Biểu diễn tri thức bằng luật đặc biệt hữu hiệu trong những tình huống hệ thống
cần đưa ra những hành động dựa vào những sự kiện có thể quan sát được. Nó có
những ưu điểm chính yếu sau đây:



Các luật rất dễ hiểu nên có thể dễ dàng dùng để trao đổi với người dùng
(vì nó là một trong những dạng tự nhiên của ngôn ngữ).



Có thể dễ dàng xây dựng được cơ chế suy luận và giải thích từ các luật.



Việc hiệu chỉnh và bảo trì hệ thống là tương đối dễ dàng.

PAGE

19

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone



Có thể cải tiến dễ dàng để tích hợp các luật mờ.

Nhược điểm của phương pháp biểu diễn tri thức dựa trên luật:


Các tri thức phức tạp đôi lúc đòi hỏi quá nhiều (hàng ngàn) luật sinh. Điều
này sẽ làm nảy sinh nhiều vấn đề liên quan đến tốc độ lẫn quản trị hệ
thống.




Thống kê cho thấy, người xây dựng hệ thống trí tuệ nhân tạo thích sử
dụng luật sinh hơn tất cả phương pháp khác (dễ hiểu, dễ cài đặt) nên họ
thường tìm mọi cách để biểu diễn tri thức bằng luật sinh cho dù có phương
pháp khác thích hợp hơn! Đây là nhược điểm mang tính chủ quan của con
người.



Cơ sở tri thức luật sinh lớn sẽ làm giới hạn khả năng tìm kiếm của chương
trình điều khiển. Nhiều hệ thống gặp khó khăn trong việc đánh giá các hệ
dựa trên luật sinh cũng như gặp khó khăn khi suy luận trên luật sinh.

2. Suy diễn tiến
- Là một trong hai cơ chế cơ chế suy luận trên các luật sản xuất trong biểu
diễn tri thức dựa trên luật.
- Bài toán cần chứng minh:Với một tập các mệnh đề giả thiết (cơ sở tri
thức) KB, cần suy ra mệnh đề kết luận Q. Suy diễn tiến là suy diễn dựa
trên dữ liệu nên rất phù hợp với các bài toán đưa ra quyết đinh,nhận dạng
đối tượng…..
- Ý tưởng của suy diễn tiến:
Lặp lại 2 bước sau cho đến khi suy ra được kết luận:


Áp dụng các luật có mệnh đề giả thiết được thỏa mãn trong




KB
Bổ sung kết luận của các luật đó vào trong KB.

- Những điểm cần chú ý khi cài đặt giải thuật suy diễn tiến.

PAGE

20

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone



Tránh các vòng lặp bằng cách kiểm tra xem các mệnh đề
mới đã có trong danh sách các mệnh đề cần chứng minh



chưa ? Nếu rồi thì không bổ sung lại nữa!
Tránh việc chứng minh lặp lại đối với một mệnh đề. Mệnh
đề này có thể đã được chứng minh là đúng ở trước đó hoặc
đã được chứng minh ở trước đó là không thể thỏa mãn được
trong KB.

- Ưu điểm của suy diễn tiến



Ưu điểm chính của suy diễn tiến là làm việc tốt khi bài toán



về bản chất đi thu thập thông tin rồi thấy điều cần suy diễn.
Suy diễn tiến cho ra khối lượng lớn các thông tin từ một số



thông tin ban đầu. Nó sinh ra nhiều thông tin mới.
Suy diễn tiến là tiếp cận lý tưởng đối với loại bài toán cần
giải quyết các nhiệm vụ như lập kế hoạch , điều hành điều k
hiển và diễn dịch.

- Nhược điểm của suy diễn tiến


Một nhược điểm chính của hệ thống suy diễn tiến là không
cảm nhận được rằng chỉ một vài thông tin là quan trọng. Hệ
thống hỏi các câu hỏi có thể hỏi mà không biết rằng chỉ một



ít câu đã đi đến kết luận được.
Hệ thống có thể hỏi cả câu không liên quan. Có thể các câu
trả lời cũng quan trọng, nhưng làm người dùng lúng túng khi
phải trả lời các câu không dính đến chủ đề.

III- Giải quyết bài toán
1. Thu thập tri thức

- Thu thập tri thức là bước quan trọng mở đầu cho mỗi bài toán, đặc biệt
đối với bài toán tư vấn ra quyết định.
- Các tri thức cụ thể của bài toán tư vấn mua điện thoại di động.

PAGE

21

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone



Dựa trên các dữ liệu về điện thoại di động bao gồm: kiểu




dáng, hãng sản xuất , giá tiền,tính năng……
Thông tin : mục đích sử dụng,giá tiền……
Tri thức: các dữ liệu về điện thoại phù hợp với các dữ liệu
của người sử dụng. Ví dụ: Có một khoản tiền ít thì mua cái
điện thoại ít tiền…..

- Cách thức thu thập thông tin:


Dựa trên tìm kiếm thông tin:trên internet dữ liệu về điện




thoại di động(kiểu dáng,hãng sản xuất,giá tiền,tính năng..)
Dựa trên thống kê để đưa ra các tri thức.

2. Biểu diễn tri thức
- Trong bài toán cụ thể tư vấn mua điện thoại di động phương pháp biểu
diễn tri thức bằng luật là một phương pháp biểu diễn hợp lý.
- Tập các sự kiện F bao gồm các nhóm sự kiện sau:
Giá tiền:
Giá tiền 1
Giá tiền 2
Giá tiền 3
Giá tiền 4
Giá tiền 5
Giá tiền 6

Dưới 2 triệu 0
Từ 2 - 5 triệu 1
Từ 5 - 10 triệu 2
Từ 10 - 15 triệu 3
Từ 15 - 20 triệu 4
>20 triệu 5

Ram:
RAM 1
RAM 2
RAM 3
RAM 4

RAM 5

PAGE

22

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.

512MB
1GB
2GB
3GB
4GB


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

Memory:
Memory 1
Memory 2
Memory 3
Memory 4
Memory 5
Memory 6
Memory 7

512MB
4GB
8 GB
16 GB

32 GB
64 GB
128 GB

Màn hình:
Screen size 1
Screen size 2

>4inch
<= 4inch

Camera :
Camera 1

3 MB

Camera 2

5 MB

Camera 3

6.7 MB

Camera 4

8 MB

Camera 5


8.7 MB

Camera 6

13 MB

Camera 7

16 MB

Camera 8

23 MB

Hệ điều hành:

PAGE

23

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

Produce :
Produce 1

Apple 0


Produce 2

SamSung 4

Produce 3

OppoAp 3

Produce 4

Sony 4

Produce 5

HTC 1

Produce 6

Microsof 2

Color: Đen 0 trắng 2 vàng xanh 1.
Giá:
Điện thoại gồm các sự kiện : sp1,sp2,………sp35.
Tập luật trong bài toán gồm 150 tập luật.
Ví dụ: giá tiền , r1,m1,os1=>sp1
Tương đương : giá tiền ^ r1 ^ m1 ^ os1 -> sp1
Trong đó :
Mệnh đề kiện gồm : giá tiền,r1,m1,os1.
Mệnh đề kết luận : sp1.
3. Suy diễn tiến

- Đối với bài toán tư vấn mua điện thoại di động (dạng bài toán đưa ra
quyết định) nên phương pháp suy diễn tiến là phương pháp phù hợp.

PAGE

24

TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


Nhóm 10 – ĐH. KHMT3 – K8: Hệ chuyên gia tư vấn chọn mua smartphone

- Trong nội dung bài tập lớn này, chúng em đã cài đặt thuật toán suy diễn
tiến với đầu đủý tưởng banđầu của thuật toánvà có thể thêm một sốcải tiến
để giúp tránh các nhược điểm của thuật toán
Lặp lại 2 bước sau cho đến khi suy ra được kết luận:



Áp dụng các luật có mệnh đề giả thiết được thỏa mãn trong KB
Bổ sung kết luận của các luật đó vào trong KB.

- Trong trường hợp xảy ra xung đột luật tức là tại một bước suy diễn có
nhiều hơn một bước có thể sử dụng được. Giải quyết xung đột luật đồng
thời tránh các vòng lặp và tránh việc chứng minh lặp lại đối với một mệnh
đề.


Không áp dụng các luật sinh ra các kết quả (các sự kiện) đã có
trong


bộ nhớ làm việc.


Không áp dụng lại một luật nếu nó vẫn sinh ra cùng một tập các
sự

kiện (giống như lần áp dụng trước của nó.)
Vídụ :
- Tập giả thiết ban đầu: Người sử dụng: thích màn hình nhỏ hơn 4
inch,giá tiền từ 5 triệu đổ xuống,thích hệ điều hành IOS
KB: Screen, hệ điều hành, giá tiền
- Thực hiện suy diễn tiến với tập luật bao gồm
Rule1: G1:M2 (màn hình nhỏ-> < 4 inch)
Rule2: System_id :System_id (không thích android với windown>ios)
Rule3: Giá tiền (nghềnghiệpsinhviên->mức giá 2trieu-5trieu)
3.


Các tập luật chạy chương trình
t1: os = IOS -> nv1 (iPhone 3GS, iP4, iP 4S, iP 5, iP 5S, iP 6, iP 6



Plus).
t2 (os = IOS): nv1 ^ r = 512MB -> nv2(iPhone 3GS, iPhone 4)

PAGE

25


TV: Trịnh Khắc Tùng, Trần Công Tưởng, Nguyễn Thị Anh.


×