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

Đồ án xây dựng ứng dụng bản đồ du lịch

52 4 0

Đ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 Ứng dụng Bản đồ Du lịch
Tác giả Nguyễn Văn Khôi, Đoàn Minh Lợi
Người hướng dẫn ThS. Huỳnh Hồ Thị Mộng Trinh
Trường học Trường Đại học Công Nghệ Thông Tin - Đại Học Quốc Gia Thành Phố Hồ Chí Minh
Chuyên ngành Khoa Học Máy Tính, Công Nghệ Thông Tin
Thể loại Đồ án
Năm xuất bản 2023
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 52
Dung lượng 4,25 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • Chương 1: Mở đầu (7)
    • 1.1 Lý do chọn đề tài (7)
    • 1.2 Mục tiêu và phạm vi nghiên cứu (7)
  • Chương 2: Tổng quan (8)
    • 2.1 Phân tích hướng nghiên cứu của các tác giả liên quan đến đề tài (8)
      • 2.1.1 Công nghệ bản đồ (8)
      • 2.1.2 Định vị (8)
      • 2.1.3 Tích hợp dữ liệu (8)
      • 2.1.4 Giao diện người dùng và Trải nghiệm người dung (8)
    • 2.2 Các vấn đề còn tồn tại (8)
      • 2.2.1 Độ tin cậy dữ liệu (8)
      • 2.2.2 Cung cấp thông tin chi tiết (8)
      • 2.2.3 Tương tác người dung và đánh giá (9)
      • 2.2.4 Tích hợp công nghệ mới (9)
      • 2.2.5 Giao diện người dung (9)
    • 2.3 Các vấn đề cần giải quyết (9)
      • 2.3.1 Thu thập và xử lý dữ liệu đáng tin cậy (9)
      • 2.3.2 Cải thiện tính năng hiển thị thông tin (9)
      • 2.3.3 Quản lý đánh giá và phản hồi người dung (9)
      • 2.3.4 Tích hợp công nghệ mới (9)
      • 2.3.5 Thiết kế giao diện người dùng tương tác (9)
  • Chương 3: Nghiên cứu lý thuyết và thực nghiệm (11)
    • 3.1 Lý thuyết về HTML (11)
      • 3.1.1 Định nghĩa (11)
      • 3.1.2 Cách thức mà HTML hoạt động (11)
      • 3.1.3 Ứng dụng (11)
    • 3.2 Định dạng Website với CSS (11)
      • 3.2.1 Định nghĩa (11)
      • 3.2.2 Cách thức mà CSS hoạt động (11)
      • 3.2.3 Ứng dụng (12)
    • 3.3 Lập trình Javascript (12)
      • 3.3.1 Định nghĩa (12)
      • 3.3.2 Cách thức mà Javascript hoạt động (12)
      • 3.3.3 Ứng dụng (12)
    • 3.4 Sử dụng framework Bootstrap để phát triển website chuẩn responsive (12)
      • 3.4.1 Định nghĩa (12)
      • 3.4.2 Cách thức mà Bootstrap hoạt động (12)
      • 3.4.3 Ứng dụng (13)
    • 3.5 Sử dụng Jquery để tối ưu hóa code và hỗ trợ làm hiệu ứng trong javascript (13)
      • 3.5.1 Định nghĩa (13)
      • 3.5.2 Cách thức mà Jquery hoạt động (13)
      • 3.5.3 Ứng dụng (13)
    • 3.6 Sử dụng Leaflet hỗ trợ xây dựng các tính năng liên quan đến bản đồ định tuyến (13)
      • 3.6.1 Định nghĩa (13)
      • 3.6.2 Cách thức mà Leaflet hoạt động (14)
      • 3.6.3 Ứng dụng (14)
    • 3.7 Công thức Haversine (14)
      • 3.7.1 Định nghĩa (14)
      • 3.7.2 Cách thức hoạt động (14)
      • 3.7.3 Ứng dụng (15)
    • 3.8 Thuật toán tìm vùng bao (15)
      • 3.8.1 Định nghĩa (15)
      • 3.8.2 Cách thức hoạt động (15)
      • 3.8.3 Ứng dụng (15)
    • 3.9 Hệ thống gợi ý Recommender System (16)
      • 3.9.1 Khái niệm (16)
      • 3.9.2 Một số phương pháp trong hệ thống khuyến nghị (17)
      • 3.9.3 So sánh Content-based và Collaborative Filtering (20)
      • 3.9.4 Các thành phần chính (20)
    • 3.10 ChatBox DialogFlow (23)
      • 3.10.1 ChatBox DialogFlow (23)
      • 3.10.2 Quy trình hoạt động (0)
    • 3.11 Khai thác ý kiến, đánh giá và tạo bản tóm tắt (27)
      • 3.11.1 Giới thiệu hướng nghiên cứu (27)
      • 3.11.2 Phương pháp tiếp cận (27)
      • 3.11.3 Cơ sở lý thuyết (28)
      • 3.11.4 Phương pháp khai thác ý kiến (28)
      • 3.11.5 Mô hình nghiên cứu tổng quan (0)
      • 3.11.6 Thu thập dữ liệu (30)
      • 3.11.7 Tiền xử lý dữ liệu (31)
      • 3.11.8 Gán nhãn dữ liệu (31)
      • 3.11.9 Phương pháp biểu diễn văn bản (31)
      • 3.11.10 Đánh giá mô hình (33)
  • Chương 4: Kết quả (35)
    • 4.1 Kết quả nghiên cứu đã tiến hành (35)
      • 4.1.1 Nghiên cứu về ChatBox (35)
      • 4.1.2 Khảo sát về DialogFlow (35)
      • 4.1.3 Tìm hiểu về thuật toán recommendation system (0)
      • 4.1.4 Nghiên cứu về khai thác ý kiến đánh giá và tạo bản tóm tắt (35)
      • 4.1.5 Xem xét các công trình nghiên cứu liên quan (0)
    • 4.2 Sản phẩm phần mềm (37)
      • 4.1.6 Template Website (37)
      • 4.1.7 Các tính năng đề xuất cho Website (37)
      • 4.1.8 Các đối tượng sử dụng (38)
      • 4.1.9 Giao diện phần cứng (40)
      • 4.1.10 Usecase (40)
      • 4.1.11 Sơ đồ ERD (42)
      • 4.1.12 Đặc tả UseCase (42)
  • Chương 5: Kết luận và hướng phát triển (51)

Nội dung

Tổng quan

Phân tích hướng nghiên cứu của các tác giả liên quan đến đề tài

Công nghệ bản đồ đóng vai trò quan trọng trong việc phát triển ứng dụng bản đồ quán nước, với các dịch vụ như Google Maps, OpenStreetMap và Mapbox cung cấp API mạnh mẽ cho việc tích hợp Tác giả nên nghiên cứu và đánh giá tính năng, khả năng tùy chỉnh và độ chính xác của dữ liệu từ những công nghệ này để tối ưu hóa trải nghiệm người dùng.

2.1.2 Định vị Đ nh v là m t y u t quan tr ng trong vi c xây d ng ng d ng b n đ quán ột yếu tố quan trọng trong việc xây dựng ứng dụng bản đồ quán ếu tố quan trọng trong việc xây dựng ứng dụng bản đồ quán ố quan trọng trong việc xây dựng ứng dụng bản đồ quán ọng trong việc xây dựng ứng dụng bản đồ quán ệc xây dựng ứng dụng bản đồ quán ựng ứng dụng bản đồ quán ứng dụng bản đồ quán ụng bản đồ quán ản đồ quán ồ quán nư c S d ng công ngh đ nh v nh GPS (Global Positioning System), ng d ngụng bản đồ quán ệc xây dựng ứng dụng bản đồ quán ư ứng dụng bản đồ quán ụng bản đồ quán có th xác đ nh v trí hi n t i c a ngệc xây dựng ứng dụng bản đồ quán ại của người dùng trên bản đồ Điều này cho phép ủa người dùng trên bản đồ Điều này cho phép ười dùng trên bản đồ Điều này cho phép i dùng trên b n đ Đi u này cho phép ản đồ quán ồ quán ều này cho phép người dùng trên bản đồ Điều này cho phép i dùng d dàng tìm ki m các quán nễ dàng tìm kiếm các quán nước trong khu vực xung quanh và nhận ếu tố quan trọng trong việc xây dựng ứng dụng bản đồ quán ư c trong khu v c xung quanh và nh n ựng ứng dụng bản đồ quán ận ch đười dùng trên bản đồ Điều này cho phép ng đ n đ a đi m mong mu n Tác gi có th nghiên c u v các phếu tố quan trọng trong việc xây dựng ứng dụng bản đồ quán ố quan trọng trong việc xây dựng ứng dụng bản đồ quán ản đồ quán ứng dụng bản đồ quán ều này cho phép ương ng pháp đ nh v , đánh giá đ chính xác và kh năng tột yếu tố quan trọng trong việc xây dựng ứng dụng bản đồ quán ản đồ quán ương ng thích v i các công ngh ệc xây dựng ứng dụng bản đồ quán b n đ ản đồ quán ồ quán

Mật độ dữ liệu là yếu tố quan trọng trong việc xây dựng ứng dụng bản đồ quán Việc tích hợp dữ liệu từ các nguồn khác nhau giúp cải thiện chất lượng và độ tin cậy của ứng dụng Các tác giả có thể nghiên cứu và đánh giá dữ liệu công cộng, cũng như phản hồi của người dùng để tối ưu hóa trải nghiệm Đánh giá tính tin cậy của dữ liệu và sự hài lòng của người dùng là cần thiết để phát triển ứng dụng bản đồ quán hiệu quả.

2.1.4 Giao diện người dùng và Trải nghiệm người dung

Tác giả nên nghiên cứu giao diện người dùng để tối ưu hóa trải nghiệm cho người dùng ứng dụng bản đồ quán nước Điều này bao gồm việc thiết kế giao diện thân thiện, tạo ra các tương tác trực quan và khuyến khích khả năng tương tác xã hội Bên cạnh đó, tác giả có thể thực hiện các cuộc thử nghiệm người dùng nhằm đánh giá và cải thiện trải nghiệm người dùng, từ đó nâng cao chất lượng giao diện.

Các vấn đề còn tồn tại

2.2.1 Độ tin cậy dữ liệu

Vấn đề đầu tiên là độ tin cậy của dữ liệu về quán nước được sử dụng trong ứng dụng

Dữ liệu này chứa thông tin về địa điểm, đánh giá và ý kiến từ người dùng, cùng với các chi tiết liên quan Để đảm bảo tính chính xác và đáng tin cậy, việc kiểm tra và xác minh dữ liệu là rất quan trọng Hơn nữa, cần tạo điều kiện cho người dùng dễ dàng đóng góp và cập nhật thông tin một cách hiệu quả.

2.2.2 Cung cấp thông tin chi tiết

Để người dùng có thể đưa ra quyết định thông minh khi chọn quán nước, việc cung cấp thông tin chi tiết về menu, giá cả, và đánh giá là rất quan trọng Cần thu thập và hiển thị các thông tin này một cách đầy đủ và rõ ràng, điều này đòi hỏi sự hợp tác từ các quán nước trong việc cung cấp dữ liệu Đồng thời, cần xây dựng quy trình xác minh và đảm bảo chất lượng thông tin được hiển thị trên ứng dụng.

2.2.3 Tương tác người dung và đánh giá

Tương tác người dùng và đánh giá đóng vai trò quan trọng trong việc tạo ra trải nghiệm tốt cho người dùng Tuy nhiên, việc quản lý đánh giá và bình luận cần được thực hiện cẩn thận để đảm bảo tính trung thực và độ tin cậy của thông tin Nếu không được kiểm soát, thông tin đánh giá có thể trở nên không chính xác hoặc thiên lệch Do đó, việc xây dựng một hệ thống quản lý đánh giá và bình luận là cần thiết để duy trì sự trung thực và đáng tin cậy của thông tin.

2.2.4 Tích hợp công nghệ mới

Công nghệ định vị, trí tuệ nhân tạo và thực tế ảo đang có sự phát triển mạnh mẽ, và việc áp dụng chúng vào ứng dụng bản đồ quán nước có thể nâng cao trải nghiệm người dùng Tuy nhiên, để tích hợp hiệu quả các công nghệ này, cần có kiến thức chuyên môn và đầu tư vào phát triển Vì vậy, nghiên cứu và ứng dụng các công nghệ mới là điều cần thiết để cải thiện chất lượng và tính năng của ứng dụng.

Giao diện người dùng thân thiện và dễ sử dụng là yếu tố quyết định trong việc thu hút và giữ chân người dùng Thiết kế đồ họa, cách hiển thị thông tin và khả năng tương tác đều ảnh hưởng mạnh mẽ đến trải nghiệm người dùng Nghiên cứu và thử nghiệm giao diện người dùng để tối ưu hóa trải nghiệm là một thách thức quan trọng trong quá trình phát triển ứng dụng bản đồ quán nước.

Các vấn đề cần giải quyết

2.3.1 Thu thập và xử lý dữ liệu đáng tin cậy Để đảm bảo tính chính xác và tin cậy của dữ liệu về quán nước, cần nghiên cứu các phương pháp thu thập dữ liệu đáng tin cậy từ các nguồn đáng tin cậy như các cơ quan chính phủ, trang web chuyên về đánh giá quán nước hoặc đánh giá từ các nguồn đáng tin cậy khác Nghiên cứu cách xử lý và xác minh dữ liệu cũng là một yếu tố quan trọng để đảm bảo tính chính xác của thông tin hiển thị trên ứng dụng

2.3.2 Cải thiện tính năng hiển thị thông tin

Tính năng hiển thị thông tin chi tiết về quán nước giúp người dùng đưa ra quyết định thông minh hơn Cung cấp thông tin rõ ràng về menu, giá cả, đánh giá và thực đơn đặc biệt sẽ nâng cao trải nghiệm người dùng và thu hút sự chú ý của họ.

2.3.3 Quản lý đánh giá và phản hồi người dung

Việc xây dựng một hệ thống quản lý đánh giá và phản hồi người dùng là thiết yếu để đảm bảo tính trung thực và độ tin cậy của thông tin Nghiên cứu cách kiểm soát và quản lý đánh giá, bình luận từ người dùng, cùng với cơ chế xác minh thông tin và xử lý khiếu nại, sẽ góp phần duy trì chất lượng thông tin và tạo dựng lòng tin từ phía người dùng.

2.3.4 Tích hợp công nghệ mới

Nghiên cứu và ứng dụng công nghệ tiên tiến như GPS nâng cao, trí tuệ nhân tạo, thực tế ảo và gợi ý thông minh có thể nâng cao trải nghiệm người dùng Việc tích hợp và khai thác hiệu quả các công nghệ này để cải thiện tính năng và hiệu suất của ứng dụng sẽ là một hướng đi quan trọng trong tương lai.

2.3.5 Thiết kế giao diện người dùng tương tác

Nghiên cứu thiết kế giao diện người dùng thân thiện và trực quan là yếu tố quan trọng để thu hút và giữ chân người dùng Việc sắp xếp thông tin hợp lý, tạo hiệu ứng tương tác và cải thiện trải nghiệm người dùng sẽ mang lại lợi ích đáng kể cho ứng dụng bản đồ quán nước.

Nghiên cứu lý thuyết và thực nghiệm

Lý thuyết về HTML

HTML viết tắt của Hypertext Markup Language là ngôn ngữ lập trình dùng để xây dựng và cấu trúc lại các thành phần có trong Website.

Một website thường bao gồm nhiều trang con, mỗi trang có một tập tin HTML riêng Cần lưu ý rằng HTML không phải là ngôn ngữ lập trình, do đó nó không thể thực hiện các chức năng "động" Nói một cách đơn giản, giống như phần mềm Microsoft Word, HTML chỉ có khả năng bố cục và định dạng trang web.

3.1.2 Cách thức mà HTML hoạt động

Tài liệu HTML có định dạng file html hoặc htm và có thể được mở bằng các trình duyệt web như Google Chrome, Firefox, và Safari Trình duyệt có nhiệm vụ đọc các file HTML và chuyển đổi chúng thành nội dung trực quan trên Internet, giúp người dùng dễ dàng xem và hiểu thông tin.

Một website thường có nhiều tài liệu HTML, như trang chủ, trang blog và trang liên hệ, với mỗi trang có tệp HTML riêng Mỗi tài liệu HTML bao gồm các thẻ (hay còn gọi là element), tạo ra cấu trúc giống như cây thư mục với các tiêu đề, phần, đoạn văn và các khối nội dung khác Hầu hết các element HTML đều có thẻ mở và thẻ đóng theo cấu trúc .

HTML được sử dụng để xây dựng cấu trúc chính của trang web, bao gồm các thành phần như video, hình ảnh và biểu tượng.

Định dạng Website với CSS

CSS, hay còn gọi là Cascading Style Sheets, là một ngôn ngữ thiết kế giúp đơn giản hóa việc tạo ra website Được ra mắt vào năm

1996 bởi World Wide Web Consortium (W3C).

3.2.2 Cách thức mà CSS hoạt động

Một đoạn CSS thường bao gồm các phần như sau: vùng chọn {thuộc tính: giá trị; thuộc tính: giá trị; } CSS được khai báo với vùng chọn và các thuộc tính nằm trong dấu ngoặc nhọn Mỗi thuộc tính có thể là một giá trị số hoặc tên của các giá trị có sẵn trong danh sách CSS Quy tắc khai báo yêu cầu thuộc tính và giá trị được phân cách bằng dấu hai chấm, và mỗi dòng khai báo thuộc tính phải kết thúc bằng dấu chấm phẩy Lưu ý rằng các thuộc tính không bị giới hạn trong một vùng chọn cụ thể.

CSS giúp cải thiện giao diện website, làm cho nó trở nên hấp dẫn hơn Mỗi đối tượng trong HTML đều có các thuộc tính định dạng riêng, và việc sử dụng các thuộc tính này một cách hợp lý sẽ nâng cao tính thẩm mỹ và khả năng sử dụng của trang web.

Lập trình Javascript

JavaScript là ngôn ngữ lập trình quan trọng giúp tạo ra các trang web tương tác, từ việc làm mới bảng tin trên mạng xã hội đến hiển thị hình ảnh động và bản đồ tương tác Các chức năng của JavaScript không chỉ nâng cao trải nghiệm người dùng mà còn là một trong những công nghệ cốt lõi của World Wide Web.

3.3.2 Cách thức mà Javascript hoạt động

Tất cả các ngôn ngữ lập trình đều chuyển đổi cú pháp giống tiếng Anh thành mã máy để hệ điều hành thực thi JavaScript được phân loại là ngôn ngữ viết tập lệnh hoặc ngôn ngữ diễn giải, trong đó mã JavaScript được diễn giải trực tiếp sang mã ngôn ngữ máy cơ bản Khác với các ngôn ngữ lập trình khác, nơi trình biên dịch thực hiện biên dịch toàn bộ mã thành mã máy trong một bước riêng.

Javascipt được ứng dụng trong việc giúp web trở thành 1 web động có khả năng tương tác với người dùng đồng thời tạo một số hiệu ứng đẹp mắt.

Sử dụng framework Bootstrap để phát triển website chuẩn responsive

Bootstrap là một framework tích hợp HTML, CSS và JavaScript, giúp người dùng thiết kế website theo các tiêu chuẩn nhất định Nó hỗ trợ tạo ra các trang web thân thiện với thiết bị di động như điện thoại, iPad và tablet, mang lại trải nghiệm người dùng tối ưu.

3.4.2 Cách thức mà Bootstrap hoạt động

Bootstrap là một bộ công cụ phát triển web chứa các tệp JavaScript, CSS và phông chữ đã được biên dịch và nén Được thiết kế theo mô-đun, Bootstrap dễ dàng tích hợp với nhiều mã nguồn mở phổ biến như WordPress, Joomla và Magento, đồng thời cung cấp nhiều chức năng nổi bật cho người dùng.

Bootstrap cung cấp cho người dùng một thư viện phong phú với nhiều thành phần cần thiết để xây dựng giao diện website hoàn chỉnh, bao gồm font, typography, form, table và grid.

Bootstrap cho phép bạn tùy chỉnh framework của website trước khi tải xuống và sử dụng nó tại trang web của khung.

Tái sử dụng các thành phần lặp đi lặp lại trên trang web.

Bootstrap tích hợp jQuery, cho phép bạn khai báo chính xác các tính năng cần thiết trong quá trình lập trình web Việc định nghĩa glyphicons giúp giảm thiểu việc sử dụng hình ảnh cho biểu tượng, từ đó tăng tốc độ tải trang.

Bootstrap được nhóm ứng dụng vào việc phát triển 1 web-site chuẩn responsive trên các thiết bị.

Sử dụng Jquery để tối ưu hóa code và hỗ trợ làm hiệu ứng trong javascript

3.5.1 Định nghĩa jQuery là thư viện được viết từ JavaScript, jQuery giúp xây dựng các chức năng bằng Javascript dễ dàng, nhanh và giàu tính năng hơn.

3.5.2 Cách thức mà Jquery hoạt động

Với JavaScript thuần, để lấy phần tử trong HTML, bạn cần sử dụng cú pháp: document.getElementById, document.getElementsByClassName hoặc document.getElementsByTagName Tuy nhiên, việc này có thể trở nên phức tạp và dài dòng, vì vậy bạn có thể sử dụng jQuery để đơn giản hóa quá trình lấy phần tử trong HTML.

Sử dụng tạo 1 số hiệu ứng animation cùng với việc tối ưu hóa code javascipt.

Sử dụng Leaflet hỗ trợ xây dựng các tính năng liên quan đến bản đồ định tuyến

Leaflet là một thư viện JavaScript mã nguồn mở, được sử dụng như một giải pháp thay thế cho Google Map API trong việc phát triển các ứng dụng và phần mềm liên quan đến bản đồ.

Leaflet là một thư viện nhẹ chỉ khoảng 38KB, hỗ trợ xây dựng bản đồ tương tác với nhiều tính năng như đo khoảng cách, định tuyến và xác định vị trí hiện tại Thư viện này cung cấp đầy đủ các chức năng cần thiết cho các nhà phát triển, giúp dễ dàng tích hợp bản đồ vào ứng dụng của họ.

Leaflet được thiết kế với tiêu chí đơn giản, hiệu suất cao và dễ sử dụng Nó hoạt động tốt trên cả máy tính và di động, có khả năng mở rộng với nhiều plugin Ngoài ra, tài liệu API của Leaflet rất đẹp, đơn giản và dễ đọc.

3.6.2 Cách thức mà Leaflet hoạt động

Khi cần sử dụng tính năng của bản đồ, chúng ta có thể tải mã nguồn liên quan và nhúng trực tiếp vào mã của mình, hoặc sử dụng các liên kết nhúng để tích hợp vào phần mềm và sử dụng như bình thường.

Sau khi đã nhúng vào phần mềm ta chỉ việc gọi các hàm hoặc các đối tượng liên quan và sử dụng như bình thường.

Hỗ trợ xây dựng các tính năng định tuyến, vẽ bản đồ, xác định vị trí, tính năng chỉ đường, ghim map, kiểm tra vị trí hiện tại

Công thức Haversine

Công thức tính khoảng cách giữa hai điểm trên mặt cầu dựa vào tọa độ GPS cho phép xác định khoảng cách giữa chúng thông qua kinh độ và vĩ độ Sử dụng công thức này, người dùng có thể dễ dàng tính toán khoảng cách giữa hai địa điểm trên địa cầu.

3.7.2 Cách thức hoạt động Ứng dụng công thức Haversine ta xây dựng được thuật toán như sau: function getDistanceFromLatLonInKm(lat1,lon1,lat2,lon2) { var R = 6371; // Radius of the earth in km var dLat = deg2rad(lat2-lat1); // deg2rad below var dLon = deg2rad(lon2-lon1); var a Math.sin(dLat/2) * Math.sin(dLat/2) +

Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) *

Math.sin(dLon/2) * Math.sin(dLon/2)

; var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); var d = R * c; // Distance in km return d;

} function deg2rad(deg) { return deg * (Math.PI/180)

Việc tính toán khoảng cách giữa hai địa điểm dựa trên tọa độ giúp xác định vị trí các quán nước, từ đó cung cấp gợi ý du lịch cho người dùng Thuật toán haversine kết hợp với thuật toán đo tọa độ tạo vòng bao cho phép kiểm tra xác thực vị trí của người dùng, xác định xem họ có đang ở đúng quán hay không Điều này không chỉ hỗ trợ tính năng gợi ý Voucher cho các quán nước gần nhất mà còn tăng khả năng người dùng ghé thăm các địa điểm này.

Thuật toán tìm vùng bao

Dựa vào tọa độ hiện tại, cần tìm kiếm dữ liệu về diện tích và xác định dữ liệu giả định cho 4 điểm cực của một địa điểm trên bản đồ Kinh độ và vĩ độ có thể nằm ở bất kỳ vị trí nào, vì vậy việc xác định diện tích là cần thiết để tiến hành xác định tọa độ 4 điểm cực, từ đó vẽ vùng bao.

Xác định diện tích của khu vực, tiến hành giả định 4 điểm cực dựa trên diện tích với tọa độ của địa điểm là điểm tâm của vùng bao.

3.8.3 Ứng dụng Ứng dụng trong việc xác thực vị trí của người dùng có phải đã ở trong khu vực của địa điểm (quán nước) hay là không, dựa vào việc vẽ vùng bao của địa điểm, vẽ vùng bao của vị trí người dùng, từ đó tiến hành xác định điểm giao nhau của 2 vùng bao, nếu xảy ra sự giao nhau thì có thể kết luận hiện tại người dùng đang ở trong khu vực của quán.

Hệ thống gợi ý Recommender System

Hệ thống gợi ý (Recommender System) tự động đề xuất sản phẩm phù hợp với sở thích của người dùng, là giải pháp hiệu quả hơn so với các thuật toán tìm kiếm truyền thống Bằng cách phân tích dữ liệu người dùng trước đó, hệ thống dự đoán và cung cấp gợi ý về sản phẩm, tính năng, hay dịch vụ liên quan, giúp nâng cao chất lượng dịch vụ và gia tăng lợi nhuận, đặc biệt trong lĩnh vực thương mại điện tử.

Hệ thống gợi ý (Recommender System) là một lĩnh vực quan trọng trong Học Máy với lịch sử lâu dài, bắt đầu từ bài báo kĩ thuật của Jussi Karlgren tại Đại Học Columbia năm 1990 Tuy nhiên, sự bùng nổ thực sự của hệ thống gợi ý chỉ diễn ra trong 10-15 năm qua, nhờ vào sự gia tăng tương tác trực tuyến của người dùng, sự phát triển mạnh mẽ của các sàn thương mại điện tử, và những tiến bộ trong ngành Khoa học dữ liệu.

Thông tin về người sử dụng được dùng cho hệ thống khuyến nghị tự động có thể chia thành hai loại: thông tin ẩn và thông tin hiện.

Thông tin ẩn (Implicit Feedback) là những lượt thích và không thích của người dùng được ghi nhận qua hành động như nhấp chuột, tìm kiếm và mua hàng Mặc dù việc thu thập dữ liệu này rất dễ dàng, nhưng thường gặp phải độ nhiễu cao và thiếu sự tương tác trực tiếp với người dùng, vì hệ thống tự động ghi lại lịch sử Điều này cũng dẫn đến việc phản hồi tiêu cực không được phản ánh rõ ràng.

Thông tin hiện (Feedback Rõ Ràng) là những đánh giá trực tiếp từ người dùng về sản phẩm, bao gồm các phản hồi như thích/không thích, chấm điểm và bình luận Mặc dù việc thu thập loại thông tin này thường khó khăn hơn so với thông tin ẩn, nhưng nó mang lại độ chính xác cao hơn và rất hữu ích cho việc đưa ra các khuyến nghị.

Mục tiêu của hệ thống khuyến nghị:

- Gia tăng doanh số: Đơn giản là họ sẽ bán thêm được hàng hoặc tăng lượt đặt chỗ so với những trang mà không sử dụng Recommendation System

Recommendation System đề xuất càng chính xác với nhu cầu người dùng thì website càng bán được nhiều hàng

Hệ thống gợi ý được thiết kế và triển khai hiệu quả sẽ nâng cao trải nghiệm người dùng, giúp họ cảm thấy hài lòng với độ chính xác và sự thú vị của các gợi ý Kết hợp với giao diện người dùng hợp lý, điều này sẽ khuyến khích khách hàng quay lại trang web.

- Nắm được nhu cầu khách hàng: Một chức năng quan trọng khác của

Hệ thống gợi ý (Recommendation System) giúp thu thập phản hồi từ khách hàng, cho phép bạn hiểu rõ hơn về sở thích của họ Nếu khách hàng không ưa thích những đề xuất của bạn, thông tin này vẫn có thể được ghi nhận và tái sử dụng để nâng cao độ chính xác của hệ thống gợi ý.

Các thuật ngữ sau đây sẽ thường được sử dụng,

- Đối tượng, hay người dùng mà hệ thống gợi ý hướng đến được gọi là users,

- Sản phẩm mà hệ thống đưa ra gợi ý được gọi là items

- Sự tương quan giữa các đối tượng và sản phẩm, mức độ quan tâm của đối tượng đối với sản phẩm đó được gọi là rating

3.9.2 Một số phương pháp trong hệ thống khuyến nghị

Về phân loại, các Recommender Systems thường được chia thành hai nhóm lớn:

Hệ thống dựa trên nội dung đánh giá các đặc tính của các mục được gợi ý Chẳng hạn, nếu một người dùng thường xuyên xem các bộ phim về cảnh sát hình sự, hệ thống sẽ gợi ý một bộ phim khác trong cơ sở dữ liệu có đặc tính tương tự Phương pháp này yêu cầu việc phân loại các mục thành từng nhóm hoặc xác định các đặc điểm riêng biệt của từng mục Tuy nhiên, một số mục không thuộc về nhóm cụ thể, và việc xác định nhóm hoặc đặc trưng của chúng đôi khi là điều không thể thực hiện.

- Collaborative filtering: Hệ thống gợi ý items dựa trên sự tương quan

(similarity) giữa các users và rating Có thể hiểu rằng ở nhóm này, một item được recommend tới một user dựa trên những users có hành vi tương tự.

3.9.2.1 Phương pháp khuyến nghị theo nội dung (Content-based)

Đề xuất dựa trên nội dung (content-based recommendation) sử dụng thông tin mô tả của từng sản phẩm để đưa ra gợi ý cho người dùng Các hệ thống này phân tích hồ sơ sở thích của người dùng nhằm đề xuất các sản phẩm phù hợp nhất với nhu cầu và sở thích cá nhân của họ.

In a content-based system, it is essential to create a profile for each item, represented mathematically as a feature vector In simpler cases, this feature vector is directly extracted from the item itself For instance, features of a song that can be utilized in recommendation systems include the artist, songwriter, year of composition, and genre.

Các đề xuất được thiết kế riêng cho từng người dùng mà không cần dữ liệu từ những người dùng khác, giúp dễ dàng mở rộng quy mô cho số lượng lớn người dùng Điều này không chỉ tiết kiệm bộ nhớ mà còn giảm thiểu thời gian tính toán.

- Có thể nắm bắt sở thích cụ thể của người dùng và có thể đề xuất các sản phẩm thích hợp mà rất ít người dùng khác quan tâm.

- Cần phải trích xuất được các đặc điểm của sản phẩm

Khi xây dựng mô hình cho người dùng, các hệ thống dựa trên nội dung không tận dụng thông tin từ những người dùng khác, mặc dù thông tin này rất hữu ích Hành vi mua sắm của người dùng thường được phân loại thành một số nhóm đơn giản; nếu hiểu được hành vi mua sắm của một vài người trong nhóm, hệ thống có thể suy luận hành vi của những người dùng còn lại.

- Vấn đề người dùng mới.

Nhược điểm của phương pháp Content-based có thể được khắc phục thông qua lọc cộng tác, một kỹ thuật dựa trên việc thu thập và phân tích dữ liệu lớn về hành vi và sở thích của người dùng Phương pháp này dự đoán những gì người dùng sẽ thích bằng cách so sánh với những người dùng khác có sự tương đồng Nó không chỉ xem xét những sản phẩm mà một người dùng cụ thể yêu thích, mà còn chú ý đến những sản phẩm mà những người có sở thích tương tự cũng ưa chuộng, từ đó đưa ra các gợi ý phù hợp cho người dùng.

Hệ thống gợi ý so sánh dữ liệu đã thu thập với các dữ liệu tương tự và khác biệt từ người dùng khác, từ đó tính toán danh sách các mục đề xuất phù hợp cho người dùng.

Khi phát triển mô hình dựa trên hành vi người dùng, cần phân biệt rõ giữa hai hình thức thu thập dữ liệu: dữ liệu rõ ràng và dữ liệu tiềm ẩn.

Ví dụ về thu thập dữ liệu rõ ràng bao gồm:

- Yêu cầu người dùng xếp hạng một mục trên thang trượt

- Yêu cầu người dùng tìm kiếm

- Yêu cầu người dùng xếp hạng một bộ sưu tập các mục từ yêu thích đến ít yêu thích nhất

- Yêu cầu người dùng tạo danh sách các mục mà anh / cô ấy thích

Ví dụ về thu thập dữ liệu ngầm bao gồm:

- Quan sát các mục mà người dùng xem trong cửa hàng trực tuyến

- Phân tích thời gian xem mục / người dùng

- Lưu giữ một bản ghi các mục mà người dùng mua trực tuyến

- Lấy danh sách các mục mà người dùng đã nghe hoặc xem trên máy tính của họ

- Phân tích mạng xã hội của người dùng và khám phá những lượt thích và không thích tương tự

Lọc cộng tác theo từng mục, nổi bật với thuật toán "những người mua X cũng mua Y", là một trong những ví dụ điển hình về lọc cộng tác, được Amazon.com áp dụng rộng rãi trong hệ thống gợi ý của mình.

ChatBox DialogFlow

Dialogflow, trước đây được biết đến là API.AI, là dịch vụ của Google hỗ trợ lập trình viên trong việc phát triển các sản phẩm tương tác với người dùng thông qua hội thoại văn bản một cách dễ dàng.

(text) hoặc giọng nói (voice) Dialogflow sử dụng trí tuệ nhân tạo (AI) giúp phân tích ngôn ngữ tự nhiên để hiểu được những gì người dùng đưa vào

Dialogflow hiện có sẵn nhiều kịch bản và được đào tạo với một lượng dữ liệu phong phú Nhờ vào điều này, Dialogflow hoạt động hiệu quả hơn trong nhiều tình huống.

Tiếng Anh và một số tiếng của các nước đông dân khác trong đó có tiếng

Việt Ngoài ra Dialogflow còn cho phép bạn liên kết Chatbot của bạn với

Messenger hay Skype hay Slack… một cách rất đơn giản

3.10.2 Quy trình hoạt động

Dialogflow Agent là một chatbot ảo có khả năng xử lý cuộc trò chuyện với người dùng thông qua việc hiểu ngôn ngữ tự nhiên Nó có khả năng nhận diện sắc cảm và ngữ cảnh trong các cuộc đối thoại, cho phép phản hồi thông qua văn bản hoặc giọng nói Các lập trình viên có thể dễ dàng tạo và thiết kế một Agent để quản lý các đoạn hội thoại trong ứng dụng.

Agent Dialogflow giống như một nhân viên hỗ trợ cuộc gọi trong các trung tâm, được huấn luyện để xử lý các tình huống hội thoại dự kiến Đặc biệt, quá trình đào tạo này không cần phải rõ ràng, vì Agent Bot có khả năng tự học trong quá trình xử lý thông tin Một Agent bao gồm nhiều thành phần khác nhau để tối ưu hóa khả năng tương tác.

- Agent Setting: cài đặt tùy chỉnh Bot Người lập trình có thể tùy chọn gói ngôn ngữ, cài đặt chương trình Học máy, kiểm soát hành vi của

Bot thông qua cài đặt tùy chỉnh này

- Intents: Phân loại thoại người dùng có thể sử dụng trong quá trình trò chuyện.

- Entities: Xác định và rút trích dữ liệu cụ thể từ thoại người dùng sử dụng

- Knowledge: Phân tích tài liệu và tìm câu trả lời tự động

- Integrations: Tích hợp cho các ứng dụng hoặc dịch vụ tương tác khác

- Fulfillment: Thực hiện kết nối với dịch vụ tích hợp khác

Intent (Ý định) được sử dụng để phân loại các câu thoại của người dùng trong cuộc trò chuyện Mỗi Bot có thể định nghĩa nhiều Intent và kết hợp, phân cấp chúng để xây dựng một cuộc hội thoại hoàn chỉnh Khi người dùng nhập câu thoại, ChatBot DialogFlow sẽ thực hiện việc đối sánh để tìm ra Intent phù hợp nhất và gửi phản hồi lại Quá trình này được gọi là phân loại Intent.

Một Intent cơ bản bao gồm những phần như sau:

Cụm từ đào tạo trong Intent là những câu mà người dùng có thể sử dụng khi tương tác với Chatbot Khi lời nói của người dùng tương đồng với một trong các cụm từ trong danh sách đào tạo, Chatbot sẽ nhận diện và phản hồi một cách chính xác.

Dialogflow ChatBot sẽ truy cập vào Intent đấy, thực hiện nội dung

Action và phản hồi phần Responses của Intent

- Action: Hành động của một Intent, có thể điều chỉnh tùy ý Khi một

Intent được đối sánh trùng khớp với thoại người dùng nhập vào,

Chatbot sẽ cung cấp phần Action cho hoạt động của Intent để kích hoạt một số hành động nhất định do người tạo quy định

Khi một Intent trong Dialogflow được đối sánh trùng khớp, các Tham số đóng vai trò quan trọng trong việc trích xuất giá trị từ lời thoại của người dùng.

- Responses: Thoại phản hồi của Intent, có thể là kiểu văn bản, kiểu giọng nói hoặc hình ảnh

Một Intent phức tạp còn có thể có thêm những phần sau:

Trong giao tiếp, ngữ cảnh đóng vai trò quan trọng trong việc hiểu ý định của người nói Tương tự như trong thực tế, việc xác định ngữ cảnh giúp chúng ta nhận biết được thông điệp mà người khác đang truyền đạt.

Sự kiện trong Intent có thể được kích hoạt khi một sự kiện cụ thể xảy ra, thay vì chỉ phụ thuộc vào việc nhận diện giọng nói của người dùng.

Mỗi Parameter của Intent có một kiểu Entity, cho biết chính xác kiểu dữ liệu của cụm từ được trích xuất từ thoại người dùng nhập vào

Chatbot Dialogflow cung cấp nhiều loại Entity có khả năng đối sánh với dữ liệu lời thoại Các Entity này có thể được tùy chỉnh theo từng mục đích sử dụng riêng biệt.

Fulfillment, hay còn gọi là Webhook, là một API ở Backend mà Dialogflow cần sử dụng để xử lý các nghiệp vụ trước khi gửi phản hồi cho người dùng.

Hình 3.9: Mô phỏng các hoạt động của Chatbot với Fullfillment

Sự kết nối giữa Backend của Website và Chatbot cho phép Chatbot truy cập và truy vấn thông tin từ cơ sở dữ liệu, từ đó cung cấp thông tin chính xác và nhất quán với Website, cũng như thực hiện các phép tính cần thiết.

Ngoài ra, cũng thông qua Backend này, website cho phép người dùng

(cụ thể là ở vị trí Manager hay quản lý) có thể thực hiện thay đổi một số thoại chứa thông tin tư vấn của Chatbot khi cần thiết

Về cách bot xử lý input để đưa ra output

Hình 3.10: Luồng xử lý hoạt động của Dialogflow Chatbot Đầu tiên, người dùng nhập vào lời thoại, và gửi đến Dialogflow

Chatbot thông qua Google Cloud

Sau khi nhận được lời thoại, Agent Bot đối sách với các cụm từ

Training phrases Intent đã được tạo, lấy ra Intent trùng khớp

Next, the bot accesses the intent and executes its components (Contexts, Actions and Parameters, Responses), which includes sending a request to fulfill information queries.

Cuối cùng, Bot trả về lời thoại trong Response và thể hiện phản hồi đến với người dùng.

Khai thác ý kiến, đánh giá và tạo bản tóm tắt

3.11.1Giới thiệu hướng nghiên cứu

Nghiên cứu tổng hợp ý kiến trong dự án "Xây dựng bản đồ quán nước" nhằm phát triển một hệ thống cung cấp thông tin đáng tin cậy và công bằng Hệ thống này giúp người dùng tiết kiệm thời gian và công sức khi tìm hiểu về các quán nước, đồng thời cung cấp tóm tắt ý kiến chính xác từ cộng đồng Việc này không chỉ nâng cao trải nghiệm người dùng mà còn hỗ trợ họ trong việc đưa ra quyết định minh bạch, góp phần tạo ra một ứng dụng bản đồ quán nước hiệu quả.

Dữ liệu ý kiến và đánh giá từ người dùng sẽ được thu thập từ nhiều nguồn khác nhau như mạng xã hội, diễn đàn và trang web đánh giá quán nước Những thông tin này sẽ tạo thành tập dữ liệu huấn luyện cho hệ thống tổng hợp ý kiến.

Trước khi áp dụng các phương pháp tổng hợp ý kiến, dữ liệu thu thập cần được tiền xử lý để loại bỏ thông tin không cần thiết và chuẩn hóa các đặc trưng văn bản.

Phân tích ý kiến là quá trình sử dụng các phương pháp xử lý ngôn ngữ tự nhiên và học máy để xác định cảm xúc, quan điểm và các yếu tố đánh giá quan trọng trong ý kiến của người dùng.

Rút trích thông tin từ các đoạn văn bản chứa ý kiến sẽ giúp thu thập những yếu tố đánh giá, nhận xét đặc biệt và mô tả chi tiết về quán nước, từ đó tạo ra cái nhìn tổng quan và sâu sắc hơn về chất lượng dịch vụ và không gian của quán.

Dựa trên các thông tin quan trọng đã được rút trích, các phương pháp tạo bản tóm tắt sẽ được áp dụng để xây dựng một tóm tắt ngắn gọn về ý kiến và đánh giá của người dùng đối với các quán nước.

Chất lượng bản tóm tắt được xác định thông qua việc so sánh với các đánh giá ban đầu từ người dùng hoặc thông qua các phương pháp đánh giá tự động, bao gồm độ chính xác, độ phủ và chỉ số F1.

Xử lý ngôn ngữ tự nhiên (NLP) là lĩnh vực nghiên cứu các phương pháp và công cụ nhằm hiểu và xử lý ngôn ngữ tự nhiên Các kỹ thuật NLP được áp dụng để tiền xử lý dữ liệu, phân tích cảm xúc, trích xuất thông tin và tạo bản tóm tắt ý kiến từ các đoạn văn bản chứa ý kiến và đánh giá của người dùng về các quán nước.

Học máy và học sâu là những phương pháp quan trọng trong việc huấn luyện và xây dựng các mô hình tổng hợp ý kiến Các thuật toán như k-means clustering, Support Vector Machines (SVM), Recurrent Neural Networks (RNN), và các mô hình Transformer được sử dụng để phân loại, rút trích thông tin, và tạo bản tóm tắt ý kiến từ dữ liệu ngôn ngữ tự nhiên.

 Tư duy phân tích và đánh giá ý kiến (Sentiment Analysis and Opinion

Tư duy phân tích và đánh giá ý kiến là một lĩnh vực nghiên cứu trong NLP, chuyên về việc xác định cảm xúc và quan điểm trong văn bản Nghiên cứu này áp dụng các phương pháp và công cụ để phân tích cảm xúc và đánh giá từ người dùng về các quán nước, giúp hiểu rõ hơn về ý kiến và nhận xét của khách hàng.

 Tóm tắt và rút trích thông tin (Summarization and Information Extraction):

Các phương pháp tóm tắt và rút trích thông tin trong NLP nhằm tạo ra các bản tóm tắt ngắn gọn và chính xác từ dữ liệu văn bản Nghiên cứu này áp dụng các kỹ thuật tóm tắt để tạo ra bản tóm tắt ý kiến và trích xuất các yếu tố đánh giá quan trọng cùng nhận xét đặc biệt từ các đoạn văn bản chứa ý kiến người dùng về quán nước.

3.11.4 Phương pháp khai thác ý kiến

Khai thác ý kiến là một lĩnh vực nghiên cứu quan trọng, tập trung vào việc phân tích và đánh giá các nhận định của con người về nhiều đối tượng khác nhau, bao gồm sản phẩm, dịch vụ, tổ chức, cá nhân, sự kiện và các chủ đề liên quan.

Một quy trình khai thác ý kiến thường gồm ba bước chính:

(1) Thu thập ý kiến (Opinion Retrieval)

(2) Phân loại ý kiến (Opinion Classification)

(3) Tổng hợp ý kiến (Opinion Summarization)

Phân loại ý kiến là bước quan trọng trong việc phân chia các quan điểm thành tích cực, tiêu cực và trung lập Đây là một kỹ thuật trong khai thác dữ liệu văn bản (Text Mining) thuộc lĩnh vực xử lý ngôn ngữ tự nhiên (Natural Language Processing) Hai phương pháp phổ biến cho phân loại ý kiến là dựa vào máy học (Machine Learning) và từ vựng (Lexicon based) Để nâng cao hiệu suất phân loại, nhiều nghiên cứu đã áp dụng phương pháp lai kết hợp giữa hai cách tiếp cận này.

Hình 3.11: Tổng hợp các phương pháp phân loại ý kiến trong nghiên cứu

3.11.5 Mô hình nghiên cứu tổng quan

Trong nghiên cứu này, chúng tôi đã thu thập dữ liệu thô từ trang web Foody, sau đó tiến hành tiền xử lý, lấy mẫu và gán nhãn dữ liệu trước khi áp dụng các phương pháp học máy.

Dữ liệu lấy mẫu được chia thành ba nhóm:

- Tập dữ liệu huấn luyện (training data),

- Tập dữ liệu xác nhận (validation data)

- Tập dữ liệu kiểm tra (test data)

Tập dữ liệu huấn luyện giúp thiết lập các mô hình học máy, trong khi bộ dữ liệu xác nhận được dùng để tinh chỉnh các mô hình đã chọn Chúng tôi dựa vào kết quả phân loại chính xác từ dữ liệu kiểm tra để xác định mô hình học máy tối ưu Các bộ dữ liệu kiểm tra chỉ được sử dụng một lần, đóng vai trò quan trọng trong việc báo cáo tỷ lệ lỗi ước tính cho các dự đoán tương lai.

Hình 3.12: Mô hình nghiên cứu tổng quan

Kết quả

Kết quả nghiên cứu đã tiến hành

Nhóm đã nghiên cứu khái niệm và nguyên tắc hoạt động của chatbot, bao gồm việc tìm hiểu các công nghệ và framework phổ biến trong lĩnh vực này.

DialogFlow, cách xây dựng cấu trúc câu hỏi và phản hồi, cách hiểu và phân tích ngôn ngữ tự nhiên, và cách tương tác với người dùng.

Nhóm nghiên cứu đã khám phá sâu về DialogFlow, nền tảng phát triển chatbot của Google Các thành viên đã tìm hiểu kỹ lưỡng về các tính năng, giao diện và công cụ phát triển trong DialogFlow nhằm triển khai chatbot cho ứng dụng bản đồ quán nước.

4.1.3 Tìm hiểu về thuật toán recommendation system

Nhóm nghiên cứu đã khám phá các thuật toán gợi ý phổ biến nhằm đề xuất quán nước phù hợp với sở thích và lịch sử tương tác của người dùng Nghiên cứu này bao gồm việc tìm hiểu các phương pháp như collaborative filtering, content-based filtering và hybrid recommendation để cải thiện trải nghiệm người dùng.

4.1.4 Nghiên cứu về khai thác ý kiến đánh giá và tạo bản tóm tắt

Nghiên cứu đã áp dụng các lý thuyết quan trọng trong lĩnh vực tổng hợp ý kiến để phát triển hệ thống ứng dụng bản đồ quán nước và hệ thống khuyến nghị Các kết quả chính của nhóm nghiên cứu đã được trình bày rõ ràng.

Nhóm đã thực hiện phân tích cú pháp và ngữ nghĩa của các ý kiến từ người dùng về quán nước, giúp nhận diện các thành phần ngôn ngữ quan trọng như từ khóa, câu chủ đề, cảm xúc và quan điểm trong văn bản.

Nhóm đã sử dụng các kỹ thuật xử lý ngôn ngữ tự nhiên (NLP) như nhận diện thực thể tên (NER) và phân tích cảm xúc để rút trích thông tin quan trọng về chất lượng món ăn, dịch vụ, không gian và các yếu tố khác của quán nước, dựa trên phân tích ý kiến và đánh giá.

Nhóm đã phát triển một phương pháp hiệu quả để tạo ra các bản tóm tắt ngắn gọn và chính xác về ý kiến và đánh giá từ người dùng Các bản tóm tắt này tập trung vào những yếu tố quan trọng nhất, cung cấp cái nhìn tổng quan về chất lượng và trải nghiệm của các quán nước, giúp người dùng đưa ra quyết định thông minh và nắm bắt ý kiến chung từ cộng đồng.

Nghiên cứu cho thấy phương pháp tổng hợp ý kiến đã thành công trong việc xây dựng ứng dụng bản đồ quán nước và hệ thống khuyến nghị Những thông tin quan trọng được trích xuất và tóm tắt giúp người dùng có cái nhìn tổng quan, chính xác về các quán nước, từ đó hỗ trợ họ đưa ra quyết định thông minh và tận hưởng trải nghiệm tốt nhất.

4.1.5 Xem xét các công trình nghiên cứu liên quan

Nhóm nghiên cứu đã xem xét các công trình trước đây về chatbot, DialogFlow và hệ thống gợi ý trong lĩnh vực tương tự, nhằm nắm bắt các tiến bộ, ứng dụng và giải pháp đã được đề xuất trong các nghiên cứu trước đó.

Giai đoạn tiền nghiên cứu đã cung cấp cho nhóm nghiên cứu những kiến thức và hiểu biết sâu sắc về chatbot, DialogFlow và hệ thống gợi ý Những thông tin này là nền tảng quan trọng để xác định phương pháp tiếp cận, thiết kế hệ thống và thực hiện các hoạt động nghiên cứu chi tiết trong các giai đoạn tiếp theo của đề tài.

Sản phẩm phần mềm

B c c websiteố quan trọng trong việc xây dựng ứng dụng bản đồ quán ụng bản đồ quán

4.1.7 Các tính năng đề xuất cho Website

Website hỗ trợ người dùng tìm kiếm các quán nước gần vị trí hiện tại, giúp họ dễ dàng theo dõi và lựa chọn Ngoài ra, website còn gửi các voucher giảm giá và khuyến mãi từ các cửa hàng lân cận, tạo điều kiện cho người dùng cân nhắc lựa chọn địa điểm phù hợp.

 chỉ đường định tuyến: chỉ đường đi từ vị trí hiện tại đến quán mà người dùng chọn.

 Xem thông tin đánh giá, chất lượng dịch vụ, menu, giá cả… của quán nước

Đánh giá và đề xuất quán nước là một tính năng hữu ích cho cả chủ cửa hàng và người dùng Người dùng có thể đánh giá các quán nước mà họ đã ghé thăm, trong khi các chủ cửa hàng có thể đề xuất quán của mình lên website, giúp tăng cường sự hiện diện và thu hút khách hàng.

Người dùng có thể lưu trữ hành trình du lịch của mình bằng cách đánh giá và ghi lại các địa điểm đã ghé thăm, giúp dễ dàng truy cập lại trong tương lai Website hoạt động như một mạng xã hội du lịch, cho phép người dùng nhận thông báo từ các địa điểm họ theo dõi, bao gồm thông tin về giảm giá và món mới.

Bộ lộc các quán nước được thiết kế để tối ưu hóa việc chọn địa điểm cho người dùng, dựa trên các tiêu chí quan trọng như khoảng cách, lượt yêu thích và giá cả.

Hướng dẫn viên du lịch là một tính năng đang trong giai đoạn nghiên cứu, sẽ được áp dụng trong tương lai thông qua hệ thống gợi ý Tính năng này hỗ trợ người dùng giải đáp thắc mắc theo thời gian thực, tối ưu hóa khả năng đọc hiểu và xử lý ngôn ngữ tự nhiên Bằng cách sử dụng các thuật toán liên quán, hệ thống cung cấp các giải pháp hợp lý dựa trên bộ dữ liệu có sẵn, từ đó nâng cao khả năng thay thế hoàn toàn người hướng dẫn thực tế và tạo ra một hệ thống tương tác trực tiếp mà không cần sự tham gia của con người.

Để đánh giá chính xác quán, cần xác định vị trí của người dùng bằng cách kiểm tra điểm giao của các vùng bao Điều này giúp xác nhận xem người dùng có đang ở quán hay không, từ đó đưa ra gợi ý phù hợp cho việc đánh giá.

Các quán nước có thể đăng ký voucher quảng cáo của mình, và hệ thống sẽ gửi những voucher này đến người dùng trong khu vực nhất định.

Tạo lịch trình là tính năng nổi bật của website, giúp người dùng khám phá các địa điểm du lịch Sau khi tìm hiểu thông tin về các địa điểm, người dùng có thể dễ dàng xây dựng một lịch trình di chuyển cụ thể dựa trên những địa điểm đã chọn.

 Đăng các thông tin của quán như tên, hình ảnh món ăn, giá cả, địa điểm, các voucher khuyến mãi, các vấn đề khác

4.1.8 Các đối tượng sử dụng

Người dùng có vai trò quan trọng trên bản đồ, cho phép họ truy cập và sử dụng các tính năng đánh giá tính tin cậy của các ứng dụng bản đồ Việc tích hợp các yếu tố như voucher quảng cáo và dữ liệu công cộng giúp nâng cao trải nghiệm người dùng Các tác giả có thể nghiên cứu các ý kiến và đánh giá của người dùng từ nhiều nguồn khác nhau, góp phần vào việc phát triển và cải thiện tính năng của bản đồ quán.

Người dùng trên bản đồ đóng vai trò quan trọng trong việc xây dựng ứng dụng bản đồ, cho phép họ khám phá và đánh giá các địa điểm du lịch Điều này không chỉ giúp tối ưu hóa trải nghiệm người dùng mà còn tạo ra những tính năng hữu ích cho ứng dụng Với vai trò như một người dùng thường, họ có thể sử dụng tất cả các tính năng của bản đồ, từ đó nâng cao sự tương tác và hiệu quả của ứng dụng.

Header và banner cần có "Biểu tần đánh giá tính tin cậy của thương hiệu" Navigation nên chứa các yếu tố xây dựng ứng dụng bản đồ quán, với tính năng chính là định vị của người dùng trên bản đồ Điều này giúp người dùng dễ dàng tìm kiếm và sử dụng ứng dụng bản đồ quán hiệu quả hơn Thanh tìm kiếm là một yếu tố quan trọng trong việc xây dựng ứng dụng bản đồ quán.

Phần thân bài sẽ bao gồm các địa điểm xung quanh, kèm theo hình ảnh và thông tin chi tiết như khoảng cách, đánh giá và giá cả Ngoài ra, sẽ có bộ lọc dựa trên các tiêu chí khác nhau Ở phía bên phải màn hình, người dùng sẽ thấy bản đồ giúp định vị các địa điểm này.

Mỗi trang sẽ giới thiệu 10 địa điểm, trong khi các địa điểm còn lại sẽ được phân bố ở các trang tiếp theo, sắp xếp theo độ ưu tiên về khoảng cách.

Trang cửa hàng cung cấp cho người dùng trải nghiệm tương tự như một trang mạng xã hội, bao gồm hình ảnh đại diện, ảnh bìa, tên quán, khoảng cách đến cửa hàng, đánh giá từ khách hàng, giá tiền trung bình và tính năng đánh giá cửa hàng.

Phần thân sẽ bao gồm các món ăn mà cửa hàng thường phục vụ, các nội dung chi tiết về món ăn đó.

 Nơi lưu trữ cơ sở dữ liệu: SQL trên máy (đối với offiline), SQL sever (đối với online)

 Kết nối: Thông qua hệ thống internet hoặc thông qua kết nối local SQL.

 Thiết bị hỗ trợ: Sử dụng trên máy tính bàn hoặc laptop.

Các giao thức được sử dụng: TCP/IP (Transmission Control Protocol)/ (Internet

Protocol), HTTP (HyperText Transfer Protocol), FTP (File Transfer Protocol).

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

Khách hàng có thể sử dụng các tính năng như đăng nhập, xem bản đồ quán ăn, và đánh giá độ tin cậy của người dùng trên bản đồ Những tính năng này giúp người dùng dễ dàng đăng ký, tìm kiếm thông tin về các quán ăn và tạo ra các lộ trình di chuyển hợp lý Điều này không chỉ nâng cao trải nghiệm người dùng mà còn hỗ trợ trong việc đánh giá các quán ăn thông qua bản đồ.

Ngày đăng: 04/09/2023, 20:29

HÌNH ẢNH LIÊN QUAN

Hình 3.14: Ma trận từ theo mô hình Bag-of-word - Đồ án xây dựng ứng dụng bản đồ du lịch
Hình 3.14 Ma trận từ theo mô hình Bag-of-word (Trang 32)
Hình 3.13: Sơ đồ cấu thành các n-gram Bình luận 1: có tập từ - Đồ án xây dựng ứng dụng bản đồ du lịch
Hình 3.13 Sơ đồ cấu thành các n-gram Bình luận 1: có tập từ (Trang 32)
4. Bảng các voucher quảng cáo của các địa điểm ở gần hiện ra. - Đồ án xây dựng ứng dụng bản đồ du lịch
4. Bảng các voucher quảng cáo của các địa điểm ở gần hiện ra (Trang 48)

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w