[Trí tuệ nhân tạo] Cài đặt giải game 8-puzzle sử dụng thuật toán A*

Giới thiệu về Tìm kiếm và Không gian Trạng thái

Trong môn học về Trí tuệ nhân tạo, chúng ta sẽ quay lại với bài toán 8 số và lịch sử hướng dẫn cài đặt game 8 số. Bài toán 8 số được gọi là xóm lô và nó xuất phát từ một trạng thái ban đầu và có thể sinh ra nhiều trạng thái khác. Chúng ta sử dụng thư viện Python để định nghĩa hàm clone và hàm lọc của trạng thái.

Định nghĩa trạng thái

Các trạng thái được gọi là data và có thể biểu diễn dưới dạng một mảng 1 chiều. Các giá trị của trạng thái là các con số từ 0 đến 8 và giá trị 0 được sử dụng để thể hiện ô trống. Một trạng thái có thể được in ra dưới dạng một ma trận 3×3 để dễ quan sát.

Hàm clone

Để tạo ra một trạng thái mới, chúng ta sử dụng thư viện copy để copy hàm deepcopy của trạng thái ban đầu.

Hàm lệch độ

Các trạng thái được đánh giá theo một hàm lệch độ H, được tính bằng trọng số đường đi từ trạng thái ban đầu đến trạng thái hiện tại.

So sánh các trạng thái

Các trạng thái có thể được so sánh với nhau để kiểm tra xem chúng có bằng nhau hay không.

Tổng kết

Chúng ta đã định nghĩa các khái niệm cơ bản trong bài toán tìm kiếm và không gian trạng thái. Các hàm clone, hàm lệch độ và so sánh trạng thái được sử dụng để xây dựng thuật toán giải quyết bài toán 8 số và các bài toán tương tự.