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

QUẢN Lý d6cntt epu dai

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 (507.47 KB, 29 trang )

MỤC LỤC
LỜI CẢM ƠN................................................................................................................... 1
MỤC LỤC........................................................................................................................ 2
DANH MỤC HÌNH ẢNH................................................................................................ 4
DANH MỤC BẢNG......................................................................................................... 5
LỜI MỞ ĐẦU................................................................................................................... 6
CHƯƠNG 1: GIỚI THIỆU HỆ CHUYÊN GIA............................................................ 7
1.1. Hệ chuyên gia là gì.........................................................................................................7
1.2. Đặc trưng và ưu điểm của hệ chuyên gia.......................................................................9
1.3. Các lĩnh vực ứng dụng của hệ chuyên gia.....................................................................9
1.4. Những thành phần cơ bản của một hệ chuyên gia.......................................................10
1.5. Biểu diễn tri thức trong các hệ chuyên gia.................................................................. 12
Biểu diễn tri thức bởi các luật sản xuất.....................................................................12
Biểu diễn tri thức nhờ mệnh đề logic........................................................................13
Biểu diễn tri thức nhờ mạng ngữ nghĩa.....................................................................14
Biểu diễn tri thức nhờ ngôn ngữ nhân tạo.................................................................14
CHƯƠNG 2: BÀI TOÁN VÀ THU THẬP TRI THỨC HỆ CHUYÊN GIA.............15
2.1. Tên đề tài và mục đích xây dựng đề tài.......................................................................15
2.2. Phát biểu bài toán......................................................................................................... 15
2.3. Sử dụng phương pháp logic vị từ.................................................................................16
Xây dựng các vị từ về máy tính.................................................................................16
Xây dựng các logic vị từ về nhóm máy tính.............................................................17
Xây dựng các logic vị từ về hướng dẫn chọn máy tính............................................17
2.4. Biểu diễn các cấu hính máy tính và yêu cầu trong ngôn ngữ Prolog..........................18


Xây dựng các sự kiện về máy tính............................................................................18
Xây dựng các nhóm máy tính....................................................................................19
Xây dựng các cách chọn nhóm máy tính..................................................................19
Các tư vấn về máy tính theo từng yêu cầu của khách hàng......................................19
2.5. Nhúng prolog vào trong C#......................................................................................... 20


2.6. Thiết kế chương trình................................................................................................... 21
CHƯƠNG 3 :GIAO DIỆN CHƯƠNG TRÌNH............................................................ 22
3.1. Giao diện prolog...........................................................................................................22
Tra cứu 1 hướng dẫn chọn máy ta có........................................................................22
Tra cứu các nhóm máy tính có thể chọn...................................................................22
Cấu hình máy tính của các nhóm..............................................................................23
Chương trình minh họa..............................................................................................23
3.2. Giao diện C#.................................................................................................................24
Trang chính................................................................................................................24
Giao diện cập nhật dữ liệu.........................................................................................25
Giao diện tư vấn chọn laptop.....................................................................................26
Giao diện kết quả và giải thích..................................................................................26
KẾT LUẬN..................................................................................................................... 27


DANH MỤC HÌNH ẢNH
Hình 1.1: Một số lĩnh vực ứng dụng của trí tuệ nhân tạo...................................................7
Hình 1.2: Hoạt động của hệ chuyên gia..............................................................................8
Hình 1.3: Quan hệ giữa lĩnh vực vấn đề và lĩnh vực tri thức.............................................8
Hình 1.4: Những thành phần cơ bản của một hệ chuyên gia........................................... 11
Hình 1.5: Quan hệ giữa máy suy diễn và cơ sở tri thức...................................................12
Hình 1.6: Biểu diễn tri thức nhờ ngôn ngữ nhân tạo trong MYCIN................................14
Hình 3.1: Hướng dẫn chọn máy........................................................................................22
Hình 3.2: Tra cứu nhóm máy tính.....................................................................................22
Hình 3.3: Hệ thống tư vấn chọn máy tính........................................................................23
Hình 3.4: Chương trình minh họa.....................................................................................24
Hình 3.5: Giao diện trang chính........................................................................................24
Hình 3.6: Giao diện cập nhật dữ liệu................................................................................25
Hình 3.7: Giao diện tư vấn chọn laptop............................................................................26
Hình 3.8: Giao diện kết quả..............................................................................................26

Hình 3.9: Giao diện giải thích...........................................................................................26


DANH MỤC BẢNG
Bảng 1.1. Cách nhìn nhận về hệ chuyên gia.........................................................................9
Bảng 1.2. Các lĩnh vực ứng dụng hệ chuyên gia................................................................10
Bảng 2.1. Các vị từ về máy tính..........................................................................................17
Bảng 2.2. Các yêu cầu.........................................................................................................20


LỜI MỞ ĐẦU
Những năm gần đây, ngành công nghiệp máy tính đã có những bước phát triển rất
mạnh mẽ. Chúng ta đã quen thuộc với những chiếc máy vi tính xuất hiện ở khắp mọi nơi,
sử dụng nó để làm việc, học tập, và giải trí,.. Do đó máy vi tính đã dần dần trở thành một
thiết bị điện tử thông dụng, được sử dụng ở khắp mọi nơi, và trở thành thiết bị không thể
thiếu trong cuộc sống của nhiều người. Tuy nhiên, chúng ta không thể phủ nhận rằng
máy tính là một thiết bị phức tạp và khó sử dụng. Khi những hỏng hóc xuất hiện, cho dù
là những hỏng hóc rất nhỏ, cũng có thể làm người sử dụng bối rối. Vì vậy, sự xuất hiện
một hệ thống nào đó nhằm hướng dẫn mọi người tự tay khắc phục những lỗi thông dụng
là thực sự cần thiết.
Bên cạnh đó, ngày nay khi mà nhiều lĩnh vực trong cuộc sống đang ngày càng được
chuyên môn hóa một cách sâu sắc. Cùng với đó là việc chúng ta luôn muốn xây dựng các
chương trình, các hệ thống có thể hoạt động thay thế cho các quyết định của con người.
Do vậy, càng ngày chúng ta càng thấy xuất hiện nhiều hệ chuyên gia được sử dụng hằng
ngày để thay thế con người đưa ra các quyết định, các dự đoán, tư vấn trong một số lĩnh
vực cụ thể như y học, kỹ thuật,…
Chính vì những lý do trên, cùng với mong muốn được áp dụng những kiến thức đã
học từ môn Hệ chuyên gia, nhóm chúng em đã chọn đề tài “Xây dựng hệ chuyên gia tư
vấn chọn máy tính theo yêu cầu” nhằm xây dựng một hệ thống có thể giúp chúng ta có
thể xác định nhanh chóng và chính xác máy tính phù hợp với yêu cầu của bản thân

Do kiến thức còn nhiều hạn chế và quá trình tìm hiểu còn nhiều thiếu sót nên
chúng em vẫn chưa thể xây dựng được một hệ chuyên gia hoàn chỉnh và chính xác trong
lĩnh vực chuẩn đoán sự cố hỏng hóc máy tính. Chúng em rất mong nhận được những ý
kiến đóng góp từ các thầy cô và các bạn để chúng em có thể xây dựng được một hệ thống
hoàn chỉnh hơn nữa.


CHƯƠNG 1: GIỚI THIỆU HỆ CHUYÊN GIA
1.1. Hệ chuyên gia là gì
Theo E.Feigenbaum: Hệ chuyên gia(Expert System) là một chương trình máy tính
thông minh sử dụng tri thức và các thủ tục suy luận để giải thích những bài toán tương
đối khó khăn đòi hỏi những chuyên gia mới giải được.
Hệ chuyên gia là một hệ thống tin học có thể mô phỏng năng lực quyết đoán và
hành động của một chuyên gia. Hệ chuyên gia là một trong những lĩnh vực ứng dụng của
trí tuệ nhân tạo.
Hình 1.1: Một số lĩnh vực ứng dụng của trí tuệ nhân tạo
Hệ chuyên gia sử dụng các tri thức của những chuyên gia để giải quyết các vấn đề
khác nhau thuộc mọi lĩnh vực.
Tri thức trong hệ chuyên gia phản ánh sự tinh thông được tích tụ từ sách vở, tạp chí,
từ các chuyên gia hay các nhà bác học. Các thuật ngữ hệ chuyên gia, hệ thống dựa trên tri
thức hay hệ chuyên gia dựa trên tri thức thường có cùng nghĩa.
Một hệ chuyên gia gồm ba phần chính là: cơ sở tri thức, máy suy diễn hay mô tơ
suy diễn và hệ thống giao tiếp với người sử dụng. Cở sử tri thức chứa các tri thức để từ
đó máy suy diễn tạo ra câu trả lời cho người sử dụng qua hệ thống giao tiếp.
Người sử dụng cung cấp sự kiện là những gì đã biết, đã có thật hay những thông tin
có ích cho hệ chuyên gia và nhận được những câu trả lời là những lời khuyên hay những
gợi ý đúng đắn.


Hoạt động của một hệ chuyên gia dựa trên tri thức:

Hình 1.2: Hoạt động của hệ chuyên gia
Mỗi hệ chuyên gia chỉ đặc trưng cho một lĩnh vực vấn đề nào đó, như y học, tài
chính, khoa học hay công nghệ… mà không phải cho bất cứ một lĩnh vực vấn đề nào.
Tri thức chuyên gia để giải quyết một vấn đề đặc trưng được gọi là lĩnh vực tri thức.
Hình 1.3: Quan hệ giữa lĩnh vực vấn đề và lĩnh vực tri thức
Tùy theo yêu cầu người sử dụng mà có nhiều cách nhìn nhận khác nhau về một hệ
chuyên gia.
Loại người sử dụng

Vấn đề đặt ra

Người quản trị

Tôi có thể dùng nó làm gì?

Kỹ thuật viên

Làm cách nào để tôi vận hành nó tốt nhất?


Nhà nghiên cứu

Làm sao để tôi có thể mở rộng nó?

Người sử dụng cuối

Nó sẽ giúp tôi cái gì đây?
Nó có rắc rối và tốn kém không?
Nó có đáng tin cậy không?
Bảng 1.1. Cách nhìn nhận về hệ chuyên gia


1.2. Đặc trưng và ưu điểm của hệ chuyên gia
Các đặc trưng cơ bản của một hệ chuyên gia:
- Hiệu quả cao. Khả năng trả lời với mức độ tinh thông bằng hoặc cao hơn so với
chuyên gia trong cùng lĩnh vực.
- Thời gian trả lời thỏa đáng. Thời gian trả lời hợp lý, bằng hoặc nhanh hơn so
với chuyên gia để đi đến cùng một quyết định. Hệ chuyên gia là một hệ thống thời gian
thực.
- Độ tin cậy cao. Không thể xảy ra sự cố hoặc giảm sút độ tin cậy khi sử dụng.
- Dễ hiểu. Hệ chuyên gia giải thích các bước suy luận một cách dễ hiểu và nhất
quán, không giống như cách trả lời bí ẩn của các hộp đen.
Những ưu điểm của hệ chuyên gia:
- Phổ cập. Là sản phẩm chuyên gia, được phát triển không ngừng với hiệu quả sử
dụng không thể phủ nhận.
- Giảm giá thành.
- Giảm rủ ro. Giúp con người tránh được trong các môi trường rủi ro, nguy hiểm.
- Tính thường trực. Bất kể lúc nào cũng có thể khai thác sử dụng, trong khi con
người có thể mệt mỏi, nghỉ ngơi hay vắng mặt.
- Đa lĩnh vực. Chuyên gia về nhiều lĩnh vực khác nhau và được khai thác đồng
thời bất kể thời gian sử dụng.
- Độ tin cậy. Luôn đảm bảo độ tin cậy khi khai thác.
- Khả năng trả lời. Trả lời theo thời gian thực, khách quan.
- Tính ổn định, suy luận có lý và đầy đủ mọi lúc mọi nơi.
- Trợ giúp thông minh như một người hướng dẫn.
- Có thể truy cập như là một cơ sở dữ liệu thông minh.
1.3. Các lĩnh vực ứng dụng của hệ chuyên gia
Cho đến nay, hàng trăng hệ chuyên gia đã được xây dựng và đã được báo cáo
thường xuyên trong các tạp chí, sách, báo và hội thảo khoa học. Ngoài ra còn các hệ
chuyên gia được sử dụng trong các công ty, các tổ chức quân sự mà không được công bố
vì lý do bảo mật.



Lĩnh vực

Ứng dụng diện rộng

Cấu hình

Tập hợp thích đáng những thành phần của
một hệ thống theo cách riêng.

Chuẩn đoán

Lập luận dựa trên những chứng cứ quan sát
được.

Truyền đạt

Dạy học kiểu thông minh sao cho sinh
viên có thể hỏi vì sao, như thế nào và cái
gì nếu giống như hỏi một thầy giáo.

Giải thích

Giải thích những dữ liệu thu nhận được.

Kiểm tra

So sánh dữ liệu thu lượm được với dữ liệu
chuyên môm để đánh giá hiệu quả.


Lập kế hoạch

Lập kế hoạch sản xuất theo yêu cầu.

Dự đoán

Dự đoán hậu quả từ một tình huống xảy ra.

Chữa trị

Chỉ định các thụ lý một vấn đề.

Điều khiển

Điều khiển một quá trình, đòi hỏi diễn
giải, chuẩn đoán, kiểm tra, lập kế hoạch,
dự đoán và chữa trị.
Bảng 1.2. Các lĩnh vực ứng dụng hệ chuyên gia

1.4. Những thành phần cơ bản của một hệ chuyên gia
Một hệ chuyên gia kiểu mẫu gồm bảy thành phần cơ bản như sau:


Hình 1.4: Những thành phần cơ bản của một hệ chuyên gia
- Cơ sở tri thức: gồm các phần tử tri thức, thông thường được gọi là luật, được tổ
chức như một cơ sở dữ liệu.
- Máy suy diễn: công cụ tạo ra sự suy luận bằng cách quyết định xem những luật
nào sẽ làm thỏa mãn các sự kiện, các đối tượng, chọn ưu tiên các luật thỏa mãn, thực hiện
các luật có tính ưu tiên cao nhất.

- Lịch công việc: danh sách các luật ưu tiên do máy suy diễn tạo ra thỏa mãn các
sự kiện, các đối tượng có mặt trong bộ nhớ làm việc.
- Bộ nhớ làm việc: cơ sở dữ liệu toàn cục chứa các sự kiện phục vụ cho các luật.
- Khả năng giải thích: giải nghĩa cách lập luận của hệ thống cho người sử dụng.
- Khả năng thu nhận tri thức: cho phép người sử dụng bổ sung các tri thức vào hệ
thống một cách tự động thay vì tiếp nhận tri thức bằng cách mã hóa tri thức một cách
tường minh. Khả năng thu nhận tri thức là yếu tố mặc nhiên của nhiều hệ chuyên gia.
- Giao diện người dùng: là nơi người sử dụng và hệ chuyên gia trao đổi với nhau.
Cở sở tri thức còn được gọi là bộ nhớ sản xuất trong hệ chuyên gia. Trong một cơ sở
tri thức, người ta thường phân biệt hai loại tri thức là tri thức phán đoán và tri thức thực
hành.
Các tri thức phán đoán mô tả các tình huống đã được thiết lập hoặc sẽ được thiết
lập. các tri thức thực hành thể hiện những hậu quả rút ra hay những thao tác cần phải
hoàn thiện khi một tình huống đã được thiết lập hoặc sẽ được thiết lập trong lĩnh vực
đang xét. Các tri


thức thực hành thường được thể hiện bởi các biểu thức dễ hiểu và dễ triển khai thao tác đối
với người sử dụng.
Hình 1.5: Quan hệ giữa máy suy diễn và cơ sở tri thức
Từ việc phân biệt hai loại tri thức, người ta nói máy suy diễn là công cụ triển khai các
cơ chế tổng quát để tổ hợp các tri thức phán đoán và các tri thức thực hành.
1.5. Biểu diễn tri thức trong các hệ chuyên gia
Tri thức của một hệ chuyên gia có thể được biểu diễn theo nhiều cách khác nhau.
Thông thường người ta sử dụng các cách sau đây:
- Biểu diễn tri thức bởi các luật sản xuất.
- Biểu diễn tri thức nhờ mệnh đề logic.
- Biểu diễn tri thức nhờ mạng ngữ nghĩa.
- Biểu diễn tri thức nhờ ngôn ngữ nhân tạo.
Biểu diễn tri thức bởi các luật sản xuất

Hiện nay, hầu hết các hệ chuyên gia đều là các hệ thống dựa trên luật bởi các lý do
sau:
- Bản chất đơn giản.
- Khả năng diễn giải dễ dàng.
- Tương tự quá trình nhận thức của con người.
Luật là một kiểu sản xuất được nghiên cứu từ những năm 1940. Trong một hệ thống
dựa trên luật, công cụ suy luận sẽ xác định những luật nào là tiên đề thỏa mãn các sự việc:
Các luật sản xuất thường được viết dưới dạng IF THEN. Có hai dạng:
IF <điều kiện> THEN <hành động>
Hoặc


IF <điều kiện> THEN <kết luận> DO <hành động>
Tùy theo hệ chuyên gia cụ thể mà mỗi luật có thể được đặt tên. Chẳng hạn mỗi luật
có rạng rule: tên. Sau phân tên là phần IF của luật.
Phần giữa IF và THEN là phần trái luật, có nội dung được gọitheo nhiều tên khác
nhau như: tiên đề, điều kiện, mẫu so sách khớp.
Phần sau THEN là kết luận hay hậu quả. Một số hệ chuyên gia có thêm phần hành
động được gọi là phẩn phải luật.
Biểu diễn tri thức nhờ mệnh đề logic.
Người ta sử dụng các ký hiệu để thể hiện tri thức và các phép toán logic tác động
lên các ký hiệu để thể hiện suy luận logic. Kỹ thuật chủ yếu thường được sử dụng là logic
vị từ.
Ví dụ minh họa các thể hiện các phát biểu dưới dạng vị từ:
Phát biểu

Vị từ

Tom là đàn đông


MAN(tom)

Tom là cha của Mary

FATHER(tom, mary)

Tất cả mọi người đều chết

MAN(X)  MORTAL(X)
Với quy ước MAN(X) có nghĩa “X là một
người” và MORTAL(X) có nghĩa “X
chết”. MAN và MORTAL được gọi là các
vị từ đối với biến X.

Các vị từ thường có chứa hằng, biến hay hàm. Người ta gọi các vị từ không chứa
biến là các mệnh đề. Mỗi vị từ có thể là một sự kiện hay một luật. Luật là vị từ gồm hai
vế trái và phải được nối nhau bởi một dấu mũi tên (). Các vị từ còn lại được gọi là các
sự kiện.
Ví dụ: từ các tri thức sau:
Peter có tóc vàng hoe, còn jean có tóc màu nâu. Pierre là cha của Jean. Peter là cha
của Pierre. Jean là ca của Ren. Peter là còn của Marc
Giả sử X, Y, Z là những người nào đó, nếu Y là con của X thì X là cha của Y. Nếu
X là cha của Z và Z là cha của Y thì X là ông của Y. Ta có thể biểu diễn thành các sự kiện
và các luật như sau:
1.

BLOND (peter)


2. BROWN (jean)



3. FATHER Hệ
(pierre,
jean)
thống
tư vấn chọn máy tính theo yêu
4. FATHER (peter, pierre)
5. FATHER (jean, ren)
6. SON (peter, marc)
7. FATHER (X, Y) ← SON (Y, X)
8.

GRANDFATHER (X, Y) ← FATHER (X, Z), FATHER (Z, Y)

Người ta gọi tập hợp các sự kiện và các luật là một cơ sở tri thức.
Biểu diễn tri thức nhờ mạng ngữ nghĩa.
Trong phương pháp này, người ta sử dụng một đồ thị gồm các nút và các cung nối
với các nút để biểu diễn tri thức. Nút dùng để thể hiện các đối tượng, thuộc tính của đối
tượng và giá trị của thuộc tính. Còn cung dùng để thể hiện các quan hệ giữa có đối tượng.
Các nút và các cung đều được gắn nhãn.
Bằng cách thêm vào các đồ thị các nút mới và các cung mới người ta có thể mở
rộng một mạng ngữ nghĩa. Các nút mới được thêm thể hiện các đối tượng tương tự(với
các nút đã có trong đồ thị), hoặc tổng quát hơn.
Một trong những tính chất quan trọng của mạng ngữ nghĩa là tính kế thừa. Khi sử
dụng mạng ngữ nghĩa để biểu diễn tri thức, người ta phải xây dựng các phép toán tương
ứng.
Biểu diễn tri thức nhờ ngôn ngữ nhân tạo.
Nói chung, theo quan điểm của người sử dụng, ngôn ngữ tự nhiên là phương cách
thuận tiện nhất để giao tiếp với một hệ chuyên gia, không những đối với người quản trị

hệ thống(tư cách chuyên gia), mà còn đối với người sử dụng cuối. Hiện nay đã có những
hệ chuyên gia có khả năng đối thoại trên ngôn ngữ tự nhiên nhưng chỉ hạn chế trong lĩnh
vực ứng dụng chuyên môn của hệ chuyên gia.
Hình dưới đây là thể hiện một đơn vị tri thức(luật) trong hệ chuyên gia MYCIN
dùng để chuẩn đoán các bệnh virut. Cột bên trái là một luật được viết bằng tiếng Anh, cột
bên phải là mã hóa nhân tạo của luật đó.
Hình 1.6: Biểu diễn tri thức nhờ ngôn ngữ nhân tạo trong MYCIN


CHƯƠNG 2: BÀI TOÁN VÀ THU THẬP TRI THỨC HỆ CHUYÊN
GIA
2.1.

Tên đề tài và mục đích xây dựng đề tài

Tên đề tài: “Xây dựng hệ chuyên gia tư vấn chọn máy tính theo yêu cầu”.
Mục đích xây dựng đề tài: xây dựng được một hệ chuyên gia thu thập các thông tin
về máy tính, nhu cầu sử dụng của người mua máy tính từ ngoài đời thật. Từ đó giúp
người mua máy tính có cái nhìn tổng quát về các dòng máy tính, và có được lựa chọn
máy tính đáp ứng nhu cầu sử dụng của bản thân.
2.2. Phát biểu bài toán
Yêu cầu bài toán là phải xây dựng được một hệ chuyên gia trong môi trường
windows có thể đưa ra các tư vấn máy tính về giá cả, máy tính phù hợp với những yêu
cầu và mục đích sử dụng của người dùng.
Các thông tin mà người sử dụng đưa vào là các câu trả lời “Đúng” hoặc “Sai” cho
các câu hỏi về yêu cầu chọn máy tính mà hệ chuyên gia đưa ra.
Để thực hiện được các yêu cầu đó, hệ thống cần xây dựng được một hệ cơ sở tri
thức. Trong đó:
- Bộ cơ sở tri thức bao gồm tập các sự kiện và tập các luật về nhu cầu và mục
đích sử dụng của người mua được thu thập từ các hãng cung cấp máy tính và từ những

người đi mua máy tính.
- Bộ động cơ suy diễn là các cài đặt để tìm kiếm các sự kiện và các luật liên quan
đến yêu cầu của người sử dụng để từ đó đưa ra các tư vấn về máy tính và dòng máy phù
hợp. Với bài toán này, bộ động cơ suy diễn được cài đặt theo cơ chế suy diễn lùi.
Sau quá trình thu thập tri thức, hệ thống tạm thời đưa ra các sự kiện sau:
1) Bạn cần mua máy dưới 10 triệu để học tập phải không
2) Bạn cần mua máy từ 10 triệu tới 15 triệu để học tập phải không
3) Bạn cần mua máy trên 15 triệu để học tập phải không
4) Bạn cần mua máy dưới 10 triệu để giải trí phải không
5) Bạn cần mua máy từ 10 triệu tới 15 triệu để giải trí phải không
6) Bạn cần mua máy trên 15 triệu để học tập phải không
7) Có phải bạn thích dòng máy tính dell
8) Có phải bạn thích dòng máy tính asus
9) Có phải bạn thích dòng máy tính acer
10) Có phải bạn thích dòng máy tính apple
11) Có phải bạn thích dòng máy tính sony


12) Bạn có cần chip xử lý core i3
13) Bạn có cần chip xử lý core i5
14) Bạn có cần chip xử lý core i7
Hệ thống hiện tại sẽ đưa ra những tư vấn về các hãng máy tính và từng loại máy
tính cụ thể như sau:
1) Với mục đích học tập và mua máy tính giá dưới 10 triệu thì nên tham khảo
hãng Asus, Acer, có chip xử lý core i3.
2) Với mục đích học tập và mua máy tính giá từ 10 triệu tới 15 triệu thì nên tham
khảo hãng Dell,Sony có chip xử lý core i5.
3) Với mục đích học tập và mua máy tính giá trên 15 triệu thì nên tham khảo hãng
Sony có chip xử lý core i7.
4) Nhu cầu để giải trí kèm với giá dưới 10 triệu thì bạn nên tham khảo hàng của

Asus, Acer với cấu hình card rời 1 ghi.
5) Nhu cầu để giải trí kèm với giá từ 10 triệu tới 15 triệu thì bạn nên tham khảo
hàng của Dell,Sony với cấu hình card rời 2 ghi.
6) Nhu cầu để giải trí kèm với giá trên 15 triệu thì bạn nên tham khảo hàng của
Apple với cấu hình ram 8 ghi.
7) Một số máy tính tham khảo như : dell vostro 2421, core i3, giá 9 triệu hay máy
asus K3420.chip xử lý core i5, giá 11 triệu.
2.3.

Sử dụng phương pháp

logic vị từ

Xây dựng các vị

từ về máy tính
STT

Vị từ

Giải thích

1

Hoctap1(X)

X là các yêu cầu thuộc nhóm máy tính học tập 1

2


Cauhinh_maytinh(X,Y)

X là các yêu cầu thuộc nhóm máy tính Y

3

Hoctap2(X)

X là các yêu cầu thuộc nhóm máy tính học tập 2

4

Hoctap3(X)

X là các yêu cầu thuộc nhóm máy tính học tập 3

5

Giaitri1 (X)

X là các yêu cầu thuộc nhóm máy tính giải trí 1

6

Giaitri2 (X)

X là các yêu cầu thuộc nhóm máy tính giải trí 2

7


Giaitri3(X)

X là các yêu cầu thuộc nhóm máy tính giải trí 3

8

Cauhinh_khongbiet()

Không thể tìm ra được máy theo yêu cầu


9

ht_duoi10tr (X)

X là các hãng máy tính cho nhu cầu học tập giá
dưới 10 triệu


10

ht_10tr_15tr (X)

X là các hãng máy tính cho nhu cầu học tập giá từ
10 triệu tới 15 triệu

11

ht_tren15tr (X)


X là các hãng máy tính cho nhu cầu học tập trên
15 triệu

12

gt_duoi10tr (X)

X là các hãng máy tính cho nhu cầu giải trí giá
dưới 10 triệu

13

gt_10tr_15tr (X)

X là các hãng máy tính cho nhu cầu giải trí giá từ
10 triệu tới 15 triệu

14

gt_tren15tr (X)

X là các hãng máy tính cho nhu cầu giải trí giá
trên 15 triệu

15

huongdan(X,Y)

Yêu cầu X thì sử dụng máy tính Y
Bảng 2.1. Các vị từ về máy tính


Xây dựng các logic vị từ về nhóm máy tính
1) Nhu cầu sử dụng học tập nếu có đầy đủ yêu cầu thuộc nhóm máy tính học tập 1
∀X hoctap1(X) →cauhinh_maytinh(X, hoctap1)
2) Nhu cầu sử dụng học tập nếu có đầy đủ yêu cầu thuộc nhóm máy tính học tập 2
∀X hoctap2(X) →cauhinh_maytinh(X, hoctap2)
3) Nhu cầu sử dụng học tập nếu có đầy đủ yêu cầu thuộc nhóm máy tính học tập 3
∀X hoctap3(X) →cauhinh_maytinh(X, hoctap3)
4) Nhu cầu sử dụng giải trí nếu có đầy đủ yêu cầu thuộc nhóm máy tính giải trí 1
∀X giaitri1(X) →cauhinh_maytinh(X, giaitri1)
5) Nhu cầu sử dụng giải trí nếu có đầy đủ yêu cầu thuộc nhóm máy tính giải trí 2
∀X giaitri2(X) →cauhinh_maytinh(X, giaitri2)
6) Nhu cầu sử dụng giải trí nếu có đầy đủ yêu cầu thuộc nhóm máy tính giải trí 3
∀X giaitri3(X) →cauhinh_maytinh(X, giaitri3)
Xây dựng các logic vị từ về hướng dẫn chọn máy tính
1)

Nếu có nhu cầu học tập mà mua máy dưới 10 triệu thì sẽ tư vấn các hãng có máy tính

dưới 10 triệu
∀X ht_duoi10tr(X) → huongdan(ht_gia_duoi_10tr, X)


2) Nếu có nhu cầu học tập mà mua máy từ 10 triệu tới 15 triệu thì sẽ tư vấn các hãng có
máy tính giá từ 10 triệu tới 15 triệu
∀X ht_10tr_15tr(X) → huongdan(ht_gia_10tr_toi_15tr, X)
3) Nếu có nhu cầu học tập mà mua máy dưới 10 triệu thì sẽ tư vấn các hãng có máy tính
trên 15 triệu
∀X ht_tren15tr(X) → huongdan(ht_gia_tren_15tr, X)
4) Nếu có nhu cầu giải trí mà mua máy dưới 10 triệu thì sẽ tư vấn các hãng có máy tính

dưới 10 triệu
∀X gt_duoi10tr(X) → huongdan(gt_gia_duoi_10tr, X)
5) Nếu có nhu cầu giải trí mà mua máy từ 10 triệu tới 15 triệu thì sẽ tư vấn các hãng có
máy tính từ 10 triệu tới 15 triệu
∀X gt_10tr_15tr(X) → huongdan(gt_gia_10tr_toi_15tr, X)
6) Nếu có nhu cầu giải trí mà mua máy dưới 10 triệu thì sẽ tư vấn các hãng có máy tính
trên 15 triệu
∀X gt_tren15tr(X) → huongdan(gt_gia_tren_15tr, X)
7) Nếu bạn yêu thích dòng máy tính của hãng dell thì có thể chọn các máy tính dell
∀X dell(X) → huongdan(dell, X)
8) Nếu bạn yêu thích dòng máy tính của hãng asus thì có thể chọn các máy tính asus
∀X asus(X) → huongdan(asus, X)
9) Nếu bạn yêu thích dòng máy tính của hãng acer thì có thể chọn các máy tính acer
∀X acer(X) → huongdan(acer, X)
2.4.

Biểu diễn các cấu hính máy tính và yêu cầu trong ngôn

ngữ Prolog

Xây dựng các sự kiện về máy tính

ht_duoi10tr([asus,acer,cauhinh_core_i3]).
ht_10tr_15tr([dell,sony,cauhinh_core_i5]).
ht_tren15tr([apple,cauhinh_core_i7]).
gt_duoi10tr([asus,acer,card_roi_1gh]).
gt_10tr_15tr([dell,sony,card_roi_2gh]).


gt_tren15tr([apple,ram_8gh]).

dell([vostro_2421,core_i3,gia_9tr]).


asus([K3420,core_i5,gia_11tr]).
acer([Gateway,rong_15inch,gia_12tr]).
Xây dựng các nhóm máy tính
hoctap1([ht_gia_duoi_10tr,asus]).
hoctap2([ht_gia_10tr_toi_15tr,dell]).
hoctap3([ht_gia_tren_15tr,apple]).
giaitri1([gt_gia_duoi_10tr,dell]).
giaitri2([gt_gia_10tr_toi_15tr,dell]).
giaitri3([gt_gia_tren_15tr,dell]).
Xây dựng các cách chọn nhóm máy tính
1)

Nhóm máy tính học tập 1 :
cauhinh_maytinh(X,hoctap):-hoctap1(X).

2)

Nhóm máy tính học tập 2 :
cauhinh_maytinh(X,hoctap):-hoctap2(X).

3)

Nhóm máy tính học tập 3 :
cauhinh_maytinh(X,hoctap):-hoctap3(X).

4)


Nhóm máy tính giải trí 1 :
cauhinh_maytinh(X,giaitri):-giaitri1(X).

5)

Nhóm máy tính giải trí 2 :
cauhinh_maytinh(X,giaitri):-giaitri2(X).

6)

Nhóm máy tính giải trí 3 :
cauhinh_maytinh(X,giaitri):-giaitri3(X).
Các tư vấn về máy tính theo từng yêu cầu của khách hàng

1)

Hướng dẫn chọn máy với mục đích học tập và giá dưới 10 triệu:
huongdan(ht_gia_duoi_10tr,X):- ht_duoi10tr(X).

2)

Hướng dẫn chọn máy với mục đích học tập và giá từ 10 triệu tới 15 triệu:
huongdan(ht_gia_10tr_toi_15tr,X):- ht_10tr_15tr(X).


3)

Hướng dẫn chọn máy với mục đích học tập và giá trên 15 triệu:
huongdan(ht_gia_tren_15tr,X):- ht_tren15tr(X).



4) Hướng dẫn chọn máy với mục đích giải trí và giá dưới 10 triệu:
huongdan(gt_gia_duoi_10tr,X):- gt_duoi10tr(X).
5)

Hướng dẫn chọn máy với mục đích giải trí và giá từ 10 triệu tới 15 triệu:
huongdan(gt_gia_10tr_toi_15tr,X):- gt_10tr_15tr(X).

6)

Hướng dẫn chọn máy với mục đích giải trí và giá trên 15 triệu:
huongdan(gt_gia_tren_15tr,X):- gt_tren15tr(X).

7)

Hướng dẫn chọn máy tính với yêu cầu là hãng dell
huongdan(dell,X):- dell(X).

8)

Hướng dẫn chọn máy tính với yêu là hãng asus
huongdan(asus,X):- asus(X).
2.5. Nhúng prolog vào trong C#
Xây dựng các yêu cầu :
STT

Vị từ

Giải Thích


1

m1

Mục đích sử dụng của bạn là học tập

2

m2

Mục đích sử dụng của bạn là giải trí

3

m3

Mức giá bạn muốn mua dưới 10 triệu

4

m4

Mức giá bạn muốn mua từ 10 triệu tới 15 triệu

5

m5

Mức giá bạn muốn mua trên 15 triệu


6

m6

Bạn thích dòng máy tính dell

7

m7

Bạn thích dòng máy tính asus

8

m8

Bạn thích dòng máy tính acer

9

k1

Các hãng máy tính Acer, Asus

10

k2

Các hãng máy tính Dell, Sony


11

k3

Các hãng máy tính Apple, Marc

12

k4

Máy tính Dell vostro 2421, core i3, giá 9 triệu

13

k5

Máy tính asus K3420, core i5 , giá 11 triệu
Bảng 2.2. Các yêu cầu

Xây dựng các cách chọn :


-

cauhinh_maytinh1: m1 ^ m3→ k1
Nếu mục đích sử dụng của bạn là học tập và mức giá có thể mua dưới 10 triệu thì
bạn có thể chọn hàng của hãng acer, asus.

-


Dựa vào cơ sở tri thức được biểu diễn ở trên ta có các tập sự kiện:

GIATHIET = {m1, m2, m3, m4, m5...mn}
KETLUAN = {k1, k2, k3, k4}
2.6. Thiết kế chương trình
Chương trình sử dụng ngôn ngữ lập trình C# để cài đặt bài toán theo cơ chế suy diễn
lùi.
Từ yêu cầu bài toán, ta đi xây dựng các lớp tương ứng với các đối tượng là các yêu
cầu (YeuCauInfo.cs) và các luật (LuatInfo.cs). Bên cạnh đó ta xây dựng thêm một lớp
(VetInfo.cs) để lưu trữ thông tin các luật và yêu cầu cần sử dụng để đưa ra các tư vấn.
Trong đó:
- Mỗi 1 sự kiện được biểu diễn bởi 3 thuộc tính: tên sự kiện, mô tả, giá trị (trả về
1 nếu sự kiện này đúng, trả về 0 nếu sai và trả về -1 nếu chưa biết đúng hay sai)
- Mỗi 1 luật được biểu diễn bởi 3 thuộc tính: tên luật, giả thiết, kết luận
- Mỗi 1 vết thì chứa 1 sự kiện và 1 luật.
Dữ liệu về các yêu cầu và luật, được lưu lại trong 2 file “YeuCau.txt” và “Luat.txt”


CHƯƠNG 3 :GIAO DIỆN CHƯƠNG TRÌNH
3.1. Giao diện prolog
Tra cứu 1 hướng dẫn chọn máy ta có
Hình 3.1: Hướng dẫn chọn máy
Tra cứu các nhóm máy tính có thể chọn
Hình 3.2: Tra cứu nhóm máy tính


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×