he co so tri thuc bc2
DESCRIPTION
this is an dss systemTRANSCRIPT
1
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
BÁO CÁO TỔNG KẾT
MÔN: HỆ CƠ SỞ TRI THỨC
ĐỀ TÀI: XÂY DỰNG WEBSITE GỢI Ý ĐỊA ĐIỂM DU LỊCH
NHÓM THỰC HIỆN:
Bùi Tiến Cường - 20090389
Nguyễn Văn Thắng - 20092539
Vũ Đình Diệu - 20090459
Lâm Viết Tùng - 20093097
Cấn Hải Dương - 20090582
HÀ NỘI, THÁNG 10 NĂM 2012
2
MỤC LỤC
LỜI MỞ ĐẦU ................................................................................................................................ 3
THIẾT KẾ CHI TIẾT................................................................................................................... 4
I. MỤC ĐÍCH THỰC HIỆN..................................................................................................... 4
1. Đối với khách hàng ............................................................................................................ 4
2. Đối với người quản trị ....................................................................................................... 4
II. PHẠM VI THỰC HIỆN ...................................................................................................... 5
1. Những chức năng đã thực hiện được ............................................................................... 5
2. Nâng cấp, mở rộng ............................................................................................................ 6
III. SỰ KIỆN NGỮ CẢNH & VÀ BIỂU DIỄN TRI THỨC ................................................. 8
1. Sự kiện ngữ cảnh ................................................................................................................ 8
2. Biểu diễn tri thức ............................................................................................................. 16
IV. ĐỘNG CƠ SUY DIỄN, LUẬT DIỄN GIẢI ................................................................... 19
1. Bảng động cơ suy diễn, luật diễn giải ............................................................................ 19
V. SƠ ĐỒ KIẾN TRÚC HỆ THỐNG .................................................................................... 21
1. Mô hình hệ thống ............................................................................................................. 21
2. Công nghệ và thuật toán sử dụng................................................................................... 22
VI. HƯỚNG DẪN CÀI ĐẶT VÀ CHẠY CHƯƠNG TRÌNH ............................................. 23
1. Quá trình xây dựng ......................................................................................................... 23
2. Hướng dẫn cài đặt ........................................................................................................... 23
KẾT LUẬN .................................................................................................................................. 25
3
LỜI MỞ ĐẦU
Việt Nam là một trong những điểm đến hấp dẫn và an toàn nhất thế giới.
Trong năm 2009, mặc dù phải đối mặt với cuộc khủng hoảng kinh tế toàn cầu,
GDP ngành Du Lịch vẫn tăng với một tốc độ đáng nể và du lịch ước tính đã đóng
góp 13,1% cho tổng sản phẩm quốc dân (GDP).
Ngành du lịch Việt Nam được dụ báo sẽ phát triển mạnh mẽ hơn nữa trong
tương khi mà chúng ta vẫn chưa biết cách khai thác hết lợi thế vốn có "rừng vàng,
biển bạc" của đất nước. Và một thực tế vẫn tồn tại, tại hầu hết những khu du lịch
lối tư duy bóc ngắn cắn dài đã ăn sâu vào tiềm thức của những người làm kinh
doanh dẫn đến việc thiếu tôn trọng du khách, lợi dụng thời cơ cơ hội để chặt chém
lừa bịp du khách để nhanh chóng kiếm lợi nhuận trong một mùa nào đó để bù lại
thời điểm ế khách trong năm. Chính những điều đó đã và đang cản trở sự phát triển
của ngành du lịch nước nhà.
Đứng trước vấn đề đó, nhóm chúng tôi đã nảy ra ý tưởng "xây dựng website
gợi ý địa điểm du lịch" nhằm giúp cho việc đi du lịch của du khách trở nên dễ
dàng, thuận tiện hơn.
4
THIẾT KẾ CHI TIẾT
I. MỤC ĐÍCH THỰC HIỆN
1. Đối với khách hàng
Hệ thống có khả năng:
- Giới thiệu những tour du lịch khắp mọi nơi trong cả nước theo từng danh
mục (du lịch khám phá, du lịch văn hóa, du lịch miệt vườn,...)
- Gợi ý tour theo thông tin thời tiết ví dụ:
Cát Bà trong khoảng thời gian từ 3/6 tới 4/6 có thể có bão thì khi
người dùng lựa chọn các tour có xuất hiện Cát Bà trong khoảng thời
gian này thì sẽ đưa ra khuyến cáo.
- Cho phép khách hàng nhập thông tin tìm kiếm dưới dạng các câu truy vấn.
VD: tour du lịch Cát Bà, tour du lịch Hạ Long,... (sau đó hệ thống sẽ cắt nghĩa và
đưa ra kết quả).
- Từ danh sách các tour du lịch từ khắp mọi nơi trong cả nước tiến hành gợi
ý địa điểm du lịch theo thông tin mà khách hàng đưa vào.
- Xếp hạng tour theo thứ tự giảm độ thích đáng khi hiển thị (hoặc có thể hiển
thị theo các thuộc tính filter do người dùng quyết định)
- Có thể thực hiện đặt tour trực tiếp ngay trên website (online).
- Cho phép người dùng cung cấp thông tin mức độ ưu tiên như giá cả, chất
lượng tour,... để cung cấp thêm tham số cho chương trình tính điểm.
- Tích hợp chức năng người dùng đánh giá và phản hồi về một tour nào đó
để làm giá trị cho quá trình xếp hạng lại tour.
- Kết hợp các thông tin về lễ hội như một trọng trọng số (special) trong quá
trình tính toán đánh giá điểm cho các tour.
2. Đối với người quản trị
Hệ thống cần thực hiện các chức năng:
- Cho phép thực hiện các thao tác cập nhật trên danh sách các tour
- Cập nhật các thông tin khuyến mại
5
- Cập nhật thông tin dự báo thời tiết vùng miền, hoặc cho phép lựa chọn
chức năng tự động cập nhật thông tin thời tiết từ các nguồn uy tín như bbc
weather,...
- Cập nhật thông tin lễ hội của từng địa điểm
- Thực hiện chức năng thống kê hệ thống (tour nào đi nhiều, tour nào ít
khách...)
- Quản lí danh sách khách hàng đặt tour
- Quản lí thông tin phản hồi từ phía khách hàng
II. PHẠM VI THỰC HIỆN
1. Những chức năng đã thực hiện được
Trong khuôn khổ nội dung của BTL môn hệ cơ sở chi thức và khả năng của
nhóm chúng em đã thực hiện những chức năng sau:
- Về khu vực triển khai: Nhóm sẽ chỉ lấy thông tin, dữ liệu là các tour có địa
điểm xuất phát từ Hà Nội.
- Về chức năng đã thực hiện:
+ Hiển thị được danh sách cách tour theo từng danh mục, loại hình du lịch
có dựa trên kết quả đánh giá, xếp hạng (ranking) các tour trong cùng một nhóm:
Du lịch tham quan: hình thức du lịch truyền thống tại Việt Nam
Du lịch khám phá: Du lịch tới những địa điểm mạo hiểm, dành cho du
khách thích trải nghiệm
Du lịch văn hóa: các tour du lịch tới các địa điểm văn hóa như Phố Cổ,
Hội An,..
Du lịch khác: gồm có du lịch teambuilding và du lịch mice
+ Các chức năng gợi ý và tìm kiếm tour:
Chức năng gợi ý địa điểm du lịch theo thông tin người dùng nhập vào
dưới dạng các lựa chọn có sẵn:
Người dùng sẽ cung cấp các thông tin mà mình muốn đi theo những
lựa chọn có sẵn như khu vực muốn đi, loại hình, khoảng giá, mức độ
ưu tiên (giá, chất lượng,...), yêu cầu khác (tour du lịch có gì đặc biệt,
lễ hội, festival,...).
6
Trên cơ sở những dữ liệu được cung cấp từng người dùng phía trên
kết hợp với những dữ liệu có sẵn trong database hệ thống sẽ tiến hành
phân cụm, nhóm các tour thỏa mãn rồi sau đó xếp hạng danh sách các
tour kết quả trả về rồi đưa ra danh sách các tour theo thứ tự giảm dần
về độ thích đáng.
Do kết quả là tổ hợp của rất nhiều các tham số nên để đưa ra một danh
sách các tour thỏa mãn với độ thích đáng cao mà vẫn đảm bảo tính đa
dạng cho người dùng lựa chọn đòi hỏi một database với số lượng rất
lớn dữ liệu tour khác nhau (hệ thống sẽ được nâng cấp trong tương lai
để đảm bảo tính năng này hoạt động hiệu qủa).
2. Nâng cấp, mở rộng
Những chức năng nhóm không thực hiện được trong phạm vi của BTL này
nhóm sẽ tiếp tục phát triển trong thời gian tiếp theo để đạt được một sản phẩm gợi
ý du lịch hoàn chỉnh có khả năng ứng dụng trong thực tế. Cụ thể:
- Tiếp tục nâng cấp để làm phong phú database, đảm bảo tính tính đa dạng
cũng như độ thích đáng cho tập kết quả trả về sau khi xếp hạng.
- Cải tiến chức năng thu thập thông tin người dùng:
Nâng cấp các bộ lựa chọn cung cấp cho người dùng để có thể thu thập được
nhiều thông tin cần thiết, chính xác hơn cho hệ thống tính toán
Mở rộng chức năng truy xuất cho phép người dùng nhập trực tiếp một câu
truy như: "tour du lịch nào hấp dẫn nhất hiện nay" ; "tour du lịch nào được nhiều
người đi nhất", ...
- Cải tiến, nâng cấp chức năng gợi ý:
Bên cạnh việc hiển thị tập kết quả trả về sau khi đã tính toán từ bộ tham số
đầu vào phía trên, hệ thống sẽ bổ sung tính năng gợi ý những địa điểm có mức độ
tương đồng khi người dùng click vào một tour bất kì.
- Link hoạt trong việc thay đổi trọng số của các tham số dựa trên mức độ ưu
tiên người dụng yêu cầu thay vì cấu hình có sẵn một số bộ tham số như hiện tại cụ
thể: phân tích những yêu cầu người dùng nhập vào sau đó sẽ cắt nghĩa xem tiêu chí
nào được người dùng quan tâm nhất và độ xuật hiện của nó trong câu truy vấn như
7
thế nào rồi sau đó sẽ thiết lập bộ trọng số cho các tham số (Nhóm sẽ tiến hành
nghiên cứu kỹ thuật toán này trong thời gian tới).
- Chức năng thông báo cho người dùng về một địa điểm du lịch dựa trên thời
tiết:
Khi người dùng lựa chọn môt tour du lịch, hệ thống sẽ kiểm tra dự báo thời
tiết của khu vực đó trong khoảng thời gian người dùng muốn đi nếu có dấu
hiệu xảy ra thời tiết xấu, bất thường thì hệ thống sẽ phản hồi lại để người
dùng cân nhắc đổi tour khác hoặc dừng đặt tour.
Trong trường hợp người dùng đặt tour sớm hơn so với thông tin thời tiết mà
hệ thống chưa thể cập nhật thông tin thời tiết về địa điểm du lịch đó thì hệ
thống sẽ luôn đánh dấu lại trạng thái của tour du lịch này ở dạng chờ và tiến
hành kiểm tra khi có thể, nếu khi đó có xảy ra vấn đề gì về thời tiết,... thì sẽ
thông báo lại cho người quản trị để xử lí kịp thời để không làm ảnh hưởng
tới công ty cũng như khách hạng, VD: có thể gửi mail, gọi điện thông báo
cho khách đổi hoặc hủy tour.
- Ngoài các chức năng chính cho người quản trị như thêm tour, xóa tour, cập
nhật tour, thống kê, quản lý đơn hàng đã được đề cập ở trên hệ thống cần mở rộng
chức năng cập nhật thời tiết cho người quản trị để nâng cao hiệu năng cho hệ thống
hoạt động. Bởi, hệ thống nếu cung cấp chức năng gợi ý tour theo thời tiết thì cần
có chức năng tự cập nhật thời tiết tuy nhiên không phải lúc nào hệ thống tự cập
nhật cũng đủ thông minh để cập nhật được hết thời tiết các khu vực, công việc của
người quản trị (chuyên gia hệ thống) lúc này là cung cấp thêm tri trức cho hệ thống
để hệ thống trở nên trơn tru và mềm dẻo hơn.
- Tương tự như thế đối với chức năng cắt nghĩa các câu truy vấn mà người
dùng hệ thống nhập vào, người chuyên gia trong hệ thống cũng cần phải cung cấp
thêm nhiều tri thức nhận biết các kiểu truy vấn mà người dùng nhập vào để hệ
thống nhận biết truy vấn này được thông minh hơn, cung cấp tốt cho quá trình lấy
thông tin phục vụ cho quá trình tính toán.
- Chức năng phân quyền người quản trị: Để nâng cao hiệu quả hoạt động
cũng như đảm bảo độ bảo mật cao, hệ thống cần có chức năng phân quyền user
quản trị để chia nhỏ nội dung cần quản lý. Bởi, một người quản trị không thể vừa
quản lí đơn hàng, vừa cung cấp tri thức cho hệ thống dự báo theo thời tiết, vừa
8
cung cấp tri thức cho hệ thống gợi ý theo truy vấn,... Việc này sẽ làm cho hệ thống
được hoạt động tối ưu hóa và hiệu quả hơn rất nhiều.
III. SỰ KIỆN NGỮ CẢNH & VÀ BIỂU DIỄN TRI THỨC
1. Sự kiện ngữ cảnh
a. Mô tả khung cảnh
Môi trường ngữ cảnh của hệ thống là một tập hợp những hành động thể hiện
quá trình tương tác, trao đổi thông tin qua lại giữa khách hàng và người quản trị
với hệ thống . Cụ thể:
- Hệ thống:
Là đối tượng trung tâm trong môi trường tương tác
Chứa tất cả những dữ liệu về các địa điểm du lịch, các tour du lịch
Chứa tất cả những ứng dụng được cài đặt bên trong: ứng dụng gợi ý
địa điểm du lịch, ứng dụng đánh giá xếp hạng địa điểm du lịch, ứng
dụng cập nhật cho người quản trị,...
- Khách hàng: là những người có nhu cầu tìm kiếm thông tin về các địa
điểm, các tour du lịch.
- Quản trị hệ thống: là người quản lí nội dung thông tin đăng tải trên
website, quản lý khách đặt tour, đưa ra thông báo hủy tour, đổi tour,...
F1: Biểu đồ khung cảnh của hệ thống
b. Chi tiết ngữ cảnh hệ thống
- Người sử dụng:
Chọn xem thông tin tour du lịch theo loại (du lịch khám phá, du lịch
văn hóa,...): hệ thống cần hiển thị thông tin các loại tour du lịch đã
được phân loại theo nội dung mà người dùng muốn xem
Chọn xem tin tức du lịch: hệ thống hiển thị những thông tin mới nhất
về tình hình du lịch Việt Nam và thế giới
9
Chọn xem thông tin khuyến mại: hiển thị danh sách những tour đang
có khuyến mại
Chọn xem top tour: hiển thị thông tin top những tour được người dùng
yêu thích và chọn nhiều
Chọn chức năng gợi ý địa điểm du lịch
Chọn xem thông tin liên hệ, contact: hiển thị thông tin liên hệ của
công ty.
Đặt tour
* Các biểu đồ:
F2: Biều đồ use case khách hàng
10
F3: Biểu đồ activity diagram chức năng gợi ý địa điểm du lịch
11
F4: Biểu đồ sequence diagram chức năng gợi ý địa điểm du lịch
Để hạn chế những biểu đồ không cần thiết, nhóm chỉ tập chung xây
dựng biểu đồ cho chức năng chính là gợi ý địa điểm du lịch.
- Người quản trị:
Đăng nhập hệ thống: Cho phép user quản trị login vào hệ thống, thay
đổi mật khẩu, hiển thị giao diện cho người quản trị lựa chọn chức
năng ở phía dưới khi đăng nhập thành công.
Chọn chức năng cập nhật nội dung: Hiển thị trang cập nhật nội dung
(tour, sự kiện trong tháng,...) cho người quản trị có thể cập nhật
Chọn chức năng thống kê: hệ thống cho phép thực hiện thống kê
nhanh về tình hình hệ thống.
12
Chọn chức năng quản lý khách đặt tour: hiển thị danh sách khách đã
đặt tour, những giao dịch mới chưa được xử lý, cho phép thay đổi
trạng thái giao dịch (chưa xử lý,đã xử lý, chờ, hủy)...
Chọn chức năng quản lý phản hồi: hiển thị phản hồi từ phía người
dùng
* Các biểu đồ:
F5: Biểu đồ use người quản trị
13
F6: Biều đồ activity diagram chức năng cập nhật nội dung
14
F7: Biều đồ sequence diagram chức năng cập nhật nội dung
15
F8: Biểu đồ sequence diagram chức năng quản lý khách đặt tour
16
2. Biểu diễn tri thức
a. Sơ đồ biểu diễn tri thức
Hệ thống tri thức được biểu diễn dưới dạng mạng ngữ nghĩa như sau:
F9: Sơ đồ biểu diễn tri thức
b. Xây dựng cơ sở dữ liệu
Từ mạng ngữ nghĩa trên ta tiến hành đưa về dạng cơ sở dữ liệu quan hệ để
tiện cho quá trình xây dựng.
17
F10: Sơ đồ cơ sở dữ liệu quan hệ
Mô tả dữ liệu:
1. Bảng region (khu vực)
TT Trường Thuộc tính Ghi chú
1 Region_id int Khóa chính
2 Region_name varchar
3 Region_Description text
5 Region_status varchar
2. Bảng Reg_loc
TT Trường Thuộc tính Ghi chú
1 Region_id int Khóa chính
2 Loc_id int
Khóa ngoài:
fk_ region(Region_Id,Region_id)
fk_ location(Loc_Id,Loc_des_id)
3. Bảng Loc_destination (Bảng lưu các điểm đến)
TT Trường Thuộc tính Ghi chú
1 Loc_des_id int Khóa chính
2 Loc_des_name varchar
3 Loc_des_event_date datetime
4 Loc_des_event_name varchar
5 Loc_des_description text
6 Loc_des_status varchar
4. Bảng wieght (lưu các trọng số để đánh giá)
TT Trường Thuộc tính Ghi chú
18
1 Loc_id int Khóa ngoài
2 weight_cost double
3 weight_quality double
4 weight_kind double
Khóa ngoài:
fk_location (Loc_id, log_des_id)
5. Bảng loc_starting (lưu các điểm xuất phát)
TT Trường Thuộc tính Ghi chú
1 Loc_start_id int Khóa chính
2 Loc_start_name varchar
3 Loc_start_description text
6. Bảng tour (lưu danh sách các tour)
TT Trường Thuộc tính Ghi chú
1 Tour_id int Khóa chính
2 Tour_Loc_start_id int
3 Tour_log_des_id int
4 Tour_kind varchar
5 Tour_cost double
6 Tour_vote int
7 Tour_quality int
8 Tour_description text
khóa ngoài:
fk_location()
fk_loc_starting()
19
IV. ĐỘNG CƠ SUY DIỄN, LUẬT DIỄN GIẢI
1. Bảng động cơ suy diễn, luật diễn giải
a. Các tập luật cho các sự kiện của khách
TT Sự kiện Hành động
1
Nếu lựa chọn xem thông tin tour,
địa điểm du lịch theo loại hình du
lịch tham quan
hệ thống tiến hành tìm và lọc những
tour có nội dung liên quan đến du lịch
tham quan, đánh giá và sắp xếp những
tour đó rồi hiển thị kết quả
2
Nếu lựa chọn xem thông tin tour,
địa điểm du lịch theo loại hình du
lịch khám phá
hệ thống tiến hành tìm và lọc những
tour có nội dung liên quan đến du lịch
khám phá, đánh giá và sắp xếp những
tour đó rồi hiển thị kết quả
3
Nếu lựa chọn xem thông tin tour,
địa điểm du lịch theo loại hình du
lịch văn hóa
hệ thống tiến hành tìm và lọc những
tour có nội dung liên quan đến du lịch
xanh, đánh giá và sắp xếp những tour
đó rồi hiển thị kết quả
4
Nếu lựa chọn xem thông tin tour,
địa điểm du lịch theo loại hình du
lịch khác (teambuilding, mice)
hệ thống tiến hành tìm và lọc những
tour có nội dung liên quan đến du lịch
khác (teambuilding, mice), đánh giá và
sắp xếp những tour đó rồi hiển thị kết
quả
5
Nếu lựa chọn chức năng gợi ý địa
điểm du lịch
yêu cầu lựa chọn những thông tin
mong muốn (khu vực muốn đi, khoảng
giá, loại hình, thời gian đi bao lâu, yêu
cầu chất lượng dịch vụ)
6
Nếu cung cấp đầy đủ thông tin như
hệ thống đề ra
tiến hành tìm, lọc những tour có tiêu
chí thỏa mãn xếp hạng và hiển thị kết
quả
7
Nếu không cung cấp thông tin về
khu vực muốn đi
tiến hành tìm, lọc tất cả tour có tiêu chí
thỏa mãn với giá trị khu vực để mặc
định là tất cả các địa danh, xếp hạng và
hiển thị kết quả
8
Nếu không cung cấp thông tin về
giá cả
tiến hành tìm, lọc tất cả tour có tiêu chí
thỏa mãn mà không quan tâm tới giá
cả, xếp hạng và hiển thị kết quả
9
Nếu không cung cấp thông tin về
loại hình du lịch
tiến hành tìm, lọc tất cả tour có tiêu chí
thỏa mãn với giá trị loại hình du lịch để
mặc định là tất cả, xếp hạng và hiển thị
kết quả
20
10
Nếu không cung cấp thông tin về
chất lượng dịch vụ
tiến hành tìm, lọc tất cả tour có tiêu chí
thỏa mãn và bỏ qua chất lượng dịch vụ,
xếp hạng và hiển thị kết quả
11
Nếu không cung cấp thông tin về
thời gian đi bao lâu
tiến hành tìm, lọc tất cả tour có tiêu chí
thỏa mãn với tất cả giá trị thời gian có
thể thỏa mãn, xếp hạng và hiển thị kết
quả
12
Nếu người dùng lựa chọn một tour
nào đó trong số các tour đã gợi ý
tiến hành tính toán và đưa ra gợi ý danh
sách các tour có tính chất, loại hạng
tương đương với tour đang xem
13
Nếu lựa chọn đặt tour tiến hảnh yêu cầu xác nhận và lựa chọn
hình thức thanh toán, gợi ý khách hàng
thanh toán trực tuyến hoặc tới trụ sở
văn phòng đặt tour
14
Nếu lựa chọn lưu tour tiến hành tự động gửi email cho khách
hàng thông tin về tour, đồng thời gửi
kèm danh sách những tour có tính chất
tương đương đã gợi ý
15 Nếu lựa chọn đánh giá tour tiến hành lưu lại đánh giá người dùng
để cập nhật vào hệ thống
16 Nếu lựa chọn phản hồi tiến hành hiển thị form phản hồi và lưu
phản hồi
b. Bảng tập luật các sự kiện dành cho người quản trị
TT Sự kiện Hành động
1 Nếu lựa chọn chức năng quản lý
tour
hiển thị danh sách các tour với các
chức năng thêm, sửa, xóa
2 Nếu lựa chọn chức năng thêm một
tour mới
hiển thị form thêm tour và xử lý
3 Nếu lựa chọn chức năng cập nhật
tour
Lấy dữ liệu tour cần cập nhật sau đó
hiển thị form cập nhật
4 Nếu lựa chọn chức năng xóa tour Lấy id tour cần xóa và ajax lên server
5 Nếu lựa chọn chức năng cập nhật
thời tiết theo khu vực
Hiển thị form cập nhật thông tin thời
tiết
6
Nếu lựa chọn chức năng quản lý
tìm kiếm
Hiển thị danh sách các truy vấn của
người dùng để cung cấp tri thức cho hệ
thống
7 Nếu lựa chọn chức năng quản lý Hiển thị danh sách khách hàng đặt tour
21
khách hàng
8 Nếu lựa chọn chức năng phân
quyền
Hiển thị bảng user, mức phân quyền
V. SƠ ĐỒ KIẾN TRÚC HỆ THỐNG
1. Mô hình hệ thống
Hệ thống được xây dựng sẽ gốm có 4 phần chính:
- View: chứa các lớp, file html, js, css hiểu thị phía browser
Hiển thị nội dung trên trình duyệt phía người dùng
Nhận request từ phía người dùng
Gửi request tớ lớp controller
Chờ kết quả hiển thị kết quả lên trình duyệt cho người dùng
Để tăng hiệu năng sử lý hệ thống sẽ xử dụng công nghệ ajax để giảm khối
lượng phải load lại trên trình duyệt, giảm thời phải chờ đợi cho người dùng
- Controller: chứa các lớp điều hướng, được cài đặt bằng php (codeigniter)
Nhận request từ phía người dùng gửi tới
Xử lý request gửi yêu cầu cần tính toán xử lý, xếp hạng tới model
Nhận thông tin từ lớp model và trả lại kết quả cho lớp view
- Model: chứa các lớp, hàm cài đặt tính toán, truy xuất cơ sở dữ liệu, được cài đặt
bằng php (codeigniter)
HIỂN THỊ NỘI DUNG ĐIỂU HƯỚNG YÊU CẦU
TRUY XUẤT CƠ SỞ
DỮ LIỆU, XẾP HẠNG
22
Nhận request tính toán từ phía controller
Lấy dữ liệu cần thiết trong database
Thực hiện hiện tính toán, xếp hạng tour
Cất dữ liệu vào database nếu cần
Trả về kết quả cho controller
- Database:
Chứa toàn bộ cơ sở dữ liệu của hệ thống trang web dưới dạng các bảng, cơ
sở dữ liệu quan hệ.
Cho phép thực hiện các thao tác cập nhật, thêm mới, xóa dữ liệu
Cho phép thực hiện các thao tác bảo mật trên database
2. Công nghệ và thuật toán sử dụng
a. Thuật toán topsis
Ý tưởng: Lấy ra một giá trị tốt nhất từ tập thuộc tính và 1 giá trị tồi nhất từ
tập thuộc tính (có thể 2 giá trị này không tồn tại) sau đó ta tính khoảng cách
vector lần lượt từ các giá trị tới 2 giá trị đó rồi tính độ tương tự kí hiệu Ci*.
Nếu Ci* nào càng nhỏ chứng tỏ giá trị đó cảng gần giá trị tốt và sẽ xếp trên
các giá trị có Ci* lớn hơn.
Thực hiện:
Bước1: chuẩn hoá, đưa các giá trị về rij ∈ [0,1]
Bước 2: tính giá trị theo trọng số vij = rij * wj
Bước 3: tính các giải pháp lý tưởng A* = (v1*,v2*,…,vm*), với vj* là giá
trị tốt nhất của Xj A- = (v1
-,v2
-,…,vm
-), với vj
- là giá trị tồi nhất của Xj
Bước 4: tính khoảng cách Si* = (Σj(vij-vj*)2)
1/2, Si
- = (Σj(vij-vj
-)
2)
1/2
Bước 5: tính độ tương tự: Ci* = Si- / (Si*+Si
-)
b. Ứng dụng trong hệ thống
Đối với hệ thống khi ứng dụng thuật toán topsis cần có chút cải tiến để việc
áp dụng được thuận lợi hơn.
Tập các tour là A = {A1,A2,A3,....An}
Tập các thuộc tính dùng để đánh giá là X = {X1,X2,X3,...Xn} (các thuộc
tính này có thể gồm giá, chất lượng dịch vụ, đặc điểm nổi bật,...)
Ta sẽ xây dựng được một ma trận với hàng là A và cột là X
23
X1 X2 Xn
A1 r11 r12 r1n
A2 r21 r22 r2n
A3 r31 r32
An rn1 rn2 rnn
Chuẩn hóa các giá trị của r về rij = [0,1] bằng công thức sau:
√∑
Thực hiện các bước 4,5 như trên
Lấy ra danh sách đã sắp xếp theo thứ tự tăng dần của C* để gợi ý cho người
dùng những tour du lịch tương ưng.
VI. HƯỚNG DẪN CÀI ĐẶT VÀ CHẠY CHƯƠNG TRÌNH
1. Quá trình xây dựng
- Chương trình được nhóm xây dựng bằng framework codeigniter + mysql
2. Hướng dẫn cài đặt
- Toàn bộ mã nguồn chương trình và cơ sở dữ liệu được đặt trong thư mục source
của file source.zip:
+ Mở file source.zip và giải nén sẽ thu được 1 thư mục là "suggestiontourist" và 1
file sql có tên "suggestiontourist.sql"
+ import file "suggestiontourist.sql" vào 1 hệ quản trị cơ sở dữ liệu bất kì với tên
database là "suggestiontourist".
+ Copy thư mục "suggestiontourist" vào thư mục htdocs của xampp hoặc thư mục
có thể chạy web của các web server ảo khác
+ Mở file "suggestiontourist\application\config\database.php" sửa username,
password đúng với username password của bạn (root...) database là tên database
bạn đã import vào ở trên.
24
+ Mở file "suggestiontourist\application\models\ConnectDB" và config tương tự
như trên
+ Bây giờ bạn đã có thể tiến hành chạy website trên local
25
KẾT LUẬN
Trên đây là báo cáo tổng kết của nhóm. Chắc chắn, bản báo cáo này sẽ
không tránh khỏi những điểm sai và thiếu sót. Nhóm rất mong nhận được sự đóng
góp từ phía thầy và các bạn để đề tài được hoàn thiện hơn.