1
BỘ CÔNG THƢƠNG
TRƢỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN MÔN
HỆ CHUYÊN GIA
ĐỂ TÀI:
XÂY DỰNG WEBSITE TƢ VẤN CHỌN TRƢỜNG
ÁP DỤNG PHƢƠNG PHÁP HỎI XA
Giáo viên hƣớng dẫn: ThS. Trần Thanh Hùng
Nhóm thực hiện: Nhóm 7
1. Lê Hoàng Phúc (Nhóm trƣởng)
2. Phạm Thị Hòa
3. Bùi Thị Hƣờng
4. Lê Anh Tuấn
Lớp: KHMT1 – K4
Hà Nội, ngày 20 tháng 8 năm 2012
2
Mục Lục
Contents
Lời Mở Đầu 4
Chƣơng I: Giới thiệu về hệ chuyên gia. 5
I. Khái niệm: 5
II. Đặc trƣng và ƣu điểm của hệ chuyên gia. 7
III. Kiến trúc tổng quát của các hệ chuyên gia. 8
1. Những thành phần cơ bản của một hệ chuyên gia. 8
2. Một số mô hình kiến trúc hệ chuyên gia 10
Chƣơng II: Giới thiệu bài toán tƣ vấn chọn trƣờng. 11
I. Phát biểu bài toán. 11
II. Các phƣơng pháp giải quyết. 12
1. Hỏi biết trƣớc kết luận 12
1.1 Phƣơng thức hỏi gần: 12
1.2 Phƣơng thức hỏi xa: 13
2. Hỏi không biết kết luận: 13
2.1 Hỏi xa: 14
2.2 Hỏi gần: 14
III. Phƣơng thức hỏi xa không biết trƣớc kết luận. 14
1. Phƣơng thức hỏi xa. 14
2. Mục đích: 15
3. Hƣớng giải quyết: 15
4. Lý do chọn: 16
Chƣơng III: Hệ quản trị tri thức của bài toán. 16
I. Mô hình dữ liệu: 16
II. Lƣu trữ bằng XML: 17
3
1. Cách lƣu trữ: 17
2. Ƣu điểm: 17
3. Nhƣợc điểm: 18
Chƣơng IV: Chƣơng Trình 18
Tài liệu tham khảo 24
4
Lời Mở Đầu
Trong thời đại ngày nay, cùng với sự phát triển như vũ bão của ngành công
nghệ thông tin thế giới nói chung và Việt Nam nói riêng thì máy tính không còn xa là
gì. Hiện nay, tin học đã được ứng dụng ở hầu hết các hệ thống trường học, vì vậy các
học sinh đã có dịp được tiếp xúc nhiều với nó. Nhất là trong khoảng thời gian các bạn
chuẩn bị thi vào đại học thì máy tính hỗ trợ tìm kiếm rất nhiều thông tin như học trực
tuyến, tìm tài liệu thi qua mạng và đặc biệt là những phần mềm thông minh còn giúp
cho việc tư vấn chọn trường phù hợp.
Như các bạn đã biết, chọn trường là việc quan trọng đối với một học sinh THPT,
là yếu tố quyết định đến tương lai sau này của các em, nhưng việc chọn một trường
như thế nào cho phù hợp là câu hỏi mà không ít học sinh còn đang phân vân. Để giải
đáp những thắc mắc đó, cũng như đưa ra lời khuyên bổ ích cho các em, nhóm chúng
tôi xin giới thiệu Wevsite Tư Vấn Chọn Trường mong sẽ góp một phần nhỏ bé giúp
các em có những sự lựa chọn sáng suốt cho bản thân. Website này hỗ trợ việc tìm kiếm
các trường, đưa ra các thông tin cần thiết như: điểm xét tuyển các năm trước, vị trí
trường, thông tin liên quan đến các loại hình đào tạo của trường đó… Hơn thế nữa
phần mềm còn giúp học sinh có thể chọn trường phù hợp khi họ nhập mức điểm mà họ
có thể đạt được, sở thích… máy tính sẽ đưa ra danh sách các trường phù hợp thông tin
họ nhập vào. Với những tiện ích mà phần mềm này mang lại sẽ giúp cho học sinh có
bước đi vững chắc cho thành công trong tương lai.
Vì những lý do trên nên chúng em đã chọn đề tài “ Tư Vấn Chọn Trường bằng
phương pháp hỏi xa ”, để cho các học sinh có thể chọn trường một cách hiệu quả,
nhanh chóng, và đáp ứng được nhu cầu tìm kiếm thông tin trong thời đại hiện nay.
Chúng em xin chân thành cảm ơn sự hướng dẫn nhiệt tình của Th.S Trần Thanh
Hùng đã giúp chúng em thực hiện đề tài này. Tuy đã có nhiều cố gắng, nhưng do kiến
thức còn hạn chế nên không tránh khỏi sai sót. Vì vậy chúng em mong nhận được ý
kiến đóng góp quý báy của Thầy.
Chúng em xin chân thành cảm ơn!
5
Chƣơng I: Giới thiệu về hệ chuyên gia.
I. Khái niệm:
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 (knowledge) và các thủ tục suy luận (inference procedures) để giải 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 (emulates) năng lực
quyết đoán (decision) và hành động (making ability) của một chuyên gia (con người).
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 (Artificial
Intelligence) như hình dưới đây.
6
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 (knowledge) trong hệ chuyên gia phản ánh sự tinh thông được tích tụ từ sách
vở, tạp trí, 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ự 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 thành 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 được minh họa như sau:
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.
7
II. Đặc trƣng và ƣu điểm của hệ chuyên gia.
Có bốn đặ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ờ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 một 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.
- 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.
8
- Khả năng giảng giải: Câu trả lời với mức độ tinh thông được giảng
giải rõ ràng chi tiết, dễ hiểu.
- 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.
III. Kiến trúc tổng quát của các hệ chuyên gia.
1. 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:
- 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 tính 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.
9
- 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 sử 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.
Từ việc phân biệt giữa 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. Hình trên đây mô tả quan hệ hữu
cơ giữa máy suy diễn và cơ sở tri thức.
10
2. Một số mô hình kiến trúc hệ chuyên gia.
Có nhiều mô hình kiến trúc hệ chuyên gia theo các tác giả khác
nhau. Sau đây là một số mô hình.
a. Mô hình J. L. Ermine.
b. Mô hình C. Ernest.
c. Mô hình E. V. Popov.
11
Chƣơng II: Giới thiệu bài toán tƣ vấn chọn
trƣờng.
I. Phát biểu bài toán.
Khi vào trang web, khách có thể sử dụng việc tìm kiếm điểm chuẩn hoặc tư
vấn chọn trường mà không cần đăng nhập.
Trong trang tư vấn, chuyên gia sẽ thực hiện ra các câu hỏi theo nhóm câu
hỏi và khách sẽ trả lời Đúng/ Sai. Khi có kết quả phù hợp sẽ dừng hỏi hoặc hỏi
hết các câu hỏi sẽ dừng hỏi.
Khi người sử dụng muốn xem thông tin về điểm xét tuyển của các trường
các năm trước để chọn một trường cho phù hợp thì hệ thống sẽ gửi thông tin
như: Mã lựa chọn, điểm năm 1 điểm năm 2, điểm năm 3, điểm năm 4, điểm năm
5
Đế quản trị hệ thống tri thức người dùng phải đăng nhập vào hệ thống bằng
tài khoản của mình trên trang đăng nhập.
Các chức năng quản lý như:
Quản lý thông tin sự kiện
Quản lý thông tin trường
Quản lý thông tin ngành
Quản lý thông tin điểm
12
Quản lý thông tin lựa chọn
Quản lý thông tin luật
Quản lý thông tin ảnh trường
Quản lý thông tin âm thanh
Quản lý thông tin tỉnh
Quản lý thông tin nhóm sự kiện
II. Các phƣơng pháp giải quyết.
Các vấn đề cần giải quyết:
Xác định những điều cần hỏi (Hỏi cài gì?).
Phương thức hỏi: thân thiện với người sử dụng
Tránh dư thừa
Mô hình hỏi:
1. Hỏi biết trƣớc kết luận
Hỏi = Tập sự kiện có liên quan tới kết luận.
1.1 Phƣơng thức hỏi gần:
HỎI
g
= U{left
i
|
ri:left
i
->q
i
, q
i
є KL} (g: gần)
= {f,h,g,c}
13
Nhận xét: HỎI
g
={f | tồn tại (f,g) є FPG, g є KL}
Tồn tại r: left -> g
f є left
1.2 Phƣơng thức hỏi xa:
HOI
x
={f | Tồn tại đường đi p є FPG,
p=f->->->…->g є KL}
Không tồn tại f’ | f’ ~> f
TRÁI = U
i=1
m
left
i
PHẢI={q
1
,q
2
,…,q
m
}
R={r
1
,r
2
,…,r
m
} r
i
: left
i
->q
i
=>HOI
x
={f є TRÁI \ PHẢI | Tồn tại đường đi p:
f->g, g є KL}
Ví Dụ:
1)a^b->c 6)n^a->h
2)d^e->f 7)f^h->k
3)c^e->g 8)g^c->k
4)d^b->h
5)m ->g
KL={k}
HOI
x
={f,g,h,c}
={d,e,c,b,m,a,n}
…
={d,e,a,b,m,n}
2. Hỏi không biết kết luận:
14
HỎI = TRÁI / PHẢI
Với VD trên:
TRÁI={a,b,d,e,c,m,n,f,g,h}
PHẢI={c,f,g,h,k}
HỎI =TRÁI/PHẢI={a,b,d,e,m,n}
2.1 Hỏi xa:
Phần này sẽ được giới thiệu ở phần III.
2.2 Hỏi gần:
Ví dụ xét GT=Φ, KL={k}
Tập hỏi={f,g,h,c}
Xét cây hỏi:
III. Phƣơng thức hỏi xa không biết trƣớc kết luận.
1. Phƣơng thức hỏi xa.
HỎI = TRÁI / PHẢI
Hỏi đến khi nào???
Đến khi thu được tập GT -> KL được
Hỏi=Φ (GT > KL)
Tóm tắt thuật toán:
15
Bước 1: Đưa ra câu hỏi đầu tiên.
Bước 2: Cập nhật xâu kết quả.
So sánh với tập luật.
Nếu trùng với giả thiết.
Đưa ra tư vấn và đưa trạng thái về ban đầu.
Nếu không trùng với một giả thiết thì lấy câu hỏi
tiếp theo.
Lặp tới khi có kết quả thì dừng lại.
VD trên: Hỏi xa: GT={Φ}, KL={k}
Với VD trên, ta có: HỎI={d,e,a,b,m,n}
=> Cây hỏi:
2. Mục đích:
Xây dựng một hệ chuyên gia thân thiện giúp cho việc tư vấn chọn
trường của học sinh.
Xây dựng một hệ chuyên gia giúp tư vấn cho học sinh những
trường đại học phù hợp với lực học của bản thân.
Tư vấn chọn ngành nghề phù hợp với khả năng và sở thích của
bản thân.
Giải đáp những thắc mắc, những điều mà học sinh cần phải biết
khi chọn trường, ngành phù hợp.
3. Hƣớng giải quyết:
16
Xây dựng một hệ chuyên gia tư vấn: dựa trên những câu hỏi của
học sinh về vấn đề liên quan đến việc chọn trường phù hợp với sở
thích, học lực và điều kiện kinh tế cũng như sức khỏe của bản
thân.
Sử dụng phương thức hỏi xa không biết trước kết luận sẽ giúp cho
việc thực hiện xây dựng một hệ chuyên gia tư vấn chọn trường
một cách thích hợp nhất.
Khi người sử dụng đưa ra câu hỏi thì nó sẽ dừng lại khi thu được
tập giả thiết bằng với kết luận thì dừng.
Dạng câu hỏi là câu hỏi Yes/No mỗi câu trả lời có hay không của
học sinh phần nào sẽ nhận được một kết quả - xử lý – đưa ra kết
quả nếu đủ dữ kiện.
Sử dụng ngôn ngữ C# với thiết kế giao diện đẹp và tính năng hữu
ích cho việc giải quyết vấn đề về Code.
4. Lý do chọn:
Giải đáp những thắc mắc mà nhiều học sinh cần biết.
Giúp cho học sinh THPT có sự lựa chọn sáng suốt về trường,
ngành nghề mà các em sẽ học trong tương lai.
Đưa ra những lời khuyên bổ ích cho các em.
Đưa ra những thông tin về danh sách các trường để các em tham
khảo.
Chƣơng III: Hệ quản trị tri thức của bài toán.
I. Mô hình dữ liệu:
17
II. Lƣu trữ bằng XML:
1. Cách lƣu trữ:
Xây dựng Xml schema để định nghĩa khối dữ liệu được xây dựng
giống như trong SQL với các ràng buộc về khóa, độ dài, kiểu.
Xây dựng file XSLT để chuyển đổi định kiểu mở rộng, được kết
hợp với ngôn ngữ Xpath để trích lọc và biến đổi tài liệu XML
thành định dạng HTML.
Ghi dữ liệu vào file XML để tải lên bộ nhớ duyệt, tìm kiếm, thay
thế, lưu…
Hiển thị file XML lên HTML.
2. Ƣu điểm:
Việc nhập dữ liệu một cách nhanh chóng, dễ giàng sửa chữa và
xem thông tin ngay trên Web.
18
Một số phần thông tin cần thiết có thể in nhanh qua Web.
Khi phát hiện sai sót xảy ra thì dễ giàng sử chữa.
Dễ giàng kiểm tra khi cần thiết, lưu dữ liệu nhanh.
Dễ giàng gửi đi trên Internet và được xử lý bởi nhiều phần mềm
trên các hệ điều hành khác nhau.
3. Nhƣợc điểm:
Tuy nhiên việc lưu trữ bằng XML đôi khi cũng gặp phải không
ít những khó khăn như:
Khi chèn dữ liệu có thể bị lỗi, hoặc đối với một số máy sẽ bị lỗi
khi load dữ liệu lên Web.
Việc lọc dữ liệu hay rút trích thông tin cần thiết có thể gặp một số
khó khăn.
Chƣơng IV: Chƣơng Trình
19
Trang đăng nhập vào hệ thống
20
Trang tư vấn chọn trường
21
Trang quản lý của admin
22
Trang quản lý sự kiện
Trang thêm mới sự kiện
23
Trang tìm trường xem điểm
Trang xem điểm chuẩn
24
Tài liệu tham khảo
1. Giáo trình Hệ chuyên gia của Th.s Trần Thanh Hùng
2. Giáo trình XML của Th.s Đỗ Thị Tâm và Th.s Đỗ Ngọc Sơn
Các Website tham khảo:
1.
2.
3.