1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp Hệ thống thông tin: Xây dựng webstie gợi ý điểm du lịch áp dụng thuật toán K láng giềng gần nhất

130 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây dựng website gợi ý điểm du lịch áp dụng thuật toán K láng giềng gần nhất
Tác giả Pham Thi Bich Ngan, Tran Mai Ngoc Thieu
Người hướng dẫn ThS. Mai Xuan Hung, ThS. Vu Minh Sang
Trường học Trường Đại học Công nghệ Thông tin
Chuyên ngành Khoa Hệ thống Thông tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2021
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 130
Dung lượng 65,43 MB

Nội dung

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhấtLỜI CẢM ƠN Lời đầu tiên, nhóm hai thành viên chúng em xin gửi lời cảm ơn chân thànhđến Khoa hệ thống thông tin

Trang 1

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HOC CONG NGHE THONG TIN

KHOA HE THONG THONG TIN

PHAM THI BiCH NGAN

TRAN MAI NGOC THIEU

KHOA LUAN TOT NGHIEP

THUAT TOAN K LANG GIENG GAN NHAT

Buiding a website for suggesting tourist attractions applying

k-nearest neighbor - knn

KY SU HE THONG THONG TIN

TP HO CHÍ MINH, 2021

Trang 2

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA HỆ THÓNG THÔNG TIN

PHẠM THỊ BÍCH NGÂN - 16520794

TRAN MAI NGỌC THIỆU — 16521172

KHÓA LUẬN TÓT NGHIỆP

XÂY DUNG WEBSITE GOI Ý DIEM DU LICH ÁP DỤNG

THUẬT TOÁN K LÁNG GIÊNG GẢN NHẤT

Buiding a website for suggesting tourist attractions applying

k-nearest neighbor -knn

KY SU HE THONG THONG TIN

GIANG VIEN HUONG DAN

ThS Mai Xuân Hùng

ThS Vũ Minh Sang

TP HÒ CHÍ MINH, 2021

Trang 3

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

THÔNG TIN HỘI ĐÒNG CHÁM KHÓA LUẬN TÓT NGHIỆP

Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số ngày

¬— ens của Hiệu trưởng Trường Đại học Công nghệ Thông tin.

| = — Chủ tịch.

PA —= nent eee e ee eeeee ea eneneeeneee ea — Thu ky.

Bo — eee e eee eee teeta eeeeeeee ene eeeeaenaes — Ủy viên

— ccc e cee ne cece eee tne eee eee eene ene ened — Uy vién

Pham Thị Bích Ngân_ Trần Mai Ngọc Thiệu

Trang 4

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

LỜI CẢM ƠN

Lời đầu tiên, nhóm hai thành viên chúng em xin gửi lời cảm ơn chân thànhđến Khoa hệ thống thông tin cũng như trường Đại học công nghệ thông tin đã tạođiều kiện tốt nhất cho chúng em thực hiện và hoàn thành khóa luận tốt nghiệp này.Ngoài ra, xin cảm ơn quý thầy cô trong khoa đã tận tình giảng dạy, trang bị cho chúng

em những kiến thức quý báu trong những năm học vừa qua

Thứ hai, chúng em xin gửi lời cảm ơn chân thành đến thầy ThS.Mai Xuân Hùng - đãtận tình hướng dẫn chúng em trong suốt thời gian thực hiện đề tài Khoảng thời gianlàm khóa luận, thầy luôn cố gang muốn nhóm hoàn thiện một cách tốt nhất, và động

viên các thành viên trong nhóm, kip thời hồ trợ nêu có sai sót xảy ra.

Thời gian hoàn thành khóa luận là khoảng thời gian khó khăn, thử thách và cam go

với các thành viên trong nhóm Tuy nhiên, nhờ sự giúp đỡ của các thầy cô, bạn bè

nhóm đã vượt qua giai đoạn này, đó là nguồn động lực to lớn, chỗ dựa tinh than vững

chắc không chỉ trong học tập, mà còn trong mọi hoạt động cuộc sông thường ngày.

Dé giờ đây, các thành viên trong nhóm đã hoàn thành khóa luận tốt nghiệp, đánh dau

cho sự hoàn thành chương trình bậc đại học, sẵn sàng cống hiến cho tố quốc, cho đất

nước.

Một lan nữa xin cảm ơn và rat mong nhận được sự góp ý chân thành thay cô.

TP.Hồ Chí Minh, ngày 04 tháng 01 năm 2021

Nhóm sinh viên thực hiện

Phạm Thị Bích Ngân

Trần Mai Ngọc Thiệu

Trang 5

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

1.5 Ý nghĩa của đề tài - 5c St ETEEE 2212112111121 011111 Eeye

1.6 Đối tượng, phạm vi, phương pháp nghiên cứu 5-5 2552

1.7 Bố cục báo cáo -:-©:- 2s 2s k2 2211211211221121121121111211211 2111111 eeChương 2 CƠ SỞ LÝ THUYÊTT s s- 5° 52s se ssssssesseEsesessessersevse

2.1 Bài báo nghiên cứu hệ thống gợi ý - 2-2 5© 2+E2EEeExezxrrrerrxerseee

2.2 Tìm hiểu hệ thống gợi ý du lịch - 2 - 5s E+£+E+EzEerxerxerxerxrrszes

2.2.1 Giới thiệu hệ thống gợi ý - 2: 52+2S+22Ec2EEEEEESEkerkrrrrerkerred

Trang 6

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Chương 3 PHAN TÍCH THIET KE HỆ THÓNG «25s 19

kh) cac năaODiOOD 19

3.1.1 Các yêu cầu chức năng: - ¿22 s+SkeEE2EE2EEEEEeEErErrkerkerree 19

3.1.2 Yêu cầu phi chức MAN? 0 csssesssssssssessssssscssecssecsessseeasecsseeseessecs 203.2 Phan tích thiết kế hệ thống 0 c ccccccccccescsecsecseessessessessssssessessessessesssesseeses 21

3.2.1 Các chức năng hệ thống - 2-22 5¿+2+t2E+EE+2EEEEEerkrerkrrrrres 21

3.2.2 Các tác nhân hệ thống ¬ 223.2 Sơ đồ Use case o.ccccccccccscssssssessessessssssessessssssessecsessussssssessecsessussseesessessussseeseeses 28

3.3 Đặc ta Usecase và sơ đồ hoạt động -2- 22 SsccteEEerkrrrrkerkerree 30

3.3.1 Sơ đồ hoạt động quản lý đặt tour - 2 2 sse+sz+£e+zxerxerxee 303.3.2 Sơ đồ hoạt động đặt tour du lịch -¿2 s+xzszz+zxerxersee 33

3.3.3 Sơ đồ hoạt động hủy fOuF + E+SE+EE+EE+EcErEerkerkerkerkrree 353.3.4 Sơ đồ hoạt động xác nhận thanh toán 2-2-2 2 s52 37

3.3.5 Sơ đồ hoạt động đánh giá t0urr 2: 2 5+2cx+2z++zxesrxsrxees 39

3.3.6 Sơ đồ hoạt động bình luận - - 2 + s+S++E++EE+ErEerkerxerxrrkrree 41

3.3.7 Sơ đồ hoạt động liên hệ đặt khách sam oo esseeseesesseeeee 43

3.3.9 Sơ đồ hoạt động tìm kiếm thông tin khách du lich - 41

3.3.10 Sơ đồ hoạt động cập nhật thông tin khách du lịch - 493.4 Sơ đồ tuần tự - 2c 2t 2 2 2221221221211 1101112112101 eeree 52

3.4.1 Sơ đồ tuần tự đặt tour du lịch - 5: 2522cc+cezxcrkerkerxerxrrxeree 52

3.4.2 Sơ đồ tuần tự hủy t0uT 2-5-2222 E2 2 EEEEerErrrrkerrerkee 533.4.3 Sơ đồ tuần tự xác nhận thanh toán 2 2 sccs+xe+E+rxerxerxee 533.4.4 So đồ tuần tự đánh gid fOurr - 2 s22 2 erkerkrrrkrrkerkerree 54

3.4.5 Sơ đồ tuần tự bình luận - ess essessessessessestssessessesseaee 553.4.6 Sơ đồ tuần tự liên hệ đặt khách sạn - 2 2 se cccxerxerseree 56

3.4.7 Sơ đồ tuần tự thống kê doanh thu 2-52 52©52+£z+£xerxersez 57

3.4.8 Sơ đồ tuần tự tìm kiếm thông tin khách du lịch - 583.4.9 Sơ đồ tuần tự cập nhật thông tin khách du lich 59

Trang 7

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

3.7 Cơ sở Co (| 55c 2s E2 E211271127121121171.211211.11 1.111 ye 60

3.7.1 Mô hình cơ sở dữ liệu - G22 3221121131111 xxx 60

3.7.2 Tổ chức dữ liệu - 2-22 22+2E2EE22E2271 2212112711211 211.21 crree 603.7.3 Mô tả các kiểu dữ liệu - 2 5222x22E2ESEEEEkrEEerkrerkrrrrees 62

3.8 Thiết kế giao diện và xử lý -5-©52 22c 2k2 22c 75

3.8.1 Sơ đồ màn hình - 2-2 +z+x++E£EE+£EE2EEE2EE271E221211 21 75

3.8.2 Mô tả các màn hình - << 1 1E 12231 11H ng ke reg 78

Chương 4 CÀI ĐẶT VÀ KIEM THỦ <2 sssssssessesssessessss 92

4.1 Kiến trúc hệ thống - 2-5252 EEEEEEEEEE1011211211211 211111111111 924.2 Cài đặt thuật toán trên hệ thống website -52©55ccccccces 92

AQ cố 924.2.2 Các bước triển khai - 2-2 5 s31 2EEEEEEEEEEEEEEEEEEErkrrkrrkerkee 934.3 Quy trình chọn điểm lân cận k 2 2 + £+££+£x+zEtzxezrezrxerxeres 95

4.3.1 Độ do RMSE — Root mean squared ErTOF -. «+-<<<<<<++ 95

4.3.2 Chọn điểm lân cận Kio ccccccccccccccccccccsscscesessessessessessessesescsessessessessesseaee 964.4 Cài đặt và triển khai websife - ¿St E2 1E Ekerkrrrree 98

4.4.1 Công cụ sử dụng etc c c1 St TH TH HH HH ng re 98

4.4.2 Triển khai websife - 2-52 2112717112112 1712121111 98

Chương 5 KET LUẬN VA HUONG PHAT TRIÉN 5-s-s 104

5.1 Kết quả dat được 2-52-5222 2E EE21211211 7121121121111 crkee 104

5.2 Ưu điểm của hệ thống - 2: SE SE+EE£E2EE2EEEEEEEEEEEEEEEEEEEErrrree 104

5.3 Hạn chế của hệ thống - 2-22 2¿©222E+2EESEE2EEEEEEEEEEEEerrrerkree 104

5.4 Hướng phát triẾn - ¿5S StềEE9EEEE12112112171 71211111111 xe 104

Tài liệu tham khảo so - <5 << 5 s5 9 0001000820 106

Trang 8

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

DANH MỤC HÌNH

Hình 1.1: Giao diện website 1VIVU.COIM 5G 2021221111122 129 11 ng ng vn 4 Hình 1.2: Giao diện website dulichv1ef.COIM.VI c5 553322233 veseeeesree 4 Hình 1.3: Giao diện website TraveÏ.COI.VII 2c Ă 5233222211111 se, 4 Hình 2.1: Vi dụ giải thuật lọc nội dung < 3x 3+ SEsesreseeerererssre 10

Hình 2.2: Ham Cosine tính độ tương tự dựa trên người dùng [2] 11

Hình 2.3: Công thức dự đoán đánh gia của người dùng lên mục tin [2] 12

Hình 2.4: Công thức Cosine tính độ tương tự dựa trên mục tin [2] 12

Hình 2.5: Công thức dự đoán đánh giá của người dùng lên mục tin [2] 13

Hình 2.6: Ví dụ áp dụng lọc cộng tác theo mô hình k láng giềng vào hệ thống website gợi ý điểm du lịCHh ¿- ¿5c SkSx+EE2EE2EE2EE2EEEEEEEEE1EE1111211 212111111 cxe 13 Hình 3.1: Sơ đồ Usecase khách du lịch ¿ +:+c+++txvtsrrxvesrrrrvrsrrrerrre 28 Hình 3.2: Sơ đồ Usecase Quản lý -¿- 2-52 ©S22E22EE‡EEEEEEEEEEEEEEEErEErrkerkerkrrex 29 Hình 3.3: Sơ đồ Usecase nhân viên công †y 2-2 5¿©++2++x++zxzrxrrxecree 29 Hình 3.4: Sơ đồ hoạt động quản lý đặt tOu - 2-2 22+££+£++£EezE+zre+rxerxezez 30 Hình 3.5: Sơ đồ hoạt động đặt tour du lịch - 2 2s + z+£+£££xezxerxerxerszxez 33 Hình 3.6: Sơ đồ hoạt động hủy tOUT - 2 2S S£SE£EE£EE+EE+EE+EEZEEEEerEerkerxrrkrree 35 Hình 3.7: Sơ đồ hoạt động xác nhận thanh toán - c5 + sssessrresersee 37 Hình 3.8: Sơ đồ hoạt động đánh giá tOUT -2¿ 2 5£ S+2£+2E£tEE++rxezrxerxeeree 39 Hình 3.9: Sơ đồ hoạt động bình luận - 2 2 ++E2E++EE+EE+EEzEEzExsrxerrerer 41 Hình 3.10: Sơ đồ hoạt động liên hệ đặt khách sạn - - 55+ S+ccs+cxssexsseseeres 43 Hình 3.11: Sơ đồ hoạt động thống kê doanh thu 2 2£ ++22££+£++zxzzszzsz 45 Hình 3.12: Sơ đồ hoạt động tìm kiếm thông tin khách du lịch - 41

Hình 3.13: Sơ đồ hoạt động cập nhật thông tin khách du lịch - -‹- 49 Hình 3.14: Sơ đồ tuần tự hủy tOU - ¿+ 5¿22x+2EE£EE+2EE+2EEvEEEEEEerkrrrkerkrcrke 53 Hình 3.15: Sơ đồ tuần tự xác nhận đã thanh toán -¿- + x+z++E+E+zEerxzzezxez 53 Hình 3.16: Sơ đồ tuần tự đánh giá tour c.cecccccecccscesccseesessessessessessesesesssessessessesneaee 54

Trang 9

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Hình 3.17: Sơ đồ tuần tự bình luận ¿¿-+22+cerrtEEkirrrttiirrrriirrerieg 55Hình 3.18: Sơ đồ tuần tự liên hệ đặt khách sạn ccccccceveecrrrrree 56Hình 3.19: Sơ đồ tuần tự thống kê doanh thu 2 2¿¿2+25++zxz+zxzx+zzs+ 57Hình 3.20: Sơ đồ tuần tự tìm kiếm thông tin khách du lịch -s- 58

Hình 3.21: Sơ đồ tuần tự cập nhật thông tin khách du lịch - 5-5252 59

Hình 3.22: Mô hình cơ sở dữ liệu 5 <5 E2 2111131122111 kkereerzze 60

Hình 3.23: Sơ đồ màn hình hệ thống website -2 2¿25¿©2++2x+2cxe+zxrrreeree 75

Hinh 3.24: Màn hình trang đăng ky - - - 5s Tnhh HH HH it 78

Hình 3.25: Màn hình trang đăng nhập - - 5 5< +22 E32 **EsErseerrrereererrrre 79

Hình 3.26: Màn hình trang địa điểm miền Bắc ¿ 2¿©22©5z+cxe2zxczxecree 80

Hình 3.27: Màn hình trang chỉ tiết địa điểm - 2-2 2 2+£+E+EezEerxerxrrsree 81

Hình 3.28: Man hình trang tour miền Bac c.ccsccssceseeseesessessessessessessesssesessessessesseese 82Hình 3.29: Màn hình trang thông tin chỉ tiẾt tOur ¿-¿©+2©5+2cs+2zxzs+scs+ 83

Hinh 3.30: Màn hình trang khách sạn oo eee eeceeeseeseeseeseeeeseceesesesecseseseeaeeaeeas 84

Hình 3.31: Màn hình trang chỉ tiết khách sạn 2-2 52222 E+£E+zE£+E++rxerxzez 85

Hình 3.32: Màn hình trang liên hỆ - - - 5 2 322333 E*2E2EEEEEEeereerrereerrrrrre 86

Hình 3.33: Màn hình trang hồ sơ người đùng - 2-2 +2 x+£x+zE++£++rxerxezez 87

Hình 3.34: Màn hình dashbOaTd s6 E193 E931 19111 11931 19111 1 vn 88

Hình 3.35: Màn hình trang quản lý địa điểm du lịch 2- 5c ©5z22s+cs+zxzs+ 89

Hình 3.36: Màn hình trang quản ly đặt t†OUT Ăn nghiep 90

Hình 3.37: Màn hình thống kê doanh thu theo năm 2-2 52522222 91Hình 4.1 Kiến trúc hệ thống - 2- 2-2 2 £+E£+E£+E£EE#EEEEESEEEEEEEEEEEEEEEEEEkerkrrkrree 92Hình 4.2: Quy trình áp dụng thuật toán lọc cộng tác theo mô hình k láng giềng vàoSOL Y dia To uYNNg - 93Hình 4.3: Dữ liệu đánh giá địa điểm [5] ccecceccccccsscsssessessessesssessesseesssssesseesesssseseeseees 93Hình 4.4: Danh sách địa điểm 0027 94Hình 4.5: Quy trình áp dụng thuật toán lọc cộng tác theo mô hình k láng giềng vào

GOL Y COUT n d 94 Hình 4.6: Dữ liệu đánh giá tour [Š ] - 5 211 2119311911191 9 11H ng rên 95

Trang 10

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Hình 4.7: Danh sách tour 1 Ý c5 S3 TH TH TH TH TH TH HH tiệt 95

Hình 4.8: Công thức RSÌMEE x9 HH TH Hà HH Hàn HH nh gkp 96

Hình 4.9: Tach ra 2 phần dữ liệu - 2-22 5¿+2E+2EE+EEESEE+2EEEEEEEEEEerkrrrrerrrcree 96

Hình 4.10: Bộ dữ liệu train và t€S£ Ă 2213112211111 21111 91111951111 g2 key 96 Hình 4.11: Tính toán RMSTE chư 97

Hình 4.12: Ket quả - 2-52 SE SE‡EEỀEEEEEEEE2E1211217171711111111115 1111111 Le 97

Trang 11

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

2.1: Vi dụ lọc cộng tác sử dụng ma trận Khách du lich x Dia điểm 9

2.2: So sánh các hệ quan tri cơ sở tt liệu - 5 + *+kssseesseree 15 3.1: Bang mô tả các chức năng dành cho quản ly 5 55+ <+<<+ 23 3.2: Bảng mô tả chức năng dành cho nhân viên công ty - ‹‹ 24 3.3: Bảng mô tả chức năng dành cho khách du lịch - - - «5+ 26

3.4: Bảng đặc tả Usecase quản lý đặt fOUT - - - + s + sseerssreererrrre 31 3.5: Bảng đặc tả Usecase đặt tour du lỊCh - 5c + + s++xssexssxeereserss 34

3.6: Bảng đặc tả Usecase hỦy {OUT - -. c3 133211339111 11 8111 ke 36 3.7: Đặc tả UseCase xác nhận thanh toán <5 5225 + +++++<+seeveess 38 3.8: Bảng đặc tả Usecase đánh g1á †OUT - - c 5 3+1 vikrsereeserrsee 40 3.9: Bảng đặc tả Usecase bình luận .- - 2-1 SE sskrerrrireskrre 42

3.10: Bảng đặc tả Usecase liên hệ đặt khách sạn - - -+++-x+++ 44

3.11: Đặc tả Usecase thong kê doanh thu 2-2 2 2+££+s£E+£x+rssrsee 463.12: Bảng đặc tả Usecase tìm kiếm thông tin khách du lịch 48

3.13: Bảng đặc tả Usecase cập nhật thông tin khách du lịch 50

3.14: Mô ta bảng Nhân vIÊn - 22c 32212213231 EEEEErrrerrkrrrkrre 62

3.15: Mô tả bảng khách du lịCH -.- 5 5c 3+ * SE St E+EEsEEsersererreeeserrrerere 63

3.16: Mô tả bang tài khoản - - c c 3211321131111 EEEEkrrrkrrre 64

3.17: Mô tả bảng miễn - ¿2-2 5E S£+SE£EE+E2E£EEEEEEEEEEEEEEEEE2171 21212 xe, 643.18: Mô ta bảng địa điểm du lịch - ¿5c 5 xSE+£++E+E2Eerkerkerkerxerxee 653.19: Mô tả bảng địa điểm tOUT 2-22 55¿2S+‡2E+2EE+2EEEEEEEEEerxrsrkrrrrsrki 65

3.20: MG ta Dang 10 66

3.21: Mô tả bang địa diém tour c.ceececcecescssssssesessessessessessesesseseesessessessesseaees 66

3.22: Mô tả bang tour ngày khởi hanh eee eee eseeseeeeceeceeeeeeseeeeeeeeeaes 67

3.23: Mô tả bảng tour lịch trình - c5 5313 EEEEEEeereerrrsrrrrrkrrre 67

3.24: Mô tả bang dat VỀ ẦOUT Gv HH Hư 68

3.25: Mô tả bảng đánh giá địa điểm 22-55c2cx2terkerkrrrkerrrsres 69

3.26: Mô tả bảng đánh gid {OUT 5 5 S3 3 9191 vn ng HH ng ưy 69

Trang 12

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

3.27: Mô tả bảng bình luận - - 5 5 25 +1 HH HH ngư 70

3.28: Mô tả bảng thông báO - c3 91121119111 1111111 1 11x ng re, 70

3.29: Mô tả bảng liên hệ - - G3 3 2H TH HH ng HH ng 71

3.30: Mô tả bang khách sạn - - c2 32312211211 111111 1 1 1x re, 72

3.31: Mô tả bảng khuyến mãi - 2 2 2+ +E£EE+EE£EESEE2EEEEEEerEerkerkerree 72

3.32: Mô tả bảng hoạt động nhân ViEN 5 c5 + * + xsseseereeee 73 3.33: Mô ta bảng phòng khách sạn - - 5< xxnnnnHn ng, 74

3.34: Mô tả bảng đặt phòng - - 5 sàn HH Hàng ng HH ng 74

3.35: Bảng danh sách các màn hình hệ thống - 2-22 22 2+2 76

3.36: Mô tả màn hình trang đăng ký - - -5Ă + tk ng ng re, 78

3.37: Mô tả màn hình trang đăng nhập - 55 52+ 3+ setrrsrrerrrrrrs 79

3.38: Mô tả màn hình trang địa điểm miền Bắc ¿2 55s 5+: 803.39: Mô tả màn hình trang chi tiết dia Gi cecccccseesseeseestesseesseesseens 813.40: Mô tả màn hình trang tour miền BAC cccccsssesssessesseesseesseestesseesseesseens 82

3.41: Mô tả màn hình trang khách sạn 55 55+ + *++ssersereerseersrs 84

3.42: Mô ta màn hình trang chi tiết khách sati ceccceecesceseesseseeseeseeeeseeeeees 85

3.43: Mô tả màn hình trang liên hệ - - +55 +22 **+*£++v+eersereerseersxs 86

3.44: Mô tả màn hình trang hồ sơ người ding 2-2-5 s2 s+zxscs+z 873.45: Mô tả màn hình trang quản lý địa điểm du lịch -: : 89

3.46: Mô tả màn hình trang quản lý dat tOUT «5£ << << x+se+sss 90

3.47: Mô tả màn hình thống kê doanh thu theo năm 2-5-5: 914.1: Bang mô ta quá trình kiểm thử eesessessessesesssseesesseesesseesees 99

Trang 13

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

DANH MỤC TU VIET TAT

STT Từ viết tat Nội dung

I | API Application Programming Interface

2 | CSDL Co sở dữ liệu

3 | RDBMS Relational Database Management System

4 | RMSE Root Mean Squared Error

5 RS Recommender Systems

6 | UML Unified Modeling Language

7 | JSX JavaScript XML

Trang 14

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Đề tài xây dựng một website gợi ý điểm du lịch, tour, khách sạn và đặt tour

đáp ứng các chức năng như website đặt tour online hiện nay, ngoài ra hệ thống còn

bồ sung hệ khuyến nghị dé đưa ra gợi ý địa điểm, tour du lịch, giúp khách du lịch tìm

được địa điểm, tour phù hợp với sở thích của mình một cách nhanh chóng và tiện lợi

nhất

Sau quá trình tìm hiểu, nhóm tác giả đã lên kế hoạch đề thực hiện dé tài như sau:

Y Tìm hiểu quy trình hoạt động các website du lịch

Tìm kiểu về ReactJS, Ant Design, PHP

Xây dung use case và những lược đồ cần thiết cho hệ thống

Xây dựng những tính năng của hệ thống từ đơn giản đến phức tạpTìm hiểu — Các thuật toán gợi ý

S\N SA Thực nghiệm hệ thong và hoàn thành các nội dung.

Trang 15

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

MỞ DAU

Trong bối cảnh ngày nay, nhu cầu du lịch trở thành một phần không thể thiếutrong cuộc sống của con người Khi cuộc sống vật chất, tiện nghi đầy đủ đã trở nênquen thuộc với nhiều người thì nhu cầu khám phá những vùng đất mới, tiếp xúc vớinhững nền văn hóa mới dang trở thành xu hướng phổ biến Trước tình hình đó, tạinhiều địa phương đã hình thành rất nhiều điểm du lịch và dần trở thành ngành kinh

tế mũi nhọn của địa phương

Cùng với đó công nghệ phát triển nhanh tại đây cũng kéo theo nhu cầu sử dụng côngnghệ dé đáp ứng tính tiện lợi, nhanh chóng dé giúp mọi người tiếp cận được thôngtin địa điểm và tour du lịch nhiều hơn

Hiểu được điều đó, dé giúp mọi người có thé nhanh chóng tìm kiếm thông tin địa

điểm du lịch muốn đến chỉ cần đặt tour trên website sẽ được công ty xác nhận ngaythông qua đặt tour online, không cần phải đến trực tiếp công ty Hơn thế nữa, nếuchúng ta lo lắng về việc di chuyên, ăn uống thì có thể chọn hình thức du lịch theotour Đề mọi người đỡ mất thời gian tìm kiếm thông tin địa điểm, tour phù hợp thì ởlần tiếp theo, mọi người sẽ được gợi ý địa điểm, tour mình cần xem mà không tốnnhiều thời gian

Từ những thực tế trên, nhóm tác giả quyết định thực hiện đề tài xây dựng hệthong website goi y diém du lich áp dụng thuật toán lọc cộng tác theo mô hình k lánggiềng gần nhất Đồng thời, nhóm mong muốn du lịch ngày càng phát triển mạnh mẽ

hơn đê cho tat cả mọi người, mọi nhà có một trải nghiệm mới ở những địa điêm mới.

Trang 16

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Chương 1 TONG QUAN DE TÀI

Chương này mô ta tổng quan về nhu cau du lịch hiện nay thông qua các website

du lịch có sẵn Qua đó mô tả bài toán gặp phải, khảo sát nghiên cứu Cuối cùng đưa

ra hướng giải quyết đề tài

1.1 Đặt vấn đề

Du lịch dần trở thành những chuyến đi không thê thiếu trong các kỳ nghỉ lễ,hay thi thoảng đi xa giải trí của nhiều người dần trở thành ngành kinh tế mũi nhọntrong cả nước Theo thong ké hang năm, lợi nhuận từ ngành du lịch mang lai rat rao

Vì vậy, các doanh nhân đã không ngần ngại hình thành công ty du lịch Điều đó làm

cho thị trường du lịch ngày càng cạnh tranh cao, nên bắt buộc các công ty du lịch phải

có những chiến lược bán tour hiệu quả qua các kênh internet và website du lịch làkhông thể thiếu Chính vì thé, thiết kế một website trở nên đặc biệt quan trọng dé thuhút khách du lịch một cách dé dang với mức chi phí thấp Một website du lịch khôngđơn thuần là việc quản lý địa điểm, tour, khách du lịch, mà website có đủ đa dạng,chuyên nghiệp, sử dụng đơn giản không Nếu tất cả công việc này được thực hiện thủcông như sử dụng công cụ văn phòng Microsoft excel, World, cần gian và công đòihỏi nhiều nhân lực, thời gian và công sức, mà sự chính xác và hiệu quả không cao.Ngoài ra, còn có một số khó khăn về van đề lưu trữ khá đồ sộ, dễ bị that lạc, tốnkém, Bên cạnh đó, chúng ta không quảng bá được công ty và không được nhiều

người biết đến Trong khi đó, tất cả các nghiệp vụ đó có thể tin học hóa một cách dễdàng Với ứng dụng công nghệ thông tin ,từ khâu quản lý đến quảng bá thu hút khách

du lịch một cách đơn giản, thuận tiện, nhanh chóng và hiệu quả hơn rất nhiều

Do đó, nhóm tác giả quyết định chọn đề tài “Xây dựng hệ thống website gợi ý

điểm du lịch” dé có thé giúp ich phần nào đó quảng bá du lịch nước nhà và hơn thénữa có thê giúp cho khách du lịch có cái nhìn khách quan về du lịch trong nước

Trang 17

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

1.2 Khảo sát một số website du lịch

iVIVU Tours Vémaybay Anudéng

* Tkai nghiệm kỷ nghỉ tuyệt vời

ComBffẨfliách sạn - vé máy bay - đưa đón sân bay giá tốt nhất

MùaHoa:raM: Giác MacH MacH

8 Tim tour TRONG NƯỚC (a) Tim tour NƯỚC NGOÀI és Combo KÍCH CẦU “@ Quản Lý ĐẶT TOUR

Hình 1.2: Giao diện website dulichviet.com.vn

travelf#fcom.vn Dulịch Kháchsạn Vậnchuyển Tintức Khuyếnmại VietravelPlus Liênhệ

đnozÐTS2531A

TÌM TOUR TÌM TOUR DU LỊCH TÌM KIẾM HỘI VIÊN

“TRONG NƯỚC _ NƯỚC NGOÀI GIÁ TỐT “Tự CHỌN _ “BOOKING | “THAN THIẾT ` fa]

Hinh 1.3: Giao dién website Travel.com.vn

Trang 18

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

1.3 Nhận xét website

Qua tìm hiểu các website nhóm tác giả nhận thấy rằng hầu hết các website có ưu

điểm như:

- Giao diện gần gũi, sinh động, dễ sử dụng

- _ Được thiết kế dé hoạt động trên nhiều nền tảng thiết bị khác nhau

- _ Không chi tập trung vào việc gợi ý địa điểm, tour du lịch ngoài ra cung cấp

nhiều dịch vụ khác như khách sạn, thuê xe, ăn uống.

- Dap ứng day đủ các chức năng của một hệ thống

=> Qua đó giúp nhóm xác định được các chức năng áp dụng vào hệ thống và mang

đến cho người dùng những gợi ý tốt nhất

- Tu đó, phân tích yêu cầu, xác định các chức năng cần có cho hệ thống, sau đó sẽ

đi đến thiết kế cơ sở dữ liệu cho đề tải

- _ Xây dựng chức năng gợi ý địa điểm cho website

1.5 Ý nghĩa của đề tài

s* Ý nghĩa thực tiễn

Đề tài xây dựng hệ thống website gợi ý du lịch “Travel For You” là một website

tìm ra gợi ý cho người dùng những địa điểm, tour du lịch Đối với công ty, doanh

nghiệp website giúp quản lý địa điểm, tour, khách sạn, khách du lịch, nhân sự, đặttour, thong kê doanh thu một cach dé dang, thuận tiện trong các vấn đề tìm kiếm,thêm mới, cập nhật, xóa, Đối với khách du lịch giúp xem thông tin điểm đến, tour,khách sạn và để lại đánh giá, bình luận các tour đã trải nghiệm

Trang 19

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

s* Ý nghĩa khoa học

Đề tài xây dựng hệ thống website gợi ý du lịch tuy không phải là một đề tài khá

xa lạ đối với mọi người Ngoài ra, đề tài cũng cấp thêm một chức năng mới như: ápdụng thuật toán gợi ý vào hệ thống dé đưa ra được những địa điểm hoặc tour tương

tự với người dùng đã chọn trong quá khứ Từ đó, khách du lịch thuận tiện trong việc

lựa chọn một địa điểm hoặc tour phù hợp với những ưu đãi hấp dẫn

1.6 Đối tượng, phạm vi, phương pháp nghiên cứu

s* Đối tượng nghiên cứu

- _ Khách du lịch, quản ly và nhân viên của một công ty du lịch.

- Những van dé liên quan đến du lịch như: dia điểm, tour, khách sạn, đặt tour, đánh

giá, bình luận,

- _ Hệ thống các thuật toán gợi ý trong khai thác dữ liệu

*

> ~ Phạm vi nghiên cứu

- Hệ thống nghiên cứu tập trung vào những van đề phục vụ nhu cầu khách du lịch

Vì vậy, hệ thống website tập trung vào thông tin địa điểm, tour, khách sạn, đánhgiá, bình luận của khách và gợi ý điểm du lịch, tour du lịch

-_ Hệ thống còn hạn chế một số chức năng chưa được đáp ứng như: thanh toán bằng

hình thức thẻ ngân hàng, cung cấp các dịch vụ ăn uống, thuê xe.

* > ~ Phạm vi công nghệ

Hệ thống viết bằng ngôn ngữ lập trình Javascript, PHP, HTML5, CSS, sử dungframework ReactJS Thư viện hỗ trợ thiết kế giao diện Ant design, Bootstrap

Chạy trên hệ quan tri cở sở dữ liệu MySQL.

* > » Phuong pháp nghiên cứu:

- Phuong pháp khảo sát phân tích dựa trên tai liệu thu thập, doc hiểu thông tin từ

các tài liệu giáo trình liên quan đến hệ thống gợi ý, dựa trên nhu cầu người dùng,

dựa trên các website sẵn có.

- Thu thập dữ liệu từ các website: Booking.com, dulichviet.com.vn, mytour.vn,

fiditour.com, saigontourist.net, ivivu.com,

Trang 20

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

1.7 Bố cục báo cáo

Chương 1: Tổng quan đề tài

Chương này trình bày tông quan nội dung đề tài khóa luận Phát biéu van dé

và mục tiêu của nhóm mong muốn hướng đến đề thực hiện trong hệ thống Xác

định đối tượng, phạm vi, phương pháp nghiên cứu đề tài.

Chương 2: Cơ sở lý thuyết

Giới thiệu về hệ thống gợi ý, các kỹ thuật trong hệ thống gợi ý lọc cộng tác,

áp dụng thuật toán gợi ý vào đề tài Tìm hiểu về một số ngôn ngữ và hệ quản trị

cơ sở dữ liệu như: SQL Server, MySQL, Oracle, hệ quan trị sẽ được sử dung

trong hệ thông; PHP, ReactJS, Ant design.

Chương 3: Phân tích thiết kế hệ thống

Xác định các chức năng, tác nhân hệ thống, phân tích thiết kế hệ thống, thiết

kế cơ sở đữ liệu, thiết kế giao diện website

Chương 4: Cài đặt và kiểm thử

Chương này trình bày quá trình cài đặt thuật toán, tóm tắt quá trình triểnkhai kiểm thử

Chương 5: Kết luận và hướng phát triển

Tổng kết khóa luận, nêu ưu, khuyết điểm và hướng phát triển

Trang 21

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Chương 2 CƠ SỞ LÝ THUYET

Chương này nói về cơ sở lý thuyết của khóa luận bao gồm hệ thống gợi ý, các

nhóm giải thuật gợi ý như lọc cộng tác, lọc nội dung và các kỹ thuật lọc cộng tác.

Cùng với đó tìm hiểu một số hệ quản tri co sở dữ liệu và các ngôn ngữ được sử dụngchính trong hệ thống

2.1 Bài báo nghiên cứu hệ thống gợi ý

- Hệ thống gợi ý : Kỹ thuật và ứng dụng (Nguyễn Thái Nghe)

- Một tiếp cận trong xây dựng hệ thống gợi ý theo ngữ cảnh (Nguyễn Thái Nghe)

2.2 Tìm hiểu hệ thống gợi ý du lịch

2.2.1 Giới thiệu hệ thống gợi ý

Hệ thong gợi y (Recommender Systems — RS) là một dạng của hệ thông lọcthông tin (information filtering), được sử dụng đề dự đoán sở thích hay xếp hạng màngười đùng có thê dành cho một mục tin nào đó mà họ chưa xem xét tới trong quá

khứ.[5]

Trong những năm gan đây, hệ thống gợi ý đã trở nên pho biến và được sử dụng trong

nhiều lĩnh vực khác nhau như truyền hình, tin tức, thương mại điện tử và mạng xã

hội, Ví dụ phổ biến và dễ gap nhat la gol ý kết ban trên Facebook dựa vào các đặc

điểm như sống cùng vị trí, bạn chung, cùng sở thích, quan tâm tới một lĩnh vực nào

đó trên Facebook.

Hệ thống gợi ý quan tâm đến ba thông tin chính là người dung(user), mục tin(item),

và phản hồi (feedback) của người dùng trên mục tin đó

s* Nhóm giải thuật lọc cộng tác

Nhóm giải thuật lọc cộng tác (Collaborative Filtering): Hệ thống gợi ý mục tin

dựa trên sự tương tự giữa người dùng hoặc mục tin.

Trang 22

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Bảng 2.1: Ví dụ lọc cộng tác sử dung ma trận Khách du lịch x Dia điểm

Phan Thiết Đà Nẵng Đà Lạt

Khách du lịch 1 1 0 5

Khach du lich 2 4 2 2

Khach du lich 3 0 0 3

Trong bảng trên, đánh giá của khách du lich 1 đôi với địa diém Phan Thiết là 1, Da

Lạt là 5, Đà Nẵng chưa được đánh giá

= Đâu vào cua bai toán là ma trận thê hiện những hành vi quá khứ - ma trận khách

du lịch và địa điểm Hàng là khách du lịch, cột là địa điểm, giá trị mỗi ô là đánh

giá của khách du lịch lên địa điểm đó

Dau ra, dự đoán đánh giá của người dùng lên những địa điểm mà họ chưa dé laiđánh giá Hệ thống gợi ý dựa vào đánh giá mà xếp hạng các địa điểm và gợi ý chokhách du lịch Trong ví dụ này, hệ thống gợi ý phải đưa ra dự đoán khách du lịch

1 đánh giá Đà Nẵng là bao nhiêu; khách du lịch 3 đánh giá địa điểm Phan Thiết,

Đà Nẵng là bao nhiêu.

Ưu điểm:

Có thé loc thông tin bat kỳ loại nao như bản tin, sản phẩm, hàng hóa, phim, âm

nhạc, tranh ảnh và sách

Không cần xác định thông tin mô tả yêu cầu: không phải mô tả yêu cau, sở thích

của người dùng một cách tường minh.

Người dùng có thé nhận được những gợi ý bất ngờ

Trang 23

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

“+ Nhóm giải thuật lọc nội dung

Nhóm giải thuật lọc trên nội dung (Content-based Filtering): Gợi y các mục tin

dựa vào hồ sơ của người dùng hoặc dựa vao nội dung/thuộc tính của những mục tin

tương tự như mục tin mà người dùng đã chọn trong quá khứ.

Phan Thiết

Thích

Tươngtự —————>

Gợi ý

Hình 2.1: Ví dụ giải thuật lọc nội dung

Trong hình trên, người dùng | thích địa điểm Phan Thiết, Da Lạt; địa điểm Vũng Tàu

có tinh chất tương tự như địa điểm Phan Thiết đều là vùng biển Do đó địa điểm Vũng

Tau được gợi ý cho người dùng 1.

- Thong tin mô tả đối tượng có chất lượng kém và bị lỗi Trong một số trường hợp

những mô tả về nội dung rất khó dé so sánh và rút ra gợi ý như file video, audio,

- _ Phân tích nội dung của các đối tượng sản phẩm rất khó dé đưa ra sản phẩm tương

tự.

10

Trang 24

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

2.2.2 Các kỹ thuật lọc cộng tác

- Ky thuật dựa trên bộ nhớ (còn gọi là phương pháp láng giềng -

Neighborhood-based): là dựa trên dữ liệu quá khứ của người dùng “tương tự - similarity” (user-based approach), hoặc là dựa trên dir liệu quá khứ của những item “tương tự” (item-based

approach) [1]

Có 2 cách tiếp cận lọc cộng tác theo mô hình K láng giéng là dựa trên người dùng

(User_kNN) — dự đoán dựa trên sự tương tự giữa các người dùng và dựa trên mục tin (Item_kNN) - dự đoán dựa trên sự tương tự giữa các mục tin.

= Kỹ thuật k láng giéng dựa trên người dùng (User_kNN) xác định độ tương tự giữa

hai người dùng thông qua việc so sánh đánh giá của họ trên cùng mục tin, sau đó

dự đoán xếp hạng trên sản phẩm i bởi người dùng u, dựa vào các xếp hạng nhữngngười dùng tương tự với người dùng u Dé triển khai kỹ thuật này vào hệ thongcần thực hiện các bước sau:

Bước 1: Tính khoảng cách/độ tương tự của toàn bộ người dùng khác với người

Tụ¡ Và Ny; là danh gia của người dùng u và trên mục tin tương ứng

Ly là tập các mục tin được đánh gia bởi cả người dùng u và người dùng uw’

Bước 2: Tìm tập k người dùng có độ tương tự gần giống với ¿ nhất

Bước 3: Tính ước lượng đánh giá của người dùng ¿ với mục tin /theo công thức

Sau:

11

Trang 25

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Ky là số người dùng có độ lân cận gần với người dùng z (k láng giềng của wu)

7, là giá trị đánh giá trung bình trên tat cả item của người dùng u

7,’ là giá trị trung bình trên tất cả các item của người dùng 1"

= Ky thuật k lang giéng dựa trên mục tin (Item_kNN): xác định độ tương tu dựa

trên các mục tin.

Bước 1: Tính độ tương tự của toàn bộ mục tin khác với mục tin i

3;ueU¡¡! Pui: Tui!

Uj;, là tập các người dùng có đánh giá trên cả hai mục tin 7 và i’

Tụ; Và T„¡, là đánh giá của người dùng ¿ và u’ trên mục tin tương ứng.

Bước 2: Tìm tập k mục tin có độ tương tự gần giống với 7 nhất mà người dùng u

đã đánh giá

Bước 3: Tính ước lượng đánh giá của u lên mục tin 7

12

Trang 26

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Ki là số item có độ lân cận gan item /(k lang giéng của /)

7; là giá trị trung bình của tất cả các người dùng trên item 7

7¡' là giá trị trung bình của tat cả các người dùng trên item i’.

- Ky thuật dựa trên mô hình (Model-based): xây dựng các mô hình dự đoán dựa

trên dữ liệu thu thập được trong quá khứ, điên hình là kỹ thuật phân rã ma trận (matrix

factorization).[1]

2.3 Ap dung vào hệ thống gợi ý điểm du lich

Trong bài này, nhóm tác giả sử dụng lọc cộng tác theo mô hình k láng giềng dựa

vào người dùng dé xây dựng hệ thống gợi ý địa điểm cho website

Hình 2.6: Ví dụ áp dụng lọc cộng tác theo mô hình k láng giềng vào hệ thống

website gợi ý điêm du lịch

13

Trang 27

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Ý tưởng chính khi áp dụng thuật toán k láng giềng gần nhất vào hệ thống website

gợi ý điểm du lịch là dựa trên người dùng tương tự Theo như hình trên khách du lịch

1 để lại đánh giá Phan Thiết, Nha Trang, Đà Lạt, Vũng Tàu Khách du lịch 2 đánhgiá Phan Thiết, SaPa, Hạ Long; tương tự khách du lịch 3, 4, 5 ,6, 7, 8 Ta dùng côngthức Cosine để tính độ tương tự giữa khách du lịch 1 với khách du lich 2, 3, 4, 5, 6,7,8 Sắp xếp độ tương tự giữa các khách du lịch theo thứ tự giảm dần; chọn k khách

du lịch có độ tương tự cao nhất với khách du lịch 1 Sau đó dự đoán đánh giá khách

du lịch 1 lên các địa điểm chưa đánh giá, sắp xếp kết quả dự đoán theo thứ tự giảm

dần Lấy ra M địa điểm mà khách du lịch 1 dự đoán đánh giá cao nhất

2.4 Tìm hiểu về hệ quản trị cơ sở dữ liệu

2.4.1 SQL Server

SQL Server là một hệ quan tri cơ sở dữ liệu quan hệ (Relational Database

Management System (RDBMS)) sử dụng câu lệnh SQL để trao đổi dữ liệu giữa máyClient và máy cài SQL Server Một RDBMS bao gồm databases, database engine vàcác ứng dụng dùng đề quản lý đữ liệu và các bộ phận khác nhau trong RDBMS SQLServer được phát triển và tiếp thị bởi Microsoft SQL Server được tối ưu dé có théchạy trên môi trường cơ sở đữ liệu rất lớn, lên đến Tera-Byte và có thé phục vụ cùnglúc cho hàng ngàn user SQL Server cũng có thê kết hợp tốt với các server khác như

Microsoft Internet Information Server (IIS), E-Commerce Server, Proxy Server SQL

Server hoạt động độc quyền trên môi trường Windows trong hơn 20 năm Năm 2016,

Microsoft đã cung cấp phiên bản trên Linux

14

Trang 28

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

trang chủ Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32

cho các hệ điều hành dòng Windows,Linux,Mac OS X, Unix,

2.4.3 Oracle Database

Oracle là một hệ quản tri cơ sở đữ liệu quan hệ, được phat trién và phân phối

bởi tập đoàn Oracle Phần mềm này vẫn đang được phát triển tiếp lên những phiênbản cao hơn, và vẫn đang là một trong những phần mềm quản trị database hàng đầuthế giới Phần mềm này được viết bằng Assembly, C và C++

Khác với SQL Server, Oracle hỗ trợ rất nhiều nền tảng khác nhau, có thé chạy

trên Windows, Linux và Unix Do đó doanh nghiệp có thé dé dàng triển khai Oracletrên nền tảng phần cứng sẵn có hoặc các nền tảng quen thuộc của doanh nghiệp mà

không bắt buộc phải thay đồi theo phần mềm Điều nay cũng giúp mở rộng thị trường

của Oracle Database.

2.4.4 Hướng tiếp cận cơ sở dữ liệu

So sánh các hệ cơ sở dữ liệu

Bảng 2.2: So sánh các hệ quản tri cơ sở dữ liệu

SQLServer MySQL Oracle

Kha nang Chu yéu str dung MySQL hoạt động | Tương tự MySQL

tương thích các dự án chạy trên được trên cả nền

Windows tang Windows,

Linux va nhiéu nén

tang khac

Lưu trữ Sử dụng công cụ Được sử dụng các Cơ sở dir liệu được

lưu trữ phi giao công cụ lưu trữ chia sẻ giữa tất cảdịch do Microsoft khác nhau cho các _ các lược đồ và

phát triển bảng khác nhau trên | người dùng Người

cơ sở tốc độ, tính dùng có thể bị giới

năng, độ tin cậy hạn truy cập thông

qua vai trò và quyên

15

Trang 29

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Bảo mật Tiêu chuân EC2 và | Tiêu chuẩn EC2 Giải phải bảo mật

được trang bị thêm Oracle “Defense in

cac tinh nang bao Dept”- bảo vệ dữ

mật tiên tiền thuộc liệu theo chiều sâu:

sở hữu của mã hóa và che giấu

Microsoft dữ liệu, quản lý truy

cập và theo dõi hoạt

động người dùng.

Chi phí Can mua giây phép | Sử dụng giấy phép | Can mua giấy phép

nếu chạy cơ sở đữ | công cộng chung

liệu trên SQL Server

Do sự phổ biến, quen thuộc va sử dung mã nguồn mở của MySQL nên nhóm

quyết định chon MySQL làm hệ quản trị CSDL cho hệ thống.

2.5 Tìm hiểu về PHP

2.5.1 Tổng quan về PHP

PHP là ngôn ngữ lập trình mã nguồn mở phía server được thiết kế để xây dựng

web động PHP cho phép xây dựng ứng dung web tương tác với mọi cơ sở dữ liệu

như: MySQL, Oracle, PHP được tối ưu hóa cho các ứng dụng web, tốc độ nhanh,nhỏ gọn, cú pháp giống C và Java

2.5.2 Đặc điểm của PHP

- PHP rất đơn giản và dé sử dụng

- PHP có thé kết nối cơ sở dữ liệu hiệu quả và giúp quá trình tải ứng dụng nhanh

hơn.

- PHP sẽ bảo mật hơn nếu sử dụng các Framework

- PHP có khả năng tích hợp linh hoạt với các ngôn ngữ lập trình khác.

- PHP là ngôn ngữ nguồn mở và miễn phí.

- PHP rất nhẹ và có nhiều Framework có sẵn dé lập trình website

- PHP giúp cho quá trình phát triển website trở nên nhanh hơn

16

Trang 30

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

2.5.3 Ứng dụng PHP

- Phat triển hệ thống quản lý nội dung

- Phat triển trang web

- Phan tích và trình bày dữ liệu.

- Thiét kế đồ họa.

% Uu điểm

- Được sử dụng miễn phi.

- Cấu trúc của PHP cực ky đơn giản

- Các ứng dụng dựa trên PHP có thé chay trén moi hé diéu hanh nhu UNIX, Linux

Với mong muốn xuất hiện một framework có thé phá vỡ những cau trúc phức tap,

cũng như có thể tái sử dụng lại các đoạn code trước kia nhằm proJect hoàn thành

nhanh hơn, ReactJS ra đời.

Một số lý do làm cho ReactJS được giới lập trình ưu ái sử dụng:

- ReactJS cho phép lập trình viên viết ứng dụng trực tiếp trên JavaScript Thêm vào

đó là JSX — một trong những tinh năng làm ReactJS dé dang mà còn thú vị hơn.

Lập trình viên giờ đây có thê tạo nên một tinh năng mới va có thê xem nó xuât

17

Trang 31

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

hiện ngay trong thời gian thực, giúp lập trình viên có thé đưa trực tiếp các đoạn

HTML vào JavaScript.[6]

Một ý tưởng khác lam cho ReactJS trở nên độc dao là nó cho phép lập trình viên

pha vỡ những cau tao UI phức tạp thành những component độc lập Lập trình viên

sẽ không phải lo lắng về tổng thé ứng dụng web, giờ đây lập trình viên dé dangchia nhỏ các cau trúc UI/UX phức tạp thành những component đơn giản hon.[6]Components giúp phân chia các UI (giao điện người dùng) thành các phần nhỏ dé

dễ dàng quản lý và tái sử dụng

Props cho phép giao tiếp giữa các component với nhau bằng cách truyền tham số

qua lại giữa các component.

State là một object có thể được sử dụng để chứa dữ liệu hoặc thông tin về

component.

2.7 Tim hiểu Ant Design

Ant Design là một tập hợp các component cua React được xây dựng theo

chuẩn thiết kế của Ant UDE team

Cung cấp hầu hết các component thông dụng trong ứng dụng web hiện đại như

Layout, Button, Icon,

Dưới đây là danh sách các component ma Ant Design hỗ trợ:

Thông thường: Button, Icon, Typography.

Bồ trí: Divider, Grid, Layout, Space

18

Trang 32

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

- Điều hướng: Affix, Breadcrumb, Dropdown, Menu, Pagination, PageHeader,

Steps.

- Nhap dữ liệu: AutoComplete, Casader, Checkbox, DatePicker, Form, Input,

InputNumber, Mentions, Radio, Rate, Rate, Select, Slider, Switch, TimePicker,

Transfer, TreeSelect, Upload.

- Hiển thị dữ liệu: Avatar, Badge, Comment, Collapse, Carousel, Card, Calendar,

Description, Empty, List, Popover, Statistic, Tree, Tooltip, Timeline, Tag, Tabs,

Table.

- Phản hồi: Alert, Drawer, Modal, Message, Notification, Progress, Popconfirm,

Result, Spin, Skeleton.

Chuong 3 PHAN TICH THIET KE HE THONG

Chương này phân tích yêu cau chức năng của hệ thống và các tác nhân hệthống thông qua các bản vẽ UML Đồng thời thiết kế, mô tả cơ sở đữ liệu, mô tả màn

hình giao diện.

3.1 Phân tích yêu cầu

3.1.1 Các yêu cầu chức năng:

Giao diện quản lý:

- Quản lý danh sách tai khoản người dùng.

- Quản lý danh sách nhân sự công ty.

- Quan lý địa điểm, tour, khách sạn có thể thêm mới tour, địa điểm, khách sạn vào

danh sách tour, địa điểm, khách sạn và điều chỉnh thông tin địa điểm, tour khách

sạn hoặc có thé xóa thông tin địa điểm, tour, khách sạn ra khỏi danh sách nếu thỏa

yêu cầu

- Quản lý khách du lịch có thé tìm kiếm, cập nhật thông tin khách du lịch hoặc thêm

mới, xóa, khách du lịch ra khỏi danh sách.

- Quan lý việc đặt tour, cập nhật thông tin đặt vé tour du lịch nếu khách du lịch có

nhu cầu

- _ Thống kê doanh thu theo danh sách tour hoặc theo biéu dé

19

Trang 33

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Giao diện nhân viên công ty:

Quản lý danh sách khách du lịch có thé tìm kiếm, cập nhật thông tin khách du lịch

và thêm mới khách du lịch vào danh sách.

Quản lý việc đặt tour, cập nhật thông tin đặt vé tour, xác nhận đã thanh toán va

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

Hiển thị được danh sách địa điểm du lịch và gợi ý các địa điểm du lịch đến với

từng khách du lịch.

Hiển thị danh sách tour du lịch và gợi ý các tour du lịch phù hợp với sở thích của

mỗi khách du lịch.

Hiển thị thông tin khách sạn

Cho phép khách du lịch đăng ký thành viên.

Cho phép khách du lịch xem thông tin địa điểm, các tour có trong địa điểm đó,

tìm kiếm địa điểm

Cho phép khách du lịch xem thông tin tour, đặt tour, tim kiếm tour muốn đặt

Cho phép khách du lịch đánh giá, bình luận tour đã di.

Cho phép khách du lịch xem thông tin đặt vé tour.

Cho phép khách du lịch xem khuyến mãi các tour

Cho phép khách du lịch liên hệ với công ty.

3.1.2 Yêu cầu phi chức năng:

Yêu cầu về giao diện: Giao diện quản lý gần gũi, đơn giản Giao diện người

dùng thân thiện, sinh động, tương tác tốt

Yéu cau về chat lượng:

20

Trang 34

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

- Tinh tiện dụng: Hệ thống có giao diện trực quan, thân thiện va dễ sử dụng

- Tính hiệu quả: Website thể hiện trực quan các trạng thái thông tin, giúp người

- Thống kê thao danh sách tour

- Thống kê theo biéu đồ

Hệ thống dành cho nhân viên công ty:

Trang 35

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

- Hiền thị danh sách địa điểm

- Hiền thị danh sách tour

- Hién thị danh sách tour khuyến mãi

- Hiển thị danh sách khách sạn

- Cho phép đăng ký thành viên, đăng nhập tai khoản

- Khách du lịch xem thông tin dia điểm, tour, khách sạn

- Khách du lịch xem địa điểm gợi ý và xem các tour có trong địa điểm đó

- Khách du lịch xem thông tin tour gợi ý và có thé đặt tour

- Khách du lịch có thể đánh giá, bình luận tour đã đi

- Hiển thị thông báo sau khi đặt tour, thanh toán, kết thúc tour

- Thay đổi mật khẩu

- Khách du lịch liên hệ đặt khách sạn

- Cập nhật hồ sơ người dùng

3.2.2 Các tác nhân hệ thống

Dựa vào phân tích hệ thống, nhóm tác giả có thể xác định được các tác nhân chính

của hệ thống như sau:

- Tac nhân quản lý: Thực hiện các chức năng tìm kiếm, thêm, xóa, cập nhật thông

tin địa điểm, tour, thống kê doanh thu, tài khoản Đề thực hiện các chức năng quảntrị viên bắt buộc đăng nhập trước khi xử lý

- Tac nhân khách du lịch: bao gồm khách du lịch đã và chưa đăng ký thành viên

Thực hiện được các chức năng sau: tìm kiếm, xem danh sách địa điểm, tour, danh

sách tour, địa điểm được gợi ý, bình luận tour, đánh giá tour, xem thông tin tour

đã đặt Trong trường hợp khách du lịch muốn để lại đánh giá, bình luận tour bắt

buộc phải đăng nhập trước khi thao tác chức năng.

- Tac nhân nhân viên công ty: thực hiện chức năng tim kiếm, thêm, cập nhật địa

điểm, tour; tìm kiếm, thêm, cập nhật, thông tin khách du lịch, hỗ trợ đặt tour và

cập nhật thông tin đặt tour.

22

Trang 36

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Tác nhân quản lý:

Bảng 3.1: Bảng mô tả các chức năng dành cho quản lý

Đăng nhập Thực hiện đăng nhập trước khi vào hệ

thống, nhập tên đăng nhập và mật khâu

Kiểm tra xem tài khoản có t6n tại trong hệ

thông, nếu hợp lệ cho phép thực hiện các

chức năng dành cho quản lý, ngược lại

thông báo lỗi yêu cầu nhập lại

Quản lý tài khoản Quản lý thực hiện các thao tac xem chi tiết,

tìm kiếm, thêm, hủy, cập nhật thông tin tài

khoản.

Quản lý thông tin nhân sự Quản lý thực hiện các thao tác xem chi tiết,

tìm kiếm, thêm, hủy, xóa, cập nhật thông

tin nhân sự.

23

Trang 37

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

4 | Quản lý thông tin khách du | Quản lý thực hiện các thao tác xem chỉ tiết,

lịch tìm kiếm, thêm, hủy, xóa, cập nhật thông

tin khách du lịch.

5 | Quản lý thông tin địa diém | Quản lý thực hiện các thao tác xem chỉ tiết,

tìm kiếm, thêm, hủy, xóa, cập nhật thôngtin địa điểm

6_ | Quản lý thông tin tour Quản lý thực hiện các thao tác xem chi tiết,

tìm kiếm, thêm, hủy, xóa, cập nhật thông

tin tour.

7 | Quản ly khuyến mãi Quản lý thực hiện các thao tac xem chi tiết,

tìm kiếm, thêm, xóa, cập nhật khuyến mãi.

8 | Quản ly đặt tour Quản lý thực hiện việc đặt tour, cập nhật

thông tin đặt tour, hủy tour.

9 | Quản lý thông tin khách sạn | Quản lý thực hiện các thao tac xem chi tiết,

tìm kiếm, thêm, hủy, xóa, cập nhật thông

tin khách sạn.

10 | Quản lý đặt khách san Quản lý thực hiện các thao tác đặt phòng,

xóa, cập nhật.

11 | Thống kê doanh thu Thống kê doanh thu theo danh sách tour

hoặc theo biểu đồ

Tác nhân nhân viên công ty:

Bảng 3.2: Bảng mô tả chức năng dành cho nhân viên công ty

24

Trang 38

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

1 | Đăng nhập Thực hiện đăng nhập trước khi vào hệ

thống, nhập tên đăng nhập và mật khâu.Kiểm tra xem tài khoản có ton tại trong hệ

thống, nếu hợp lệ cho phép thực hiện các

chức năng dành cho quản lý, ngược lại

thông báo lỗi yêu cầu nhập lại

2 | Quản lý thông tin khách du

lich.

Quan ly thuc hién cac thao tac xem chi tiết,

tìm kiếm, thêm, hủy, cập nhật thông tin

khách du lịch.

3 | Quan lý thông tin địa diém Quan ly thuc hién cac thao tac xem chi tiết,

tìm kiếm, thêm, hủy, cập nhật thông tin địa

điểm.

4| Quản lý thông tin tour Quản lý thực hiện các thao tác xem chi tiết,

tìm kiếm, thêm, hủy, cập nhật thông tin

tour.

5 | Quan lý khuyến mãi Quan ly thuc hién cac thao tac xem chi tiét,

tim kiém, thém, huy, cap nhat khuyén mãi

6_ | Quản lý đặt tour Quản lý thực hiện việc đặt tour, cập nhật

thông tin đặt tour, hủy tour.

7| Quản lý thông tin khách sạn Quản lý thực hiện các thao tac xem chi tiết,

tìm kiếm, thêm, hủy, cập nhật thông tin

khách sạn.

8 | Quan lý đặt khách san Quản lý thực hiện các thao tac đặt phòng,

cập nhật.

9 | Thong kê doanh thu Thống kê doanh thu theo danh sách tour

hoặc theo biểu đồ

25

Trang 39

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

Tác nhân khách du lịch:

Bảng 3.3: Bảng mô tả chức năng dành cho khách du lịch

STT Tên chức nang Mô tả

1 | Đăng nhập Thực hiện đăng nhập vào hệ thông, nhập

tên đăng nhập và mật khẩu Kiểm tra hợp

lệ đúng với dữ liệu có sẵn thì hệ thống sẽ

cho phép đăng nhập dé thực hiên các chức

năng trên website.

2 | Đăng ky Khách hàng đăng ký thành viên thông tin

tài khoản Nếu khách hàng chưa là thànhviên công ty, hệ thống sẽ ghi nhận là lưu

thông tin vào CSDL Sau khi đăng ký,

khách hàng có thê đăng nhập và thực hiện

các chức năng trên website.

3 _ Xem thông tin địa điểm Xem thông tin chỉ tiết địa diém mà khách

muốn đến

4 | Xem thông tin tour va Xem thông tin tour va đánh giá bình luận

thông tin tour khuyến mãi ' tour

5 | Xem thông tin khách san Xem thông tin chi tiết khách sạn và liên hệ

đặt khách sạn nếu cần

6 | Tìm kiếm địa Lọc ra những địa diém/tour/khach san mà

diém/tour/khach san khach hang tim kiém

7 | Dat tour Khach hang dat tour du lich ma khach

hang muon di.

26

Trang 40

Xây dựng website gợi ý điểm du lịch áp dụng thuật toán k láng giềng gần nhất

8 | Bình luận Khách hàng có thê đưa ra ý kiên của mình

thông qua bình luận.

mình sau khi kết thúc cuộc hành trình tour

27

Ngày đăng: 02/10/2024, 03:42

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN