Tải bản đầy đủ (.ppt) (51 trang)

Bài giảng học về trí tuệ nhân tạo

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 (299.44 KB, 51 trang )

BÀI MỞ ĐẦU
- Trí tuệ nhân tạo là gì
- Lợi ích mà trí tuệ nhân tạo mang lại
- Các vấn đề sẽ được đề cập trong môn học

1


Trí tuệ nhân tạo là gì
• Thuật ngữ trí tuệ nhân tạo (artificial intelligence)
được John McCarthy đưa ra trong hội thảo ở
Dartmouth mùa hè năm 1956
• Trước hội thảo này, từ năm 1952 Arthur Samuel
đã viết chương trình chơi cờ. Samuel đã bác bỏ
tư tưởng cho rằng máy tính chỉ có thể làm được
những cái mà ngời ta bảo nó làm vì chương trình
của Samuel có thể học để chơi tốt hơn người làm
ra nó
2


•Cũng tại hội thảo ở Dartmouth mùa hè năm 1956,
Allen Newell và Herbert Simon cũng đã giới thiệu
chương trình lập luận với tên gọi “the logic theorist”.
Chương trình này có khả năng chứng minh hầu hết các
định lý trong chương 2 cuốn “Principia Mathematics”
của Russell và Whitehead
•Cũng tại hội thảo này các nhà nghiên cứu đã thảo
luận và vạch ra các hướng nghiên cứu của lĩnh vực trí
tuệ nhân tạo. Vì vậy hội thảo tại Dartmouth mùa hè
năm 1956 được xem là thời điểm ra đời thực sự của


lĩnh vực nghiên cứu trí tuệ nhân tạo
3


Một số định nghĩa phổ biến
+ Sự nghiên cứu các năng lực trí tuệ thông qua
việc sử dụng các mô hình tính toán – Charniak
and McDormott, 1985
+ Nghệ thuật tạo ra các máy thực hiện các chức
năng đòi hỏi sự thông minh khi được thực hiện bởi
con người- Kurzweil, 1990
+ Lĩnh vực nghiên cứu tìm cách giải thích và mô
phỏng các hành vi thông minh trong thuật ngữ các
quá trình tính toán – Schalkoff, 1990
4


+ Sự nghiên cứu các tính toán để có thể nhận thức,
lập luận và hành động – Winston, 1992
+ Một nhánh của khoa học máy tính liên quan đến
sự tự động hoá các hành vi thông minh – Luger
and Stubblfield, 1993

5


Một số định nghĩa gần đây
+ Trí tuệ nhân tạo là sự thiết kế và nghiên cứu các
chương trình máy tính ứng xử một cách thông minh. Các
chương trình này được xây dựng để thực hiện các hành

vi mà khi ở người hoặc động vật chúng ta xem là thông
minh – Dean, Allen and Aloimonos, 1995
+ Trí tuệ nhân tạo là sự nghiên cứu các tác nhân tồn tại
trong môi trường nhận thức và hành động, Rusell and
Norvig, 1995
+ Trí tuệ nhân tạo là sự nghiên cứu thiết kế các tác nhân
thông minh, Poole, Mackworth and Goebel, 1998
6


Tóm lại, trí tuệ nhân tạo đặt mục tiêu làm thế
nào thể hiện được các hành vi thông minh bằng
thuật toán, rồi nghiên cứu các phương pháp cài
đặt các chương trình có thể thực hiện được các
hành vi thông minh

7


Lợi ích mà trí tuệ nhân tạo mang lại
• Trí tuệ nhân tạo

• Trí tuệ thật

8


SO SÁNH VUI

+Chi phí sản xuất


rẻ

rất đắt

+Thời gian làm việc

rất dài

rất ngắn

+Chi phí vận hành

rất rẻ

quá đắt

+Hiệu quả công việc

rất hiệu quả ???
9


Nội dung chương trình
+ Giải quyết vấn đề bằng tìm kiếm
+ Tri thức và lập luận
+ Mạng nơ ron nhân tạo
+ Logic mờ
+ Giải thuật di truyền


10


Phần 1: Giải quyết vấn đề bằng tìm kiếm
Chương 1: Các chiến lược tìm kiếm mù
1. Biểu diễn vấn đề trong không gian trạng thái
Để giải quyết vấn đề bằng tìm kiếm, điều quan
trọng là phải xác định được không gian tìm kiếm,
không gian này là tất cả các đối tượng mà ta cần
quan tâm tìm kiếm, nó có thể liên tục hoặc rời rạc

11


Ví dụ 1: Xét bài toán tìm đường đi trên bản đồ giao thông
+Ta quan niệm các nút A, B,..
là các trạng thái
+A trạng thái đầu, B trạng thái
kết thúc
+Khi đang ở một nút ta có thể
đi sang một nút khác. Các con
đường nối 2 nút được biểu diễn
bởi một toán tử - Rõ ràng toán
tử biến đổi trạng thái này thành
trạng thái khác
+Bài toán tìm đường đi lúc này
trở thành tìm một dãy các toán
tử để đưa trạng thái đầu thành
trạng thái kết thúc
12



Ví dụ 2: Xét trò chơi cờ vua
+ Ta quan niệm mỗi cách bố trí các quân cờ trên bàn cờ
cho ta một trạng thái. Trạng thái ban đầu ứng với sự sắp
xếp các quân cờ lúc bắt đầu cuộc chơi. Mỗi nước đi hợp lệ
là một toán tử - nó biến đổi một tình huống trên bàn cờ
thành một tình huống khác
+ Bài toán chơi cờ rõ ràng là tìm 1 dãy các toán tử (nước
đi) để đưa trạng thái ban đầu về trạng thái kết thúc

13


Để biểu diễn một vấn đề trong không gian
trạng thái cần xác định những yếu tố sau
+ Trạng thái đầu, ký hiệu là u
+ Tập trạng thái kết thúc, ký hiệu T, T có thể có một
trạng thái hoặc nhiều trạng thái – VD1,2
+ Tập các toán tử, tập hợp tất cả các trạng thái có
thể đạt tới từ trạng thái ban đầu bằng cách áp
dụng một dãy các toán tử sẽ cho ta một không
gian trạng thái, ký hiệu là R
+ Trong trường hợp không gian trạng thái là hữu
hạn ta có thể biểu diễn bằng một đồ thị có hướng
14


Ví dụ về xây dựng không gian trạng thái cho
các vấn đề

Ví dụ1: Bài toán 8 số

Luật chơi: Chỉ được dịch các số vào ô trống
Yêu cầu: Tìm ra một dãy các dịch chuyển để biến đổi
trạng thái đầu thành trạng thái kết thúc
15


Không gian trạng thái
• TTĐ:
• TTKT:
• Tập các toán tử: Up, Down, Left, Right

16


Ví dụ 2: Xét bài toán triệu phú và kẻ cướp
Có 3 triệu phú và 3 tên cướp và một chiếc thuyền ở bên
bờ tả của một con sông, thuyền chỉ chở được một hoặc
hai người. Hãy tìm cách đưa 3 triệu phú sang sông sao
cho ở mỗi bờ sông số kẻ cướp không được lớn hơn số
triệu phú

17


Dùng một bộ 3 số (a,b,k) để biểu diễn các trạng thái
a - số triệu phú, b - số kẻ cướp ở bờ tả
k=1 thuyền đang ở bờ tả, ngược lại k=0
Không gian trạng thái được xác định như sau

TTĐ:(3,3,1)
TTKT:(0,0,0)
Tập các toán tử bao gồm các toán tử:
+Thuyền chở 1 kẻ cướp
+Thuyền chở 1 triệu phú
+Thuyền chở 1 triệu phú, 1 kẻ cướp
+Thuyền chở 2 kẻ cướp
+Thuyền chở 2 triệu phú
18


2. Các chiến lược tìm kiếm
Cho u là một trạng thái, nếu áp dụng toán tử R ta
thu được v thì v được gọi là trạng thái kề của u
bởi toán tử R hoặc v được sinh từ u bởi R – Quá
trình áp dụng các toán tử để sinh ra các trạng thái
kề của u được gọi là quá trình phát triển u
Thông thường để giải quyết bài toán người ta
thường xuất phát từ trạng thái đầu, phát triển nó
cho đến khi gặp trạng thái đích

19


Có nhiều chiến lược tìm kiếm như tìm kiếm mù, tìm
kiếm kinh nghiệm, các chiến lược này được hình
dung như sau:
+Chiến lược tìm kiếm mù: Không có sự hướng dẫn
nào cho sự tìm kiếm, ta chỉ phát triển trạng thái đầu
cho tới khi gặp trạng thái đích, có 2 kỹ thuật cho

chiến lược này đó là tìm kiếm rộng và tìm kiếm sâu
+Chiến lược tìm kiếm kinh nghiệm: Trong rất nhiều
vấn đề ta có thể dựa vào hiểu biết của chúng ta về
vấn đề đó để đánh giá các trạng thái. Trong quá
trình phát triển các trạng thái ta sẽ chọn 1 trong số
các trạng thái chờ phát triển một trạng thái được
đánh giá tốt nhất để phát triển,.. quá trình tiếp tục
cho tới khi gặp trạng thái đích
20


2.1 Chiến lược tìm kiếm theo bề rộng:
• Tại mỗi bước ta chọn trạng thái để phát triển là
trạng thái được sinh ra trước các trạng thái chờ
phát triển khác
• Sử dụng danh sách L để lưu các trạng thái được
sinh ra và chờ được phát triển, mục tiêu của tìm
kiếm là tìm đường đi từ trạng thái đầu đến trạng
thái đích nên ta cần lưu vết của đường đi, ta có thể
dùng hàm father để lưu lại cha của mỗI đỉnh trên
đường đi, father(v)=u nếu u là cha của v
21


Procedure TimKiemRong
begin
1. Khởi tạo danh sách L chỉ chứa trạng thái ban đầu
2. loop do
2.1 if L rỗng then
{thông báo tìm kiếm thất bại; stop};

2.2 Loại trạng thái u ở đầu danh sách L;
2.3 if u là trạng thái kết thúc then
{thông báo tìm kiếm thành công; stop};
2.4 for mỗi trạng thái v kề u do
{đặt v vào cuối danh sách L; father(v)=u};
end;

22


Ví dụ: Cho không gian trạng thái
TTĐ: A
TTKT:H

23


Mô tả quá trình tìm kiếm

H

24


Nhận xét
• Trong TKR 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 xử
lý như hàng đợi
• 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 đích), thì thuật toán sẽ tìm

ra nghiệm, đồng thời đường đi tìm được là đường
đi ngắn nhất, trong trường hợp bài toán vô
nghiệm và không gian trạng thái hữu hạn, thuật
toán sẽ dừng và thông báo vô nghiệm
• Độ phức tạp thuật toán: Sinh viên tự đánh giá
25


×