1. Trang chủ
  2. » Công Nghệ Thông Tin

Thuật toán BFS, thuật toán cổ điển hay

2 499 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 2
Dung lượng 160,47 KB

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

Nội dung

Thuật toán BFS, thuật toán cổ điển hayThuật toán BFS, thuật toán cổ điển hayThuật toán BFS, thuật toán cổ điển hayThuật toán BFS, thuật toán cổ điển hayThuật toán BFS, thuật toán cổ điển hayThuật toán BFS, thuật toán cổ điển hayThuật toán BFS, thuật toán cổ điển hayThuật toán BFS, thuật toán cổ điển hayThuật toán BFS, thuật toán cổ điển hayThuật toán BFS, thuật toán cổ điển hay

Trang 1

Môn: Trí tuệ nhân tạo Lớp TH2006/01,02

Nguyễn Ngọc Thảo, Võ Đình Phong, Lê Ngọc Thành, Trần Ngọc Trung

Bài tập thực hành 1

Thuật toán BFS

Nội dung

Cài đặt thuật toán tìm kiếm đường đi theo chiều rộng áp dụng trên bài toán đồ thị

Mục tiêu

- Sinh viên nắm được cơ chế vận hành của thuật toán tìm kiếm đường đi theo chiều rộng, áp dụng lên một dạng bài toán tìm kiếm cụ thể là tìm kiếm trên đồ thị

- Sinh viên làm quen và nắm được các thao tác cơ bản trong việc cài đặt thuật toán, bao gồm: tổ chức cấu trúc dữ liệu phục vụ cho việc lưu trữ dữ liệu và xử lý tính toán, triển khai chiến lược cài đặt

Yêu cầu

Cho một bản đồ có N thành phố và các đường đi có thể có giữa các thành phố Giả sử chi phi di chuyển giữa hai thành phố kế cận nhau bất kì đều bằng 1, các đường đi có thể là 2 chiều (A đến được B thì B cũng đến được A), hoặc 1 chiều (chỉ có A đến được B) Cho trước thành phố xuất phát và thành phố đích

Hãy tìm đường đi giữa hai thành phố được chỉ định bằng thuật toán BFS Nếu tồn tại đường đi: xuất ra màn hình thứ tự đường đi Nếu không tồn tại đường đi: thông báo không có đường đi

Định dạng dữ liệu đầu vào:

¾ Dòng 1: Số thành phố trên bản đồ

¾ Dòng 2: Thành phố xuất phát và thành phố đích

¾ N dòng tiếp theo: ma trận kề của đồ thị với quy ước:

9 M[i][j] = 1: có đường nối trực tiếp từ i đến j

9 M[i][j] = 0: không có đường nối trực tiếp từ i đến j Các thành phố được đánh chỉ số từ 0

Thời gian: 1 tuần

Quy định nộp: [không nộp bài]

Trang 2

Môn: Trí tuệ nhân tạo Lớp TH2006/01,02

Nguyễn Ngọc Thảo, Võ Đình Phong, Lê Ngọc Thành, Trần Ngọc Trung

Ví dụ

Đường đi ngắn nhất từ 0 tới 5 là: 0 Æ 6 Æ 5

Các vấn đề khác

Vấn đề biểu diễn bài toán: Bài toán tìm kiếm không chỉ giới hạn trong các bài toán tìm kiếm trên đồ thị đơn thuần mà còn xuất hiện ở những vấn đề khác (như bài toán n-puzzle, n-Queens Mỗi bài toán cần có cách biểu diễn trạng thái khác nhau, dẫn đến việc tổ chức cài đặt để lưu trữ trạng thái cũng khác nhau Sinh viên cần nắm tư tưởng tổng quát của bài toán tìm kiếm: tập trạng thái Q, S, G, hàm succs(s) để có thể giải quyết những bài toán tổng quát hơn, chứ không chỉ dừng lại ở cấu trúc ma trận của bài toán đồ thị

Vấn đề cài đặt: Các thuật toán tìm kiếm (có hệ thống) đều có một cấu trúc chung, chính chiến lược lựa chọn trạng thái đã tạo ra các chiến lược tìm kiếm khác nhau

Cụ thể của việc lựa chọn trạng thái chính là việc tổ chức cấu trúc dữ liệu để lưu tập trạng thái đang mở Sinh viên cần quan sát để chọn ra cách lưu trữ trạng thái

mở cho phù hợp với từng chiến lược tìm kiếm khác nhau, ví dụ: sử dụng hàng đợi cho tìm kiếm theo chiều rộng, sử dụng ngăn xếp cho tìm kiếm theo chiều sâu Cài đặt các vấn đề mở rộng từ BFS

- Cài đặt LCBFS để tìm đường đi ngắn nhất giữa 2 trong trường hợp chi phí

di chuyển giữa các thành phố là khác nhau

- Cài đặt DFS để tìm đường đi ngắn nhất giữa 2 thành phố trong trường hợp chi phí di chuyển giữa các thành phố là bằng nhau/khác nhau Bạn có cần cách lưu trữ trạng thái khác so với BFS không?

Ngày đăng: 08/12/2016, 14:49

TỪ KHÓA LIÊN QUAN

w