Tải bản đầy đủ (.pdf) (4 trang)

Đồ án robot tìm đường

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (265.82 KB, 4 trang )

Môn: Trí tuệ nhân tạo

Lớp TH2006/01,02

Bài tập lớn 1

Robot tìm đường
Nội dung
Giải quyết bài toán Robot tìm đường bằng các thuật toán tìm kiếm đã học.

Mục tiêu
-

Sinh viên làm quen với các ứng dụng thực tế của dạng bài toán tìm kiếm đường đi.

-

Sử dụng các thuật toán tìm kiếm đã học để giải quyết bài toán Robot tìm đường,
từ đó có nhận thức rõ ràng về cơ chế hoạt động và hiệu quả của từng thuật toán.

Yêu cầu
Xét bài toán tìm đường đi ngắn nhất giữa hai điểm trên một mặt phẳng, trong đó có chứa
các chướng ngại vật là những đa giác lồi (xem ví dụ trong hình bên dưới).

a. Giả sử không gian trạng thái chứa mọi vị trí (x, y) trong mặt phẳng, với (x, y) là
tọa độ thực. Có tất cả bao nhiêu trạng thái? Có bao nhiêu đường đi từ đỉnh xuất
phát đến đỉnh đích?
b. Giải thích ngắn gọn vấn đề sau: Tại sao đường đi ngắn nhất từ một đỉnh của đa
giác đến đỉnh khác trong mặt phẳng nhất định phải bao gồm các đoạn thẳng nối
một số đỉnh của những của đa giác? Hãy định nghĩa lại không gian trạng thái.
Không gian trạng thái này sẽ lớn đến mức nào?


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

1


Môn: Trí tuệ nhân tạo

Lớp TH2006/01,02

c. Định nghĩa các hàm cần thiết để triển khai bài toán tìm kiếm, trong đó hàm
successor nhận một đỉnh làm đầu vào và trả về tập đỉnh có thể đi đến được từ đỉnh
đó trong vòng 1 bước. (Lưu ý: xét cả những đỉnh láng giềng trên cùng đa giác).
Hàm heuristic được sử dụng là khoảng cách Euclide.
d. Lần lượt áp dụng 3 thuật toán sau đây để giải quyết bài toán
-

Tìm kiếm chí phí đồng nhất (UCS)

-

Tìm kiếm tham lam (Greedy)

-

Tìm kiếm A*

Hãy thực nghiệm với nhiều trường hợp khác nhau (số lượng đa giác, vị trí của
đỉnh xuất phát – đích) rồi nhận xét hiệu quả của từng thuật toán (số đỉnh mở,
đường đi tối ưu hay không, thời gian thực hiện…).

Định dạng dữ liệu đầu vào:
Dữ liệu được lưu trữ trong tập tin có tên cố định là input.txt.
¾ Dòng 1: N Sx Sy Gx Gy
9 N: số đa giác nằm trong mặt phẳng (0 ≤ N ≤ 100)
9 (Sx, Sy): tọa độ đỉnh xuất phát, (Gx, Gy): tọa độ đỉnh đích
¾ N dòng tiếp theo: M X1 Y1 ... XM YM
9 M: Số đỉnh của đa giác (3 ≤ M < 10).
9 (Xi, Yi): tọa độ thực của đỉnh thứ i trong đa giác.
Định dạng dữ liệu đầu ra:
Dữ liệu được lưu trữ trong tập tin có tên cố định là <mssv>.txt.
¾ Dòng 1: Loại thuật toán đã áp dụng (0: Tìm kiếm chi phí đồng nhất, 1: Tìm
kiếm tham lam Greedy, 2: Tìm kiếm A*)
¾ Dòng 2: G N’
ƒ

G: Chi phí g của đường đi (là tổng chi phí tính trên các khoảng cách
thực giữa 2 đỉnh kế cận, không bao gồm ước lượng heuristic).

ƒ

N’: Số đỉnh phải đi qua

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

2


Môn: Trí tuệ nhân tạo


Lớp TH2006/01,02

¾ Dòng 3: Đường đi ngắn nhất từ đỉnh xuất phát đến đỉnh đích, là chuỗi có định
dạng như sau:
(x0, y0, S) → (x1, y1, p1) → …. → (xn-1, yn-1, pn-1) → (xn, yn, G)
với (xi, yi, pi): thông tin của 1 đỉnh trên đường đi, bao gồm tọa độ (xi, yi)
của đỉnh và nó thuộc về đa giác pi, thứ tự đỉnh đánh số từ 0. S: đỉnh xuất phát,
G: đỉnh đích.
Chương trình chạy theo chế độ Tham số dòng lệnh (Commandline) như sau:
<MSSV.exe> <loại thuật toán>
Tham số “Loại thuật toán” nhận các giá trị sau:
9 0: Tìm kiếm chi phí đồng nhất
9 1: Tìm kiếm tham lam Greedy
9 2: Tìm kiếm A*
Yêu cầu mở rộng (cộng điểm): Vấn đề nan giải của bài toán là làm sao thiết kế
được hàm successor sao cho chi phí tính toán được giảm thiểu. Ngoài hướng dẫn
sẽ được cung cấp, bạn hãy đề xuất hàm successor của mình và chứng tỏ rằng nó
tốt hơn những cách đã đưa ra.
Thời gian: 2 tuần (07/10/2008 – 21/10/2008)
Quy định nộp: Nộp bài qua Moodle theo thời hạn đã chỉ định, cấu trúc bài nộp
như sau:
¾ Document: trình bày nội dung trả lời cho các câu hỏi a, b, c; số liệu thống kê
cho phần thực nghiệm trong câu 4; hướng dẫn sử dụng chương trình và lưu ý
đặc biệt (nếu có).
¾ Source: mã nguồn của chương trình, bỏ Debug và các file trung gian.

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

3



Môn: Trí tuệ nhân tạo

Lớp TH2006/01,02
<MSSV>
Document
Source
Release
MSSV.exe
input.txt
output.txt

MỘT SỐ LƯU Ý
¾ Qui ước về bài toán:
9 Các đa giác là đa giác lồi, không nằm chồng chéo cắt lên nhau.
9 Đỉnh xuất phát và kết thúc không nằm trong đa giác nhưng có thể nằm
ngay trên đỉnh đa giác.
¾ Qui ước về bài làm:
9 Sinh viên không được tự ý thay đổi qui định đã phổ biến (tên tập tin
thực thi, input, output, định dạng tham số dòng lệnh…).
9 Tập tin input và output được cài đặt thẳng vào code dạng đường dẫn
tương đối chỉ có tên file, ví dụ “input.txt”, “0612001.txt”.
9 Dữ liệu đầu vào phải đảm bảo tính hợp lệ theo ràng buộc của đề bài,
sinh viên không cần thực hiện những thủ tục kiểm tra liên quan.

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

4




Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×