Đồ án này được thực hiện nhằm xây dựng một mô hình điều khiển robot sử dụng hệ logic mờ loại hai khoảng, trong đó có tính đến các yếu tố quan trọng của hệ non-holonomic như các ngoại lực
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
──────── * ───────
ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
NGÀNH CÔNG NGHỆ THÔNG TIN
ỨNG DỤNG HỆ MỜ LOẠI HAI KHOẢNG
TRONG ĐIỀU KHIỂN ROBOT
Sinh viên thực hiện : Nguyễn Hữu Phú
Lớp HTTT – K50
Giáo viên hướng dẫn: PGS.TS Trần Đình Khang
HÀ NỘI 6-2010
Trang 2PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1 Thông tin về sinh viên
Họ và tên sinh viên: Nguyễn Hữu Phú
Đồ án tốt nghiệp được thực hiện tại: Bộ môn Hệ thống thông tin – Viện Công nghệ thông tin và truyền thông – Trường Đại học Bách Khoa Hà Nội
2 Mục đích nội dung của ĐATN
Ứng dụng hệ mờ loại hai khoảng trong điều khiển robot
3 Các nhiệm vụ cụ thể của ĐATN
Tìm hiểu bài toán điều khiển robot
Đề xuất mô hình kiểm soát lỗi của robot
Thiết kế và tối ưu hệ điều khiển mờ ràng buộc vận tốc của robot
Cài đặt và mô phỏng hệ thống
4 Lời cam đoan của sinh viên:
Tôi – Nguyễn Hữu Phú - cam kết ĐATN là công trình nghiên cứu của bản thân tôi dưới sự hướng dẫn của Phó giáo sư, tiến sĩ Trần Đình Khang
Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép toàn văn của bất kỳ công trình nào khác
Hà Nội, ngày tháng năm
Tác giả ĐATN
Nguyễn Hữu Phú
5 Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của ĐATN và cho phép bảo vệ:
Hà Nội, ngày tháng năm
Giáo viên hướng dẫn
PGS.TS Trần Đình Khang
Trang 3Em cũng xin chân thành gửi lời cảm ơn đến các thầy cô giáo khoa Công nghệ thông tin trường Đại học Bách Khoa Hà Nội đã giảng dạy, giúp đỡ em trong suốt quá trình học tập tại trường.
Cuối cùng, xin cảm ơn gia đình tôi và những người bạn đã luôn ở bên động viên, giúp đỡ và tạo điều kiện tốt nhất về mọi mặt trong quá trình thực hiện đồ án Sự giúp đỡ này là động lực lớn để tôi hoàn thành đồ án tốt nghiệp này
Trang 4TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP
Điều khiển đường đi và giữ cân bằng cho robot là một lĩnh vực nghiên cứu quan trọng trong điều khiển tự động hiện đại Đã có nhiều mô hình điều khiển robot được xây dựng dựa trên các phương pháp điều khiển thông minh như hệ điều khiển mờ (FLC), mạng Nơ-ron v.v Tuy nhiên hầu hết những mô hình đó đều chỉ tập trung nghiên cứu vào mô hình động học của robot - thứ được xác định bởi vận tốc đầu vào Đồ án này được thực hiện nhằm xây dựng một mô hình điều khiển robot sử dụng hệ logic mờ loại hai khoảng, trong
đó có tính đến các yếu tố quan trọng của hệ non-holonomic như các ngoại lực và các ment đầu vào
mô-Đồ án này sẽ trình bày chi tiết các bước xây dựng một mô hình điều khiển robot sử dụng hệ logic mờ loại hai khoảng Bước đầu tiên, một mô hình kiểm soát lỗi được xây dựng để tính toán vị trí sai lệch của robot Tiếp đó bộ điều khiển mờ được thiết kế để kiểm soát vận tốc của robot cho phù hợp với mô hình kiểm soát lỗi vừa xây dựng Cuối cùng, bộ điều khiển mờ sẽ tiếp tục được tối ưu bằng giải thuật di truyền với đầu ra hồi tiếp
Mô hình điều khiển mờ trên sử dụng bộ dữ liệu giả lập trong MATLAB và SIMULINK, có tính toán đến các yếu tố ngoại lực gây nhiễu Kết quả thử nghiệm và đánh giá mô hình được trình bày trong phần sau của đồ án
Phần kết luận cũng như các định hướng phát triển trong tương lai sẽ được trình bày trong phần cuối của đồ án
Đồ án bao gồm các phần sau:
Chương 1 giới thiệu tổng quan về bài toán điều khiển robot
Chương 2 trình bày sơ lược kiến thức cơ bản logic mờ
Chương 3 trình bày sơ lược về giải thuật di truyền.
Chương 4 quá thiết kế và xây dựng hệ điều khiển logic mờ
Chương 5 Mô phỏng bài toán trên MATLAB và SIMULINK
Chương 6 Kết luận và hướng phát triển
Trang 5This project details the steps to build a model of robot control system using fuzzy logic about type two The first step is to give an error control model to calculate the position deviation of the robot Then the fuzzy control is designed to control the speed of the robot model suitable for control of medium build errors And the last is that the fuzzy control will be further optimized by genetic algorithm with output feedback.
The fuzzy control model both uses simulated data in MATLAB and SIMULINK and calculates factors external forces interfere In last section, test results, dissertation as well
as the orientation of fuzzy control model’s development are presented and evaluated
Trang 6MỤC LỤC
PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP 2
LỜI CẢM ƠN 3
TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP 4
ABSTRACT OF THESIS 5
MỤC LỤC 6
DANH MỤC HÌNH 8
CHÚ GIẢI THUẬT NGỮ 10
CHƯƠNG 1: GIỚI THIỆU BÀI TOÁN ĐIỀU KHIỂN ROBOT 11
1 Đặt vấn đề 11
2 Bài toán điều khiển robot di động 11
2.1 Tìm hiểu về robot di động 11
2.2 Phương trình động học trong sự di chuyển của robot 12
2.3 Mục tiêu đặt ra 13
3 Phương pháp điều khiển robot sử dụng tập mờ loại hai khoảng 13
4 Mục tiêu và phạm vi của đồ án 14
CHƯƠNG 2: TỔNG QUAN VỀ HỆ LOGIC MỜ 15
1 Lý thuyết về tập mờ 15
1.1 Tập mờ loại một 15
1.2 Tập mờ loại hai 18
1.3 Tập mờ loại hai khoảng 20
1.3.1 Khái niệm về tập mờ loại hai khoảng 20
1.3.2 Hàm thuộc trên và hàm thuộc dưới của tập mờ loại hai khoảng 21
1.3.3 Phép toán hợp và giao của tập mờ loại hai khoảng 23
2 Hàm thuộc của tập mờ 23
2.1 Hàm thuộc dạng tam giác (Triangular Membership Function) 23
2.2 Hàm thuộc dạng tứ giác (Trapezoidal Membership Function) 24
2.3 Hàm thuộc Gaussian (Gaussian Membership Function) 24
2.4 Hàm thuộc sinh Bell (Generalized Bell Membership Function) 24
2.5 Hàm thuộc Sigma (Sigmoidal Membership Function ) 24
3 Tổng quan về hệ logic mờ 25
3.1 Cấu trúc tổng quan của mô hình mờ 25
3.2 Các loại mô hình mờ 26
3.2.1 Mô hình mờ Mamdani 26
3.2.2 Mô hình mờ TSK .27
3.2.3 Mô hình Tsukamoto: 28
CHƯƠNG 3: TÌM HIỂU CHUNG VỀ GIẢI THUẬT DI TRUYỀN 29
1 Lý thuyết sinh học về di truyền 29
1.1 Nhiễm sắc thể (Chromosome) 29
1.2 Mô phỏng quá trình tiến hóa 30
2 Cơ sở toán học 30
2.1 Quá trình lai ghép 30
2.2 Quá trình đột biến 31
2.3 Quá trình sinh sản (tái sinh) 31
2.4 Quá trình chọn lọc tự nhiên 31
2.5 Ví dụ về các toán tử di truyền 31
3 Mô hình lời giải di truyền 33
Trang 73.1 Các thành phần chính của một lời giải di truyền 33
3.2 Mô hình thuật giải 33
3.3 Các công thức tính toán trong giải thuật di truyền 35
CHƯƠNG 4: THIẾT KẾ HỆ ĐIỀU KHIỂN LOGIC MỜ 37
1 Thiết kế hệ điều khiển logic mờ 37
1.1 Quy trình thiết kế 37
1.2 Mô hình điều khiển và kiểm soát lỗi 37
1.3 Các công thức tính toán lỗi 37
1.4 Thiết kế bộ điều khiển vận tốc 38
1.5 Kiểm nghiệm trạng thái cân bằng của robot 42
1.5.1 Cân bằng Lyapunov 42
1.5.2 Kiểm nghiệm trạng thái cân bằng của robot 43
2 Tối ưu hóa bằng các thuật toán di truyền 44
2.1 Tối ưu hóa các hằng số γ 44
2.2 Tối ưu FLC 44
CHƯƠNG 5: MÔ PHỎNG TRÊN MATLAB VÀ SIMULINK 46
5.1 Xác định các hằng số γ 46
5.2 Kết quả tối ưu FLC bằng giải thuật di truyền 49
5.3 Mô phỏng các khối điều khiển của robot trên SIMULINK 52
5.3.1 Khối Trajactory 52
5.3.2 Khối f(e,vd,k) 53
5.3.3 Khối Te(qd-q) 54
5.3.4 Khối robotic 55
5.4 Ảnh hưởng của hàm gây nhiễu P(t) 56
5.4.1 Nhiễu liên tục theo thời gian 56
5.4.2 Nhiễu theo xung 57
5.5 Một số ví dụ về mã chương trình được viết trong MATLAB 57
5.6 Kết quả chương trình mô phỏng : 58
CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 61
6.1 Kết luận 61
6.2 Hướng phát triển trong tương lai 62
TÀI LIỆU THAM KHẢO 63
Trang 8DANH MỤC HÌNH
Hình 1-1: Mặt cắt ngang của robot di động 12
Hình 2-1:Các tập mờ đặc trưng biểu diễn cấp độ mạnh yếu của gió 16
Hình 2-2:Các hàm thuộc phép hợp và phép giao của tập mờ 17
Hình 2-3:Hàm thuộc loại một và chân đế của sự không chắc chắn 18
Hình 2-4: Miền tô đen là FOU của một tập mờ loại hai .20
Hình 2-5: Ví dụ về hàm thuộc của một tập mờ loại 2 khoảng 21
Hình 2-6: FOU của tập mờ Gaussian loại hai khoảng .22
Hình 2-7: Cấu trúc của mô hình mờ 25
Hình 2-8: Mô hình mờ Mamdani với phép toán AND mờ và OR mờ 27
Hình 2-9: Suy diễn trong mô hình TSK 28
Hình 2-10: Mô hình mờ Tsukamoto 28
Hình 3-1: Các toán tử chung cho thuật giải di truyền 32
Hình 3-2: Sơ đồ một lời giải di truyền 35
Hình 4-3: Mô hình FLC điều khiển và kiếm soát lỗi 37
Hình 4-4: Vận tốc tiếp tuyến lỗi ev 39
Hình 4-5 : Vận tốc góc lỗi ew 39
Hình 4-6 : Bảng luật áp dụng 39
Hình 4-7: Sử dụng mô hình mờ Sugeno với 2 đầu vào và 2 đầu ra 40
Hình 4-8 : Tập luật sử dụng của mô hình mờ Sugeno 41
Hình 4-9 : Dạng hàm thuộc của vận tốc tiếp tuyến lỗi ev và vận tốc góc lỗi ew 41
Hình 4-10:Dạng đầu ra của mô hình mờ Sugeno 42
Hình 4-11: Mô hình một Chromosome sử dụng khi tối ưu các hằng số γ 44
Hình 4-12: Mô hình một chromosome được sử dụng khi tối ưu các tham số mờ 45
Hình 4-13: Kiểu của các hàm thuộc 45
Hình 4-14: Bảng giá trị các tham số của hàm thuộc 45
Hình 5-1: Kết quả tối ưu thu được 46
Hình 5-2: Các trường hợp thử nghiệm của giải thuật di truyền tìm kiếm các giá trị tối ưu γ 47
Hình 5-3: Quá trình tiến hóa của giải thuật di truyền 47
Hình 5-4 : Sai lệch tọa độ khi γ đã tối ưu 48
Hình 5-5: Sai lệch tọa độ khối khi γ chưa tối ưu (γ1=1; γ2=30;γ3=3) 48
Hình 5-6: Sự tiến hóa của giải thuật di truyền áp dụng trong 1-FLC 49
Hình 5-7: Các trường hợp thử nghiệm của GA để tối ưu 1-FLC 49
Hình 5-8: Dạng hàm thuộc của ev và ew 50
Hình 5-9: Độ lỗi của các tọa độ và sự cân bằng của robot tự hành với 1-FLC 50
Hình 5-10: Sự tiến hóa của giải thuật di truyền áp dụng trong 2-FLC 50
Hình 5-11: Các trường hợp thử nghiệm với GA để tối ưu 2-FLC 51
Hình 5-12:Dạng hàm thuộc của ev và ew 51
Hình 5-13: Độ lỗi của các tọa độ và sự cân bằng của robot tự hành với 2-FLC 52
Hình 5-14: Mô hình tổng thể khối giả lập cho FLC 52
Hình 5-15: Mô phỏng khối Trajectory 53
Hình 5-16: Mô phỏng khối f(e,vd,k) 54
Hình 5-17: Mô phỏng khối Te(qd-q) 55
Hình 5-18 : Mô phỏng khối robotic 55
Hình 5-19: Đồ thị so sánh lỗi trung bình của 1-FLC và 2-FLC khi ε thay đổi 56
Hình 5-20: Đồ thị so sánh lỗi trung bình của 1-FLC và 2-FLC khi ε thay đổi 57
Trang 9Hình 5-21: Đồ thị vận tốc mong muốn đạt được của robot 58
Hình 5-22: Mô-ment điều chỉnh hai bánh của robot 59
Hình 5-23: Vận tốc dự kiến để tồn tại cân bằng cho robot 59
Hình 5-24: Độ sai lệch vận tốc của robot 60
Hình 5-25: Độ sai lệch tọa độ của robot 60
Trang 10CHÚ GIẢI THUẬT NGỮ
1-FLC: Type - 1 Fuzzy Logic Controller2-FLC Type - 2 Fuzzy Logic Controller
Trang 111) CHƯƠNG 1: GIỚI THIỆU BÀI TOÁN ĐIỀU KHIỂN
ROBOT
1 Đặt vấn đề
Điều khiển robot di động là một lĩnh vực quan trọng trong nghành điều khiển tự động Khi một robot mới sắp được ra lò, việc xử lý những tình huống nằm ngoài dự kiến xuất hiện trong quá trình di chuyển của robot luôn là mối quan tâm chủ yếu của các nhà điều khiển học Trong quá trình di chuyển, robot có thể tuân theo những quy luật toán học khác nhau như khả vi, khả tích, không khả vi, không khả tích v.vv , và qua đó sẽ tạo ra những kiểu mẫu robot có những đặc tính riêng biệt Non-holonomic, đối tượng robot được đề cập trong bài báo cáonày là một hệ thống cơ khí mà khi di chuyển, chúng sẽ tuân theo những ràng buộc vi phân không khả tích Các ràng buộc này nảy sinh chính từ những mô hình, định lý của động và động lực học tác động lên chúng
Từ trước tới nay, đã có nhiều bài nghiên cứu về điều khiển robot di động được công bố dựa trên các phương pháp điều khiển thông minh như hệ điều khiển Mờ (FLC), mạng Nơ-ron (ANNs) v.v… Tuy nhiên hầu hết những nghiên cứu trên đều chỉ tập chung vào nghiên cứu mô hình động học của robot - thứ được xác định bởi vận tốc đầu vào – mà lại ít quan tâm tới những vấn đề của hệ non-holonomic, chính
là các đầu vào quan trọng khác như các ngoại lực và các loại mô-ment
Với việc điều khiển bánh xe robot trong những môi trường không chắc chắn khác nhau, tính hiệu quả của điều khiển logic mờ đã được công nhận Tuy nhiên, khi sử dụng hệ logic mờ loại một, sẽ có những khó khăn trong việc chuyển hướng hành vi của robot cũng như việc phối hợp các hành vi này lại với nhau Sử dụng hệ
mờ loại hai có thể giải quyết các vấn đề trên trong thời gian thực, trong những môi trường không chắc chắn khác nhau Và để khối lượng tính toán được thu hẹp đi nhưng vẫn đảm bảo độ chính xác trong tình hành vi của robot, hệ mờ loại hai khoảng được áp dụng Nghiên cứu này nhằm đánh giá khả năng sử dụng hệ mờ loại hai khoảng vào bài toán điều khiển robot di động
2 Bài toán điều khiển robot di động
2.1 Tìm hiểu về robot di động
Đối tượng được đề cập ở đây là một loại robot tự hành một bánh (Unicycle mobile robot) Đó là một loại robot có thể thực hiện các nhiệm vụ khác nhau trong các môi trường định sẵn hay trong những mô hình môi trường không chắc chắn.Cấu tạo hình học của chúng khá đơn giản: phần thân của robot được chế tạo đối xứng quanh một trục vuông góc, khối tâm của robot được đặt trùng với vị trí trọng tâm hình học của robot đó
Trang 12Robot có hai bánh lái được cố định bởi một trục đi qua trọng tâm C của 2 bánh
đó 1 bánh thụ động ở phía trước có tác dụng định hướng và chuyển động theo 2 bánh lái phía sau Mỗi bánh lái phía sau được điều khiển bởi một motor riêng biệt
Hình 1-1: Mặt cắt ngang của robot di động 2.2 Phương trình động học trong sự di chuyển của robot
Bỏ qua các yếu tố ngoại lực không đáng kể, phương trình động học tác động vào robot có dạng:
t P Dv
v q q C v
q
M
1 0
0 sin
0 cos
) ( )
, ( )
q = (x,y,θ)T : Vector tọa độ khối tâm của robot khi di chuyển
(x,y) : Hệ tọa độ dương gắn với vật
θ : Góc giữa trục x và định hướng phía trước của robot
v = (υ,w) : Các thành phần tiếp tuyến và góc của vận tốc
υ : Vận tốc tiếp tuyến
w : Vận tốc góc
τ = (τ1,τ2) : Vector mô-ment xoắn lên hai bánh trái và phải phía sau của robotP(t) : Vector hiệu chỉnh nhiễu, là hợp của các lực gây nhiễu từ bên ngoài
Trang 13M(q) : Ma trận 2x2 thể hiện quán tính dương của robot
)
,
C : Vector hợp lực hướng tâm và lực Coriolis
D : Ma trận đường chéo hiệu chỉnh 2x2, định nghĩa dương
Ngoài ra, do đặc tính riêng biệt nên khi chuyển động, robot cũng sẽ phải tuân theo ràng buộc của hệ non-holonomic (điều kiện lăn không trượt của bánh xe) :
0 sin cos x
Các công thức động học khác được dùng khác trong bài toán:
) ( )
(
) ( sin ) ( )
(
) ( cos ) ( )
(
t w
t
t t
v
t
y
t t
t
d v
t
y
d os
c v
(
))(sin(
)()
(
))(()()
(
0
(1-4)
2.3 Mục tiêu đặt ra
Cho một hàm quỹ đạo qd định hướng biến thiên liên tục và khả vi
Hệ điều khiển mờ T được thiết lập nhằm thỏa mãn điều kiện: Các vị trí q(t)
sẽ đạt được tới những vị trí qd(t) mong muốn
limt->∞|| qd(t) – q(t) || = 0 (1-5)
3 Phương pháp điều khiển robot sử dụng tập mờ loại hai khoảng
Trong những năm gần đây, khi mà các lý thuyết toán học ngày càng được áp dụng nhiều vào thực tế, lý thuyết mờ cũng đã dần dần thể hiện những đóng góp tích cực của mình Ngày nay, chúng ta có thể bắt gặp ứng dụng của lý thuyết trong rất nhiều lĩnh vực của cuộc sống, từ những đồ gia dụng quen thuộc đến những vi xử lý tiên tiến, từ những trò chơi điện tử nhỏ bé đến cả một bộ phim kỹ xảo hoành tráng
Và đến cả những hệ thống sân bay, tàu điện ngầm hiện đại bậc nhất trên thế giới hiện giờ, logic mờ cũng là một giải pháp không thể thiếu, đóng vai trò quyết định tại những bộ phận điều khiển trung tâm
Trang 14Trong lĩnh vực tự động hóa nói chung và điều khiển robot nói riêng, bên cạnh các giải thuật thông minh khác, logic mờ cũng được ứng dụng từ khá sớm.
Nhờ những ưu điểm của mình, hệ logic mờ loại một đã được áp dụng trong việc điều khiển đường đi và giữ cân bằng cho robot Tuy vậy hạn chế của tập mờ loại một là giá trị độ thuộc vào tập mờ là một giá trị rõ Vậy nên khi dữ liệu đầu vào của
hệ bị nhiễu thì việc xác định chính xác hàm thuộc là rất khó khăn Nhưng khi sử dụng hệ logic mờ loại hai, khối lượng tính toán sẽ trở lên quá lớn, trong khi phạm vi của các giá trị đầu vào lại có thể tiên liệu được Hệ mờ logic loại hai khoảng được
sử dụng để khắc phục những khuyết điểm trên
4 Mục tiêu và phạm vi của đồ án
Tìm hiểu và nghiên cứu ứng dụng của logic mờ loại hai khoảng vào bài toán điều khiển robot di động
Sử dụng thuật toán di truyền để tối ưu hóa các tham số được sử dụng trong
hệ điều khiển logic mờ
Mô phỏng kết quả trên MATLAB và SIMULINK
Đánh giá kết quả thu được, so sánh sự khác biệt khi sử dụng hệ logic mờ loại một, loại hai và loại hai khoảng
Trang 152) CHƯƠNG 2: TỔNG QUAN VỀ HỆ LOGIC MỜ
1 Lý thuyết về tập mờ
1.1 Tập mờ loại một
Từ trước tới giờ chúng ta đã rất quen thuộc với logic nhị phân của Aristotle – nhà hiền triết vĩ đại người Hy Lạp sống từ thế kỷ thứ tư trước công nguyên Logic
nhị phân của Aristotle cho rằng thế giới được tạo bởi các cặp đối nghịch, thí dụ
nam-nữ, nóng-lạnh, khô-ướt Mọi thứ hoặc là A hoặc là không-A, không thể cả hai Logic nhị phân của Aristotle trở thành nền tảng cho khoa học, nếu một thứ được chứng minh về mặt logic (nhị phân) thì nó được và vẫn sẽ được khoa học công nhận Cho tới cuối thế kỷ 19, khi một nhà văn-nhà toán học người Anh, Russel, phát
hiện ra một nghịch lý của logic nhị phân.
Nghịch lý trong logic nhị phân mà Russel nhận ra đó chính là : “Logic nhị phân,
tự nó không thể chứng minh được chính nó” Và từ chính nghịch lý này, ông đã là người khởi đầu cho một trang mới của logic học
Trên thực tế, từ hàng ngàn năm trước, ta đã có thể bắt gặp những quan điểm
khởi nguồn của logic mờ Triết lý căn bản trong Phật giáo của Đức Phật đó là “Sắc
tức thị Không, Không tức thị Sắc”, giải nghĩa theo quen điểm logic hiện đại thì một
sự vật có thể đồng thời là A và không-A Rồi tiếp đến trong thuyết âm dương của người Trung Quốc, ta có thể nhận ra sự hàm chưa logic mờ trong đó Trong biểu tượng âm dương thái cực, ta có thể thấy sự đan xen hài hòa giữa âm và dương (trong nửa trắng của dương vẫn có một chấm đen, và ngược lại) Đáng lưu ý là chấm đen trong vòng nửa trắng lại xuất hiện ở đầu to của nửa trắng, có nghĩa là khi dương cực thịnh thì cũng là lúc xuất hiện yếu tố mang tính âm v.vv Như vậy có nghĩa là cả A và không-A tồn tại song hành với nhau và hoàn toàn không triệt tiêu
hay phủ định nhau – đó chính là một luận điểm quan trọng của logic mờ.
Cha đẻ của Logic mờ hiện đại là Lotfi.A.Zadeh, một giáo sư thuộc trường Đại
học Caliornia, Berkley, giới thiệu trong một công trình nghiên cứu vào năm 1965
Lý thuyết tập mờ bao gồm logic mờ, số học mờ, quy hoạch toán học mờ, hình học
tôpô mờ, lý thuyết đồ thị mờ, và phân tích dữ liệu mờ, mặc dù thuật ngữ logic mờ
thường được dùng chung cho tất cả
Trọng tâm của lý thuyết tập mờ là việc đề xuất khái niệm tập mờ (fuzzy sets) Về mặt toán học, một tập mờ A là một hàm số ( gọi là hàm thuộc ( membership
function)) xác định trên khoảng giá trị số mà đối số x có thể chấp nhận (gọi là tập vũ trụ (universe of discourse)) X, cho bởi:
():[0;1]
A xX
Trang 16Trong đó, A là nhãn mờ của biến x, thường mang một ý nghĩa ngôn ngữ nào đó,
mô tả định tính thuộc tính của đối tượng , chẳng hạn như cao, thấp, nóng, lạnh,
sáng, tối,
Về mặt logic, tập mờ diễn đạt mức độ chân lý của một phát biểu, với 0.0 đại diện cho trường hợp phát biểu hoàn toàn sai và 1.0 biểu diễn trạng tháI hoàn toàn đúng
Chẳng hạn, khi ta nói:
“Hôm nay gió to”.
Nếu ta đo được vận tốc gió là 72km/h, chúng ta có thể gán cho phát biểu trên một giá trị chân lý là 0.85
Về phương diện lý thuyết tập hợp, tập mờ biểu thị mức độ trực thuộc khác nhau của các cá thể trong một tập hợp Trở lại ví dụ trên, ta có thể hiểu là:“Gió hôm nay
thuộc loại gió to độ thuộc là 0.85”.
Diễn đạt hình thức ta có : Mem strong ( gió) = 0.85
Với Mem strong ( ) là một hàm thuộc dùng để biểu diễn tập mờ Gió to, trả về giá trị
nằm trong khoảng [0.0, 1.0]
Ở đây, cần lưu ý tới sự khác biệt giữa hệ mờ với xác suất Cả hai đều xác định
trên cùng một khoảng số, và nhìn thoáng qua thì đều nhận những giá trị tương tự
nhau : 0.0 đại diện cho trạng thái Sai ( hay không thuộc ), và 1.0 tượng trưng cho trạng thái Đúng ( hay thuộc ) Tuy nhiên, cùng ví dụ nêu trên, nếu diễn đạt bằng ngôn ngữ tự nhiên, theo quan điểm xác suất ta nói : "Có 85% cơ hội để kết luận
rằng gió hôm nay là to ", trong khi đó, theo quan điểm lý thuyết tập mờ ta nói : "
gió hôm nay có mức độ trực thuộc loại gió to là 0.85 ".
Đứng trên quan điểm ngữ nghĩa, ta có thể nhận thấy ít nhiều đã có những sự khác biệt: gió hôm nay có thể to hay không (tuân theo logic xác suất với hai trị kinh điển) và chỉ chắc chắn cỡ 85% về việc gió hôm nay là to Trong khi đó, phát biểu thứ hai cho phép ta khẳng định luôn rằng “gió hôm nay ít nhiều là gió to và mức độ
to của gió được đánh giá thông qua một con số tương đối 0.85”
Hình 2-1:Các tập mờ đặc trưng biểu diễn cấp độ mạnh yếu của gió
Trang 171
5.00,0
x
x
nÕunÕu
(x)
B
) 707 0 ( 1
B A
Trang 181.2 Tập mờ loại hai
Đối với tập mờ loại một, độ thuộc của các phần tử là các giá trị số thực trong khoảng [0, 1] Trong trường hợp chúng ta không thể xác định được giá trị độ thuộc của các phần tử, khi đó chúng ta có sử dụng các tập mờ loại một đề biểu diễn giá trị
độ thuộc đó Mở rộng tập mờ loại một bằng cách cho phép các độ thuộc là các tập
mờ loại một trong khoảng [0, 1] ta được khái niệm tập mờ loại hai Một trong những ưu điểm của tập mờ loại hai so với tập mờ loại một đó là nó cho phép biểu diễn các giá trị độ thuộc bằng các giá trị mờ, các giá trị ngôn ngữ chứ không phải là các giá trị số rõ
Định nghĩa tập mờ loại hai và các khái niệm
Hình 4 biểu diễn hàm thuộc của một tập mờ loại một Dịch chuyển các điểm trên
đồ thị này sang phải và sang trái một đoạn không nhất thiết bằng nhau, vết mờ được tạo ra như Hình 2-3 (b) Tại một giá trị cụ thể của x gọi là x’, giá trị hàm thuộc không còn là một giá trị đơn nữa, mà là một tập các giá trị nằm trong đoạn giao cắt của đường x = x’với vệt mờ Như vậy, chúng ta có thể gán một biên độ phân tán cho mỗi điểm Thực hiện việc gán biên độ cho tất cả các điểm x X, chúng ta tạo
ra một hàm thuộc ba chiều – một hàm thuộc loại hai, đặc trưng cho tập mờ loại hai
Định nghĩa 2-3: Một tập mờ loại hai, ký hiệu A~, được mô tả bởi một hàm thuộc loại hai ~(x,u)
Phép ở đây biểu thị tập hợp tất cả các giá trị có thể chấp nhận của x và u
Hình 2-3:Hàm thuộc loại một và chân đế của sự không chắc chắn
(2-6)
(2-7)
Trang 19Định nghĩa 2-4: Tại mỗi giá trị của x, x = x’, mặt phẳng hai chiều mà các trục
A~ = x x
X
x A
/ ) (
x
u x X
x
f ( )/ ]/[
, Jx [0,1]
Định nghĩa 2-5: Miền của một hàm thuộc thứ cấp được gọi là độ thuộc sơ cấp
của x Trong (2-10), Jx là độ thuộc sơ cấp của x, ở đây Jx [0,1] với x X
Định nghĩa 2-6: Giá trị của một hàm thuộc thứ cấp được gọi là độ thuộc thứ
cấp Trong (2-10), fx(u) là một độ thuộc thứ cấp; trong (2-6), ~(x,'u')
J f
x
/ ] / ) ( [
N
u J
u
xi i
/]/)([
([ 1
N N
Định nghĩa 2-7: Độ không chắc chắn trong các độ thuộc sơ cấp của một tập mờ
loại hai, A~, là một miền giới hạn, được gọi là chân đế của độ không chắc chắn (FOU) FOU là hợp của tất cả các độ thuộc sơ cấp
(2-8)
(2-9)
(2-10)
(2-11)
Trang 20FOU(A~) = xX J x
Về mặt ý nghĩa hình học, FOU mô tả trực quan độ không chắc chắn của tập mờ loại hai, nó là biểu diễn hình học toàn bộ miền trị cho tất cả các độ thuộc thứ cấp của một hàm thuộc loại hai Trong các ứng dụng, FOU là một căn cứ đầu tiên để chúng ta lựa chọn các hàm thuộc loại hai phù hợp
Vùng tô đen trong Hình 5 minh họa FOU của một tập mờ loại hai
Hình 2-4: Miền tô đen là FOU của một tập mờ loại hai
1.3 Tập mờ loại hai khoảng
Hệ logic mờ sử dụng tập mờ loại hai tổng quát có chi phí tính toán quá lớn Sử dụng tập mờ loại hai khoảng là một cách để giảm độ phức tạp tính toán của hệ logic
mờ loại hai
1.3.1 Khái niệm về tập mờ loại hai khoảng
Tập mờ loại hai khoảng A~ xác định trên không gian X là một tập mờ loại hai được định nghĩa như sau:
] 1 , 0 [
Như vậy, khác với tập mờ loại hai tổng quát, các độ thuộc thứ cấp của một tập
mờ loại hai khoảng đều bằng nhau và bằng một
(2-12)
(2-14)(2-13)
Trang 21Một ví dụ về tập mờ loại hai khoảng được minh hoạ trong Hình 4-1 J1 = J2 = J4
= J5 = {0, 0.2, 0.4, 0.6, 0.8}, J3 = {0.6, 0.8} Các giá trị độ thuộc thứ cấp f(u) đều bằng 1.
Hình 2-5: Ví dụ về hàm thuộc của một tập mờ loại 2 khoảng
trong không gian rời rạc 1.3.2 Hàm thuộc trên và hàm thuộc dưới của tập mờ loại hai khoảng
Chân đế của sự không chắc chắn (Footprint of Uncertainty) là hợp của tất cả các
độ thuộc sơ cấp của tập mờ loại hai Với tập mờ loại hai khoảng có độ thuộc thứ cấp đều bằng một, thì FOU chính là biểu diễn của tập mờ Để đơn giản hóa độ phức tạp, FOU được xem như là một miền giới hạn bởi hai tập mờ loại một, là hàm thuộc trên
và hàm thuộc dưới
Một hàm thuộc trên và một hàm thuộc dưới là hai hàm thuộc loại một, là hai đường biên bao lấy FOU của một tập mờ loại hai A~ Hàm thuộc trên được gắn với đường biên trên của FOU(A~) và được ký hiệu là A(x), x X Hàm thuộc dưới được gắn với đường biên dưới của FOU(A~) và được ký hiệu là
Có thể thấy rằng FOU (A~) = xX J x và FOU (A~) = xX Jx, ở đây Jx và Jx
ký hiệu bao trên và bao dưới của Jx Như vậy, A(x) = Jx và
A(x) = Jx với
(2-15)(2-16)
Trang 22~ , khi đó ( )
~ x k
có thể được biểu diễn qua hàm thuộc trên và hàm thuộc dưới của nó:
)(
~ x k
= [ ~( ), ~( )] 1 /
k l k F k l k F
l x x w
l
w
Ví dụ 2-2: Hàm thuộc trên và và hàm thuộc dưới của hàm thuộc sơ cấp
Gaussian với giá trị trung bình không chắc chắn:
Giả sử hàm thuộc sơ cấp Gaussian với giá trị trung bình không chắc chắn được cho bởi biểu thức dưới đây:
l k
l k
l k
l k k
l k
l k k k
l k
l k k
l k
m x x m
N
m x m
m x x m
N x
2 2
2 1
1 1
,),,(
,1
,),,()
, , (
2 ,
) , , ( ) (
2 1 1
2 1 2
l k
l k k k
l k
l k
l k
l k k k
l k
l k k
l
x x m
N
m m x x m
N x
l k
Trang 231.3.3 Phép toán hợp và giao của tập mờ loại hai khoảng
Các phép toán hợp và giao được xác định dựa trên cơ sở phép hội và tuyển của các hàm thuộc sơ cấp tương ứng Do hàm thuộc sơ cấp của tập mờ loại hai khoảng
là các tập mờ loại một khoảng nên việc xác định phép hợp và giao đối với tập mờ loại hai khoảng trở thành xác định phép toán hội và tuyển đối với các tập mờ loại một khoảng Các định lý sau đây cho phép xác định các phép toán hội và tuyển của các tập mờ loại một khoảng
Đinh lý 2-1: Tuyển (join), n i F i
1
, của n tập mờ loại một khoảng, F1, F2,…, Fn,
có miền trị theo thứ tự tương ứng là [l1, r1], …, [ln, rn] là một tập mờ khoảng có miền trị là [(l1 l2 …ln), (r1 r2 …rn)], ở đây ký hiệu cho phép toán maximum
F1 F2…Fn = [(12 ) , ( 1 2 )] 1 /
r r r l l
F1 F2…Fn = [(1 2 ),( 1 2 )1/
r r r l l
2.1 Hàm thuộc dạng tam giác (Triangular Membership Function)
Một hàm thuộc dạng tam giác được đặc trưng bởi ba tham số {a,b,c} như sau:
c x b b c
x c
b x a a b
a x
a x c
b a x triangle
, 0 , ,
, 0 )
, ,
; (
Bằng việc sử dụng các luật kết hợp min và max, chúng ta có thể viết lại dưới
dạng tương đương như sau:
(2-20)(2-19)
Trang 24) 0 ), ,
min(
max(
) , ,
; (
b c
x c a b
a x c
b a x triangle
2.2 Hàm thuộc dạng tứ giác (Trapezoidal Membership Function)
Một hàm thuộc dạng tứ giác được đặc trưng bởi bốn tham số{a,b,c,d} như sau:
d x c c d
x d
c x b
b x a a b
a x
a x
d c b a x trapezoid
, 0 ,
, 1 ,
, 0
) , , ,
; (
Bằng việc sử dụng các luật kết hợp min và max, chúng ta có thể viết lại dưới
dạng tương đương như sau:
) 0 ), ,
1 , min(
max(
) , ,
; (
c d
x d a b
a x c
b a x trapezoid
2.3 Hàm thuộc Gaussian (Gaussian Membership Function)
Một hàm thuộc Gaussian được đặc trưng bởi hai tham số{c,σ} như sau:
2
) ( 2
1) ,
; ( x c e x c
gaussian
Một hàm thuộc Gaussian được xác định bởi c và σ, c thể hiện khối tâm của
hàm thuộc còn σ xác định độ rộng của hàm thuộc
2.4 Hàm thuộc sinh Bell (Generalized Bell Membership Function)
Một hàm thuộc sinh Bell (hay còn gọi là hàm thuộc Bell, hàm thuộc Cauchy)
được đặc trưng bởi ba tham số như sau:
b
a
c x c
b a
x
1
1 )
, ,
Trong đó b thường là một số dương
2.5 Hàm thuộc Sigma (Sigmoidal Membership Function )
Một hàm thuộc Sigma được đặc trưng bởi hai tham số{a,c} như sau:
Trang 25( exp[
1
1 )
,
;
(
c x a c
Với a điều khiển độ dốc tại điểm giao chéo x = c Hàm Sigma được sử dụng
rộng rãi như hàm kích hoạt các mạng thần kinh nhân tạo (Artificial Neural Networks - ANNs)
3 Tổng quan về hệ logic mờ
3.1 Cấu trúc tổng quan của mô hình mờ
Về tổng thể, mỗi mô hình nói chung đều bao gồm các đầu vào (inputs ), đầu ra (output) cùng với một bộ xử lý Bộ xử lý thực chất là một ánh xạ phản ánh sự phụ
thuộc của biến đầu ra hệ thống đối với các biến đầu vào Đối với mô hình mờ, các
yếu tố đầu vào nhận giá trị số rõ, còn đầu ra có thể là một tập mờ hoặc một giá trị
số rõ Quan hệ ánh xạ của đầu ra đối với các đầu vào mô hình mờ được mô tả bằng
một tập luật mờ, thay vì một hàm số tường minh Cụ thể hơn, cấu trúc cơ bản của một Mô hình mờ bao gồm năm thành phần chủ đạo:
Hình 2-7: Cấu trúc của mô hình mờ
Cơ sở luật ( rule base) nơi chứa đựng tập các luật mờ IF-THEN, thực chất
là một tập các phát biểu hay quy tắc mà con người có thể hiểu được, mô tả hành vi của hệ thống, chẳng hạn :
" Nếu nhiệt độ là lạnh thì chỉnh nhiệt đầu ra lò sưởi cao "
" Nếu nhiệt độ là ấm thì chỉnh nhiệt đầu ra lò sưởi về zero "
Hai luật trên mô tả quan hệ điển hình giữa nhiệt độ phòng và nhiệt đầu ra tương ứng của lò sưởi
Trang 26Một cách hình thức, với mô hình mờ n đầu vào - một đầu ra, mỗi luật mờ có thể
được mô tả như sau:
: ( 1 1) ( i) ( J)
n n
i
ij IF x is A AND AND x is A THEN y is B
Trong đó, A i k n
trên các biến đầu vào và đầu ra mô hình Phần giả thiết của luật được hình thành từ
sự giao nhau (intersection) ( thực hiện bởi phép hội mờ - fuzzy AND) giữa các phát
vào việc xác định đầu ra của mô hình Mỗi cơ sở luật là sự kết hợp (union) ( bằng
phép tuyển mờ - fuzzy OR ) của tất cả các luật mờ.
Các luật có thể được hình thành từ tri thức của chuyên gia con người hoặc rút
ra từ các mẫu thực nghiệm Cơ sở luật là thành phần quan trọng nhất của bất kỳ mô hình mờ nào
Bộ tham số mô hình quy định hình dạng hàm thuộc của giá trị ngôn ngữ được
dùng để biểu diễn biến mờ và các luật mờ Giá trị các tham số có thể được đánh giá bằng kinh nghiệm của các chuyên gia con người hay là kết quả của quá trình khai phá tri thức từ thực nghiệm Thông thường, cơ sở luật và bộ tham số mô
hình được gọi chung là cơ sở tri thức
Cơ chế suy diễn (Inference engine) có nhiệm vụ thực hiện thủ tục suy diễn mờ
dựa trên cơ sở tri thức và các giá trị đầu vào để đưa ra một giá trị dự đoán ở đầu ra
Giao diện mờ hoá (fuzzifier) thực hiện chuyển đổi các đầu vào rõ thành mức độ
trực thuộc các giá trị ngôn ngữ
Giao diện khử mờ ( defuzzification ) thực hiện chuyển đổi kết quả suy diễn mờ
Mô hình mờ Mamdani ( còn gọi là mô hình ngôn ngữ ( linguistic models)) được
đề xuất với mục tiêu ban đầu là ứng dụng vào bài toán điều khiển thông qua một tập luật dạng ngôn ngữ thu được từ những thao tác viên con người có kinh nghiệm Đây
Trang 27là dạng mô hình điển hình nhất, với bộ luật bao gồm các luật mà phần tiền đề và
phần kết luận đều là các tập mờ Hình 9 minh hoạ mô hình Mamdani hai luật điển
hình với một đầu ra z, chịu tác động của hai đầu vào rõ x và y với phép hợp thành Product - Max
Rõ ràng, khả năng diễn đạt luật bằng ngôn ngữ tự nhiên đối với mô hình Mamdani rất dễ dàng và tường minh Tuy nhiên, kết quả của mô hình Mamdani lại
là tập mờ tổ hợp từ mỗi luật được sử dụng, do đó, khi muốn chiết xuất một giá trị rõ
ở đầu ra mô hình, ta cần chọn một cơ chế khử mờ phù hợp Điều này ít nhiều ảnh hưởng tới chi phí tính toán
Hình 2-8: Mô hình mờ Mamdani với phép toán AND mờ và OR mờ 3.2.2 Mô hình mờ TSK.
Mô hình mờ Takagi-Sugeno (hay còn có tên là mô hình mờ TSK) được đề xuất bởi Takagi, Sugeno, và Kang trong một nỗ lực nhằm phát triển cách tiếp cận mang
tính hệ thống đối với quá trình sinh luật mờ từ tập dữ liệu vào-ra cho trước Mô
hình mờ Takagi - Sugeno được cấu thành từ một tập các luật mờ mà phần kết luận
của mỗi luật này là một hàm ( không mờ ) ánh xạ từ các tham số đầu vào của mô
hình tới tham số đầu ra mô hình Cụ thể, một luật mờ điển hình trong mô hình Takagi - Sugeno có dạng:
Nếu x là A và y là B thì z = f(x, y)
Trong đó, A và B là các tập mờ trong phần tiền đề, trong khi z = f(x,y) là một hàm rõ trong phần kết luận Thông thường f(x,y) là có dạng đa thức của hai biến vào x và y, tuy nhiên nó có thể là một hàm bất kỳ miễn là có thể mô tả đầu ra của hệ thống một cách thích hợp trong vùng không gian xác định bởi kết luận của luật Khi
Trang 28f(x,y) là một đa thức bậc nhất , thì hệ suy diễn sẽ được gọi là mô hình mờ Sugeno
bậc nhất.
Hình 10 cho thấy thủ tục suy diễn mờ của mô hình mờ Sugeno bậc nhất Trong trường hợp này công đoạn hợp thành và khử mờ trong quy trình suy diễn của mô
hình tổng quát được thay thế bởi khâu tính toán giá trị trung bình có trọng số, do
vậy tránh được chi phí thời gian cho khâu khử mờ
Hình 2-9: Suy diễn trong mô hình TSK
3.2.3 Mô hình Tsukamoto:
Được cấu thành từ một tập luật mờ với phần kết luận của mỗi luật là một hàm đơn điệu trên từng khoảng xác định Là một mô hình có tính trung gian giữa hai mô hình Mamdani và TSK
Hình 2-10: Mô hình mờ Tsukamoto
Trang 293) CHƯƠNG 3: TÌM HIỂU CHUNG VỀ GIẢI THUẬT
4) DI TRUYỀN
1 Lý thuyết sinh học về di truyền
Giải thuật di truyền do D.E Goldberg đề xuất, sau đó được L.David và Z.Michalewicz phát triển
Cũng như các thuật toán tiến hóa nói chung, giải thuật di truyền được hình thành dựa trên quan điểm cho rằng, quá trình tiến hóa tự nhiên là quá trình hoàn hảo nhất, hợp lý nhất và tự nó đã mang tính tối ưu Quan điểm này có thể được xem như một tiên đề đúng, không chứng minh được, nhưng lại khá phù hợp với thực tế khách quan Quá trính tiến hóa thể hiện tính tối ưu, thế hệ sau bao giờ cũng tốt hơn(phát triển hơn, hoàn thiện hơn) thế hệ trước đó
Tiến hóa tự nhiên được duy trì bởi hai quá trình cơ bản: Sinh sản và chọn lọc tự nhiên Xuyên suốt quá trình tự nhiên, các thế hệ mới luôn được sinh ra để bổ xung
và thay thế cho thế hệ cũ Cá thể nào phát triển hơn, thích ứng hơn với môi trường
sẽ tồn tại Cá thể nào không thích ứng được với môi trường sẽ nhanh chóng bị đào thải Sự thay đổi môi trường là động lực thúc đẩy của tiến hóa, rồi tới lượt mình, tiến hóa cũng góp phần trở lại vào sự thay đổi của môi trường tự nhiên
Các cá thể mới sinh ra trong quá trình tiến hóa nhờ sự lai ghép ở thế hệ cha mẹ Một cá thể mới có thể mang các tính trạng của cha-mẹ(di truyền) hay cũng có thể mang các tính trạng hoàn toàn mới(đột biến) Di truyền và đột biến là hai cơ chế đóng vai trò quan trọng như nhau trong quá trình tiến hóa, dù đột biến xảy ra với xác suất nhỏ hơn di truyền rất nhiều lần
1.1 Nhiễm sắc thể (Chromosome)
Xét trên quan điểm sinh học, sự lai tạo giữa các cá thể của một quần thể thực
chất là sự lai tạo giữa các nhiễm sắc thể của các các thể đó.
Tất cả các sinh vật sống gồm các tế bào Trong mỗi tế bào của cùng một loài đều
có cùng một bộ nhiễm sắc thể Nhiễm sắc thể là chuỗi ADN và phục vụ như một mô hình cho toàn bộ cơ thể Một nhiễm sắc thể bao gồm các gen, các khối của DNA Mỗi gen mà hóa một protein riêng biệt
Về cơ bản có thể nói, mỗi gen mã hóa một đặc điểm, ví dụ như màu sắc của mắt
Có thể thiết lập thể cho một tính trạng (ví dụ như màu xanh, nâu) được gọi là alen Mỗi gen có vị trí riêng trong nhiễm sắc thể Vị trí này được gọi là locus.
Tập hợp hoàn chỉnh các vật liệu di truyền (tất cả các nhiễm sắc thể) được gọi là
bộ gen Tập hợp đặc điểm các gen trong bộ gen được gọi là kiểu gen Với sự phát
triển sau này, kiểu gen sẽ khai sinh cơ sở cho các kiểu hình của sinh vật, thể chất và
tinh thần đặc trưng của nó, chẳng hạn như màu mắt, thông minh v.vv
Trang 301.2 Mô phỏng quá trình tiến hóa
Các thuật toán tiến hóa, tuy có những sự khác nhau cơ bản nhưng đều mô phỏng bốn quá trình cơ bản:
lý tính toán của máy tính, việc mô phỏng quá trình tiến hóa của quần thể cũng đã không còn gây quá nhiều khó khăn cho các nhà nghiên cứu
2 Cơ sở toán học
Bài toán dành cho GA là tìm kiếm trên không gian các giả thuyết ứng cử để xác định giả thuyết tốt nhất Trong GA “giả thuyết tốt nhất” được định nghĩa như là một giả thuyết tối ưu hóa một đại lượng số được định nghĩa trước cho bài toán sắp tới,
được gọi là độ thích nghi của giả thuyết Ví dụ, nếu tác vụ học hỏi là bài toán xấp xỉ
một hàm chưa biết cho tập mẫu huấn luyện gồm dữ liệu đầu vào và dữ liệu đầu ra, thì độ thích nghi có thể được định nghĩa như là độ chính xác của giả thuyết trên dữ liệu huấn luyện này Nếu tác vụ là học chiến lược chơi cờ, độ thích nghi có thể là số ván thắng của chiến lược này khi đấu với các chiến lược khác trong quần thể hiện tại
Mặc dù các thuật giải di truyền được thực hiện thay đổi theo bài toán cụ thể, nhưng chúng chia sẻ chung cấu trúc tiêu biểu sau: Thuật giải hoạt động bằng cách cập nhật liên tục tập giả thuyết – được gọi là quần thể Ở mỗi lần lặp, tất cả các cá thể trong quần thể được ước lượng tương ứng với hàm thích nghi Rồi quần thể mới được tạo ra bằng cách lựa chọn có xác suất các cá thể thích nghi tốt nhất từ quần thể hiện tại Một số trong những cá thể được chọn được đưa nguyên vẹn vào quần thể
kế tiếp Những cá thể khác được dùng làm cơ sở để tạo ra các cá thể con bằng cách
áp dụng các tác động di truyền: lai ghép và đột biến
2.1 Quá trình lai ghép
Phép lai là quá trình hình thành nhiễm sắc thể mới trên cơ sở các nhiễm sắc thể cha mẹ, bằng cách ghép một hay nhiều đoạn gen của hai(hay nhiều) nhiễm sắc thể cha mẹ với nhau Phép lai xảy ra với xác suất pc có thể mô phỏng như sau:
Chọn ngẫu nhiên hai (hay nhiều) cá thể bất kỳ trong quần thể Giả sử các nhiễm sắc thể của cha mẹ đều có m gen
Tạo một số ngẫu nhiên trong khoảng từ 1 đến m-1 (gọi là điểm lai) Điểm lai này chia các chuỗi cha mẹ chiều dài m thành hai nhóm chuỗi
Trang 31con có chiều dài m1 và m2 Hai chuỗi nhiễm sắc thể con mới sẽ là
m11+m22 và m12+m21
Đưa hai cá thể con này vào quần thể để tham gia vào các quá trình tiến hóa tiếp theo
2.2 Quá trình đột biến
Đột biến là hiện tượng cá thể con mang một (số) tính trạng không có trong mã
di truyền của cha mẹ Phép đột biến xảy ra với xác suất pm , nhỏ hơn rất nhiều với xác suất lai pc Phép đột biến có thể mô phỏng như sau:
Chọn ngẫu nhiên một cá thể cha-mẹ bất kỳ trong quần thể
Tạo một số ngẫu nhiên k trong khoảng từ 1 đến m : 1<= k < =m
Thay đổi gen thứ k của cá thể và trả cá thể này vào lại quần thể để tham gia vào các quá trình tiến hóa tiếp theo
2.3 Quá trình sinh sản (tái sinh)
Tái sinh là quá trình trong đó các cá thể được sao chép trên cơ sở độ thích nghi của nó Độ thích nghi là một hàm gán một giá trị số thực cho các cá thể trong quần thể Quá trình có thể được mô phỏng như sau:
Tính độ thích nghi của các cá thể trong quần thể Lập bảng cộng dồn các giá trị thích nghi (theo số thự tự gán cho từng cá thể) Giả sử quần thể có n cá thể, gọi độ thích nghi của cá thể thứ i là Fi, tổng dồn thứ i
là Fti, tổng dồn độ thích nghi của toàn quần thể là Fm
Tạo một số ngẫu nhiên F trong khoảng từ 0 đến Fm
Chọn cá thể thứ k đầu tiên thỏa mãn F >= Ftk, đưa cá thể này vào thế
hệ mới
2.4 Quá trình chọn lọc tự nhiên
Phép chọn lọc là quá trình loại bỏ các cá thể xấu trong quần thể, chỉ giữ lại các các thể tốt Phép chọn có thể được mô phỏng như sau:
Sắp xếp quần thể theo thứ tự độ thích nghi giảm dần
Loại bỏ các cá thể cuối dãy, chỉ giữ lại n cá thể tốt nhất Ở đây ta giả
sử quần thể có kích thước cố định n
2.5 Ví dụ về các toán tử di truyền
Hai toán tử phổ biến nhất là lai ghép và đột biến.
Toán tử lai ghép tạo ra hai con từ hai chuỗi cha bằng cách sao chép các bit được
chọn lựa từ mỗi cha Bit ở vị trí i trong mỗi con được sao chép từ bit ở vị trí i của một trong hai cha Chọn lựa cha nào phân phối bit cho vị trí i được quyết định bởi thêm vào một chuỗi mặt nạ lai ghép Để minh họa, xem xét toán tử lai ghép điểm
Trang 32đơn (single-point) ở đầu hình 3-1 Xem xét hai con trên nhất trong trường hợp này Con này lấy năm bit đầu tiên của nó từ cha thứ nhất và sáu bit còn lại từ cha thứ hai,
bởi mặt nạ lai ghép là 11111000000 xác định các lựa chọn này cho mỗi vị trí bit
Con thứ hai dùng cùng mặt nạ lai ghép, nhưng đổi vai trò của hai cha Do đó, nó chứa các bit không được dùng bởi con đầu tiên Trong lai ghép điểm đơn, mặt nạ lai
ghép luôn luôn được xây dựng sao cho nó bắt đầu với chuỗi chứa n giá trị 1 liên tục, được theo sau một số giá trị 0 cần thiết để hoàn chỉnh chuỗi Cách này tạo ra cá thể con có n bit đầu được phân phối bởi một cha và các bit còn lại bởi cha thứ hai Mỗi lần toán tử lai ghép điểm đơn được áp dụng, điểm lai ghép n được chọn ngẫu nhiên,
rồi mặt nạ lai ghép được tạo và áp dụng
Trong lai ghép hai điểm, cá thể con được tạo ra bởi thay thế các đoạn trung gian
của một cá thể cha vào giữa của chuỗi cha thứ hai Nói một cách khác, mặt nạ lai
ghép là một chuỗi bắt đầu với n 0 trị 0, được theo sau bởi chuỗi liên tục n 1 trị 1, được theo sau bởi một số trị 0 cần thiết để hoàn chỉnh chuỗi Mỗi lần toán tử lai
ghép hai điểm được áp dụng, một mặt nạ được tạo ra bằng cách chọn ngẫu nhiên
các số nguyên n 0 và n 1 Thí dụ, trong ví dụ được chỉ ra ở bảng 4.1 cá thể con được
tạo ra dùng một mặt nạ với n 0 = 2 và n 1 = 5 Như lai ghép trước, hai cá thể con
được tạo ra bằng cách hoán đổi vai trò của hai cá thể cha
11101001000
00001010101
11101010101
00001001000 11111000000
11101001000
00001010101
11001011000
00101000101 00111110000
11101001000
00001010101
10001000100
01101011001 00111110000
Các chuỗi ban đầu Mặt nạ lai ghép Các cá thể con
Lai ghép điểm đơn: