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

Báo cáo đồ án trí tuệ nhân tạo: Xây dựng chương trình tạo ngẫu nhiên không gian trạng thái ma trận kích thước m*n sử dụng giải thuật tìm kiếm theo chiều rộng

10 1,1K 4

Đ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 10
Dung lượng 316,5 KB

Nội dung

Đồ án Nhập môn trí tuệ nhân tạo Đề tài: Không gian trạng thái là ma trận kích thước m*n. Trên không gian trạng thái có nơi được phép đến, có nơi không được phép đến. Xây dựng chương trình tạo ngẫu nhiên không gian trạng thái này, vị trí bắt đầu, vị trí cần tìm và sử dụng giải thuật tìm kiếm theo chiều rộng. Thầy giáo hướng dẫn: Ngô Hữu Phúc Học viên : Đàm Ngọc Anh Lớp : Tin học 5A Hà Nội, tháng 3 năm 2010 Mục lục I. Lời nói đầu 3 II. Cơ sở lí thuyết 3 III. Chương trình: 4 IV. Kết quá thu được từ chương trình tìm đường sử dụng thuật toán Nhánh và cận: 9

Trang 1

HỌC VIỆN KỸ THUẬT QUÂN SỰ KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO MÔN HỌC

TRÍ TUỆ NHÂN TẠO

Giáo viên hướng dẫn: Ngô Hữu Phúc

HÀ NỘI 3/2010

Trang 2

Đồ án Nhập môn trí tuệ nhân tạo

Đề tài: Không gian trạng thái là ma trận kích thước m*n Trên không gian trạng thái có nơi được phép đến, có nơi không được phép đến Xây dựng chương trình tạo ngẫu nhiên không gian trạng thái này, vị trí bắt đầu, vị trí cần tìm và sử dụng

giải thuật tìm kiếm theo chiều rộng.

Thầy giáo hướng dẫn: Ngô Hữu Phúc

Học viên : Đàm Ngọc Anh

Lớp : Tin học 5A

Hà Nội, tháng 3 năm 2010

Trang 3

M c l c ục lục ục lục

I Lời nói đầu 3

II Cơ sở lí thuyết 3

III Chương trình: 4

IV Kết quá thu được từ chương trình tìm đường sử dụng thuật toán Nhánh và cận: 9

Trang 4

I L i nói đ u ời nói đầu ầu

Kỹ thuật tìm kiếm được chia ra làm 3 loại:

- Kỹ thuật tìm kiếm mù: Trong bài toán này, chúng ta hoàn toàn không biết gì về các đối tượng để hướng dẫn tìm kiếm mà chỉ đơn thuần là xem xét tất cả các đối tượng của 1 hệ thống để phát hiện ra đối tượng cần tìm Một số kỹ thuật tìm kiếm mù: Tìm kiếm theo chiều rộng (Breadth-first search) và tìm kiếm theo chiều sâu (depth-first search)

- Kỹ thuật tìm kiếm có kinh nghiệm (Tìm kiếm với hàm Heuristic): Hàm Heuristic là hàm đánh giá được xây dựng nhờ vào kinh nghiệm và sự hiểu biết của chúng ta về vấn

đề cần giải quyết Một số kỹ thuật tìm kiếm có kinh nghiệm: Tìm kiếm beam, Tìm kiếm leo đồi

- Kỹ thuật tìm kiếm tối ưu: Trong không gian trạng thái cần tìm kiếm, mỗi 1 đối tượng

x đều gắn với 1 số đo giá trị của nó là f(x), mục tiêu đặt ra là tìm đối tượng có giá trị f(x) lớn nhất hoặc nhỏ nhất Hàm f(x) được gọi là hàm mục tiêu Một số kỹ thuật tìm kiếm tối ưu: Các kỹ thuật tìm đường đi ngắn nhất trong không gian trạng thái (Thuật toán A*, thuật toán nhánh và cận, … ), các kỹ thuật tìm kiếm đối tượng tốt nhất (Tìm kiếm leo đồi, tìm kiềm Gradient, …), tìm kiếm bắt chước sự tiến hóa (Thuật toán gene)

Trong các kỹ thuật tìm kiếm, đồ án của em sử dụng kỹ thuật tìm mù: tìm kiếm theo chiều rộng

II C s lí thuy t ơ sở lí thuyết ở lí thuyết ết

Trong thuật toán tìm kiếm theo chiều rộng, trạng thái nào được sinh ra trước sẽ được phát triển trước, do đó danh sách L được sử dụng là hàng đợi Trong bước 2.3, ta cần kiểm tra xem u có là trạng thái kết thúc không Nói chung, các trạng thái kết thúc được xác đinh bởi điều kiện nào đó.

Nếu bài toán có nghiệm (tồn tại đường đi từ trạng thái đầu tới trạng thái kết thúc), thì thuật toán sẽ tìm được nghiệm.

Ta cần nhớ rằng không gian lưu trữ hết sức tốn kém là vấn đề lớn nhất đối với BFS Tuy nhiên giải thuật này cũng tỏ ra rất hữu dụng trong các tình huống cụ thể.

Trang 5

III Ch ươ sở lí thuyết ng trình:

Chương trình được xây dựng dựa trên cơ sở lí thuyết vừa nêu trên Giao diện chương trình

- Nhập số hàng, cột của ma trận (không gian trạng thái cần xét)

- Nhấn nút tạo ma trận để khởi tạo ma trận bất kỳ

Trang 6

- Chọn điểm đầu và điểm cuối

Trang 7

- Nhấn nút tìm đường để có kết quả

- OK để hiện đường đi

Trang 8

Trường hợp không tìm được đường đi, chương trình sẽ đưa ra thông báo

Trong chương trình em đã sử dụng các đoạn thuật toán:

- Tạo ma trận bất kỳ

Trang 9

- Mảng father để lưu lại các đỉnh đã đi qua.

- Mảng 2 chiêu bool bao gồm các phần tử true, false, ánh xạ của ma trận

ban đầu.

bool [,] arrCheck = new bool [dong, cot];

- Đoạn chương trình mô tả thuật toán tìm kiếm BFS

- Đoạn chương trình hiển thị kết quả

Trang 10

IV K t quá thu đ ết ược từ chương trình tìm đường sử dụng ừ chương trình tìm đường sử dụng c t ch ươ sở lí thuyết ng trình tìm đ ười nói đầu ng s d ng ử dụng ụng

thu t toán Nhánh và c n: ật toán Nhánh và cận: ật toán Nhánh và cận:

Khuôn khổ của đồ án này chỉ giới hạn trong việc minh họa cho thuật toán tìm kiếm theo chiều rộng chứ chưa hướng tới việc áp dụng trong thực tế

Nếu muốn áp dụng cho thực tế thì sẽ cần nhiều thời gian và quá trình tìm hiểu hơn nữa nên sau khi kết thúc môn học này, em mong thầy có thể giúp đỡ để em

có thể hoàn thiện chương trình của em hơn

Em xin cám ơn thầy!

V Tài liệu tham khảo:

- Slide bải giảng AI: TS.Ngô Hữu Phúc

- Vở ghi trên lớp

Ngày đăng: 25/03/2014, 22:37

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w