Nghiên cứu, xây dựng hệ thống lập kế hoạch du lịch dựa trên hệ gợi ý

79 411 0
Nghiên cứu, xây dựng hệ thống lập kế hoạch du lịch dựa trên hệ gợi ý

Đ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

Header Page of 161 BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG HỌC VIỆN KỸ THUẬT QUÂN SỰ NGUYỄN ĐÌNH GIỚI NGHIÊN CỨU, XÂY DỰNG HỆ THỐNG LẬP KẾ HOẠCH DU LỊCH DỰA TRÊN HỆ GỢI Ý LUẬN VĂN THẠC SĨ Chuyên ngành: Khoa học máy tính Hà Nội - Năm 2016 Footer Page of 161 Header Page of 161 BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG HỌC VIỆN KỸ THUẬT QUÂN SỰ NGUYỄN ĐÌNH GIỚI NGHIÊN CỨU, XÂY DỰNG HỆ THỐNG LẬP KẾ HOẠCH DU LỊCH DỰA TRÊN HỆ GỢI Ý Chuyên ngành: Khoa học máy tính Mã số: 60480101 CÁN BỘ HƯỚNG DẪN KHOA HỌC Cán hướng dẫn chính: TS Nguyễn Thị Hiền Hà Nội - Năm 2016 Footer Page of 161 Header Page of 161 CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI HỌC VIỆN KỸ THUẬT QUÂN SỰ Cán chấm phản biện 1: Cán chấm phản biện 2: Luận văn thạc sĩ bảo vệ tại: HỘI ĐỒNG CHẤM LUẬN VĂN THẠC SĨ HỌC VIỆN KỸ THUẬT QUÂN SỰ Ngày…tháng…năm 2016 Footer Page of 161 Header Page of 161 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ Họ tên tác giả luận văn: Nguyễn Đình Giới Đề tài luận văn: Nghiên cứu, xây dựng hệ thống lập kế hoạch du lịch dựa hệ gợi ý Chuyên ngành: Khoa học máy tính Mã số: 60480101 Cán hướng dẫn: TS Nguyễn Thị Hiền Tác giả, cán hướng dẫn khoa học Hội đồng chấm luận văn xác nhận tác giả sửa chữa, bổ sung luận văn theo biên họp Hội đồng ngày với nội dung sau: Ngày tháng năm 2016 Cán hướng dẫn Footer Page of 161 Tác giả luận văn Header Page of 161 Nguyễn Thị Hiền Nguyễn Đình Giới CHỦ TỊCH HOẶC THƯ KÝ HỘI ĐỒNG Footer Page of 161 Header Page of 161 Tôi xin cam đoan: Những kết nghiên cứu trình bày luận văn hoàn toàn trung thực, tôi, không vi phạm điều luật sở hữu trí tuệ pháp luật Việt Nam Nếu sai, hoàn toàn chịu trách nhiệm trước pháp luật TÁC GIẢ LUẬN VĂN Nguyễn Đình Giới Footer Page of 161 Header Page of 161 MỤC LỤC Trang Trang phụ bìa: Bản xác nhận chỉnh sửa luận văn: Bản cam đoan: Mục lục: Tóm tắt luận văn: Danh mục chữ viết tắt Danh mục bảng biểu Danh mục hình vẽ MỞ ĐẦU Chương HỆ THỐNG GỢI Ý VÀ GIẢI THUẬT CBR 1.1 Giới thiệu hệ thống gợi ý 1.1.1 Hệ thống gợi ý 1.2.2 Các phương pháp gợi ý truyền thống 1.2 Giải thuật CBR 1.2.1 Khái niệm CBR 1.2.2 Giải thuật CBR CHƯƠNG 2: BÀI TOÁN GỢI Ý TOUR DU LỊCH 12 2.1 Mô hình lô-gic hàm chức 12 2.2 Biểu diễn thành phần tour 16 2.2.1 Cấu trúc case 18 2.2.2 Độ tương đồng xếp hạng item 24 2.2.3 Hệ thức khoảng cách không đồng 31 2.2.4 Độ tương đồng hai case 33 Chương PHÂN TÍCH THIẾT KẾ HỆ THỐNG CỔNG THÔNG TIN DU LỊCH 47 Footer Page of 161 Header Page of 161 3.1 Thiết kế sở liệu 47 3.1.1 Các thực thể 47 3.1.2 Sơ đồ liên kết thực thể 53 3.2 Thiết kế chương trình 53 3.2.1 Thiết kế lớp liệu 53 3.2.2 Sơ đồ liên kết lớp 60 3.2.3 Luồng xử lý hệ thống 61 Chương XÂY DỰNG HỆ THỐNG 62 4.1 Xây dựng hệ thống 62 4.2 Kết thực 62 KẾT LUẬN VÀ HƯỚNG MỞ RỘNG 64 TÀI LIỆU THAM KHẢO 65 Footer Page of 161 Header Page of 161 TÓM TẮT LUẬN VĂN + Họ tên học viên: Nguyễn Đình Giới + Chuyên ngành: Khoa học máy tính Khoá: 2014 - 2016 + Cán hướng dẫn: TS Nguyễn Thị Hiền + Tên đề tài: Nghiên cứu, xây dựng hệ thống lập kế hoạch du lịch dựa hệ gợi ý + Tóm tắt: Nghiên cứu giải thuật CBR để áp dụng vào cổng thông tin du lịch nhằm gợi ý cho người dùng tour du lịch hợp lý Kết gợi ý đưa tốt Footer Page of 161 Header Page 10 of 161 BẢNG DANH MỤC CHỮ VIẾT TẮT Ký hiệu CBR Thuật ngữ Case –Based Reasoning Footer Page 10 of 161 Header Page 65 of 161 53 3.1.2 Sơ đồ liên kết thực thể 3.2 Thiết kế chương trình 3.2.1 Thiết kế lớp liệu SimilityObject: Lớp sở đối tượng khác Bảng 15 Lớp SimilityObject Thuộc tính Mô tả simility Độ tương tự Phương thức Mô tả construct() Hàm khởi tạo Footer Page 65 of 161 Header Page 66 of 161 54 BaseConstraint: Các yêu cầu chuyến người dùng Bảng 16 Lớp BaseConstraint Thuộc tính Mô tả duration Thời gian kéo dài chuyến month Đi vào tháng year Đi vào năm party Đi (một mình, cặp đôi, gia đình…) min_budget Chi phí thấp max_budget Chi phí tối đa Phương thức Mô tả construct() Hàm khởi tạo Location: Mô tả điểm đến Bảng 17 Lớp Location Thuộc tính Mô tả city Mã thành phố destination Điểm đến chars Đặc điểm des_name Tên điểm đến Phương thức Mô tả construct() Hàm khởi tạo Footer Page 66 of 161 Header Page 67 of 161 55 Accommodation: Mô tả khách sạn Bảng 18 Lớp Accommodation Thuộc tính Mô tả accommondation Mã khách sạn room_type Loại phòng capacity Sức chứa min_price Giá tối thiểu max_price Giá tối star Loại is_hotel Có khách sạn services Các dịch vụ facilities Cơ sở vật chất acc_name Tên khách sạn Phương thức Mô tả construct() Hàm khởi tạo TravelInformation: Mô tả travel bag travel wish Bảng 19 Lớp TravelInformation Thuộc tính Mô tả base_constraint Đối tượng BaseConstraint location Đối tượng Location accommodation Đối tượng Accommodation Footer Page 67 of 161 Header Page 68 of 161 56 attraction Đối tượng _Attraction Phương thức Mô tả construct() Hàm khởi tạo _Case: Cấu trúc case mô tả chuyến khách du lịch Bảng 20 Lớp Case Thuộc tính Mô tả travel_wish Đối tượng TravelInformation travel_bag Đối tượng TravelInformation user_profile Đối tượng UserProfile reward Đối tượng Reward Phương thức Mô tả construct() Hàm khởi tạo CBRConfig: Chứa thông số thiết lập Bảng 21 Lớp CBRConfig Thuộc tính Mô tả no_of_sim_case Số lượng case tương tự lấy max_recommendation_item Số lượng tối đa item gơi ý max_search_item Số lượng tìm kiếm tối đa duration_range Duration Range Footer Page 68 of 161 Header Page 69 of 161 57 month_range Month Range year_range Year Range budget_range Budget Range capacity_range Capacity Range acc_price_range Accommodation Price Range att_price_range Attraction Price Range star_range Star Range year_of_birth_range Year Of Birth Range no_of_characteristic Số lượng đặc tính item no_of_facility Số lượng sở vật chất khách sạn no_of_service Số lượng dịch vụ khách sạn alpha Alpha tw_weight Trọng số Travel Wish tb_weight Trong số Travel Bag twb_weight Trọng số Travel Wish Bag u_weight Trong số User Profile r_weight Trọng số Reward DBAdapter: Các thao tác tìm kiếm sở liệu Bảng 22 Lớp DBAdapter Thuộc tính Mô tả CI Đối CI_Controler framework Phương thức Footer Page 69 of 161 Mô tả tượng Header Page 70 of 161 58 _construct () Hàm khởi tạo fetch_all_case () Lấy toàn case search_accommodation (accommodation, location) Tìm khách sạn search_attraction (attraction, location) Tìm điểm vui chơi search_location (location) Tìm điểm đến CBR: Lớp đối tượng chứa hàm giải thuật Bảng 23 Lớp CBR Thuộc tính Mô tả dba Đối tượng DBAdapter all_case Mảng đối tượng _Case current_case Đối tượng _Case Phương thức Mô tả construct() Hàm khởi tạo location_simility(loc1, loc2) Độ tượng tự điểm đến location_scoring(location, similar_cases) recommend_location(user_profile, base_constraint, location) Cho điểm điểm đến Gợi ý điểm đến attraction_simility(att1, att2) Độ tượng tự điểm du lịch attraction_scoring(att, similar_cases) Cho điểm điểm du lịch recommend_attraction(attraction) Gợi ý điểm du lịch accommodation_simility(acc1, acc2) Độ tượng tự khách sạn Footer Page 70 of 161 Header Page 71 of 161 59 accommodation_scoring(acc, similar_cases) Cho điểm khách sạn recommend_accommodation(accommo dation) Gợi ý khách sạn case_simility(case1, case2) Độ tương tự case find_similar_case() Tìm case tương tự base_constraint_simility(base1, base2) Độ tượng tự Base Constraint travel_infomation_simility(t1, t2) Độ tượng tự TravelInformation user_profile_simility(u1, u2) Độ tượng tự User Profile reward_scoring(r) Cho điểm Reward arrray_distance(arr1, arr2) Độ tượng tự mảng đặc tính overlap(x, y) Hàm overlap quick_sort(out arr_sim_obj, left, right) Sắp xếp quick sort Footer Page 71 of 161 Header Page 72 of 161 60 3.2.2 Sơ đồ liên kết lớp BaseConstraint duration: int month: int year: int party: int min_budget: int max_budget: int _construct() Location _Attraction city: int destination: int chars: array(int) des_name: string attraction: int min_price: int max_price: int chars: array(int) att_name: string _construct() Accommodation accommondation: int room_type: int capacity: int min_price: int max_price: int star: int is_hotel: boolean services: array(int) facilities: array(int) acc_name: string _construct() _construct() TravelInformation base_constraint : BaseConstraint location : Location accommodation : Accommodation attraction : _Attraction SimilityObject Simility: double _construct() _construct() Reward r_base_contraint: int r_location: int r_accommondation: int r_attraction: int CBRConfig no_of_sim_case: int max_recommendation_item: int max_search_item: int duration_range: int month_range: int year_range: int budget_range: int capacity_range: int acc_price_range: int att_price_range: int star_range: int year_of_birth_range: int no_of_characteristic: int no_of_facility: int no_of_service: int alpha: int tw_weight: int tb_weight: int twb_weight: int u_weight: int r_weight: int _Case «uses» travel_wish : TravelInformation travel_bag : TravelInformation user_profile : UserProfile reward: Reward _construct() UserProfile name: string yob: int gender: string _construct() _construct() CBR dba : DBAdapter all_case: _Case current_case : _Case construct () location_simility (in loc1 : Location, in loc2 : Location) : double location_scoring (in location : Location, in similar_cases : _Case) :double recommend_location (in user_profile : UserProfile, in base_constraint : BaseConstraint, in location : Location) : Location attraction_simility (in att1 : _Attraction, in att2 : _Attraction) : double attraction_scoring (in att : _Attraction, in similar_cases : _Case) : double recommend_attraction (in attraction : _Attraction) : _Attraction accommodation_simility (in acc1 : Accommodation, in acc2 : Accommodation) : double accommodation_scoring (in acc : Accommodation, in similar_cases : _Case) : double recommend_accommodation (in accommodation: Accommodation) : Accommodation case_simility (in case1 : _Case, in case2 : _Case) : double find_similar_case () : _Case base_constraint_simility (in base1 : BaseConstraint, in base2 : BaseConstraint) : double travel_infomation_simility (in t1 : TravelInformation, in t2 : TravelInformation) : double user_profile_simility (in u1 : UserProfile, in u2 : UserProfile) : double reward_scoring (r : Reward) : double arrray_distance (in arr1 : int, in arr2 : int) : int overlap (in x : object, in y : object) : int quick_sort (out arr_sim_obj, left, right) DBAdapter CI : CI_Controler _construct () fetch_all_case () : _Case search_accommodation (in accommodation : Accommodation, in location: Location) : accommodation search_attraction (in attraction : _Attraction, in location: Location) : _Attraction search_location (in location: Location) : Location Hình 3.1 Classes Diagram Footer Page 72 of 161 Header Page 73 of 161 61 3.2.3 Luồng xử lý hệ thống User input: User Profile, Base contraints Item can be Location, Accommodation, Attraction User input: Item wish Search all item satisfied Found no Display: not found yes Recommend items yes Display recommended items User choice item Has any item no Hình 3.2 Quy trình làm việc hệ thống Footer Page 73 of 161 Header Page 74 of 161 62 Chương XÂY DỰNG HỆ THỐNG 4.1 Xây dựng hệ thống Hệ thống xây dựng dựa framework Codeigniter, nhằm kế thừa sử dụng giao diện famework cách nhanh chóng Với mô hình lớp MVC tác giả xây dựng hệ thống gợi ý du lịch thành công Giải thuật CBR cài đặt vào hệ thống với hàm tính tổng, hàm xếp, hàm tính độ tương tự, hàm gợi ý hàm test kết 4.2 Kết thực Hệ thống gợi ý du lịch dùng giải thuật CBR đưa gợi ý có tính kế thừa gần với người sử dụng có chất lượng gợi ý tốt, đáp ứng mở rộng hệ thống Hệ thống với 50 địa điểm du lịch, 200 khách sạn 150 điểm đến với nhiều dịch vụ khác để nhằm gợi ý cho khách hàng gần với mong muốn người dùng Trên sở đánh giá 105 người dùng, tỷ lệ kết gợi ý với mong muốn người dùng 90% Footer Page 74 of 161 Header Page 75 of 161 63 Một số giao diện hệ thống: Hình 4.1 Các gợi ý ban đầu cho khách lựa chọn Hình 4.2 Khi hoàn thành gợi ý Footer Page 75 of 161 Header Page 76 of 161 64 KẾT LUẬN VÀ HƯỚNG MỞ RỘNG Kết luận Luận văn xây dựng hệ thống tư vấn đáp ứng yêu cầu toán đặt ra, giúp người dùng dễ dàng nhận gợi ý gần cho lựa chọn du lịch Các chức hệ thống bao gồm: - Cập nhật khách sạn; điểm đến khu vui chơi - Tìm kiếm Khách sạn; điểm đến khu vui chơi - Gợi ý du lịch: Gợi ý địa điểm; Gợi ý khách sạn; Gợi ý điểm đến Hướng mở rộng Mặc hệ thống đưa gợi ý, để đạt hiệu cao hơn, cần phải phát triển hệ thống theo kiến trúc “cổng thông tin”, liệu lấy từ nguồn công ty du lịch khác kiểm chứng, khách hàng đánh giá mức độ phù hợp gợi ý hệ thống đưa Trên sở đánh giá độ xác phương pháp Ngoài cần xây dựng hệ thống dựa thiết bị di động để tiện cho việc truy cập khách du lịch, lấy ý kiến phù hợp hệ tư vấn Footer Page 76 of 161 Header Page 77 of 161 65 TÀI LIỆU THAM KHẢO [1] Aalap Kohojkar, Yang Liu, Zhan Shi, Recommender Systems, 2008 [2] Adriano Venturini, Bora Arslan, Francesco Ricci, Nader Mirzadeh, Detailed Descriptions of CBR Methodologies, ICT-irst, 2002 [3] Langer, Arthur M, Analysis and Design of Information Systems, 2008 [4] Quang Nhat Nguyen and Francesco Ricci, Conversational Case-based Recommendations Exploiting a Structured Case Model, 9th European Conference, ECCBR 2008, Trier, Germany, September 1-4, 2008 Proceedings [5] ThS Nguyễn Đức Hoa Cương; PGS TS Nguyễn Xuân Hoài; TS Nguyễn Thị Hiền; TS Nguyễn Đỗ Văn; TS Ban Hà Bằng, Đề tài nghiên cứu khoa học “Nghiên cứu, xây dựng hệ thống lập kế hoạch du lịch tích hợp với cổng thông tin du lịch Việt Nam”, ĐH Hà Nội, 2015 [6] Nguyễn Văn Ba, Phân tích thiết kế hệ thống thông tin quản lý, NXB ĐHQG, 2002 [7] Lê Văn Phùng, Kỹ thuật phân tích thiết kế hệ thống thông tin hướng cấu trúc, Nhà xuất Thông tin Truyền thông, 2011 Footer Page 77 of 161 Header Page 78 of 161 LÝ LỊCH TRÍCH NGANG Họ tên: Nguyễn Đình Giới Ngày tháng năm sinh: 19/09/1988 Nơi sinh: Bắc Ninh Địa liên lạc: 387 Hoàng Quốc Việt - Cầu Giấy – Hà Nội Quá trình đào tạo: + 2010 – 2013: Liên thông Đại học Học viện Kỹ thuật Quân + 2014 – nay: Học cao học Học viện Kỹ thuật Quân Quá trình công tác: 2011 – nay: Nhân viên Trường Cao đẳng Sư phạm Trung ương Footer Page 78 of 161 Header Page 79 of 161 XÁC NHẬN QUYỂN LUẬN VĂN ĐỦ ĐIỆU KIỆN BẢO VỆ Họ tên tác giả luận văn: Nguyễn Đình Giới Đề tài luận văn: Nghiên cứu, xây dựng hệ thống lập kế hoạch du lịch dựa hệ gợi ý Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 01 Cán hướng dẫn: TS Nguyễn Thị Hiền Đã đủ điều kiện bảo vệ trước Hội đồng chấm luận văn CÁN BỘ HƯỚNG DẪN KHOA HỌC HỌC VIÊN Nguyễn Thị Hiền Nguyễn Đình Giới CHỦ NHIỆM KHOA (BỘ MÔN) CÁN BỘ KIỂM TRA QUẢN LÝ CHUYÊN NGÀNH Footer Page 79 of 161 ... tài: Nghiên cứu, xây dựng hệ thống lập kế hoạch du lịch dựa hệ gợi ý + Tóm tắt: Nghiên cứu giải thuật CBR để áp dụng vào cổng thông tin du lịch nhằm gợi ý cho người dùng tour du lịch hợp lý Kết gợi. .. 161 Chương HỆ THỐNG GỢI Ý VÀ GIẢI THUẬT CBR 1.1 Giới thiệu hệ thống gợi ý 1.1.1 Hệ thống gợi ý Hệ thống gợi ý [1] hệ thống có khả dự đoán đưa gợi ý cho items tới người sử dụng Sự gợi ý liên quan... tour Chương PHÂN TÍCH THIẾT KẾ HỆ THỐNG CỔNG THÔNG TIN DU LỊCH 3.1 Thiết kế sở liệu 3.2 Thiết kế chương trình Chương XÂY DỰNG HỆ THỐNG 4.1 Xây dựng hệ thống 4.2 Kết thực KẾT LUẬN VÀ HƯỚNG MỞ RỘNG

Ngày đăng: 04/04/2017, 20:45

Từ khóa liên quan

Tài liệu cùng người dùng

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

Tài liệu liên quan