SlideShare a Scribd company logo
1 of 58
Download to read offline
1
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TT & TT
ĐÀO NGỌC TUẤT
KẾT HỢP GIẢI THUẬT DI TRUYỀN VÀ LOGIC MỜ
GIẢI BÀI TOÁN TỐI ƯU ĐA MỤC TIÊU
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Thái Nguyên, tháng 10 - 2012
2
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TT& TT
ĐÀO NGỌC TUẤT
KẾT HỢP GIẢI THUẬT DI TRUYỀN VÀ LOGIC
MỜ
GIẢI BÀI TOÁN TỐI ƯU ĐA MỤC TIÊU
Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
NGƯỜI HƯỚNG DẪN KHOA HỌC
TS. Vũ Mạnh Xuân
Thái Nguyên, tháng 10 -2012
3
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
MỞ ĐẦU
Nhiều bài toán tối ưu trong thực tế là bài toán tối ưu đa mục tiêu, đặc biệt
là trong thiết kế. Chẳng hạn người ta muốn thiết kế sản phẩm sao cho chi phí
thấp, tiết kiệm nguyên liệu nhưng chất lượng tốt, hoặc thiết kế một bể chứa
nước với yêu cầu dung lượng lớn mà chi phí thấp…. Đã có nhiều nhà toán học
và tin học đã nghiên cứu về vấn đề này và đưa ra nhiều phương pháp giải khác
nhau. Một số những phương pháp thường được sử dụng để giải bài toán đa
mục tiêu như: phương pháp nhượng bộ dần, phương pháp tìm nghiệm có
khoảng cách ngắn nhất đến nghiệm lý tưởng, phương pháp trọng số,….
Được sự đồng ý của Hội đồng Khoa học khoa Công Nghệ Thông Tin,
cùng sự hướng dẫn của thầy giáo Vũ Mạnh Xuân, em chọn đề tài khóa
luận của mình nhằm nghiên cứu một phương pháp tiếp cận khác để giải
bài toán tối ưu đa mục tiêu là sử dụng giải thuật di truyền kết hợp logic
mờ.
Mục đích nghiên cứu: tìm hiểu một số phương pháp giải bài toán tối ưu
đa mục tiêu, giải thuật di truyền và logic mờ, trên cơ sở đó sử dụng giải thuật
di truyền kết hợp với logic mờ để giải bài toán tối ưu đa mục tiêu.
Nội dung của đề tài: gồm 3 chương
1) Chương 1. Giải thuật di truyền
2) Chương 2. Logic mờ
3) Chương 3. Kết hợp giải thuật di truyền và logic mờ giải bài toán tối ưu
đa mục tiêu
Để tiến hành nghiên cứu đề tài này, em đã sử dụng phối hợp một số
phương pháp như: phương pháp nghiên cứu tài liệu (nghiên cứu tài liệu về các
giải thuật di truyền, bài toán tối ưu đa mục tiêu, logic mờ, ngôn ngữ lập trình
matlab 7.0); phương pháp lấy ý kiến chuyên gia (giáo viên hướng dẫn, tham
khảo trên mạng).
Khi thực hiện đề tài này, bước đầu em đã tìm hiểu được một số phương
pháp giải bài toán tối ưu đa mục tiêu, một số vấn đề về giải thuật di truyền, logic
mờ. Kết quả là đã đề xuất một kỹ thuật kết hợp giải thuật di truyền với logic mờ
để giải bài toán tối ưu đa mục tiêu và đã lập trình thử nghiệm trên một số bài toán
cụ thể.
4
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Chương 1: GIẢI THUẬT DI TRUYỀN
Chương này giới thiệu những vấn đề khái quát về giải thuật di truyền
(GA) làm cơ sở cho việc ứng dụng giải bài toán tối ưu đa mục tiêu.[2], [6]
1.1. Khái quát chung
Giải thuật di truyền GA(GENETIC ALGORITHM) do D.E. Goldberg
đề xuất, sau đó được L. Davis và Z. Michalevicz phát triển, đây cũng chính là
một trong các thuật toán tiến hóa. Thuật toán tiến hóa là các chương trình máy
tính có dùng các thuật toán tìm kiếm, tối ưu hóa dựa trên nguyên lý tiến hóa
tự nhiên.
Giải thuật di truyền được hình thành dựa trên quan niệm: quá
trình tiến hóa tự nhiên là quá trình hoàn hảo và hợp lý nhất, tự quá trình này
đã mang tính tối ưu. Quan niệm này là một tiên đề đúng, không chứng minh
được nhưng phù hợp với thực tế khách quan. Tính tối ưu của quá trình tiến
hóa thể hiện ở đặc điểm, 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ì nhờ hai quá trình cơ
bản là sinh sản và chọn lọc tự nhiên, trong suốt quá trình tiến hóa tự nhiên,
các thế hệ mới luôn được sinh ra để bổ sung thay thế 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ẽ bị đào thải. Sự thay đổi của môi trường là động
lực thúc đẩy quá trình tiến hóa, ngược lại tiến hóa cũng tác động trở lại góp
phần thay đổi môi trường.
Giải thuật di truyền (GA-Genetic Algorithms) là giải thuật tìm kiếm,
chọn lựa các giải pháp tối ưu để giải quyết các bài toán thực tế khác nhau, dựa
trên cơ chế chọn lọc của tự nhiên: từ tập lời giải ban đầu, thông qua nhiều
bước tiến hoá, hình thành tập lời giải mới phù hợp hơn, và cuối cùng dẫn đến
lời giải tối ưu toàn cục.
Trong tự nhiên, mỗi cá thể muốn tồn tại và phát triển phải thích nghi
5
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
với môi trường, cá thể nào thích nghi hơn thì tồn tại, cá thể nào kém thích
nghi thì bị tiêu diệt. Trong mỗi cá thể, các gen liên kết với nhau theo cấu trúc
dạng chuỗi, gọi là nhiễm sắc thể (NST). Mỗi NST đặc trưng cho mỗi loài và
quyết định sự sống còn của cá thể đó. Do môi trường tự nhiên luôn biến đổi
nên cấu trúc NST cũng thay đổi để thích nghi với môi trường và thế hệ sau
luôn thích nghi hơn thế hệ trước. Cấu trúc này có được do sự trao đổi thông
tin có tính ngẫu nhiên với môi trường bên ngoài hoặc giữa các NST với nhau.
1.2. Các vấn đề cơ bản của giải thuật di truyền
1.2.1. Mã hóa
Việc mô tả di truyền cho lời giải cho bài toán gồm hai phần cơ bản:
+ Xây dựng cấu trúc gen cho mỗi lời giải của bài toán để từ mỗi lời giải ta có
thể mã hoá thành một NST (chuỗi các gen).
+ Giải mã các NST để nhận được lời giải.
Đây là vấn đề cần giải quyết trước khi giải bài toán với GA. Tuỳ thuộc vào
nội dung của mỗi bài toán mà ta có cách mã hoá khác nhau.
Sau đây là phương pháp mã hoá hay được sử dụng:
Mã hoá dạng chuỗi nhị phân: đây là phương pháp thông dụng và cơ bản nhất
được sử dụng ngay từ bước ban đầu khi nghiên cứu GA. Trong phương pháp
này mỗi NST là một chuỗi các bit 0 và 1.
Mã hoá thứ tự: được sử dụng trong bài toán có sắp xếp thứ tự. Ở đây mỗi
NST là một chuỗi các số nguyên thể hiện thứ tự phân bố lời giải của bài toán.
Mã hoá theo giá trị: được sử dụng trong các bài toán mà mỗi lời giải là tập các
giá trị (ví dụ tập số thực). Trong phương pháp này, mỗi NST là một chuỗi các
giá trị có mối quan hệ tương ứng với bài toán.
Mã hoá dạng cây: được sử dụng chủ yếu trong các biểu thức toán học, trong
phương pháp mã hoá này mỗi NST là một cây của một nhóm đối tượng nào
đó.
6
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Ví dụ: Biểu thức sau x+(y / 5) được mã hoá thành:
Mã hoá số thực : Mỗi NST được mã hoá là một véc tơ trong không gian Rm
chẳng hạn X = (a1, a2, ..., am) với các ai  R. Cách mã hoá này thường tự nhiên
đối với các bài toán tối ưu số và được phát triển rất mạnh trong thời gian gần
đây.
1.2.2. Tạo lập lời giải ban đầu (khởi tạo quần thể)
Tập lời giải ban đầu thường được khởi tạo ngẫu nhiên từ miền xác định của
các lời giải. Cách tạo lập tập lời giải ban đầu phụ thuộc rất nhiều vào cách mã
hoá NST.
Với phương pháp mã hoá nhị phân: xây dựng NST bằng cách tạo ngẫu nhiên
chuỗi các bit 0 hoặc 1.
Với phương pháp mã hoá thứ tự: xây dựng NST ban đầu bằng cách hoán vị
ngẫu nhiên các thứ tự.
Với phương pháp mã hoá theo giá trị: tạo ngẫu nhiên từng giá trị trong miền
xác định của lời giải để tạo ra chuỗi NST ban đầu.
Với mã hoá số thực: tạo ngẫu nhiên N véc tơ thực trong Rm
.
1.2.3. Xây dựng hàm phù hợp
Hàm phù hợp đánh giá khả năng phù hợp của tập lời giải theo yêu cầu bài
toán. Hàm này được xây dựng cho từng bài toán với yêu cầu cụ thể. Thông
thường trong các bài toán tối ưu hàm này chính là hàm mục tiêu của bài toán.
1.2.4. Các toán tử di truyền
a. Toán tử chọn lọc
+
/
x
y 5
7
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Trong quá trình thực hiện của giải thuật di truyền, sau mỗi lần tiến hoá ta chỉ
giữ lại các cá thể có độ phù hợp cao còn các cá thể phù hợp thấp bị loại bỏ.
Toán tử chọn lọc thường giữ lại 50% các cá thể phù hợp nhất. Tuy nhiên
người ta cũng phát triển nhiều sơ đồ chọn khác nhau nhằm là tăng tính đa dạng
của quần thể, tránh sự hội tụ sớm.
b. Toán tử lai ghép là toán tử di truyền cơ bản trong GA, tiến trình lai ghép
như sau :
Bước 1: Tạo ra tập NST để tạo sinh từ quần thể bằng cách chọn ngẫu nhiên N
NST từ M NST (M là kích cỡ quần thể).
Có nhiều cách chọn:
Chọn ngẫu nhiên theo thứ tự: lặp N lần việc tạo ngẫu nhiên ra một số nguyên i
thuộc khoảng [1, M] để chọn NST thứ i.
Chọn theo trọng số: tạo trọng số tích luỹ cho M NST theo công thức:
 
 M
k
i
k
i
p
1
(với bài toán tìm min)
 


 M
k
i
k
i
M
p
1
1
(với bài toán tìm max)
Sau khi có trọng số tích luỹ cho NST, ta lần lượt tạo các xác suất ngẫu nhiên r
và duyệt từ NST đầu tiên đến khi gặp NST có trọng số tích luỹ lớn hơn r thì
chọn nó.
Bước 2: Sau khi chọn được N NST, lần lượt lấy ra từng cặp NST để lai ghép
tạo ra hai NST mới. Một số dạng toán tử lai ghép hay dùng là :
Lai ghép 1 điểm: chọn ngẫu nhiên một vị trí sau đó hoán vị phần đứng sau vị
trí vừa chọn giữa hai NST cha và mẹ để nhận được hai NST con.
Lai ghép hai điểm: chọn ngẫu nhiên hai vị trí trong một NST, sau đó hoán vị
các giá trị đứng giữa hai điểm đã chọn của hai NST cha mẹ để nhận được hai
NST con.
8
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Lai ghép mặt nạ: tạo một mặt nạ ngẫu nhiên có số bit bằng chiều dài của NST.
Ta sẽ hoán vị các giá trị của hai NST cha và mẹ ở những vị trí tương ứng với
vị trí bit 1 của mặt nạ.
c. Toán tử đột biến: Toán tử đột biến được xây dựng để tránh việc nhận được
giá trị tối ưu cục bộ. Đột biến gây ra thay đổi ngẫu nhiên trên từng bit của
NST để tạo ra một NST mới.
d. Tạo sinh: Chọn các cá thể từ quần thể hiện thời làm quần thể mới cho lần
lặp kế tiếp.
1.3. Thuật toán di truyền
Giải thuật di truyền giải một bài toán cần có các thành phần sau:
1. Một cấu trúc dữ liệu biểu diễn không gian lời giải của bài toán
2. Cách khởi tạo quần thể ban đầu
3. Hàm định nghĩa độ thích nghi eval(), đóng vai trò môi trường
4. Các phép toán di truyền ( phép lai, phép đột biến, phép tái sinh và phép
chọn)
5. Các tham số được giải thuật di truyền sử dụng (kích thước quần thể,
xác suất lai, đột biến...)
Sơ đồ cấu trúc giải thuật di truyền tổng quát như sau:
Begin
1. t:=0; Khởi tạo P(t);
2. Tính độ thích nghi cho các cá thể thuộc P(t);
3. Khi (điều kiện dừng chưa thỏa mãn) lặp
t:=t+1;
Tái sinh P‟
(t) từ P(t)
Lai Q(t) từ P(t-1);
Đột biến R(t) từ P(t-1);
Chọn lọc P(t) từ P(t-1)Q(t)R(t)P‟
(t)
Kết thúc lặp
Cá thể tốt nhất P(t) là lời giải cần tìm
End.
9
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
1.4. Giải thuật di truyền mã hóa số thực
1.4.1. Mã hóa RCGA
Trong phần này ta quan tâm tới giải thuật di truyền mã hóa số thực
(RCGA) để giải các bài toán tối ưu giá trị thực trong không gian Rn
và không
có các ràng buộc đặc biệt.
Một cách tổng quát, bài toán tối ưu số thực có thể xem là một cặp (S,f),
trong đó S  Rn
và f : S  R là một hàm n biến. Bài toán đặt ra là tìm véctơ
x=(x1,x2,... , xn)  S sao cho f(x) đạt giá trị cực tiểu trên S. Nghĩa là với mọi
yS phải có f(x)  f(y). Hàm f ở đây có thể không liên tục nhưng cần bị chặn
trên S (đối với các bài toán tìm cực đại có thể chuyển về cực tiểu một cách
đơn giản).
Trong GA mã hoá số thực, mỗi cá thể được biểu diễn như một véc tơ
thực n chiều: b = (x1 , x2, ... , xn), xi  R.
Như vậy một quần thể kích cỡ m là một tập hợp có m véctơ trong Rn
. Ta
cũng có thể xem một quần thể kích cỡ m như một ma trận thực cấp (mxn), đây
là cách mã hoá tự nhiên và thuận tiện trong việc thực hiện các toán tử tiến hóa.
Sau đây ta sẽ xem xét cụ thể hơn các toán tử này trong giải thuật di truyền mã
hoá số thực.
1.4.2. Các toán tử của RCGA
a. Toán tử lai ghép
GA mã hoá số thực cũng áp dụng các toán tử lai ghép như GA cổ điển
bao gồm lai ghép 1 điểm, lai ghép nhiều điểm, lai ghép mặt nạ. Ngoài ra, do
cách mã hóa quần thể, người ta còn nghiên cứu và đề xuất nhiều dạng khác
nhau của toán tử lai ghép trong RCGA. Dưới đây là một số dạng toán tử lai
ghép thường dùng với giả thiết cặp cá thể cha mẹ đã chọn để tiến hành lai
ghép là )
,...,
,
( 2
1 m
x
x
x
X  và )
,...,
,
( 2
1 m
y
y
y
Y  .
 Lai số học (Arithmetic Crossover)
Phép lai này chọn một số thực a (0<a<1); các con X' và Y' được tính bởi:
x'i = a*xi + (1-a)*yi ;
10
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
y'i = a*yi + (1-a)*xi
 Lai ghép Heuristic
Giả sử với cặp bố mẹ (X, Y) đã chọn, trong đó cá thể X có độ thích nghi
(giá trị hàm mục tiêu) tốt hơn cá thể Y thì toán tử này tạo một con duy nhất X'
từ cặp X, Y bởi:
x'i = *(xi - yi) + xi với 0 <  < 1
b. Toán tử đột biến
Toán tử đột biến trong RCGA được giới thiệu đa dạng hơn trong GA cổ
điển. Sau đây sẽ giới thiệu một số dạng điển hình:
Đột biến đều: Với một gen i được chọn ngẫu nhiên để đột biến từ cá thể
)
,...,
,
( 2
1 N
x
x
x
b  , thành phần i
x được thay thế bởi một số ngẫu nhiên trong
khoảng xác định  
i
i u
l , của i
x .
Đột biến biên: Từ cá thể cha đã chọn đột biến x và vị trí chọn đột biến k,
thành phần thứ k (xk) của x được thay bởi lk hay uk trong đó [lk , uk] là khoảng
xác định của xk. Trong những bài toán mà biên của các biến không lớn và giải
pháp cần tìm nằm gần biên thì phép đột biến này tỏ ra rất hữu ích.
Đột biến không đều:
Giả sử tmax là một số cực đại định nghĩa trước, thành phần xi được thay
thế bởi một trong 2 giá trị tính theo các công thức sau :
x‟i = xi + (t, bi – xi) x”i = xi - (t, xi – ai)
Việc chọn giá trị nào được tiến hành tuỳ theo giá trị ngẫu nhiên khởi
tạo với xác suất 1/2. Biến ngẫu nhiên (t, x) xác định một bước đột biến trong
khoảng [0, x] theo công thức sau :


)
1
(
max
)
1
.(
)
,
( t
t
x
x
t




Trong công thức này,  thường là số ngẫu nhiên phân bố đều trong
khoảng đơn vị. Tham số  xác định ảnh hưởng của lần tạo sinh thứ t trên phân
bố của đột biến trong miền [0, x].
1.5. Mô hình Markov của giải thuật di truyền.
11
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Trong giải thuật di truyền, mỗi quần thể được tạo sinh có đặc trưng là
chỉ phụ thuộc theo xác suất vào quần thể trước đó, do vậy GA có thể được mô
hình hóa bởi một xích Markov. Các tính chất của quần thể hữu hạn, chẳng hạn
như xu hướng di truyền có thể được khảo sát cẩn thận sử dụng xích Markov
hữu hạn. Không giống như nhiều phương pháp mô phỏng khác, xích Markov
có thể mô tả chính xác và chi tiết cho mỗi lớp đặc biệt. Từ năm 1992, Nix và
Vose đã mô hình hóa GA kinh điển (biểu diễn chuỗi nhị phân chiều dài cố
định, lai ghép một điểm, chọn lọc tỷ lệ) như một xích Markov trong đó mỗi
trạng thái là một quần thể. Vose đã mở rộng mô hình này đến mô hình “tìm
kiếm ngẫu nhiên Heuristic” trong đó mỗi cá thể của lần tạo sinh kế tiếp được
chọn theo một phân bố xác suất trên các cá thể của không gian tìm kiếm.
Suzuki đã giới thiệu mô hình của một lớp giải thuật di truyền ưu tú và đưa ra
kết quả về số lần tạo sinh cần thiết để hội tụ dựa trên xác suất đột biến. Năm
1996, Aytug và Koehler đưa ra chặn trên cho số lần tạo sinh cần thiết đối với
GA kinh điển để hội tụ đến quần thể có chứa chuỗi tối ưu dựa trên xác suất đột
biến.
Phần dưới đây trình bày vắn tắt mô hình xích Markov của giải thuật di
truyền đơn giản
1.5.1. Tính Markov
 Một hệ vật lý hoặc hệ trạng thái nào đó gọi là có tính Markov nếu sự
tiến triển của hệ trong tương lai chỉ phụ thuộc vào hiện tại và độc lập với
quá khứ. VD sự tăng dân số.
 Ký hiệu E là không gian trạng thái của X(t); nếu X(t) có tính Markov
và E là tập đếm được thì X(t) gọi là xích Markov. Nếu giá trị của thời điểm
t là 0, 1, … thì ta nói xích Markov với thời gian rời rạc. Nếu t  [0, ] thì
ta có xích Markov với thời gian liên tục.
 ĐN: Ta nói X(t) có tính Markov nếu:
P {X(tn+1) = j | X(t0) = i0, …, X(tn) = i} = P {X(tn+1) = j | X(tn) = i}
với bất kỳ t0 < t1 < … < tn < tn+1 < … ; i0, … , in, j  E
12
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
 Đặt p(s,i,t,j) = P {X(t) = j | X(s) = i} (s<t) là xác suất có điều kiện để hệ tại
thời điểm s ở trạng thái i, đến thời điểm t chuyển đến trạng thái j và gọi là
xác suất chuyển của hệ. Nếu xác suất này chỉ phụ thuộc vào t-s hay
p(s,i,t,j) = p(s+h, i, t+h, j) thì hệ là thuần nhất theo thời gian.
 Ký hiệu pij = P {Xn+1 = j | Xn = i} và ma trận [pij] gọi là ma trận xác
suất chuyển sau 1 bước. Theo công thức xác suất đầy đủ ta có
0  pij  1 và j pij = 1 (ma trận ngẫu nhiên)
 Xác suất chuyển sau n bước :
pij
(n)
= P {Xn+m = j | Xm = i} = P {Xn = j | X0 = i}
Khi đó pij
(1)
= pij . Quy ước pij
(0)
= 1 ( i=j) và là 0 với i<> j
Đặt Pn
= (pij
(n)
) là ma trận xác suất chuyển sau n bước.
 Ta có phương trình Chapman-Kolmogorov




E
k
n
jk
n
ik
m
n
ij p
p
p )
(
(1.1)
 Một ví dụ về GA được mô hình hóa bởi một xích Markov: Ta bắt đầu bằng
mô hình đơn tử (haploid model) của sự tái tạo ngẫu nhiên, khi không xét
đến những tác nhân đột biến và thiên hướng chọn lọc (mutation pressures
and selective forces). Giả sử ta xét cỡ loài cố định gồm 2N gene kết hợp từ
các cá thể loại a và loại A. Sự hình thành thế hệ sau được xác định bởi 2N
phép thử nhị thức độc lập như nhau: Nếu loài bố mẹ có j a-gene và (2N - j)
A-gene thì mỗi phép thử có kết quả là a hay A với xác suất tương ứng là
2
j
j
p
N
 và
N
j
qj
2
1

Các chọn lọc được lặp lại và được tiến hành có thay thế. Bằng cách
này ta có xích Markov { Xn } trong đó Xn là số a-gene ở thế hệ thứ n trong
cỡ loài không đổi gồm 2N cá thể. Không gian trạng thái E = {0,1,2, ..., 2N}
gồm 2N + 1 giá trị. Ma trận xác suất chuyển P = (pjk) tính theo phân phối nhị
thức là:
pjk =   k
N
j
k
j
k
N
n
n q
p
C
j
X
k
X
P 
 

 2
2
1 (j, k = 0, 1, ..., 2N) (1.2)
13
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Chú ý rằng các trạng thái Xn = 0 (hoặc 2N) là hấp thụ hoàn toàn theo
nghĩa khi Xn = 0 (hoặc 2N) thì Xn+k = 0 (hoặc 2N, tương ứng) với mọi k  0.
Một trong những vấn đề thú vị là xác định xác suất để loài sẽ đạt tới
fixation (nghĩa VN) với điều kiện X0 = i, tức là nó sẽ trở thành một quần thể
thuần chủng chỉ có a-gene hoặc A-gene. Việc xác định tốc độ đạt tới fixation
cũng là điều đáng quan tâm. Ta sẽ nghiên cứu những vấn đề như thế trong
phân tích tổng quát về xác suất hấp thụ.
Một mô hình đầy đủ hơn phải tính đến những mutation pressures (tác
nhân đột biến). Ta giả sử rằng trước khi hình thành thế hệ mới, mỗi gene có
xác suất đột biến, tức là xác suất chuyển thành gene của loại kia. Đặc biệt, ta
giả sử rằng đối với mỗi gene hiện tượng đột biến a  A xảy ra với xác suất x1
và hiện tượng đột biến A  a xảy ra với xác suất x2.
Một lần nữa ta lại giả sử rằng sự hình thành của thế hệ sau được xác
định bởi 2N phép thử nhị thức. Các giá trị liên quan của pj và qj khi loài cha
mẹ có j a-gene lúc này có dạng:
 
 
1 2
1 2
1 1
2 2
1 1
2 2
j
j
j j
p x x
N N
j j
q x x
N N
 
   
 
 
 
   
 
 
Vµ
(1.3)
Lập luận như sau: các tác nhân đột biến hoạt động đầu tiên, sau đó một
gene mới được chọn bằng cách chọn lọc ngẫu nhiên từ loài. Bây giờ xác suất
của chọn lọc một a-gene sau khi tác nhân đột biến hoạt động chính là 1/2N lần
số a-gene hiện có. Vì vậy xác suất trung bình (lấy trung bình đối với những
đột biến có thể) là 1/2N lần số trung bình của a-gene sau đột biến. Nhưng số
trung bình này rõ ràng là j(1-x1) + (2N - j)x2. Từ đó dẫn đến công thức (1.3).
Xác suất chuyển của xích Markov tương ứng được tính bởi công thức
(1.2) ở trên với các pj, qj được tính bởi công thức (1.3) vừa viết.
Nếu x1, x2 > 0 thì fixation sẽ không xảy ra ở bất cứ trạng thái nào. Thay
vào đó, khi n   hàm phân phối của Xn sẽ tiến đến phân phối trạng thái vững
của biến ngẫu nhiên  trong đó P{=k}=k; k = 0, 1, ..., 2N (k = 1, k > 0).
Hàm phân phối của  được gọi là phân phối tần số gene tại trạng thái vững.
14
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Ta trở lại mô hình giao phối (mating model) ngẫu nhiên đơn giản và
bàn về khái niệm thiên hướng chọn lọc, hoạt động về a-gene chẳng hạn. Giả
sử muốn đặt một ưu tiên chọn lọc cho a-gene đối với A-gene sao cho số con
sinh ra có kỳ vọng với tỉ lệ (1+ s) và 1 tương ứng, trong đó s là nhỏ và dương.
Ta thay pj =
N
j
2
và qj =
N
j
2
1 bằng pj =
sj
N
j
s


2
)
1
(
và qj = 1 - pj rồi xây dựng
thế hệ sau theo mẫu nhị thức như trước.
Nếu thế hệ cha mẹ có j a-gene, thì ở thế hệ sau cỡ loài trung bình của a-
gene và A-gene tương ứng là
 
sj
N
j
s
N


2
1
2 và
 
sj
N
j
N
N


2
2
2 .
Tỷ số các cỡ loài trung bình của a-gene đối với A-gene tại thế hệ thứ
(n + 1) là:





 




1
1
2
1
1 s
j
N
j
s








n
thø
hÖ
thÕ
ë
gene
-
sè
n
thø
hÖ
thÕ
ë
gene
-
Sè
A
a
Điều này giải thích ý nghĩa của sự chọn lọc.
1.5.2. Một số kết quả
- Phân phối của hệ tại thời điểm n cho bởi công thức
pj
(n)
= P(Xn = j) ; n = 0, 1, 2, …; j  E
Đặt (n)
= {pj
(n)
; jE) và gọi  = (0)
là phân phối ban đầu của hệ.
- Phân phối ban đầu gọi là dừng nếu (n)
không phụ thuộc vào n
nghĩa là  = (n)
.
- Một mô hình xích Markov rời rạc và thuần nhất là bộ ba (Xn,  , P)
trong đó Xn là dãy đại lượng ngẫu nhiên rời rạc;  là phân phối ban
đầu; P là ma trận xác suất chuyển.
- Vấn đề là phân phối dừng có tồn tại không? có duy nhất không?
cách tìm nó?
15
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
- Định nghĩa phân phối dừng: Giả sử P = (pij) là ma trận chuyển của
xích Markov (Xn) có không gian trạng thái hữu hạn E = {1, 2, ..., N}, nghiệm
không âm (1, ...,N) của phương trình:
xj = 
E
k
kj
k p
x ; j  E
sao cho j = 1 được gọi là phân phối dừng (hay bất biến) của xích
Markov với ma trận xác suất chuyển P = (pij).
Ý nghĩa: Nếu ta lấy (1, ...,N) là phân phối ban đầu của xích Markov,
tức là j = P(X0 = j); j = 1, 2, ..., N. Khi đó: j
(1)
= P(X1=j)= j
k
kj
k p 
 

Tổng quát ta có: j
(n)
P(Xn = j) = j, tức là: X0, X1, ..., Xn, ... có phân phối
xác suất như nhau, ta có thể chứng minh phân phối đồng thời của các biến ngẫu
nhiên Xk, Xk+1, ..., Xk+m không phụ thuộc vào k đối với mọi m. Quá trình có tính
chất như thế được gọi là quá trình dừng. Viết dưới dạng ma trận thì phân phối
dừng là véctơ cột bất biến đối với ma trận chuyển vị của P, nghĩa là:
11 21 1 1 1
12 22 2 2 2
1 2
...
...
... ... ... ... ... ...
...
N
N
N N NN N N
p p p
p p p
p p p
 
 
 
    
    
    

    
    
    
.
1.5.3. Xích Markov trong GA
Xét bài toán: Cho một hàm f : J  R+
và JL là tập rời rạc hóa J. Cần tìm một
phần tử i  JL sao cho f(i) = max{f(j) | j  JL }
Gọi r là số cá thể hợp lệ thì r = |JL| = L
, trong đó  là số phần tử của
bảng ký hiệu sử dụng rời rạc hóa. Chẳng hạn với mã hóa nhị phân thì  = 2.
Gọi tập tất cả các quần thể hợp lệ là S và giả thiết ta xét quần thể với
kích cỡ cố định M (M = |k| với k  S). Khi đó số các quần thể hợp lệ là:
1
1
|
| 



 r
r
M
C
S
N (số các tổ hợp chập r-1 của M+r-1).
Ta xét giải thuật di truyền đơn giản với các toán tử như sau:
- Toán tử chọn lọc tỷ lệ, chọn cá thể i trong quần thể k với xác suất:
16
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
 
 r
h
ik
k
h
Z
h
f
k
i
Z
i
f
p
0
)
,
(
*
)
(
)
,
(
*
)
(
trong đó Z(i,k) là biến cố xảy ra khi cá thể i thuộc vào quần thể k.
- Toán tử lai ghép một điểm.
- Toán tử đột biến là phép đảo bit tại vị trí đột biến.
Với giải thuật này, GA có thể được mô hình hóa như một xích Markov
thời gian rời rạc, mỗi quần thể xem như một trạng thái của xích. Rõ ràng là
trạng thái hiện tại chỉ phụ thuộc vào một trạng thái ngay trước nó, vì nếu ký
hiệu Xn là quần thể tại lần tạo sinh thứ n thì với n = 1,2,... ta có:
P(Xn = k | X0 = k0 , X1 = k1, ..., Xn-1 = kn-1) = P(Xn = k | Xn-1 = kn-1)
nghĩa là Xn thỏa tính chất của xích Markov. Ký hiệu ma trận chuyển của xích
Markov này là Q.
Rudolph đã chỉ ra rằng giải thuật di truyền đơn giản như trên không hội
tụ đến tối ưu toàn cục. Sự hội tụ của giải thuật di truyền được định nghĩa theo
Rudolph như sau:
Định nghĩa 1: Giả sử Bt = max{f(i) | Z(i, Xi)  0, i = 0,1, ..., r-1} là chuỗi biến
ngẫu nhiên của độ thích nghi cao nhất trong một quần thể biểu diễn trạng thái
Xt tại bước thứ t. Giải thuật di truyền là hội tụ đến tối ưu toàn cục nếu và chỉ
nếu 1
*)
(
lim 



f
B
P t
t
, ở đây f* = max{f(j) | j  JL } là lời giải tối ưu của bài
toán nêu trên.
Do các toán tử của GA độc lập với nhau nên có thể biểu diễn ma trận
chuyển là Q = SCM trong đó S, C, M theo thứ tự là ma trận chuyển của các
phép chọn lọc, lai ghép và đột biến.
Định nghĩa 2: Khoảng cách Hamming giữa hai chuỗi bit là số vị trí bit không
trùng nhau của hai chuỗi đó (chẳng hạn H(„0100‟, „0001‟) = 2). Đặt Hij là
tổng khoảng cách Hamming giữa các cá thể trong quần thể i và j:




1
0
)
,
(
M
h
h
h
ij j
i
H
H
17
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
ở đây ih là một cá thể trong quần thể i, jh là một cá thể trong quần thể j với
h=0, ..., M-1; i,j = 1, ..., N và H(ih, jh) là khoảng cách Hamming giữa ih và jh.
Định nghĩa 3 : Ma trận A gọi là nguyên sơ nếu tồn tại số tự nhiên k sao cho
ma trận Ak
là ma trận dương (ma trận mà mọi phần tử đều là số dương).
Bổ đề 1 : Ma trận chuyển của giải thuật di truyền đơn giản với xác suất đột
biến pm  (0, 1), sử dụng lai ghép và chọn lọc tỷ lệ là ma trận nguyên sơ.
Từ những ký hiệu và kết quả trên Rudolph đã chứng minh định lý sau:
Định lý 1: Giả sử hàm thích nghi không ấn định một giá trị thích nghi cho mỗi
cá thể, giải thuật di truyền đơn giản với các giả thiết như trong bổ đề trên
không hội tụ đến lời giải tối ưu.
Tuy nhiên để tăng hiệu lực của GA, De Jong đã đề xuất một chiến lược
ưu tú, Suzuki ([9]) đã chứng minh sự hội tụ đến lời giải toàn cục của GA với
chiến lược ưu tú sửa đổi. Cụ thể như sau: Giả sử số cá thể M của quần thể là
một số lẻ, i* là cá thể có giá trị thích nghi cao nhất của quần thể hiện tại.
Chiến lược ưu tú được sửa đổi là: quần thể kế tiếp luôn chứa i* .
Với chiến lược này, toán tử tạo sinh phần tử i* luôn được thực hiện đầu
tiên tại mỗi bước của quá trình. Sau đó M-1 cá thể còn lại được sinh ra theo
các toán tử di truyền thông thường. Dưới đây ta giả thiết là bài toán chỉ có một
lời giải tối ưu toàn cục.
Với mỗi quần thể k (k = 1,2,..., N), ký hiệu i*(k) là cá thể có độ thích nghi cao
nhất trong quần thể. Đặt N(i) là số các quần thể mà trong quần thể đó, i là cá
thể có độ thích nghi cao nhất (i = 0,1,...,r-1). Ta gán nhãn cho mỗi cá thể i =
0,1,..., r-1 theo thứ tự f(i) giảm dần sử dụng một quy tắc luân phiên tiền định
nào đó đối với các cá thể có cùng độ thích nghi. Ta cũng gán nhãn cho mỗi
quần thể k = 1,2,...,N theo thứ tự giảm dần của i*(k) theo một quy tắc luân
phiên tiền định nào đó cho những quần thể có cùng i*(k). Giả sử các trạng thái
trong tập K = {1, 2, ..., N(0)} là các trạng thái tối ưu toàn cục.
Với các ký hiệu trên, điều kiện hội tụ của GA có thể phát biểu là:
18
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Giải thuật di truyền hội tụ tới tối ưu toàn cục nếu và chỉ nếu K
Xt
t



lim
Ma trận chuyển Q+
đối với chiến lược ưu tú sửa đổi như sau:












1
1
0
0
0
0
...
0
0
0
0
0
0
r
Q
Q
Q
Q+
gồm r ma trận con Q0, Q1, ..., Qr-1 , mỗi ma trận có phần trên đường
chéo chính bằng 0. Kích cỡ của Qi là N(i)xN(i). Có thể thấy N(i) tính được là
số tổ hợp chập (r-i-1) của (r-i+M-2).
Dựa trên các ký hiệu trên, Suzuki đã đưa ra công thức tính xác suất
chuyển từ trạng thái k đến trạng thái v là:








 


)
(
*
)
(
*
0
)
(
*
)
(
*
)
,
(
)!
,
(
1
)!
1
(
1
0
)
,
(
v
i
k
i
v
i
k
i
k
j
r
v
j
Y
M
q
r
j
v
j
Y
kv
trong đó







)
(
*
1
)
,
(
)
(
*
)
,
(
)
,
(
k
i
j
k
j
Z
k
i
j
k
j
Z
k
j
Y
ỏ đây Z(j,k) là xác suất để cá thể j thuộc vào quần thể k; r(j,k) là xác suất để cá
thể j được tạo lập bởi các toán tử di truyền từ quần thể k. Nếu pm > 0 thì r(j,k)
> 0. Bởi vậy qkv > 0 với k, v  K vì i*(k) = i*(v). Điều này cũng có nghĩa là
Q0 là ma trận dương và là nguyên sơ. Tuy nhiên cấu trúc của ma trận không
thể suy ra nhờ trực giác bằng sự nghiên cứu mỗi toán tử di truyền. Toán tử
chọn lọc không thể tạo cá thể mới và cũng không thể làm tăng i*(k). Toán tử
lai ghép và đột biến đều tạo cá thể mới và có xác suất dương khi chuyển đến
quần thể mới có cá thể cao hơn i*(k).
Định lý 2: Giải thuật di truyền với chiến lược ưu tú sửa đổi như trên và
pm  (0, 1) hội tụ đến tối ưu toàn cục.
Chứng minh: Từ những phân tích trên, ta có Q+
là không phân ly được
và Q0 là ma trận nguyên sơ. Theo lý thuyết xích Markov, ta có









 







0
0
lim
)
(
lim 0
R
Q
Q
Q
k
k
k
n
trong đó R
là ma trận ngẫu nhiên chứa các xác suất chuyển từ trạng thái
không tối ưu toàn cục đến trạng thái tối ưu toàn cục. Điều này cho thấy xác
19
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
suất sống sót của trạng thái không tối ưu toàn cục có khuynh hướng giảm dần
đến 0 còn xác suất sống sót của trạng thái tối ưu toàn cục hội tụ về 1.
Như vậy, định lý này cho thấy giải thuật di truyền có khả năng hội tụ về
tối ưu toàn cục sau quá trình tiến hoá.
Việc mô hình GA qua xích Markov có ý nghĩa quan trọng. Nó vừa chứng tỏ
được sự hội tụ của giải thuật một cách chính xác, vừa là mô hình toán học để
có thể tính toán chi tiết các yếu tố ảnh hưởng đến khả năng và tốc độ hội tụ
của giải thuật. Tuy nhiên, thực hiện thuật toán qua xích Markov sẽ gặp khó
khăn rất lớn do không gian trạng thái cần xét đến là rất lớn. Vì vậy mô hình
này thường chỉ được phát triển về phương diện lý luận.
Kết Luận: phần trên giới thiệu những vấn đề khái quát về giải thuật di truyền
(GA) làm cơ sở cho việc ứng dụng giải bài toán tối ưu đa mục tiêu.
20
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Chương 2: LOGIC MỜ
Chương này giới thiệu những vấn đề khái quát về logic mờ làm cơ sở cho
việc ứng dụng giải bài toán tối ưu đa mục tiêu.[1]
2.1. Tập mờ
2.1.1. Định nghĩa tập con mờ
Một tập con cổ điển A của X được định nghĩa bởi một hàm đặc trưng
A
 lấy giá trị 0 đối với những phần tử của X không thuộc A và lấy giá trị 1
với những phần tử X thuộc A:

 1
,
0
: 
X
A

Định nghĩa 2.1: Một tập con mờ A của X được định nghĩa bởi một hàm
thuộc, gán cho mỗi phần tử x của X, độ thuộc fA(x), nằm giữa 0 và 1, theo đó
x thuộc A:
 
1
,
0
: 
X
fA
Trường hợp đặc biệt, trong đó fA chỉ lấy những giá trị bằng 0 hay 1, tập
con mờ A là một tập con cổ điển của X. Vậy một tập con cổ điển là một
trường hợp riêng của tập con mờ.
Từ nay về sau, ta sẽ ký hiệu F(X) là tập tất cả các tập con mờ của X. Ký
pháp sau đây vẫn được dùng để biểu diễn tập con mờ A, mặ dù nó không liên
quan gì đến ý lấy tổng hoặc láy tích phân. Nó chỉ ra với mọi phần tử x của X,
độ thuộc fA(x) của nó vào A:
Ký pháp:








 
x
A
X
x A
x
x
f
A
x
x
f
A
/
)
(
/
)
(
2.1.2. Các đặc trưng của một tập con mờ
Những đặc trưng hữu ích nhất của một tập con mờ A của X để mô tả nó
là những đặc trưng chỉ rõ nó khác với một tập con thông thường của X ở điểm
nào.
Đặc trưng thứ nhất là giá của A, là tập những phần tử của X ít nhất có
thuộc A một chút.
21
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Định nghĩa 2.2: Giá của A, ký hiệu supp(A), là bộ phận của X trên đó
hàm thuộc của A khác không:
Supp(A)= 
0
)
(
/ 
 x
f
X
x A
Đặc trưng thứ hai của A là chiều cao của nó, ký hiệu h(A), là độ thuộc
lớn nhất mà một phần tử của X thuộc A.
Định nghĩa 2.3: Chiều cao, ký hiệu h(A), của tập con mờ A của X là giá
trị lớn nhất mà hàm thuộc có thể lấy được:
h(A)= )
(
sup x
fA
X
x
Người ta thường dùng các tập con mờ được chuẩn hóa, có nghĩa với
chúng có ít nhất một phần tử của X thuộc tuyệt đối (với độ thuộc 1) vào A.
Nói riêng, lý thuyết khả năng cần tới những tập con mờ được chuẩn hóa.
Định nghĩa 2.4: Tập con mờ A của X là được chuẩn hóa nếu chiều cao
h(A) của nó bằng 1.
Một tập con mờ được chuẩn hóa giả định có tồn tại những phần tử của
X điển hình cho tính chất được liên kết với nó. Đó là những phần tử thuộc A
tuyệt đối và tập những phần tử đó được gọi là hạt nhân của A.
Định nghĩa 2.5: Hạt nhân của A, ký hiệu ker(A), là tập các phần tử của
X tại đó hàm thuộc của A có giá trị 1:
Ker(A)= 
1
)
(
/ 
 x
f
X
x A
Khi tập X là hữu hạn, ta cón đặc trưng tập con mờ A của X bởi lực
lượng của nó, chỉ rõ độ thuộc tổng thể mà các phần tử của X thuộc A.
Định nghĩa 2.6: Lực lượng của tập con mờ A của X được định nghĩa
bởi:
|A|= X
x A x
f )
(
22
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Nếu A là tập con thông thường của X, chiều cao của nó bằng 1; nó
được chuẩn hóa và đồng nhất với giá và hạt nhân của nó; lực lượng của nó
chính là số phần tử của tập theo định nghĩa cổ điển.
2.1.3. Các phép toán trên các tập con mờ
a. Sự bằng nhau và sự bao hàm (chứa nhau) của các tập con mờ
Định nghĩa 2.7: Hai tập con mờ A và B của X là bằng nhau nếu các
hàm thuộc của chúng lấy cùng giá trị với mọi phần tử của X:
)
(
)
(
: x
f
x
f
X
x B
A 


Định nghĩa 2.8: Cho hai tập con mờ A và B của X, ta nói rằng A bao
hàm trong B, ký hiệu B
A  , nếu các hàm thuộc của chúng thỏa điều kiện
)
(
)
(
: x
f
x
f
X
x B
A 


b. Giao và hợp của các tập con mờ
Định nghĩa 2.9: Giao của hai tập con mờ A và B của X là tập con mờ C,
ký hiệu B
A  , sao cho:
))
(
),
(
min(
)
(
: x
f
x
f
x
f
X
x B
A
C 

 ,
Min ký hiệu toán tử lấy cực tiểu
Định nghĩa 2.10: Hợp của hai tập con mờ A và B của X là tập con mờ
D, ký hiệu là B
A  sao cho:
))
(
),
(
max(
)
(
: x
f
x
f
x
f
X
x B
A
D 

 ,
Max ký hiệu toán tử lấy cực đại.
Tính chất 1:
 Tính kết hợp của  và  ;
 Tính giao hoán của  và  ;
 ,
A
X
A 
 
 

A
 ,
A
A 
 X
X
A 

23
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
 B
A
A
B
A 



 )
'
'
(
)
'
(
)
'
'
'
( B
A
B
A
B
B
A 





 )
'
'
(
)
'
(
)
'
'
'
( B
A
B
A
B
B
A 





 B
A
B
A
B
A 




c. Phần bù của một tập con mờ
Định nghĩa 2.11: Phần bù AC
của một tập con mờ A của X được định
nghĩa là tập con mờ của X với hàm thuộc:
)
(
1
)
(
: x
f
x
f
X
x A
A 



Tính chất 2:
 Các luật De Morgan: c
c
c
B
A
B
A 

 )
( , c
c
c
B
A
B
A 

 )
(
 A
A c
c

)
(
 X
c


 

c
X
 X
A
A c


Tính chất 3: Giá và hạt nhân của A và phần bù của nó nghiệm đúng:
(supp(Ac
))c
=ker(A), (ker(Ac
))c
= supp(A).
d. Tích Descartes của các tập con mờ
Định nghĩa 2.12: Cho các tập con mờ A1, A2, …, Ar được xác định
tương ứng trên X1,X2, …, Xr, ta định nghĩa tích Descartes của chúng
A=A1*A2*…*Ar như một tập con mờ của X có hàm thuộc:
))
(
),...
(
min(
)
(
,
)
,...,
,
( 1
2
1 1 r
A
A
A
r x
f
x
f
x
f
X
x
x
x
x r




e. Hình chiếu của một tập con mờ
24
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Định nghĩa 2.13: Hình chiếu trên X1 của tập con mờ A của X1*X2 là tập
con mờ )
(
Pr 1
A
ojX của X1, với hàm thuộc được xác định bởi:
))
,
((
sup
)
(
, 2
1
1
)
(
Pr
1
1 2
2
1
x
x
f
x
f
X
x A
X
x
A
ojX 



Hình chiếu của A trên X2 cũng được định nghĩa tương tự.
Định nghĩa 2.14: hình chiếu trên Xa*Xb*….*Xk của tập con mờ A của
X1*X2*…Xr là tập con mờ Proj(A) của Xa*Xb*…*Xk với hàm thuộc được
định nghĩa là:
,
,...., k
k
a
a X
x
X
x 


  ,...))
((....
sup
)
,...,
( ,...,
,
1
/
)
(
Pr i
A
k
i
a
i
r
i
i
k
a
A
oj x
f
x
x
f 




f. Khuếch trụ của một tập con mờ
Định nghĩa 2.15: Khuếch trụ của một tập con mờ B của Xa*Xb*…*Xk
trên X= X1*X2*…Xr được định nghĩa là:
)
,...,
(
)
(
,
)
,...,
,...,
,...,
( 1 k
a
B
c
B
r
k
a x
x
f
x
f
X
x
x
x
x
x 



2.2. Quan hệ mờ
Quan hệ mờ đóng vai trò quan trọng trong Logic mờ và lập luận xấp xỉ.
Khái niệm quan hệ mờ là sự tổng quát hoá trực tiếp của khái niệm quan hệ
(quan hệ rõ). Trước hết ta nhắc lại về khái niệm quan hệ .
Giả sử U và V là hai tập . Một quan hệ R từ U đến V (sẽ được gọi là
quan hệ 2 ngôi, hoặc quan hệ nhị nguyên ) là một tập con của tích đề các UV.
Trong trường hợp U = V, ta nói R là quan hệ trên U. Chẳng hạn, tập R bao
gồm tất cả các cặp người (a, b) trong đó a là chồng của b, xác định quan hệ
“vợ _ chồng” trên tập người nào đó.
Khi U và V là các tập hữu hạn, chúng ta sẽ biểu diễn quan hệ R từ U
đến V bởi ma trận, trong đó các dòng được đánh dấu bởi các phần tử x  U và
các cột được đánh dấu bởi các phần tử y  V. Phần tử của ma trận nằm ở dòng
x, cột y là R(x,y)
1 nếu (x,y) R
R(x,y) =
25
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
0 nếu (x,y) R
Ví dụ 1: Giả sử U = {1,2,3} và V = {a,b,c,d} giả sử R là quan hệ từ U đến V
như sau:
R = {(1,a), (1,d), (2,a), (2,b), (3,c), (3,d)}
Chúng ta biểu diễn quan hệ R bởi ma trận sau:
1 0 0 1 1
1 1 0 0 2
0 0 1 1 3
a b c d
Bây giờ ta xét quan hệ “anh em họ gần” trên một tập người U nào đó.
Quan hệ này không thể đặc trưng bởi tập rõ của tích UU. Một cách hợp lý
nhất là xác định quan hệ này bởi một tập mờ R trên UU.
Chẳng hạn R(a,b) = 1 nếu a là anh em ruột của b; R(a,b) = 0,9 nếu a là
anh em con chú con bác của b; R(a,b) = 0,75 nếu a là anh em cháu cô, cháu
cậu của b;...
Một quan hệ mờ từ U đến V là một tập mờ trên tích đề các UV. Tổng
quát, một quan hệ mờ n ngôi là một tập R trong không gian tích đề các của n
không gian U1x U2 x … x Un.
Quan hệ mờ 2 ngôi R(u,v) gọi là:
1. Đối xứng nếu: R(u, v) = R(v, u)
2. Phản xạ nếu: R(u, u) = 1, u  U
3. Phản phản xạ nếu: R(u, u) = 0 , u  U
4. Bắc cầu Max_Min nếu R(u, v)  { R(u, w)  R(w, v): wW}
5. Bắc cầu Min_Max nếu R(u, v)  { R(u, w)  R(w, v): wW}
6. Phép hợp thành RS với RU W, S W U được định nghĩa như sau:
 RS (u, v) = { R(u, w)  S(w, v): wW}.
R =
26
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
R được gọi là quan hệ tương tự ( quan hệ tương đương mờ) nếu nó có các
tính chất:
 Phản xạ.
 Đối xứng.
 Bắc cầu.
R được gọi là quan hệ không tương tự nếu nó là phần bù của một quan hệ
tương tự hay một các tương đương, nó thỏa mãn các tính chất:
 Phản phản xạ.
 Phản đối xứng.
 Bắc cầu Min_Max
Ký hiệu dR(u, v) = R(u, v). Khi đó chúng ta thấy nó có các tính chất sau:
a. dR(u, v)  0.
b. dR(u, v) = dR(v, u).
c. dR(u, v) = dR(u, w)  dR(w, v).
Như vậy dR(u, v) có các tính chất tương tự như khoảng cách trong
không gian hình học và được gọi là khoảng cách Min_Max.
R là quan hệ giống nhau nếu nó thỏa mãn:
 Phản xạ.
 Đối xứng.
R là quan hệ không giống nhau nếu nó là phần bù của quan hệ giống
nhau, tức là:
 Phản phản xạ
 Đối xứng
Như vậy bao đóng bắc cầu R^ của quan hệ giống nhau là quan hệ tương
tự. R^ được tính theo công thức:
R^ = R1  R2 .... Rk ....
27
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
R=
Trong đó:
R2 = RR với  RS (u, v) = { R(u, w)  S(w, v): wW} .
Rk = Rk-1
R.
Để tính R^ ta thường dùng các kết quả sau :
1. Nếu có n mà Rn =Rn+1 thì R^ = R1R2....Rn
2. Nếu U hữu hạn và U  =n thì R^ = R1R2....Rn
Nếu R là quan hệ mờ tương tự thì tập mức  ,R = {u, v U: R (u, v) 
} của R là quan hệ tương đương kinh điển và do đó phân hoạch U thành các
lớp tương đương.
Ký hiệu R là phần bù của R tức là R = CR thì R là quan hệ không
tương tự và R1- = {u,v U : R(u, v)=dR(u, v) 1-} = R.
Nói cách khác, khoảng cách giữa hai phần tử bất kỳ trong cùng một lớp
tương đương không vượt quá 1-.
Tương tự như trường hợp quan hệ rõ, khi cả U và V là các tập hữu hạn,
chúng ta sẽ biểu diễn quan hệ mờ R bởi ma trận trong đó phần tử nằm ở dòng
xU, cột yV là mức độ thuộc của (x,y) vào tập mờ R.
Ví dụ : Chúng ta giả sử U = {1,2,3}, V = {a,b,c} và R là quan hệ mờ từ
U đến V như sau:
R =
)
,
3
(
42
,
0
)
,
3
(
0
)
,
3
(
9
,
0
)
,
2
(
8
,
0
)
,
2
(
75
,
0
)
,
2
(
3
,
0
)
,
1
(
0
)
,
1
(
1
)
,
1
(
5
,
0
c
b
a
c
b
a
c
b
a








Quan hệ mờ trên được biểu diễn bởi ma trận:
0,5 1 0 1
0,3 0,75 0,8 2
0,9 0 0,42 3
a b c
Kết luận: phần trên giới thiệu những vấn đề khái quát về logic mờ làm cơ sở
cho việc ứng dụng giải bài toán tối ưu đa mục tiêu
28
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Chương 3: KẾT HỢP GIẢI THUẬT DI TRUYỀN VÀ LOGIC MỜ
GIẢI BÀI TOÁN TỐI ƯU ĐA MỤC TIÊU
Chương này trình bày những vấn đề ứng dụng cơ sở lý thuyết để giải
bài toán tối ưu đa mục tiêu
3.1 . Bài toán tối ưu đa mục tiêu
Trong nhiều ứng dụng thực tế gắn liền với việc thiết kế và kế hoạch hóa
trong các ngành kinh tế - kĩ thuật, điều khiển các hoạt động sản xuất, chúng
ta thường gặp những bài toán liên quan đến việc phân tích, lựa chọn
phương án tốt nhất thoả mãn nhiều mục tiêu khác nhau. Đó là bài toán tối
ưu đa mục tiêu.
3.1.1. Phát biểu bài toán
max(min)
)
( 
X
Y
n
R
D
X 

Trong đó: k
k R
X
Y
X
Y
X
Y 
 ))
(
),...,
(
(
)
( 1 gọi là vectơ mục tiêu.
X gọi là phương án. D gọi là tập các phương án.
k
Y
Y ,...,
1 gọi là các hàm mục tiêu.
Các bài toán tối ưu đa mục tiêu thường có nhiều hàm mục tiêu với các
ràng buộc khác nhau và các lời giải khác nhau. Các lời giải này thưòng không
so sánh được với nhau. Vì vậy người ta đưa ra tập lời giải tối ưu Pareto.
Lời giải trội( phương án trội): Lời giải X được gọi là trội hơn lời giải Y
nếu i
 ta đều có: )
(
)
( Y
F
X
F i
i  , còn Y được gọi là phương án bị trội bởi X.
Phương án Pareto tối ưu: Một phương án X được gọi là phương án
Pareto tối ưu nếu X không thể bị trội bởi bất kì phương án nào khác thuộc
miền giới hạn.
Nếu bài toán tối ưu đa mục tiêu có nghiệm được gọi là tối ưu theo một
cách định nghĩa nào đó thì không phụ thuộc vào cách định nghĩa đã chọn,
nghiệm tối ưu đó phải là một phương án Pareto tối ưu.
3.1.2. Một số phương pháp giải
Có nhiều phương pháp để giải bài toán tối ưu đa mục tiêu như: phương
pháp nhượng bộ dần, phương pháp tìm nghiệm có khoảng cách ngắn nhất đến
29
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
nghiệm lý tưởng, phương pháp giải theo dãy mục tiêu đã được sắp xếp,
phương pháp trọng số...nhưng trong phạm vi nghiên cứu của đề tài chỉ trình
bày một số phương pháp giải sau:
3.1.2.1 Phương pháp trọng số
Trong phương pháp này hàm lợi ích U tuyến tính theo các giá trị phương
án
p
X
Y
U 
))
(
( , )
(
)
(
1
X
Y
p
X
Y i
k
i
i



Bài toán QHĐMT viết ở dạng này là:
)
(
max
1
X
Y
p i
k
i
i


(1.1)
D
X  (1.2)
Về mặt thực tiễn pi có thể xem là tỉ lệ quy đổi thứ nguyên của mục tiêu
thứ i. Chẳng hạn ta quy đổi tất cả các mục tiêu về dạng tiền tệ, khi đó pi biểu
diễn rằng: Một đơn vị mục tiêu thứ i có thể được thay thế bởi pi đơn vị tiền tệ.
Bài toán (1.1), (1.2) là một bài toán quy hoạch đơn chỉ phụ thuộc tham
số. Đặc biệt nếu mọi Yi(i=1,…,k) là các hàm tuyến tính thì ta có một bài toán
quy hoạch tuyến tính phụ thuộc tham số ở hàm mục tiêu.
Ở đây quan hệ ,
 ~ được rút ra thông qua việc so sánh hàm mục tiêu
(1.1).
3.1.2.2 . Phương pháp tìm nghiệm có khoảng cách ngắn nhất đến nghiệm
lý tưởng
Nghiệm lý tưởng ta là một nghiệm (nói chung không nhất thiết là phương án
chấp nhận được), mà tại đó giá trị của mỗi hàm mục tiêu riêng rẽ đều đạt cực
đại.
Ở đây giá trị hàm lợi ích tỉ lệ với khoảng cách từ phương án X  D đến cái gọi
là nghiệm lý tưởng. Phương án 2
1 X
X  khi và chi khi X1 gần nghiệm lý
tưởng hơn X2.
Giả sử X1, X2  Rn
. Khoảng cách giữa hai điểm X1, X2 là một số dα xác
định bởi:
30
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
dα =














n
i
i i
X
X
1
2
1
Với X1
= (X1
1,…, X1
n); X2
= (X2
1,…, X2
n)
α là tham số (α >=1)
Số dα có tính chất: d∞  dα  d1
Với d∞ = lim d∞= max
Bài toán tối ưu đa mục tiêu
Max Y(X)
X  D
X*
là nghiệm lý tưởng.
Giả sử Y* là các giá trị tối ưu của từng mục riêng rẽ (Y*i = maxY(X)).
Khi đó giá trị của hàm mục tiêu Y tại X* là : (Y*1,…,Y*k) và khoảng cách từ
một phương án X đến nghiệm lý tưởng xác định bởi:
d=









k
i
i
i Y
X
Y
1
*
)
(

Bài toán cực tiểu khoảng cách đến nghiệm lý tưởng là:
minα









k
i
i
i Y
X
Y
1
*
)
(

(1.3)
X  D (1.4)
Ở đây vấn đề xác định α nói chung phụ thuộc vào các bài toán cụ thể và
các kết quả về mặt lý thuyết để tìm ra một thuật toán giải bài toán quy hoạch
(1.3) và (1.4).
Với trường hợp α=1 việc cực tiểu hoá :
Mindi
XD
= min
XD
 



k
i
i
Y
X
Y
1
*
1

Tương đương với tìm: max
XD
)
(
1
X
Y
k
i
i


Và 2
1
X
X   
 


k
i
i
k
i
i X
Y
X
Y
1
2
1
1
)
(
)
( .
Trường hợp α = ∞:
31
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Bài toán : mind
XD
= min
XD
max
1ik
 
)
(
*
X
Y
Y i
i 
Còn có thể viết dưới dạng :
min W (1.5)
Y*1-Yi(X)  W i = 1,k
XD (1.6)
Nếu X* là nghiệm của (1.5), (1.6) thì nó là nghiệm thoả hiệp tốt nhất
theo nghĩa  X  D: X* X hoặc X hoặc X* ~ X (trường hợp sau xảy ra khi
X cũng là nghiệm tối ưu).
Ở đây 1
 = Y* 1 - W ta hiểu là nhượng bộ của mục tiêu thứ 1, như thế
quan điểm nhượng bộ ở đây là dựa trên nhượng bộ đồng đều theo tất cả các
chỉ tiêu, phương án X* là trội nhất nếu nhượng bộ “đều ” của nó là nhỏ nhất.
Trong trường hợp chung, tập các nghiệm của (1.3), (1.4) là tập các nghiệm
thoả hiệp tốt nhất. Người ta cũng chứng minh được rằng tập các nghiệm thỏa hiệp
tốt nhất là một tập con của tập các nghiệm không cải tiến được.
Zeleny (1974) đã chứng minh: Tập các nghiệm thoả hiệp ứng với
dα(1α∞) nằm trong khoảng nghiệm ứng với d1 và dα.
Còn trong trường hợp α = ∞ Xalucvatde có nêu ra một thuật toán thoả
hiệp. Ở đây các quan hệ , ~ được dựa trên các metric dα:
X1
 X2










k
i
i
i X
Y
Y
1
1
)
(
*

<









k
i
i
i X
Y
Y
1
2
)
(
*

X1
~ X2










k
i
i
i X
Y
Y
1
1
)
(
*

<









k
i
i
i X
Y
Y
1
2
)
(
*

3.2. Thuật toán đề xuất
Bước 1: Khởi tạo
Khởi tạo quần thể QT gồm M (=Size) cá thể một cách ngẫu nhiên
Tính các giá trị hàm mục tiêu Fi(x) với mỗi xQT.
Độ phù hợp của mỗi cá thể được tính bởi a1F1(x) + … + akFk(x)
trong đó các ai khởi tạo ngẫu nhiên sao cho: ai[0,1] và a1 + … + ak =
1. Thông thường việc gán các giá trị ai được cho trước bởi các chuyên gia, tuy
32
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
nhiên để đảm bảo độ phù hợp nhất của mỗi cá thể ta lựa chọn ai tại mỗi bước
lặp ai có giá trị lớn nhất. Và cá thể phù hợp nhất sẽ được giữ lại cho bước tiến
hóa (ở đây là tư tưởng dùng tính mờ của độ phù hợp mỗi cá thể kết hợp với
thuật toán di truyền tại mỗi bước lặp trong thuật toán di truyền. Bởi thực chất
ra thuật toán di truyền cũng là giải thuật toán xác xuất, vì thế ta dùng việc lựa
chọn ai như trên để đánh giá và lựa chọn cá thể phù hợp nhất tại mỗi bước lặp).
Bước 2: Tiến hóa
Trong quần thể QT, ta thực hiện:
2.1: Chọn ngẫu nhiên 2 cá thể cha mẹ. Lai ghép tạo ra 2 cá thể con mới.
2.2: Thực hiện đột biến (với xác suất đột biến là pm) một trong hai cá
thể con vừa tạo ra.
2.3: Tính độ phù hợp của mỗi cá thể vừa tạo.
2.4: So sánh các cá thể cha mẹ với các con vừa tạo. Cá thể nào có độ
phù hợp tốt hơn thì được đưa vào quần thể kế tiếp.
Bước 3: Nếu chưa thỏa mãn điều kiện dừng thì chuyển về B2.
Bước 4: Đưa ra quần thể cuối cùng cho người dùng lựa chọn
Tiêu chuẩn để so sánh 2 cá thể là
Cá thể x “tốt hơn” y nếu
a1F1(x) + … + akFk(x) < a1F1(y) + … + akFk(y)
trong đó các ai khởi tạo ngẫu nhiên sao cho a1 + … + ak = 1.
3.3. Thử nghiệm
3.3.1 Bài toán thử nghiệm
3.3.1.1 Bài toán 1 [10]
 



















3
3
,
2
,
1
,
4
,
4
Min
)
)
3
1
(x
exp(-
-
1
=
F2(x)
Min
)
)
3
1
-
(x
exp(-
-
1
=
F1(x)
2
i
3
1
i
2
i
n
i
xi
a. Mã hóa
Bài toán này gồm có 2 hàm mục tiêu đều tiến đến Min, mỗi hàm bao
gồm 3 biến. Vì vậy, mỗi cá thể (lời giải của bài toán) được mã hóa là một
33
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
véctơ thực 6 chiều. Trong đó 6 thành phần đầu biểu diễn các giá trị biến xi
(i=1,…,3); thành phần thứ 4, thứ 5 để ghi giá trị các hàm mục tiêu f1, f2 ứng
với cá thể này. Thành phần thứ 6 để ghi giá trị hàm tổ hợp các mục tiêu của cá
thể khi sử dụng giải thuật đề xuất, và để ghi giá trị độ thích nghi của từng cá
thể khi sử dụng GA nhằm đánh giá trong việc chọn các cá thể đưa vào quần
thể mới .
b. Các toán tử lai, đột biến:
Toán tử lai: Toán tử SBX (Simulated Binary Crossover)
Giả sử x = (x1, x2 , ... xn) và y = (y1, y2 , ..., yn) là hai cá thể cha mẹ đã
chọn để tạo sinh. Khi đó hai cá thể con c1
= (c1
1, ... , c1
n) và c2
= (c2
1, ... , c2
n )
được sinh ra theo công thức:
c1
i = 0.5*((1 + ) * xi + (1 - ) * yi) (2.4)
c2
i = 0.5*((1 - ) * xi + (1 + ) * yi) (2.5)
trong đó  được tính bởi công thức:












otherwise
u
u
if
u
1
1
1
1
)
)
1
(
*
2
1
(
5
.
0
)
*
2
(


 (2.6)
với u là số ngẫu nhiên trong [0, 1];  là tham số điều khiển.
Thủ tục lai ghép như sau:
%lai ghep
i1=1+fix(m*rand);
i2=1+fix(m*rand);
y(1,:)=x2(i1,:);
y(2,:)=x2(i2,:);
for v2=1:n;
lamda=2;
u=rand;
beta=lamda*exp(-lamda*u);
34
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
yy1=0.5*((1+beta)*y(1,v2)+(1-beta)*y(2,v2));
yy2=0.5*((1+beta)*y(2,v2)+(1-beta)*y(1,v2));
if (yy1>=left)&(yy1<=righ);
y(1,v2)=yy1;
else;
y(1,v2)=u*x2(i1,v2)+(1-u)*x2(i2,v2);;
end;
if (yy2>=left)&(yy2<=righ);
y(2,v2)=yy2;
else;
y(2,v2)=(1-u)*x2(i1,v2)+u*x2(i2,v2);;
end;
end;
Toán tử đột biến: sử dụng đột biến đều, với một gen i được chọn ngẫu
nhiên để đột biến từ cá thể b = (x1 , x2, ... , xN), thành phần xi được thay thế
bởi một số ngẫu nhiên trong khoảng xác định [li, ui] của xi .
Thủ tục đột biến như sau:
%Dot bien
vd=1+fix(n*rand); %vi tri dot bien
if rand<pm; %dot bien
if rand<0.5;
db=left+rand*(righ-left);
y(1,vd)=db;
else
db=left+rand*(righ-left);
y(2,vd)=db;
end;
end;
c. Các tham số :
Các tham số được sử dụng trong bài toán này là:
 Kích thước quần thể: 30
35
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
 Xác suất lai 1, đột biến 0.1.
 Chương trình thực hiện tiến hoá sau 1000 thế hệ.
d. Thuật toán
Khi sử dụng GA:
Bước 1: Khởi tạo quần thể QT gồm M(=Size) cá thể một cách ngẫu nhiên
Tính các giá trị hàm mục tiêu F1(x), F2(x); với mỗi xQT
Bước 2: Tính  
QT
x
x
MT 
 |
)
(
F
min
1 1
 
QT
x
x
F
MT 
 |
)
(
min
2 2
Dem:=1;
Bước 3: Trong các cá thể trong quần thể QT, ta thực hiện:
Bước 3.1: Chọn ngẫu nhiên 2 cá thể cha mẹ
Bước 3.2: Lai ghép tạo ra 2 cá thể con mới.
Bước 4: Với 2 cá thể con vừa sinh ra trong phép lai ghép trên, ta thực hiện đột
biến (nếu xác suất đột biến là 0.1) và đột biến tại một trong hai cá thể này tùy
thuộc vào giá trị ngẫu nhiên tạo ra.
Bước 5: Tính giá trị các hàm mục tiêu của 2 cá thể sau khi đột biến, từ đó tính độ
thích nghi của chúng. So sánh chúng với cha mẹ để chọn cá thể đưa vào quần thể
sau.
Nếu độ thích nghi của cá thể con tốt hơn độ thích nghi của cha mẹ thì thay
cha mẹ bởi các con tương ứng và xác suất ngẫu nhiên có thể chọn các cá thể con
này là 0.1.
Bước 6: Dem= Dem+1;
Bước 7: Nếu Dem = 80 thì quay về bước 2, nếu không thì chuyển đến B8.
Bước 8: Nếu chưa thỏa mãn điều kiện dừng thì chuyển về B3.
Khi sử dụng GA kết hợp FL:
Bước 1: Khởi tạo quần thể QT gồm M(=Size) cá thể một cách ngẫu nhiên
Tính các giá trị hàm mục tiêu F1(x), F2(x); với mỗi xQT
Bước 2: Trong các cá thể trong quần thể QT, ta thực hiện:
Bước 2.1: Chọn ngẫu nhiên 2 cá thể cha mẹ
Bước 2.2: Lai ghép tạo ra 2 cá thể con mới.
36
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Bước 3:Với 2 cá thể con vừa sinh ra trong phép lai ghép trên, ta thực hiện đột
biến (nếu xác suất đột biến là 0.1) và đột biến tại một trong hai cá thể này tùy
thuộc vào giá trị ngẫu nhiên tạo ra.
Bước 4: Tính giá trị các hàm mục tiêu của 2 cá thể sau khi đột biến, từ đó tính giá
trị tổ hợp các mục tiêu của chúng. So sánh chúng với cha mẹ để chọn cá thể đưa
vào quần thể sau.
Bước 5: Nếu chưa thỏa mãn điều kiện dừng thì chuyển về B2.
e. Kết quả được cho trong bảng sau:
Lần thử thứ 1 Lần thử thứ 35 Lần thử thứ 100
GA GA+FL GA GA+FL GA GA+FL
x1 0.53317 0.54056 0.52367 0.54489 0.51699 0.52863
x2 0.52933 0.54953 0.52627 0.54569 0.51106 0.52954
x3 0.52571 0.53832 0.53282 0.55695 0.50434 0.54802
f1
0.00690
1
0.00364
4
0.007445 0.002469
0.01327
9
0.00550
5
f2 0.97464 0.97682 0.97434 0.97779 0.97134 0.97564
Giá trị
trung bình
0.4908 0.4902 0.4909 0.4903 0.4924 0.4906
Bảng 3.1: Một số lời giải sử dụng GA và GA kết hợp FL của bài toán 1.
Trong bảng trên, cột GA là kết quả quá trình tiến hóa quần thể gồm 30 cá
thể sau 1000 thế hệ và sau 100 lần lặp thì cập nhật lại giá trị lý tưởng sử dụng độ
thích nghi đế đánh giá và chọn lọc cá thể, còn cột GA + FL là kết quả quá trình
tiến hóa quần thể gồm 30 cá thể sau 1000 thế hệ sử dụng giá trị tổ hợp các mục
tiêu để đánh giá và chọn lọc cá thể.
Theo tác giả [10], các hàm mục tiêu đạt giá trị tốt nhất khi x 

 
3
1
, 


3
1
.
Kết quả ở bảng trên cũng hoàn toàn phù hợp với kết quả này, giá trị các hàm
mục tiêu càng tiến dần tới Min khi giá trị của các xi xấp xỉ bằng nhau và
x 

 
3
1
, 


3
1
. Việc sử dụng giải thuật GA và giải thuật đề xuất có những ưu
nhược điểm nhất định, tùy vào mục đích yêu cầu của người sử dụng mà ta có
37
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
thể chọn phương pháp giải cho bài toán cho phù hợp. Trong hai giải thuật này
thì giải thuật đề xuất cho kết quả mà giá trị trung bình của các hàm mục tiêu
nhỏ hơn, nghĩa là các cá thể được chọn đến quần thể cuối cùng trong giải thuật
này có tính đồng đều hơn.
3.3.1.2 Bài toán 2 [5]
 





































6
,...
1
,
1
,
0
)))
5
.
0
(
*
2
cos(
)
5
.
0
((
5
*
100
)
1
(
*
)
1
(
*
2
1
2
)
1
(
*
*
2
1
1
6
2
2
1
1
n
n
i
x
x
x
g
Min
g
x
f
Min
g
x
f
i
i
i 
a. Mã hóa
Bài toán này gồm có 2 hàm mục tiêu đều tiến đến Min, mỗi hàm bao
gồm 6 biến. Vì vậy, mỗi cá thể (lời giải của bài toán) được mã hóa là một
véctơ thực 9 chiều. Trong đó 6 thành phần đầu biểu diễn các giá trị biến xi
(i=1,…,6); thành phần thứ 7, thứ 8 để ghi giá trị các hàm mục tiêu f1, f2 ứng
với cá thể này; thành phần thứ 9 để ghi giá trị hàm tổ hợp các mục tiêu của cá
thể khi sử dụng giải thuật đề xuất, và để ghi giá trị độ thích nghi của từng cá
thể khi sử dụng GA nhằm đánh giá trong việc chọn các cá thể đưa vào quần
thể mới .
b. Các toán tử lai, toán tử đột biến, các tham số và thuật toán của bài toán 2
đều tương tự như bài toán 1.
c. Kết quả được cho trong bảng sau:
Lần thử thứ 1 Lần thử thứ 35 Lần thử thứ 100
GA GA+FL GA GA+FL GA GA+FL
38
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
x1 0.90684 0.55335 0.41262 0.53912 0.29618 0.54436
x2 0.50682 0.50601 0.49908 0.49969 0.51565 0.50846
x3 0.46392 0.5006 0.50634 0.50023 0.51017 0.50211
x4 0.50353 0.50017 0.5002 0.50396 0.51134 0.50308
x5 0.48758 0.50112 0.50341 0.49889 0.49086 0.50028
x6 0.50382 0.50167 0.52386 0.50036 0.48621 0.50327
f1 1.8867 0.29993 0.47198 0.27919 0.37851 0.32652
f2 0.19384 0.24209 0.67188 0.23867 0.89945 0.2733
Giá trị trung bình 1.0408 0.2716 0.5737 0.2595 0.6422 0.3024
Thời gian chạy 0.092 0.196 0.109 0.218 0.12 0.237
Bảng 3.2: Một số lời giải sử dụng GA và GA kết hợp FL của bài toán 2.
Trong bảng trên, cột GA là kết quả quá trình tiến hóa quần thể gồm 30 cá
thể sau 1000 thế hệ và sau 100 lần lặp thì cập nhật lại giá trị lý tưởng sử dụng độ
thích nghi đế đánh giá và chọn lọc cá thể, còn cột GA + FL là kết quả quá trình
tiến hóa quần thể gồm 30 cá thể sau 1000 thế hệ sử dụng giá trị tổ hợp các mục
tiêu để đánh giá và chọn lọc cá thể.
Theo tác giả [5], các hàm mục tiêu đạt giá trị tốt nhất khi x=0.5. Kết quả
ở bảng trên cũng hoàn toàn phù hợp với kết quả này, giá trị các hàm mục tiêu
càng tiến dần tới Min khi giá trị của các xi xấp xỉ bằng nhau và x0.5. Trong
hai giải thuật này thì giải thuật đề xuất cho kết quả mà giá trị trung bình của
các hàm mục tiêu nhỏ hơn. Tuy nhiên, giá trị mục tiêu thì trong mỗi lần chạy
lại cho những kết quả không cố định nên tùy vào yêu cầu của người nhận lời
giải mà chọn phương pháp phù hợp.
3.3.1.3. Bài toán 3 [10]
39
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn




















30
n
1..30
i
[0,1];
x
1)
-
)/(n
x
(
*
9
+
1
=
g(x)
min
/g(x)))
(x
-
(1
*
g(x)
F2(x)
min
x
F1(x)
n
2
i
i
1
1
a. Mã hóa
Bài toán này gồm có 2 hàm mục tiêu đều tiến đến Min, mỗi hàm bao
gồm 30 biến. Vì vậy, mỗi cá thể (lời giải của bài toán) được mã hóa là một
véctơ thực 33 chiều. Trong đó 30 thành phần đầu biểu diễn các giá trị biến xi
(i=1,…,30); thành phần thứ 31, thứ 32 để ghi giá trị các hàm mục tiêu f1, f2
ứng với cá thể này; thành phần thứ 33 để ghi giá trị hàm tổ hợp các mục tiêu
của cá thể khi sử dụng giải thuật đề xuất, và để ghi giá trị độ thích nghi của
từng cá thể khi sử dụng GA nhằm đánh giá trong việc chọn các cá thể đưa vào
quần thể mới.
b. Các toán tử lai, toán tử đột biến, các tham số và thuật toán của bài toán 3
đều tương tự như bài toán 1.
c. Kết quả được cho trong bảng sau:
40
Lần thử thứ 1 Lần thử thứ 35 Lần thử thứ 100
GA GA+FL GA GA+FL GA GA+FL
x1 0.15482 0.084058 0.62662 0.18499 0.51478 0.084101
x2 0.16585 0.12662 0.10642 0.5028 0.33008 0.26395
x3 0.26327 0.29386 0.22727 0.11887 0.081155 0.22197
x4 0.15009 0.077826 0.2944 0.36481 0.43089 0.097028
x5 0.63224 0.30424 0.11755 0.46638 0.42374 0.15209
x6 0.34625 0.26004 0.34936 0.17919 0.1877 0.1981
x7 0.29794 0.81561 0.17381 0.09913 0.38651 0.013321
x8 0.28267 0.25818 0.48224 0.11706 0.22452 0.39959
x9 0.44043 0.44251 0.18435 0.44914 0.31189 0.071752
x10 0.19174 0.12697 0.30965 0.15359 0.38772 0.22791
x11 0.20197 0.31449 0.17657 0.15663 0.43363 0.3182
x12 0.083901 0.26798 0.34444 0.3536 0.61304 0.43493
x13 0.55726 0.2706 0.30772 0.22121 0.27541 0.20517
x14 0.49689 0.024928 0.65522 0.24375 0.14927 0.11059
x15 0.44053 0.32172 0.49138 0.15509 0.32192 0.023817
x16 0.47128 0.40979 0.61357 0.60229 0.32644 0.2227
x17 0.20155 0.096655 0.09922 0.31347 0.099068 0.38282
x18 0.11034 0.16986 0.56066 0.34096 0.2856 0.14097
x19 0.082088 0.20184 0.78217 0.32699 0.20936 0.13578
x20 0.35177 0.44851 0.34502 0.20571 0.60769 0.67773
x21 0.20732 0.18577 0.084859 0.14799 0.61583 0.30763
x22 0.28223 0.41607 0.18523 0.080261 0.1953 0.61245
x23 0.44567 0.144 0.11284 0.34933 0.37708 0.32425
x24 0.078637 0.1561 0.15885 0.15292 0.18368 0.2292
x25 0.12173 0.64318 0.49164 0.3942 0.2147 0.098754
41
x26 0.3834 0.53869 0.43095 0.21492 0.16024 0.76411
x27 0.18261 0.21196 0.44294 0.1206 0.059399 0.18899
x28 0.35402 0.17371 0.13455 0.31471 0.36455 0.64891
x29 0.24522 0.12535 0.29752 0.16653 0.41993 0.42386
x30 0.19819 0.10525 0.082369 0.32897 0.27481 0.19759
f1 0.15482 0.084058 0.62662 0.18499 0.51478 0.084101
f2 5.0285 4.9424 4.8976 4.7289 4.9685 5.0342
Giá trị trung bình 2.602948 2.553414 2.777312 2.515 2.747602 2.626977
Bảng 3.3: Một số lời giải sử dụng GA và GA kết hợp FL của bài toán 3.
Trong bảng trên, cột GA là kết quả quá trình tiến hóa quần thể gồm 30 cá thể
sau 1000 thế hệ và sau 100 lần lặp thì cập nhật lại giá trị lý tưởng sử dụng độ thích
nghi đế đánh giá và chọn lọc cá thể, còn cột GA + FL là kết quả quá trình tiến hóa
quần thể gồm 30 cá thể sau 1000 thế hệ sử dụng giá trị tổ hợp các mục tiêu để đánh
giá và chọn lọc cá thể.
Theo tác giả [10], các hàm mục tiêu đạt giá trị tốt nhất khi x1  [0,1] và
xi=0. Kết quả khi chạy chương trình cũng tương đối phù hợp với kết quả này.
Việc sử dụng giải thuật GA và giải thuật đề xuất có những ưu nhược điểm nhất
định, tùy vào mục đích yêu cầu của người sử dụng mà ta có thể chọn phương
pháp giải cho bài toán cho phù hợp.
3.3.2. Bài toán tối ưu đa mục tiêu điều khiển mức H trong bình khuấy trộn liên
tục
3.3.2.1. Bài toán.
Bài toán đặt ra là có hai dòng dung dịch độc lập, một là hỗn hợp dòng
nhiên liệu gồm: đường, chất phụ gia, hương liệu... và dòng thứ hai là nước tinh
khiết cùng được điều chỉnh lưu lượng Q1, Q2 qua van khí nén đổ vào bể trộn
khuấy liên tục. Đầu ra của bình trộn là lưu lượng dung dịch Q3 thay đổi liên tục
và phụ thuộc vào sự vận hành nhanh hay chậm của các công đoạn tiếp theo trong
42
dây truyền. Sự thay đổi liên tục của Q3 làm cho mức dung dịch H thay đổi theo.
Do vậy trong quá trình sản xuất thì mức dung dịch H liên tục biến động, nên vấn
đề giữ cho mức H ổn định nhanh chóng và chính xác được quan tâm. Từ sơ đồ
cấu trúc của dây truyền ta đưa ra hai hàm mục tiêu nhằm đáp ứng tối ưu các vấn
đề trên như sau:
+ Mục tiêu 1: Để ổn định mức dung dịch H chính xác nhất (tức là sai lệch
tĩnh e(t) là nhỏ nhất) ta sử dụng phiếm hàm:
2
1
( )
J E t dt min
 
 (3.1)
+ Mục tiêu 2: Để mức dung dịch H ổn định nhanh nhất (tức là thời gian
quá độ bé nhất) ta sử dụng phiếm hàm:
2
( )
J E t dt min
 
 (3.2)
Từ đó dùng giải thuật di truyền giải bài toán hai mục tiêu tối ưu trên với ẩn
bài toán là bộ thông số của bộ điều khiển (có thể là cả 3 hệ số: KP; KI; KD của bộ
điều khiển PID). Sau đó lấy nghiệm của bài toán tối ưu hai mục tiêu trên lắp vào
bộ điều khiển từ đó mô phỏng kết quả điều khiển mức dung dich H trên Matlab
Simulink và quan sát và đánh giá kết quả.
3.3.2.2. Tính toán hai hàm mục tiêu.
Từ sơ đồ khối điều khiển mức dung dịch H trong bình trộn (hình 3.1), giả sử
bộ điều khiển với luật điều khiển là PD ta có hàm truyền của bộ điều khiển như
sau: BDK P D
W ( ) .
s K K s
 
43
Nếu khoảng giá trị của các hệ số KD và KP được chọn như sau:
P
D
25 100
1,35 50
K
K
 


 

thì nghiệm của phương trình đặc trưng là:
K 1
W
1
s
K
1
s
+
WH
(-)
H
1
H(s
)
H
2
U(s)
2
W
Q1
Q2
E(s)
PD
Hình 3.1 Sơ đồ khối điều khiển mức bình trộn
với bộ điều khiển PD
Uđk
44
 
 
2
D D P
D
1
2
D D P
D
2
1,4 1 1,4 1 0,084.
1,4 1
0.03 0.03
1,4 1 1,4 1 0,084.
1,4 1
0.03 0.03
K K K
K
k
K K K
K
k
     
   
  


     
   
 


Khi đó nghhiệm của phương trình vi phân (1) như sau:
1 2
1 2
( ) .
k t k t
E t C e C e
 
Trong đó, C1 và C2 là hằng số. Không mất tính tổng quát chọn C1=C2= 1, ta có
một nghiệm riêng của phương trình vi phân (3.1) là:
1 2
( ) .
k t k t
E t e e
 
Thay 1 2
( ) k t k t
E t e e
  vào các hàm mục tiêu như sau:
+ Mục tiêu 1: Để ổn định mức dung dịch H chính xác nhất (tức là sai lệch
tĩnh E(t) là nhỏ nhất) ta sử dụng phiếm hàm:
 
1 2
2
1
2
1
( )
k t k t
J E t dt min
J e e dt min
 
   


 
 
 
1 2
1 2
1 2
1 2
2
2 2
1
2 t 2
1
1 1 2 2
2
1 2 1
2 2
k k t
k t k t
k k t
k k t
J e e e dt min
J e e e min
k k k k


    
    


+ Mục tiêu 2: Để mức dung dich H ổn định nhanh nhất (tức là thời gian
quá độ bé nhất) ta sử dụng phiếm hàm:
1 2
2
2
1 2
( )
k t k t
J E t dt min
e e
J min
k k
 
 
   
 
 

Trong đó:
45
 
 
2
D D P
D
1
2
D D P
D
2
1,4 1 1,4 1 0,084.
1,4 1
0.03 0.03
1,4 1 1,4 1 0,084.
1,4 1
0.03 0.03
K K K
K
k
K K K
K
k
     
   
  


     
   
 


Sau khi thay t = 3(s) và chọn  = 0,03 vào các hàm mục rút ra được bài toán điều
khiển tối ưu đa mục tiêu cho bình khuấy trộn liên tục với các ràng buộc như sau:
 
1 2
1 2
1 2
2 t 2
1
1 1 2 2
2
1 2
P
D
1 2 1
2 2
25 100
1,35 50
k k t
k k t
k t k t
J e e e min
k k k k
e e
J min
k k
K
K


   
 

  

  
  
 

  

 


46
3.3.2.3. Lưu đồ thuật toán
Bắt đầu
Khởi tạo quần thể
ban đầu (ngẫu nhiên)
1. Chọn ngẫu nhiên 2 cá thể x1, x2
2. Lai ghép tạo 2 con y1, y2
3. Đột biến y1 tuỳ theo xác suất đột biến pm
4. Nếu y1 “tốt hơn” x1 thì thay x1 bởi y1
Nếu y2 “tốt hơn” x2 thì thay x2 bởi y2
5. Dem = Dem +1
Dem = 1
Dem <= Số lần lặp
Ghi nhận quần thể cuối cùng
Kết thúc
Khởi tạo các tham số:
Số lần lặp,
Xác suất đột biến
Hình 3.2 Lưu đồ thuật toán
47
48
Ghi chú:
* Việc đánh giá cá thể “tốt hơn” như sau:
1) Trong 200 lần tiến hoá đầu tiên tiêu chí đánh giá dựa trên hàm mục tiêu f1
2) Trong 200 lần tiến hoá tiếp theo tiêu chí đánh giá dựa trên hàm mục tiêu f2
3) Trong 200 lần tiến hoá cuối cùng tiêu chí đánh giá dựa trên cả hai hàm
mục tiêu với trọng số f1, f2
Các tham số này hoàn toàn có thể thay đổi tuỳ theo ý của người sử dụng.
Các tham số dùng trong thuật toán này:
 Kích cỡ quần thể: 30.
 Xác suất lai ghép = 1.
 Xác suất đột biến pm = 0,1.
 Toán tử lai ghép là lai số học.
 Toán tử đột biến là đột biến đều.
 Số lần tiến hoá: 600.
3.3.2.4. Kết quả chạy chương trình tính toán bằng giải thuật.
STT KP KD J1 J2
1 25.895 18.995 -0.00014 -0.01473
2 25.895 19.113 -0.00015 -0.01517
3 25.895 18.759 -0.00013 -0.01387
4 25.895 18.887 -0.00014 -0.01433
5 25.895 19.195 -0.00016 -0.01548
6 25.895 18.824 -0.00013 -0.01411
7 25.895 19.445 -0.00017 -0.01646
8 25.895 18.956 -0.00014 -0.01458
9 25.895 18.349 -0.00011 -0.01246
10 25.895 19.456 -0.00017 -0.0165
11 25.895 18.52 -0.00011 -0.01304
12 25.895 19.112 -0.00015 -0.01517
13 25.895 19.331 -0.00017 -0.01601
49
14 25.895 18.915 -0.00014 -0.01443
15 25.895 19.111 -0.00015 -0.01516
16 25.895 19.009 -0.00014 -0.01478
17 25.895 19.226 -0.00016 -0.0156
18 25.895 18.37 -0.00011 -0.01253
19 25.895 19.389 -0.00017 -0.01623
20 25.895 19.372 -0.00017 -0.01617
21 25.895 19.346 -0.00017 -0.01606
22 25.895 18.946 -0.00014 -0.01455
23 25.895 19.408 -0.00017 -0.01631
24 25.895 19.2 -0.00016 -0.0155
25 25.895 19.24 -0.00016 -0.01565
26 25.895 19.325 -0.00017 -0.01598
27 25.895 19.397 -0.00017 -0.01626
28 25.895 18.957 -0.00014 -0.01459
29 25.895 19.283 -0.00016 -0.01582
30 25.895 19.026 -0.00014 -0.01484
Bảng 3.2 Kết quả chạy chương trình giải thuật di truyền
50
3.3.3. Kết quả mô phỏng trên Matlab Simulink.
Thay bộ giá trị tối ưu KD và KP vào thông số của bộ điều khiển PD, sau đó
mô phỏng sơ đồ khối điều khiển mức dung dịch H như sau:
*) Kết quả mô phỏng (với bộ thông sô thứ 9 trong bảng 3.2).
Hình 3.3 Sơ đồ mô phỏng điều khiển mức H trên Simulink
Hình 3.4 Kết quả mô phỏng với bộ giá trị thứ 9
của KD và KP trong bảng 3.2
51
*) So sánh kết quả mô phỏng (với bộ thông số khác KP =25.895 và KD = 30)
Hình 3.5 So sánh kết quả mô phỏng với 2 bộ giá trị
thứ 9 và bộ số khác của KP và KD
52
Nhận xét:
Qua kết quả mô phỏng trên Matlab Simulink với các bộ giá trị của (KP và
KD) lấy từ tập nghiệm của thuật toán giải thuật di truyền, ta có thể tìm thấy một
bộ nghiệm tối ưu mà ở đó ta thấy chất lượng điều khiển mức dung dịch H tăng rõ
rệt, độ sai lệch và thời gian quá độ đều nhỏ hơn so với các bộ giá trị khác.
Kết luận: phần trên trình bày những vấn đề ứng dụng cơ sở lý thuyết để giải bài
toán tối ưu đa mục tiêu điều khiển mức H trong bình khuấy trộn liên tục
53
KẾT LUẬN
Sau khi tìm hiểu đề tài: “Kết hợp logic mờ và giải thuật di truyền giải bài
toán tối ưu đa mục tiêu.”, em đã hiểu được một số vấn đề sau:
- Những nội dung cơ bản về giải thuật di truyền nhất là giải thuật di truyền
mã hoá số thực và logic mờ.
- Một số phương pháp giải bài toán tối ưu đa mục tiêu.
- Bước đầu nắm được kỹ thuật sử dụng giải thuật di truyền kết hợp với logic
mờ để giải bài toán tối ưu đa mục tiêu trong hai bài toán cụ thể.
- Biết xây dựng được chương trình bằng ngôn ngữ lập trình matlab 7.0.
Hướng phát triển
- Áp dụng cho lớp các bài toán khác phức tạp hơn.
- Phát triển thuật toán hoặc tích hợp với các kỹ thuật khác như mạng nơron
làm tăng hiệu suất tính toán và xử lý mềm dẻo hơn.
Do thời gian và trình độ còn hạn chế nên đề tài chỉ dừng lại ở mức đơn giản,
chương trình ứng dụng còn hạn chế, vì vậy đề tài không tránh khỏi những thiếu
sót cần bổ sung sửa chữa. Em mong nhận được sự nhận xét và góp ý của các thầy,
cô giáo và các bạn để đề tài được hoàn thiện hơn.
Thái Nguyên, tháng 09 năm 2012
Học viên
Đào Ngọc Tuất
54
TÀI LIỆU THAM KHẢO
Tiếng Việt
1. Hồ Thuần, Đặng Thanh Hà, “Logic mờ và ứng dụng”, NXB ĐHQGHN, 2007.
2. Nguyễn Đình Thúc, “Lập trình tiến hoá”, NXB KH&KT, 2003.
3. Bùi Minh Trí, “Quy hoạch toán học”, NXB KHKT, 2006.
4. Vũ Mạnh Xuân, “Một số giải pháp ứng dụng giải thuật di truyền trong tối ưu
đa mục tiêu”.
Tiếng Anh
5. C. Grosan and A. Abraham (2007), “Hybrid Line Search for Multiobjective
Optimization”.
6. Goldberg, D.E. (1989), “Genetic algorithms in search, optimization and
machine learning”, Addison-Wesley, Reading, MA.
7. K. Deb (1998), “Non-linear Goal Programming Using Multi-Objective Genetic
Algorithms”, Technical Report, No.CI-60/98.
8. K. Deb (1999), “Multi-Objective Genetic Algorithms: Problem Difficulties
and Construction of Test Problems”, Evolutionary Computation, 7(3),
205-230.
9. K.Deb (1999), “Multi-Objective Evolutionary Algorithms: Introducing Bias
Among Pareto-Optimal Solution”, KanGAL, Report No. 99002.
10. Kalyanmoy Deb, Associate Member, IEEE, Amrit, Sameer Agarwal, and T.
Meyarivan, A Fast and Elitist Multiobjective Genetic Algorithm: NSGA
– II.
55
PHỤ LỤC
Chương trình tính toán bài toán tối ưu đa mục tiêu điều khiển mức
dung dịch H của bình khuấy trộn liên tục bằng giải thuật di truyền.
1. Khai báo hệ số k1.
%Tinh cac he so
function ff1=k1(kp,kd);
ff1=((-1.4*kd)-1-sqrt((1.4*kd+1)^2-0.084*kp))/0.03;
%end;
2. Khai báo hệ số k2.
function ff2=k2(kp,kd);
ff2=((-1.4*kd)-1+sqrt((1.4*kd+1)^2-0.084*kp))/0.03;
return;
%end;
3. Khai báo hàm mục tiêu J1.
function mt1=f1(kp,kd);
kk1=k1(kp,kd); kk2=k2(kp,kd);
mt1=(1/(2*kk1)*exp(6*kk1))+(1/(2*kk2)*exp(6*kk2))+(2/(kk1+kk2))*exp(3*(kk
1+kk2));
return;
%end;
4. Khai báo hàm mục tiêu J2.
function mt2=f2(kp,kd);
kk1=k1(kp,kd); kk2=k2(kp,kd);
mt2=(exp(3*kk1))/kk1+(exp(3*kk2))/kk2;
return;
%end;
56
5. Chương trình giải bài toán tối ưu hai mục tiêu J1, J2.
%chuong trinh bai toan điều khiển mức
clear; format long g;
left1=25; righ1=100;
left2=1.35; righ2=50;
lap=600; %so lan lap
pm=0.1;
m=30; n=4; %m: kich co QT; n: chieu;
pm=0.1; % xac suat dot bien
x=zeros(m,n); %Khoi tao quan the x; x(1): kp; x(2): kd; x(3):f1; x(4): f2
xx=x;
mt=zeros(1,2);
y=zeros(2,n); %cac ca the con
t1=clock;
%khoi tao
for v1=1:m;
kp=left1+rand*(righ1-left1);
kd=left2+rand*(righ2-left2);
x(v1,1)=kp;
x(v1,2)=kd;
x(v1,3)=f1(kp,kd);
x(v1,4)=f2(kp,kd);
end;
m1=min(x(:,3))
m2=min(x(:,4))
mt(1)=m1; mt(2)=m2; %muc tieu ly tuong
xx=x;
for v1=1:lap;
57
if rem(v1,100)==0;
mt(1)=min(xx(:,3));
elseif rem(v1,200)==0;
mt(2)=min(xx(:,4));
end;
%lai ghep
i1=1+fix(m*rand);
i2=1+fix(m*rand);
kp1=xx(i1,1); kp2=xx(i2,1); %lai 1 diem
kd1=xx(i1,2); kd2=xx(i2,2);
r=rand;
kpm=r*kp1+(1-r)*kp2; %Lai so hoc
kdm=r*kd1+(1-r)*kd2;
%kpm=kp2;kdm=kd1;
y(1,1)=kpm; y(1,2)=kdm;
y(1,3)=f1(kpm,kdm); y(1,4)=f2(kpm,kdm);
%kpm=(1-r)*kp1+r*kp2; kdm=(1-r)*kd1+r*kd2;
kpm=kp1; kdm=kd2;
if rand<pm; %dot bien
if rand<0.5;
kpm=left1+rand*(righ1-left1);
else
kdm=left2+rand*(righ2-left2);
end;
end;
y(2,1)=kpm; y(2,2)=kdm;
y(2,3)=f1(kpm,kdm); y(2,4)=f2(kpm,kdm);
if v1<200;
58
if (xx(i1,3)>y(1,3));
xx(i1,:)=y(1,:);
end;
if (xx(i2,3)>y(2,3));
xx(i2,:)=y(2,:);
end;
elseif v1<400;
if (xx(i1,4)>y(1,4));
xx(i1,:)=y(1,:);
end;
if (xx(i2,4)>y(2,4));
xx(i2,:)=y(2,:);
end;
else
if (xx(i1,3)*0.4+xx(i1,4)*0.6>y(1,3)*0.4+y(1,4)*0.6);
xx(i1,:)=y(1,:);
end;
if (xx(i2,3)*0.4+xx(i2,4)*0.6>y(2,3)*0.4+y(2,4)*0.6);
xx(i2,:)=y(2,:);
end;
end;
end;
t2=etime(clock,t1) %tinh thoi gian chay
%200 lan lap dau toi uu theo f2; 200 lan sau theo f1
%cac lan lap cuoi toi uu theo trong so tu bien doi

More Related Content

What's hot

Robot bám đường ứng dụng thuật toán PID - Line follow robot with PID . Chu Qu...
Robot bám đường ứng dụng thuật toán PID - Line follow robot with PID . Chu Qu...Robot bám đường ứng dụng thuật toán PID - Line follow robot with PID . Chu Qu...
Robot bám đường ứng dụng thuật toán PID - Line follow robot with PID . Chu Qu...Chu Quang Thảo
 
Thiết kế hệ thống điều khiển tốc độ động cơ dc sử dụng bộ điều khiển pid và p...
Thiết kế hệ thống điều khiển tốc độ động cơ dc sử dụng bộ điều khiển pid và p...Thiết kế hệ thống điều khiển tốc độ động cơ dc sử dụng bộ điều khiển pid và p...
Thiết kế hệ thống điều khiển tốc độ động cơ dc sử dụng bộ điều khiển pid và p...Man_Ebook
 
Đồ án thiết kế robot dò đường
Đồ án thiết kế robot dò đườngĐồ án thiết kế robot dò đường
Đồ án thiết kế robot dò đườngKiều Tú
 
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...jackjohn45
 
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...Long Kingnam
 
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019PinkHandmade
 
Giao trinh linh kien dien tu gtvt
Giao trinh linh kien dien tu gtvtGiao trinh linh kien dien tu gtvt
Giao trinh linh kien dien tu gtvtPhi Phi
 
Xây dựng hệ truyền động điện động cơ một chiều sử dụng bộ điều khiển pid​
Xây dựng hệ truyền động điện động cơ một chiều sử dụng bộ điều khiển pid​Xây dựng hệ truyền động điện động cơ một chiều sử dụng bộ điều khiển pid​
Xây dựng hệ truyền động điện động cơ một chiều sử dụng bộ điều khiển pid​Man_Ebook
 
Dieu khien so
Dieu khien soDieu khien so
Dieu khien so98a14567
 

What's hot (20)

Đề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Đề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩmĐề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Đề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
 
Robot bám đường ứng dụng thuật toán PID - Line follow robot with PID . Chu Qu...
Robot bám đường ứng dụng thuật toán PID - Line follow robot with PID . Chu Qu...Robot bám đường ứng dụng thuật toán PID - Line follow robot with PID . Chu Qu...
Robot bám đường ứng dụng thuật toán PID - Line follow robot with PID . Chu Qu...
 
Thiết kế hệ thống điều khiển tốc độ động cơ dc sử dụng bộ điều khiển pid và p...
Thiết kế hệ thống điều khiển tốc độ động cơ dc sử dụng bộ điều khiển pid và p...Thiết kế hệ thống điều khiển tốc độ động cơ dc sử dụng bộ điều khiển pid và p...
Thiết kế hệ thống điều khiển tốc độ động cơ dc sử dụng bộ điều khiển pid và p...
 
Đề tài: Nhận dạng mặt người trên matlab, HOT, 9đ
Đề tài: Nhận dạng mặt người trên matlab, HOT, 9đĐề tài: Nhận dạng mặt người trên matlab, HOT, 9đ
Đề tài: Nhận dạng mặt người trên matlab, HOT, 9đ
 
Hệ thống điều khiển đóng mở cửa tự động thông minh bằng PLC
Hệ thống điều khiển đóng mở cửa tự động thông minh bằng PLCHệ thống điều khiển đóng mở cửa tự động thông minh bằng PLC
Hệ thống điều khiển đóng mở cửa tự động thông minh bằng PLC
 
Truyen du lieu, Haming, CRC,...
Truyen du lieu, Haming, CRC,...Truyen du lieu, Haming, CRC,...
Truyen du lieu, Haming, CRC,...
 
Đồ án thiết kế robot dò đường
Đồ án thiết kế robot dò đườngĐồ án thiết kế robot dò đường
Đồ án thiết kế robot dò đường
 
Đề tài: Thiết bị cảnh báo khí gas & phòng chống cháy nổ, HAY
Đề tài: Thiết bị cảnh báo khí gas & phòng chống cháy nổ, HAYĐề tài: Thiết bị cảnh báo khí gas & phòng chống cháy nổ, HAY
Đề tài: Thiết bị cảnh báo khí gas & phòng chống cháy nổ, HAY
 
Luận văn: Xây dựng bộ biến đổi DC/AC có điện áp ra 220V, HAY
Luận văn: Xây dựng bộ biến đổi DC/AC có điện áp ra 220V, HAYLuận văn: Xây dựng bộ biến đổi DC/AC có điện áp ra 220V, HAY
Luận văn: Xây dựng bộ biến đổi DC/AC có điện áp ra 220V, HAY
 
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
 
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...
C# Báo cáo môn lập trình hướng đối tượng - Xây dựng chương trinh quản lí sinh...
 
Đề tài: Xây dựng phần mềm quản lý quán cà phê, HOT, 9đ
Đề tài: Xây dựng phần mềm quản lý quán cà phê, HOT, 9đĐề tài: Xây dựng phần mềm quản lý quán cà phê, HOT, 9đ
Đề tài: Xây dựng phần mềm quản lý quán cà phê, HOT, 9đ
 
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
Đồ Án Tốt Nghiệp KCD2 MOBILE ROBOT_10215412052019
 
Luận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAY
Luận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAYLuận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAY
Luận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAY
 
Giao trinh linh kien dien tu gtvt
Giao trinh linh kien dien tu gtvtGiao trinh linh kien dien tu gtvt
Giao trinh linh kien dien tu gtvt
 
Xây dựng hệ truyền động điện động cơ một chiều sử dụng bộ điều khiển pid​
Xây dựng hệ truyền động điện động cơ một chiều sử dụng bộ điều khiển pid​Xây dựng hệ truyền động điện động cơ một chiều sử dụng bộ điều khiển pid​
Xây dựng hệ truyền động điện động cơ một chiều sử dụng bộ điều khiển pid​
 
Đề tài: Thiết mạch điều chỉnh tốc độ động cơ một chiều, HAY
Đề tài: Thiết mạch điều chỉnh tốc độ động cơ một chiều, HAYĐề tài: Thiết mạch điều chỉnh tốc độ động cơ một chiều, HAY
Đề tài: Thiết mạch điều chỉnh tốc độ động cơ một chiều, HAY
 
Đề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAY
Đề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAYĐề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAY
Đề tài: Thiết bị khóa cửa bằng bảo mật và thẻ chip RFID, HAY
 
Đề tài: Phần mềm quản lý thông tin sinh viên, HOT, 9đ
Đề tài: Phần mềm quản lý thông tin sinh viên, HOT, 9đĐề tài: Phần mềm quản lý thông tin sinh viên, HOT, 9đ
Đề tài: Phần mềm quản lý thông tin sinh viên, HOT, 9đ
 
Dieu khien so
Dieu khien soDieu khien so
Dieu khien so
 

Similar to Kết hợp giải thuật di truyền và logic mờ giải bài toán tối ưu đa mục tiêu.pdf

Xây Dựng Hệ Thống Phân Lịch Thi Tín Chỉ Tại Trường Cao Đẳng Thương Mại Đà Nẵn...
Xây Dựng Hệ Thống Phân Lịch Thi Tín Chỉ Tại Trường Cao Đẳng Thương Mại Đà Nẵn...Xây Dựng Hệ Thống Phân Lịch Thi Tín Chỉ Tại Trường Cao Đẳng Thương Mại Đà Nẵn...
Xây Dựng Hệ Thống Phân Lịch Thi Tín Chỉ Tại Trường Cao Đẳng Thương Mại Đà Nẵn...Dịch vụ viết thuê Luận Văn - ZALO 0932091562
 
Kỹ thuật lập trình - PGS.TS. Phạm Thế Bảo
Kỹ thuật lập trình - PGS.TS. Phạm Thế BảoKỹ thuật lập trình - PGS.TS. Phạm Thế Bảo
Kỹ thuật lập trình - PGS.TS. Phạm Thế BảoNguyen Van Nghiem
 
Kỹ thuật lập trình (khoa toán tin học)
Kỹ thuật lập trình (khoa toán tin học)Kỹ thuật lập trình (khoa toán tin học)
Kỹ thuật lập trình (khoa toán tin học)nhok_lovely
 
Hệ phương trình vi phân tuyến tính
Hệ phương trình vi phân tuyến tínhHệ phương trình vi phân tuyến tính
Hệ phương trình vi phân tuyến tínhThế Giới Tinh Hoa
 
Mot phuong phap tien hoa trong viec tao ho chua tap cac bo phan loai
Mot phuong phap tien hoa trong viec tao ho chua tap cac bo phan loaiMot phuong phap tien hoa trong viec tao ho chua tap cac bo phan loai
Mot phuong phap tien hoa trong viec tao ho chua tap cac bo phan loaiPhuong Pham
 
Bai toan va thuat toan
Bai toan va thuat toanBai toan va thuat toan
Bai toan va thuat toanHữu Duy Duy
 
KỸ NĂNG GIẢI BÀI TẬP SINH HỌC
KỸ NĂNG GIẢI BÀI TẬP SINH HỌCKỸ NĂNG GIẢI BÀI TẬP SINH HỌC
KỸ NĂNG GIẢI BÀI TẬP SINH HỌConthi360
 
giao-trinh-phuong-phap-tinh-va-matlab-ly-thuyet-bai-tap-va-chuong-trinh-minh-...
giao-trinh-phuong-phap-tinh-va-matlab-ly-thuyet-bai-tap-va-chuong-trinh-minh-...giao-trinh-phuong-phap-tinh-va-matlab-ly-thuyet-bai-tap-va-chuong-trinh-minh-...
giao-trinh-phuong-phap-tinh-va-matlab-ly-thuyet-bai-tap-va-chuong-trinh-minh-...Man_Ebook
 
Dinh thi-huong
Dinh thi-huongDinh thi-huong
Dinh thi-huongtrucmyx
 
Phương pháp runge kutta giải gần đúng hệ phương trình vi phân đại số
Phương pháp runge kutta giải gần đúng hệ phương trình vi phân đại sốPhương pháp runge kutta giải gần đúng hệ phương trình vi phân đại số
Phương pháp runge kutta giải gần đúng hệ phương trình vi phân đại sốKhu Tiến
 
Chuyen de giai he pt chua tham so
Chuyen  de giai he pt chua tham soChuyen  de giai he pt chua tham so
Chuyen de giai he pt chua tham soToán THCS
 

Similar to Kết hợp giải thuật di truyền và logic mờ giải bài toán tối ưu đa mục tiêu.pdf (20)

Xây Dựng Hệ Thống Phân Lịch Thi Tín Chỉ Tại Trường Cao Đẳng Thương Mại Đà Nẵn...
Xây Dựng Hệ Thống Phân Lịch Thi Tín Chỉ Tại Trường Cao Đẳng Thương Mại Đà Nẵn...Xây Dựng Hệ Thống Phân Lịch Thi Tín Chỉ Tại Trường Cao Đẳng Thương Mại Đà Nẵn...
Xây Dựng Hệ Thống Phân Lịch Thi Tín Chỉ Tại Trường Cao Đẳng Thương Mại Đà Nẵn...
 
Kỹ thuật lập trình - PGS.TS. Phạm Thế Bảo
Kỹ thuật lập trình - PGS.TS. Phạm Thế BảoKỹ thuật lập trình - PGS.TS. Phạm Thế Bảo
Kỹ thuật lập trình - PGS.TS. Phạm Thế Bảo
 
Kỹ thuật lập trình (khoa toán tin học)
Kỹ thuật lập trình (khoa toán tin học)Kỹ thuật lập trình (khoa toán tin học)
Kỹ thuật lập trình (khoa toán tin học)
 
Đề tài: Phương pháp giải bài toán cân bằng có tính lồi suy rộng
Đề tài: Phương pháp giải bài toán cân bằng có tính lồi suy rộngĐề tài: Phương pháp giải bài toán cân bằng có tính lồi suy rộng
Đề tài: Phương pháp giải bài toán cân bằng có tính lồi suy rộng
 
Hệ phương trình vi phân tuyến tính
Hệ phương trình vi phân tuyến tínhHệ phương trình vi phân tuyến tính
Hệ phương trình vi phân tuyến tính
 
Đề tài: Thiết kế và phân tích thuật toán, HAY
Đề tài: Thiết kế và phân tích thuật toán, HAYĐề tài: Thiết kế và phân tích thuật toán, HAY
Đề tài: Thiết kế và phân tích thuật toán, HAY
 
Luận văn thạc sĩ: Quy hoạch toàn phương, HAY, 9đ
Luận văn thạc sĩ: Quy hoạch toàn phương, HAY, 9đLuận văn thạc sĩ: Quy hoạch toàn phương, HAY, 9đ
Luận văn thạc sĩ: Quy hoạch toàn phương, HAY, 9đ
 
Mot phuong phap tien hoa trong viec tao ho chua tap cac bo phan loai
Mot phuong phap tien hoa trong viec tao ho chua tap cac bo phan loaiMot phuong phap tien hoa trong viec tao ho chua tap cac bo phan loai
Mot phuong phap tien hoa trong viec tao ho chua tap cac bo phan loai
 
SLIDE CAU TRUC DL_GT.pptx
SLIDE CAU TRUC DL_GT.pptxSLIDE CAU TRUC DL_GT.pptx
SLIDE CAU TRUC DL_GT.pptx
 
Đề tài: Phương pháp giải một số lớp mô hình cân bằng, HAY
Đề tài: Phương pháp giải một số lớp mô hình cân bằng, HAYĐề tài: Phương pháp giải một số lớp mô hình cân bằng, HAY
Đề tài: Phương pháp giải một số lớp mô hình cân bằng, HAY
 
Bai toan va thuat toan
Bai toan va thuat toanBai toan va thuat toan
Bai toan va thuat toan
 
KỸ NĂNG GIẢI BÀI TẬP SINH HỌC
KỸ NĂNG GIẢI BÀI TẬP SINH HỌCKỸ NĂNG GIẢI BÀI TẬP SINH HỌC
KỸ NĂNG GIẢI BÀI TẬP SINH HỌC
 
giao-trinh-phuong-phap-tinh-va-matlab-ly-thuyet-bai-tap-va-chuong-trinh-minh-...
giao-trinh-phuong-phap-tinh-va-matlab-ly-thuyet-bai-tap-va-chuong-trinh-minh-...giao-trinh-phuong-phap-tinh-va-matlab-ly-thuyet-bai-tap-va-chuong-trinh-minh-...
giao-trinh-phuong-phap-tinh-va-matlab-ly-thuyet-bai-tap-va-chuong-trinh-minh-...
 
Dinh thi-huong
Dinh thi-huongDinh thi-huong
Dinh thi-huong
 
Phương pháp runge kutta giải gần đúng hệ phương trình vi phân đại số
Phương pháp runge kutta giải gần đúng hệ phương trình vi phân đại sốPhương pháp runge kutta giải gần đúng hệ phương trình vi phân đại số
Phương pháp runge kutta giải gần đúng hệ phương trình vi phân đại số
 
ĐỒ ÁN - SẮP XẾP LỊCH THI ĐẤU TENNIS BẰNG THUẬT TOÁN CHIA ĐỂ TRỊ (Ngôn ngữ C).doc
ĐỒ ÁN - SẮP XẾP LỊCH THI ĐẤU TENNIS BẰNG THUẬT TOÁN CHIA ĐỂ TRỊ (Ngôn ngữ C).docĐỒ ÁN - SẮP XẾP LỊCH THI ĐẤU TENNIS BẰNG THUẬT TOÁN CHIA ĐỂ TRỊ (Ngôn ngữ C).doc
ĐỒ ÁN - SẮP XẾP LỊCH THI ĐẤU TENNIS BẰNG THUẬT TOÁN CHIA ĐỂ TRỊ (Ngôn ngữ C).doc
 
Giao trinhtrr
Giao trinhtrrGiao trinhtrr
Giao trinhtrr
 
Phương Pháp Tìm Nghiệm Của Hệ Phương Trình Tuyến Tính Gần Suy Biến.doc
Phương Pháp Tìm Nghiệm Của Hệ Phương Trình Tuyến Tính Gần Suy Biến.docPhương Pháp Tìm Nghiệm Của Hệ Phương Trình Tuyến Tính Gần Suy Biến.doc
Phương Pháp Tìm Nghiệm Của Hệ Phương Trình Tuyến Tính Gần Suy Biến.doc
 
Nguyen dinhnghi do-an
Nguyen dinhnghi do-anNguyen dinhnghi do-an
Nguyen dinhnghi do-an
 
Chuyen de giai he pt chua tham so
Chuyen  de giai he pt chua tham soChuyen  de giai he pt chua tham so
Chuyen de giai he pt chua tham so
 

More from Man_Ebook

BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdfBÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdfMan_Ebook
 
TL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.docTL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.docMan_Ebook
 
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfGiáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfGiáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfGiáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfGiáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfGiáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfMan_Ebook
 
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfGiáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfGiáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfMan_Ebook
 
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfGiáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfGiáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfMan_Ebook
 
Giáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfGiáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfMan_Ebook
 
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình web  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình song song  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfGiáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfMan_Ebook
 
Giáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfGiáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfMan_Ebook
 
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdfGiáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdfMan_Ebook
 

More from Man_Ebook (20)

BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdfBÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
 
TL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.docTL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
 
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfGiáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
 
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfGiáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
 
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
 
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
 
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfGiáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
 
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfGiáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
 
Giáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfGiáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdf
 
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfGiáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
 
Giáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfGiáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdf
 
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfGiáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
 
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfGiáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
 
Giáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfGiáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdf
 
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình web  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình song song  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfGiáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdf
 
Giáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfGiáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdf
 
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdfGiáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
 

Recently uploaded

Campbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdfCampbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdfTrnHoa46
 
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfChuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfhoangtuansinh1
 
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...ThunTrn734461
 
powerpoint lịch sử đảng cộng sản việt nam.pptx
powerpoint lịch sử đảng cộng sản việt nam.pptxpowerpoint lịch sử đảng cộng sản việt nam.pptx
powerpoint lịch sử đảng cộng sản việt nam.pptxAnAn97022
 
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...hoangtuansinh1
 
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoáCác điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoámyvh40253
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...Nguyen Thanh Tu Collection
 
Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................TrnHoa46
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIĐiện Lạnh Bách Khoa Hà Nội
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Nguyen Thanh Tu Collection
 
sách sinh học đại cương - Textbook.pdf
sách sinh học đại cương   -   Textbook.pdfsách sinh học đại cương   -   Textbook.pdf
sách sinh học đại cương - Textbook.pdfTrnHoa46
 
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhvanhathvc
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líKiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líDr K-OGN
 
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Nguyen Thanh Tu Collection
 

Recently uploaded (20)

Campbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdfCampbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdf
 
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfChuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
 
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
 
powerpoint lịch sử đảng cộng sản việt nam.pptx
powerpoint lịch sử đảng cộng sản việt nam.pptxpowerpoint lịch sử đảng cộng sản việt nam.pptx
powerpoint lịch sử đảng cộng sản việt nam.pptx
 
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
 
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoáCác điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
 
Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
 
sách sinh học đại cương - Textbook.pdf
sách sinh học đại cương   -   Textbook.pdfsách sinh học đại cương   -   Textbook.pdf
sách sinh học đại cương - Textbook.pdf
 
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líKiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
 
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
 

Kết hợp giải thuật di truyền và logic mờ giải bài toán tối ưu đa mục tiêu.pdf

  • 1. 1 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TT & TT ĐÀO NGỌC TUẤT KẾT HỢP GIẢI THUẬT DI TRUYỀN VÀ LOGIC MỜ GIẢI BÀI TOÁN TỐI ƯU ĐA MỤC TIÊU LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái Nguyên, tháng 10 - 2012
  • 2. 2 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TT& TT ĐÀO NGỌC TUẤT KẾT HỢP GIẢI THUẬT DI TRUYỀN VÀ LOGIC MỜ GIẢI BÀI TOÁN TỐI ƯU ĐA MỤC TIÊU Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƯỜI HƯỚNG DẪN KHOA HỌC TS. Vũ Mạnh Xuân Thái Nguyên, tháng 10 -2012
  • 3. 3 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn MỞ ĐẦU Nhiều bài toán tối ưu trong thực tế là bài toán tối ưu đa mục tiêu, đặc biệt là trong thiết kế. Chẳng hạn người ta muốn thiết kế sản phẩm sao cho chi phí thấp, tiết kiệm nguyên liệu nhưng chất lượng tốt, hoặc thiết kế một bể chứa nước với yêu cầu dung lượng lớn mà chi phí thấp…. Đã có nhiều nhà toán học và tin học đã nghiên cứu về vấn đề này và đưa ra nhiều phương pháp giải khác nhau. Một số những phương pháp thường được sử dụng để giải bài toán đa mục tiêu như: phương pháp nhượng bộ dần, phương pháp tìm nghiệm có khoảng cách ngắn nhất đến nghiệm lý tưởng, phương pháp trọng số,…. Được sự đồng ý của Hội đồng Khoa học khoa Công Nghệ Thông Tin, cùng sự hướng dẫn của thầy giáo Vũ Mạnh Xuân, em chọn đề tài khóa luận của mình nhằm nghiên cứu một phương pháp tiếp cận khác để giải bài toán tối ưu đa mục tiêu là sử dụng giải thuật di truyền kết hợp logic mờ. Mục đích nghiên cứu: tìm hiểu một số phương pháp giải bài toán tối ưu đa mục tiêu, giải thuật di truyền và logic mờ, trên cơ sở đó sử dụng giải thuật di truyền kết hợp với logic mờ để giải bài toán tối ưu đa mục tiêu. Nội dung của đề tài: gồm 3 chương 1) Chương 1. Giải thuật di truyền 2) Chương 2. Logic mờ 3) Chương 3. Kết hợp giải thuật di truyền và logic mờ giải bài toán tối ưu đa mục tiêu Để tiến hành nghiên cứu đề tài này, em đã sử dụng phối hợp một số phương pháp như: phương pháp nghiên cứu tài liệu (nghiên cứu tài liệu về các giải thuật di truyền, bài toán tối ưu đa mục tiêu, logic mờ, ngôn ngữ lập trình matlab 7.0); phương pháp lấy ý kiến chuyên gia (giáo viên hướng dẫn, tham khảo trên mạng). Khi thực hiện đề tài này, bước đầu em đã tìm hiểu được một số phương pháp giải bài toán tối ưu đa mục tiêu, một số vấn đề về giải thuật di truyền, logic mờ. Kết quả là đã đề xuất một kỹ thuật kết hợp giải thuật di truyền với logic mờ để giải bài toán tối ưu đa mục tiêu và đã lập trình thử nghiệm trên một số bài toán cụ thể.
  • 4. 4 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Chương 1: GIẢI THUẬT DI TRUYỀN Chương này giới thiệu những vấn đề khái quát về giải thuật di truyền (GA) làm cơ sở cho việc ứng dụng giải bài toán tối ưu đa mục tiêu.[2], [6] 1.1. Khái quát chung Giải thuật di truyền GA(GENETIC ALGORITHM) do D.E. Goldberg đề xuất, sau đó được L. Davis và Z. Michalevicz phát triển, đây cũng chính là một trong các thuật toán tiến hóa. Thuật toán tiến hóa là các chương trình máy tính có dùng các thuật toán tìm kiếm, tối ưu hóa dựa trên nguyên lý tiến hóa tự nhiên. Giải thuật di truyền được hình thành dựa trên quan niệm: quá trình tiến hóa tự nhiên là quá trình hoàn hảo và hợp lý nhất, tự quá trình này đã mang tính tối ưu. Quan niệm này là một tiên đề đúng, không chứng minh được nhưng phù hợp với thực tế khách quan. Tính tối ưu của quá trình tiến hóa thể hiện ở đặc điểm, 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ì nhờ hai quá trình cơ bản là sinh sản và chọn lọc tự nhiên, trong suốt quá trình tiến hóa tự nhiên, các thế hệ mới luôn được sinh ra để bổ sung thay thế 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ẽ bị đào thải. Sự thay đổi của môi trường là động lực thúc đẩy quá trình tiến hóa, ngược lại tiến hóa cũng tác động trở lại góp phần thay đổi môi trường. Giải thuật di truyền (GA-Genetic Algorithms) là giải thuật tìm kiếm, chọn lựa các giải pháp tối ưu để giải quyết các bài toán thực tế khác nhau, dựa trên cơ chế chọn lọc của tự nhiên: từ tập lời giải ban đầu, thông qua nhiều bước tiến hoá, hình thành tập lời giải mới phù hợp hơn, và cuối cùng dẫn đến lời giải tối ưu toàn cục. Trong tự nhiên, mỗi cá thể muốn tồn tại và phát triển phải thích nghi
  • 5. 5 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn với môi trường, cá thể nào thích nghi hơn thì tồn tại, cá thể nào kém thích nghi thì bị tiêu diệt. Trong mỗi cá thể, các gen liên kết với nhau theo cấu trúc dạng chuỗi, gọi là nhiễm sắc thể (NST). Mỗi NST đặc trưng cho mỗi loài và quyết định sự sống còn của cá thể đó. Do môi trường tự nhiên luôn biến đổi nên cấu trúc NST cũng thay đổi để thích nghi với môi trường và thế hệ sau luôn thích nghi hơn thế hệ trước. Cấu trúc này có được do sự trao đổi thông tin có tính ngẫu nhiên với môi trường bên ngoài hoặc giữa các NST với nhau. 1.2. Các vấn đề cơ bản của giải thuật di truyền 1.2.1. Mã hóa Việc mô tả di truyền cho lời giải cho bài toán gồm hai phần cơ bản: + Xây dựng cấu trúc gen cho mỗi lời giải của bài toán để từ mỗi lời giải ta có thể mã hoá thành một NST (chuỗi các gen). + Giải mã các NST để nhận được lời giải. Đây là vấn đề cần giải quyết trước khi giải bài toán với GA. Tuỳ thuộc vào nội dung của mỗi bài toán mà ta có cách mã hoá khác nhau. Sau đây là phương pháp mã hoá hay được sử dụng: Mã hoá dạng chuỗi nhị phân: đây là phương pháp thông dụng và cơ bản nhất được sử dụng ngay từ bước ban đầu khi nghiên cứu GA. Trong phương pháp này mỗi NST là một chuỗi các bit 0 và 1. Mã hoá thứ tự: được sử dụng trong bài toán có sắp xếp thứ tự. Ở đây mỗi NST là một chuỗi các số nguyên thể hiện thứ tự phân bố lời giải của bài toán. Mã hoá theo giá trị: được sử dụng trong các bài toán mà mỗi lời giải là tập các giá trị (ví dụ tập số thực). Trong phương pháp này, mỗi NST là một chuỗi các giá trị có mối quan hệ tương ứng với bài toán. Mã hoá dạng cây: được sử dụng chủ yếu trong các biểu thức toán học, trong phương pháp mã hoá này mỗi NST là một cây của một nhóm đối tượng nào đó.
  • 6. 6 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Ví dụ: Biểu thức sau x+(y / 5) được mã hoá thành: Mã hoá số thực : Mỗi NST được mã hoá là một véc tơ trong không gian Rm chẳng hạn X = (a1, a2, ..., am) với các ai  R. Cách mã hoá này thường tự nhiên đối với các bài toán tối ưu số và được phát triển rất mạnh trong thời gian gần đây. 1.2.2. Tạo lập lời giải ban đầu (khởi tạo quần thể) Tập lời giải ban đầu thường được khởi tạo ngẫu nhiên từ miền xác định của các lời giải. Cách tạo lập tập lời giải ban đầu phụ thuộc rất nhiều vào cách mã hoá NST. Với phương pháp mã hoá nhị phân: xây dựng NST bằng cách tạo ngẫu nhiên chuỗi các bit 0 hoặc 1. Với phương pháp mã hoá thứ tự: xây dựng NST ban đầu bằng cách hoán vị ngẫu nhiên các thứ tự. Với phương pháp mã hoá theo giá trị: tạo ngẫu nhiên từng giá trị trong miền xác định của lời giải để tạo ra chuỗi NST ban đầu. Với mã hoá số thực: tạo ngẫu nhiên N véc tơ thực trong Rm . 1.2.3. Xây dựng hàm phù hợp Hàm phù hợp đánh giá khả năng phù hợp của tập lời giải theo yêu cầu bài toán. Hàm này được xây dựng cho từng bài toán với yêu cầu cụ thể. Thông thường trong các bài toán tối ưu hàm này chính là hàm mục tiêu của bài toán. 1.2.4. Các toán tử di truyền a. Toán tử chọn lọc + / x y 5
  • 7. 7 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Trong quá trình thực hiện của giải thuật di truyền, sau mỗi lần tiến hoá ta chỉ giữ lại các cá thể có độ phù hợp cao còn các cá thể phù hợp thấp bị loại bỏ. Toán tử chọn lọc thường giữ lại 50% các cá thể phù hợp nhất. Tuy nhiên người ta cũng phát triển nhiều sơ đồ chọn khác nhau nhằm là tăng tính đa dạng của quần thể, tránh sự hội tụ sớm. b. Toán tử lai ghép là toán tử di truyền cơ bản trong GA, tiến trình lai ghép như sau : Bước 1: Tạo ra tập NST để tạo sinh từ quần thể bằng cách chọn ngẫu nhiên N NST từ M NST (M là kích cỡ quần thể). Có nhiều cách chọn: Chọn ngẫu nhiên theo thứ tự: lặp N lần việc tạo ngẫu nhiên ra một số nguyên i thuộc khoảng [1, M] để chọn NST thứ i. Chọn theo trọng số: tạo trọng số tích luỹ cho M NST theo công thức:    M k i k i p 1 (với bài toán tìm min)      M k i k i M p 1 1 (với bài toán tìm max) Sau khi có trọng số tích luỹ cho NST, ta lần lượt tạo các xác suất ngẫu nhiên r và duyệt từ NST đầu tiên đến khi gặp NST có trọng số tích luỹ lớn hơn r thì chọn nó. Bước 2: Sau khi chọn được N NST, lần lượt lấy ra từng cặp NST để lai ghép tạo ra hai NST mới. Một số dạng toán tử lai ghép hay dùng là : Lai ghép 1 điểm: chọn ngẫu nhiên một vị trí sau đó hoán vị phần đứng sau vị trí vừa chọn giữa hai NST cha và mẹ để nhận được hai NST con. Lai ghép hai điểm: chọn ngẫu nhiên hai vị trí trong một NST, sau đó hoán vị các giá trị đứng giữa hai điểm đã chọn của hai NST cha mẹ để nhận được hai NST con.
  • 8. 8 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Lai ghép mặt nạ: tạo một mặt nạ ngẫu nhiên có số bit bằng chiều dài của NST. Ta sẽ hoán vị các giá trị của hai NST cha và mẹ ở những vị trí tương ứng với vị trí bit 1 của mặt nạ. c. Toán tử đột biến: Toán tử đột biến được xây dựng để tránh việc nhận được giá trị tối ưu cục bộ. Đột biến gây ra thay đổi ngẫu nhiên trên từng bit của NST để tạo ra một NST mới. d. Tạo sinh: Chọn các cá thể từ quần thể hiện thời làm quần thể mới cho lần lặp kế tiếp. 1.3. Thuật toán di truyền Giải thuật di truyền giải một bài toán cần có các thành phần sau: 1. Một cấu trúc dữ liệu biểu diễn không gian lời giải của bài toán 2. Cách khởi tạo quần thể ban đầu 3. Hàm định nghĩa độ thích nghi eval(), đóng vai trò môi trường 4. Các phép toán di truyền ( phép lai, phép đột biến, phép tái sinh và phép chọn) 5. Các tham số được giải thuật di truyền sử dụng (kích thước quần thể, xác suất lai, đột biến...) Sơ đồ cấu trúc giải thuật di truyền tổng quát như sau: Begin 1. t:=0; Khởi tạo P(t); 2. Tính độ thích nghi cho các cá thể thuộc P(t); 3. Khi (điều kiện dừng chưa thỏa mãn) lặp t:=t+1; Tái sinh P‟ (t) từ P(t) Lai Q(t) từ P(t-1); Đột biến R(t) từ P(t-1); Chọn lọc P(t) từ P(t-1)Q(t)R(t)P‟ (t) Kết thúc lặp Cá thể tốt nhất P(t) là lời giải cần tìm End.
  • 9. 9 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 1.4. Giải thuật di truyền mã hóa số thực 1.4.1. Mã hóa RCGA Trong phần này ta quan tâm tới giải thuật di truyền mã hóa số thực (RCGA) để giải các bài toán tối ưu giá trị thực trong không gian Rn và không có các ràng buộc đặc biệt. Một cách tổng quát, bài toán tối ưu số thực có thể xem là một cặp (S,f), trong đó S  Rn và f : S  R là một hàm n biến. Bài toán đặt ra là tìm véctơ x=(x1,x2,... , xn)  S sao cho f(x) đạt giá trị cực tiểu trên S. Nghĩa là với mọi yS phải có f(x)  f(y). Hàm f ở đây có thể không liên tục nhưng cần bị chặn trên S (đối với các bài toán tìm cực đại có thể chuyển về cực tiểu một cách đơn giản). Trong GA mã hoá số thực, mỗi cá thể được biểu diễn như một véc tơ thực n chiều: b = (x1 , x2, ... , xn), xi  R. Như vậy một quần thể kích cỡ m là một tập hợp có m véctơ trong Rn . Ta cũng có thể xem một quần thể kích cỡ m như một ma trận thực cấp (mxn), đây là cách mã hoá tự nhiên và thuận tiện trong việc thực hiện các toán tử tiến hóa. Sau đây ta sẽ xem xét cụ thể hơn các toán tử này trong giải thuật di truyền mã hoá số thực. 1.4.2. Các toán tử của RCGA a. Toán tử lai ghép GA mã hoá số thực cũng áp dụng các toán tử lai ghép như GA cổ điển bao gồm lai ghép 1 điểm, lai ghép nhiều điểm, lai ghép mặt nạ. Ngoài ra, do cách mã hóa quần thể, người ta còn nghiên cứu và đề xuất nhiều dạng khác nhau của toán tử lai ghép trong RCGA. Dưới đây là một số dạng toán tử lai ghép thường dùng với giả thiết cặp cá thể cha mẹ đã chọn để tiến hành lai ghép là ) ,..., , ( 2 1 m x x x X  và ) ,..., , ( 2 1 m y y y Y  .  Lai số học (Arithmetic Crossover) Phép lai này chọn một số thực a (0<a<1); các con X' và Y' được tính bởi: x'i = a*xi + (1-a)*yi ;
  • 10. 10 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn y'i = a*yi + (1-a)*xi  Lai ghép Heuristic Giả sử với cặp bố mẹ (X, Y) đã chọn, trong đó cá thể X có độ thích nghi (giá trị hàm mục tiêu) tốt hơn cá thể Y thì toán tử này tạo một con duy nhất X' từ cặp X, Y bởi: x'i = *(xi - yi) + xi với 0 <  < 1 b. Toán tử đột biến Toán tử đột biến trong RCGA được giới thiệu đa dạng hơn trong GA cổ điển. Sau đây sẽ giới thiệu một số dạng điển hình: Đột biến đều: Với một gen i được chọn ngẫu nhiên để đột biến từ cá thể ) ,..., , ( 2 1 N x x x b  , thành phần i x được thay thế bởi một số ngẫu nhiên trong khoảng xác định   i i u l , của i x . Đột biến biên: Từ cá thể cha đã chọn đột biến x và vị trí chọn đột biến k, thành phần thứ k (xk) của x được thay bởi lk hay uk trong đó [lk , uk] là khoảng xác định của xk. Trong những bài toán mà biên của các biến không lớn và giải pháp cần tìm nằm gần biên thì phép đột biến này tỏ ra rất hữu ích. Đột biến không đều: Giả sử tmax là một số cực đại định nghĩa trước, thành phần xi được thay thế bởi một trong 2 giá trị tính theo các công thức sau : x‟i = xi + (t, bi – xi) x”i = xi - (t, xi – ai) Việc chọn giá trị nào được tiến hành tuỳ theo giá trị ngẫu nhiên khởi tạo với xác suất 1/2. Biến ngẫu nhiên (t, x) xác định một bước đột biến trong khoảng [0, x] theo công thức sau :   ) 1 ( max ) 1 .( ) , ( t t x x t     Trong công thức này,  thường là số ngẫu nhiên phân bố đều trong khoảng đơn vị. Tham số  xác định ảnh hưởng của lần tạo sinh thứ t trên phân bố của đột biến trong miền [0, x]. 1.5. Mô hình Markov của giải thuật di truyền.
  • 11. 11 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Trong giải thuật di truyền, mỗi quần thể được tạo sinh có đặc trưng là chỉ phụ thuộc theo xác suất vào quần thể trước đó, do vậy GA có thể được mô hình hóa bởi một xích Markov. Các tính chất của quần thể hữu hạn, chẳng hạn như xu hướng di truyền có thể được khảo sát cẩn thận sử dụng xích Markov hữu hạn. Không giống như nhiều phương pháp mô phỏng khác, xích Markov có thể mô tả chính xác và chi tiết cho mỗi lớp đặc biệt. Từ năm 1992, Nix và Vose đã mô hình hóa GA kinh điển (biểu diễn chuỗi nhị phân chiều dài cố định, lai ghép một điểm, chọn lọc tỷ lệ) như một xích Markov trong đó mỗi trạng thái là một quần thể. Vose đã mở rộng mô hình này đến mô hình “tìm kiếm ngẫu nhiên Heuristic” trong đó mỗi cá thể của lần tạo sinh kế tiếp được chọn theo một phân bố xác suất trên các cá thể của không gian tìm kiếm. Suzuki đã giới thiệu mô hình của một lớp giải thuật di truyền ưu tú và đưa ra kết quả về số lần tạo sinh cần thiết để hội tụ dựa trên xác suất đột biến. Năm 1996, Aytug và Koehler đưa ra chặn trên cho số lần tạo sinh cần thiết đối với GA kinh điển để hội tụ đến quần thể có chứa chuỗi tối ưu dựa trên xác suất đột biến. Phần dưới đây trình bày vắn tắt mô hình xích Markov của giải thuật di truyền đơn giản 1.5.1. Tính Markov  Một hệ vật lý hoặc hệ trạng thái nào đó gọi là có tính Markov nếu sự tiến triển của hệ trong tương lai chỉ phụ thuộc vào hiện tại và độc lập với quá khứ. VD sự tăng dân số.  Ký hiệu E là không gian trạng thái của X(t); nếu X(t) có tính Markov và E là tập đếm được thì X(t) gọi là xích Markov. Nếu giá trị của thời điểm t là 0, 1, … thì ta nói xích Markov với thời gian rời rạc. Nếu t  [0, ] thì ta có xích Markov với thời gian liên tục.  ĐN: Ta nói X(t) có tính Markov nếu: P {X(tn+1) = j | X(t0) = i0, …, X(tn) = i} = P {X(tn+1) = j | X(tn) = i} với bất kỳ t0 < t1 < … < tn < tn+1 < … ; i0, … , in, j  E
  • 12. 12 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn  Đặt p(s,i,t,j) = P {X(t) = j | X(s) = i} (s<t) là xác suất có điều kiện để hệ tại thời điểm s ở trạng thái i, đến thời điểm t chuyển đến trạng thái j và gọi là xác suất chuyển của hệ. Nếu xác suất này chỉ phụ thuộc vào t-s hay p(s,i,t,j) = p(s+h, i, t+h, j) thì hệ là thuần nhất theo thời gian.  Ký hiệu pij = P {Xn+1 = j | Xn = i} và ma trận [pij] gọi là ma trận xác suất chuyển sau 1 bước. Theo công thức xác suất đầy đủ ta có 0  pij  1 và j pij = 1 (ma trận ngẫu nhiên)  Xác suất chuyển sau n bước : pij (n) = P {Xn+m = j | Xm = i} = P {Xn = j | X0 = i} Khi đó pij (1) = pij . Quy ước pij (0) = 1 ( i=j) và là 0 với i<> j Đặt Pn = (pij (n) ) là ma trận xác suất chuyển sau n bước.  Ta có phương trình Chapman-Kolmogorov     E k n jk n ik m n ij p p p ) ( (1.1)  Một ví dụ về GA được mô hình hóa bởi một xích Markov: Ta bắt đầu bằng mô hình đơn tử (haploid model) của sự tái tạo ngẫu nhiên, khi không xét đến những tác nhân đột biến và thiên hướng chọn lọc (mutation pressures and selective forces). Giả sử ta xét cỡ loài cố định gồm 2N gene kết hợp từ các cá thể loại a và loại A. Sự hình thành thế hệ sau được xác định bởi 2N phép thử nhị thức độc lập như nhau: Nếu loài bố mẹ có j a-gene và (2N - j) A-gene thì mỗi phép thử có kết quả là a hay A với xác suất tương ứng là 2 j j p N  và N j qj 2 1  Các chọn lọc được lặp lại và được tiến hành có thay thế. Bằng cách này ta có xích Markov { Xn } trong đó Xn là số a-gene ở thế hệ thứ n trong cỡ loài không đổi gồm 2N cá thể. Không gian trạng thái E = {0,1,2, ..., 2N} gồm 2N + 1 giá trị. Ma trận xác suất chuyển P = (pjk) tính theo phân phối nhị thức là: pjk =   k N j k j k N n n q p C j X k X P      2 2 1 (j, k = 0, 1, ..., 2N) (1.2)
  • 13. 13 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Chú ý rằng các trạng thái Xn = 0 (hoặc 2N) là hấp thụ hoàn toàn theo nghĩa khi Xn = 0 (hoặc 2N) thì Xn+k = 0 (hoặc 2N, tương ứng) với mọi k  0. Một trong những vấn đề thú vị là xác định xác suất để loài sẽ đạt tới fixation (nghĩa VN) với điều kiện X0 = i, tức là nó sẽ trở thành một quần thể thuần chủng chỉ có a-gene hoặc A-gene. Việc xác định tốc độ đạt tới fixation cũng là điều đáng quan tâm. Ta sẽ nghiên cứu những vấn đề như thế trong phân tích tổng quát về xác suất hấp thụ. Một mô hình đầy đủ hơn phải tính đến những mutation pressures (tác nhân đột biến). Ta giả sử rằng trước khi hình thành thế hệ mới, mỗi gene có xác suất đột biến, tức là xác suất chuyển thành gene của loại kia. Đặc biệt, ta giả sử rằng đối với mỗi gene hiện tượng đột biến a  A xảy ra với xác suất x1 và hiện tượng đột biến A  a xảy ra với xác suất x2. Một lần nữa ta lại giả sử rằng sự hình thành của thế hệ sau được xác định bởi 2N phép thử nhị thức. Các giá trị liên quan của pj và qj khi loài cha mẹ có j a-gene lúc này có dạng:     1 2 1 2 1 1 2 2 1 1 2 2 j j j j p x x N N j j q x x N N                     Vµ (1.3) Lập luận như sau: các tác nhân đột biến hoạt động đầu tiên, sau đó một gene mới được chọn bằng cách chọn lọc ngẫu nhiên từ loài. Bây giờ xác suất của chọn lọc một a-gene sau khi tác nhân đột biến hoạt động chính là 1/2N lần số a-gene hiện có. Vì vậy xác suất trung bình (lấy trung bình đối với những đột biến có thể) là 1/2N lần số trung bình của a-gene sau đột biến. Nhưng số trung bình này rõ ràng là j(1-x1) + (2N - j)x2. Từ đó dẫn đến công thức (1.3). Xác suất chuyển của xích Markov tương ứng được tính bởi công thức (1.2) ở trên với các pj, qj được tính bởi công thức (1.3) vừa viết. Nếu x1, x2 > 0 thì fixation sẽ không xảy ra ở bất cứ trạng thái nào. Thay vào đó, khi n   hàm phân phối của Xn sẽ tiến đến phân phối trạng thái vững của biến ngẫu nhiên  trong đó P{=k}=k; k = 0, 1, ..., 2N (k = 1, k > 0). Hàm phân phối của  được gọi là phân phối tần số gene tại trạng thái vững.
  • 14. 14 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Ta trở lại mô hình giao phối (mating model) ngẫu nhiên đơn giản và bàn về khái niệm thiên hướng chọn lọc, hoạt động về a-gene chẳng hạn. Giả sử muốn đặt một ưu tiên chọn lọc cho a-gene đối với A-gene sao cho số con sinh ra có kỳ vọng với tỉ lệ (1+ s) và 1 tương ứng, trong đó s là nhỏ và dương. Ta thay pj = N j 2 và qj = N j 2 1 bằng pj = sj N j s   2 ) 1 ( và qj = 1 - pj rồi xây dựng thế hệ sau theo mẫu nhị thức như trước. Nếu thế hệ cha mẹ có j a-gene, thì ở thế hệ sau cỡ loài trung bình của a- gene và A-gene tương ứng là   sj N j s N   2 1 2 và   sj N j N N   2 2 2 . Tỷ số các cỡ loài trung bình của a-gene đối với A-gene tại thế hệ thứ (n + 1) là:            1 1 2 1 1 s j N j s         n thø hÖ thÕ ë gene - sè n thø hÖ thÕ ë gene - Sè A a Điều này giải thích ý nghĩa của sự chọn lọc. 1.5.2. Một số kết quả - Phân phối của hệ tại thời điểm n cho bởi công thức pj (n) = P(Xn = j) ; n = 0, 1, 2, …; j  E Đặt (n) = {pj (n) ; jE) và gọi  = (0) là phân phối ban đầu của hệ. - Phân phối ban đầu gọi là dừng nếu (n) không phụ thuộc vào n nghĩa là  = (n) . - Một mô hình xích Markov rời rạc và thuần nhất là bộ ba (Xn,  , P) trong đó Xn là dãy đại lượng ngẫu nhiên rời rạc;  là phân phối ban đầu; P là ma trận xác suất chuyển. - Vấn đề là phân phối dừng có tồn tại không? có duy nhất không? cách tìm nó?
  • 15. 15 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn - Định nghĩa phân phối dừng: Giả sử P = (pij) là ma trận chuyển của xích Markov (Xn) có không gian trạng thái hữu hạn E = {1, 2, ..., N}, nghiệm không âm (1, ...,N) của phương trình: xj =  E k kj k p x ; j  E sao cho j = 1 được gọi là phân phối dừng (hay bất biến) của xích Markov với ma trận xác suất chuyển P = (pij). Ý nghĩa: Nếu ta lấy (1, ...,N) là phân phối ban đầu của xích Markov, tức là j = P(X0 = j); j = 1, 2, ..., N. Khi đó: j (1) = P(X1=j)= j k kj k p     Tổng quát ta có: j (n) P(Xn = j) = j, tức là: X0, X1, ..., Xn, ... có phân phối xác suất như nhau, ta có thể chứng minh phân phối đồng thời của các biến ngẫu nhiên Xk, Xk+1, ..., Xk+m không phụ thuộc vào k đối với mọi m. Quá trình có tính chất như thế được gọi là quá trình dừng. Viết dưới dạng ma trận thì phân phối dừng là véctơ cột bất biến đối với ma trận chuyển vị của P, nghĩa là: 11 21 1 1 1 12 22 2 2 2 1 2 ... ... ... ... ... ... ... ... ... N N N N NN N N p p p p p p p p p                                      . 1.5.3. Xích Markov trong GA Xét bài toán: Cho một hàm f : J  R+ và JL là tập rời rạc hóa J. Cần tìm một phần tử i  JL sao cho f(i) = max{f(j) | j  JL } Gọi r là số cá thể hợp lệ thì r = |JL| = L , trong đó  là số phần tử của bảng ký hiệu sử dụng rời rạc hóa. Chẳng hạn với mã hóa nhị phân thì  = 2. Gọi tập tất cả các quần thể hợp lệ là S và giả thiết ta xét quần thể với kích cỡ cố định M (M = |k| với k  S). Khi đó số các quần thể hợp lệ là: 1 1 | |      r r M C S N (số các tổ hợp chập r-1 của M+r-1). Ta xét giải thuật di truyền đơn giản với các toán tử như sau: - Toán tử chọn lọc tỷ lệ, chọn cá thể i trong quần thể k với xác suất:
  • 16. 16 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn    r h ik k h Z h f k i Z i f p 0 ) , ( * ) ( ) , ( * ) ( trong đó Z(i,k) là biến cố xảy ra khi cá thể i thuộc vào quần thể k. - Toán tử lai ghép một điểm. - Toán tử đột biến là phép đảo bit tại vị trí đột biến. Với giải thuật này, GA có thể được mô hình hóa như một xích Markov thời gian rời rạc, mỗi quần thể xem như một trạng thái của xích. Rõ ràng là trạng thái hiện tại chỉ phụ thuộc vào một trạng thái ngay trước nó, vì nếu ký hiệu Xn là quần thể tại lần tạo sinh thứ n thì với n = 1,2,... ta có: P(Xn = k | X0 = k0 , X1 = k1, ..., Xn-1 = kn-1) = P(Xn = k | Xn-1 = kn-1) nghĩa là Xn thỏa tính chất của xích Markov. Ký hiệu ma trận chuyển của xích Markov này là Q. Rudolph đã chỉ ra rằng giải thuật di truyền đơn giản như trên không hội tụ đến tối ưu toàn cục. Sự hội tụ của giải thuật di truyền được định nghĩa theo Rudolph như sau: Định nghĩa 1: Giả sử Bt = max{f(i) | Z(i, Xi)  0, i = 0,1, ..., r-1} là chuỗi biến ngẫu nhiên của độ thích nghi cao nhất trong một quần thể biểu diễn trạng thái Xt tại bước thứ t. Giải thuật di truyền là hội tụ đến tối ưu toàn cục nếu và chỉ nếu 1 *) ( lim     f B P t t , ở đây f* = max{f(j) | j  JL } là lời giải tối ưu của bài toán nêu trên. Do các toán tử của GA độc lập với nhau nên có thể biểu diễn ma trận chuyển là Q = SCM trong đó S, C, M theo thứ tự là ma trận chuyển của các phép chọn lọc, lai ghép và đột biến. Định nghĩa 2: Khoảng cách Hamming giữa hai chuỗi bit là số vị trí bit không trùng nhau của hai chuỗi đó (chẳng hạn H(„0100‟, „0001‟) = 2). Đặt Hij là tổng khoảng cách Hamming giữa các cá thể trong quần thể i và j:     1 0 ) , ( M h h h ij j i H H
  • 17. 17 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ở đây ih là một cá thể trong quần thể i, jh là một cá thể trong quần thể j với h=0, ..., M-1; i,j = 1, ..., N và H(ih, jh) là khoảng cách Hamming giữa ih và jh. Định nghĩa 3 : Ma trận A gọi là nguyên sơ nếu tồn tại số tự nhiên k sao cho ma trận Ak là ma trận dương (ma trận mà mọi phần tử đều là số dương). Bổ đề 1 : Ma trận chuyển của giải thuật di truyền đơn giản với xác suất đột biến pm  (0, 1), sử dụng lai ghép và chọn lọc tỷ lệ là ma trận nguyên sơ. Từ những ký hiệu và kết quả trên Rudolph đã chứng minh định lý sau: Định lý 1: Giả sử hàm thích nghi không ấn định một giá trị thích nghi cho mỗi cá thể, giải thuật di truyền đơn giản với các giả thiết như trong bổ đề trên không hội tụ đến lời giải tối ưu. Tuy nhiên để tăng hiệu lực của GA, De Jong đã đề xuất một chiến lược ưu tú, Suzuki ([9]) đã chứng minh sự hội tụ đến lời giải toàn cục của GA với chiến lược ưu tú sửa đổi. Cụ thể như sau: Giả sử số cá thể M của quần thể là một số lẻ, i* là cá thể có giá trị thích nghi cao nhất của quần thể hiện tại. Chiến lược ưu tú được sửa đổi là: quần thể kế tiếp luôn chứa i* . Với chiến lược này, toán tử tạo sinh phần tử i* luôn được thực hiện đầu tiên tại mỗi bước của quá trình. Sau đó M-1 cá thể còn lại được sinh ra theo các toán tử di truyền thông thường. Dưới đây ta giả thiết là bài toán chỉ có một lời giải tối ưu toàn cục. Với mỗi quần thể k (k = 1,2,..., N), ký hiệu i*(k) là cá thể có độ thích nghi cao nhất trong quần thể. Đặt N(i) là số các quần thể mà trong quần thể đó, i là cá thể có độ thích nghi cao nhất (i = 0,1,...,r-1). Ta gán nhãn cho mỗi cá thể i = 0,1,..., r-1 theo thứ tự f(i) giảm dần sử dụng một quy tắc luân phiên tiền định nào đó đối với các cá thể có cùng độ thích nghi. Ta cũng gán nhãn cho mỗi quần thể k = 1,2,...,N theo thứ tự giảm dần của i*(k) theo một quy tắc luân phiên tiền định nào đó cho những quần thể có cùng i*(k). Giả sử các trạng thái trong tập K = {1, 2, ..., N(0)} là các trạng thái tối ưu toàn cục. Với các ký hiệu trên, điều kiện hội tụ của GA có thể phát biểu là:
  • 18. 18 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Giải thuật di truyền hội tụ tới tối ưu toàn cục nếu và chỉ nếu K Xt t    lim Ma trận chuyển Q+ đối với chiến lược ưu tú sửa đổi như sau:             1 1 0 0 0 0 ... 0 0 0 0 0 0 r Q Q Q Q+ gồm r ma trận con Q0, Q1, ..., Qr-1 , mỗi ma trận có phần trên đường chéo chính bằng 0. Kích cỡ của Qi là N(i)xN(i). Có thể thấy N(i) tính được là số tổ hợp chập (r-i-1) của (r-i+M-2). Dựa trên các ký hiệu trên, Suzuki đã đưa ra công thức tính xác suất chuyển từ trạng thái k đến trạng thái v là:             ) ( * ) ( * 0 ) ( * ) ( * ) , ( )! , ( 1 )! 1 ( 1 0 ) , ( v i k i v i k i k j r v j Y M q r j v j Y kv trong đó        ) ( * 1 ) , ( ) ( * ) , ( ) , ( k i j k j Z k i j k j Z k j Y ỏ đây Z(j,k) là xác suất để cá thể j thuộc vào quần thể k; r(j,k) là xác suất để cá thể j được tạo lập bởi các toán tử di truyền từ quần thể k. Nếu pm > 0 thì r(j,k) > 0. Bởi vậy qkv > 0 với k, v  K vì i*(k) = i*(v). Điều này cũng có nghĩa là Q0 là ma trận dương và là nguyên sơ. Tuy nhiên cấu trúc của ma trận không thể suy ra nhờ trực giác bằng sự nghiên cứu mỗi toán tử di truyền. Toán tử chọn lọc không thể tạo cá thể mới và cũng không thể làm tăng i*(k). Toán tử lai ghép và đột biến đều tạo cá thể mới và có xác suất dương khi chuyển đến quần thể mới có cá thể cao hơn i*(k). Định lý 2: Giải thuật di truyền với chiến lược ưu tú sửa đổi như trên và pm  (0, 1) hội tụ đến tối ưu toàn cục. Chứng minh: Từ những phân tích trên, ta có Q+ là không phân ly được và Q0 là ma trận nguyên sơ. Theo lý thuyết xích Markov, ta có                   0 0 lim ) ( lim 0 R Q Q Q k k k n trong đó R là ma trận ngẫu nhiên chứa các xác suất chuyển từ trạng thái không tối ưu toàn cục đến trạng thái tối ưu toàn cục. Điều này cho thấy xác
  • 19. 19 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn suất sống sót của trạng thái không tối ưu toàn cục có khuynh hướng giảm dần đến 0 còn xác suất sống sót của trạng thái tối ưu toàn cục hội tụ về 1. Như vậy, định lý này cho thấy giải thuật di truyền có khả năng hội tụ về tối ưu toàn cục sau quá trình tiến hoá. Việc mô hình GA qua xích Markov có ý nghĩa quan trọng. Nó vừa chứng tỏ được sự hội tụ của giải thuật một cách chính xác, vừa là mô hình toán học để có thể tính toán chi tiết các yếu tố ảnh hưởng đến khả năng và tốc độ hội tụ của giải thuật. Tuy nhiên, thực hiện thuật toán qua xích Markov sẽ gặp khó khăn rất lớn do không gian trạng thái cần xét đến là rất lớn. Vì vậy mô hình này thường chỉ được phát triển về phương diện lý luận. Kết Luận: phần trên giới thiệu những vấn đề khái quát về giải thuật di truyền (GA) làm cơ sở cho việc ứng dụng giải bài toán tối ưu đa mục tiêu.
  • 20. 20 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Chương 2: LOGIC MỜ Chương này giới thiệu những vấn đề khái quát về logic mờ làm cơ sở cho việc ứng dụng giải bài toán tối ưu đa mục tiêu.[1] 2.1. Tập mờ 2.1.1. Định nghĩa tập con mờ Một tập con cổ điển A của X được định nghĩa bởi một hàm đặc trưng A  lấy giá trị 0 đối với những phần tử của X không thuộc A và lấy giá trị 1 với những phần tử X thuộc A:   1 , 0 :  X A  Định nghĩa 2.1: Một tập con mờ A của X được định nghĩa bởi một hàm thuộc, gán cho mỗi phần tử x của X, độ thuộc fA(x), nằm giữa 0 và 1, theo đó x thuộc A:   1 , 0 :  X fA Trường hợp đặc biệt, trong đó fA chỉ lấy những giá trị bằng 0 hay 1, tập con mờ A là một tập con cổ điển của X. Vậy một tập con cổ điển là một trường hợp riêng của tập con mờ. Từ nay về sau, ta sẽ ký hiệu F(X) là tập tất cả các tập con mờ của X. Ký pháp sau đây vẫn được dùng để biểu diễn tập con mờ A, mặ dù nó không liên quan gì đến ý lấy tổng hoặc láy tích phân. Nó chỉ ra với mọi phần tử x của X, độ thuộc fA(x) của nó vào A: Ký pháp:           x A X x A x x f A x x f A / ) ( / ) ( 2.1.2. Các đặc trưng của một tập con mờ Những đặc trưng hữu ích nhất của một tập con mờ A của X để mô tả nó là những đặc trưng chỉ rõ nó khác với một tập con thông thường của X ở điểm nào. Đặc trưng thứ nhất là giá của A, là tập những phần tử của X ít nhất có thuộc A một chút.
  • 21. 21 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Định nghĩa 2.2: Giá của A, ký hiệu supp(A), là bộ phận của X trên đó hàm thuộc của A khác không: Supp(A)=  0 ) ( /   x f X x A Đặc trưng thứ hai của A là chiều cao của nó, ký hiệu h(A), là độ thuộc lớn nhất mà một phần tử của X thuộc A. Định nghĩa 2.3: Chiều cao, ký hiệu h(A), của tập con mờ A của X là giá trị lớn nhất mà hàm thuộc có thể lấy được: h(A)= ) ( sup x fA X x Người ta thường dùng các tập con mờ được chuẩn hóa, có nghĩa với chúng có ít nhất một phần tử của X thuộc tuyệt đối (với độ thuộc 1) vào A. Nói riêng, lý thuyết khả năng cần tới những tập con mờ được chuẩn hóa. Định nghĩa 2.4: Tập con mờ A của X là được chuẩn hóa nếu chiều cao h(A) của nó bằng 1. Một tập con mờ được chuẩn hóa giả định có tồn tại những phần tử của X điển hình cho tính chất được liên kết với nó. Đó là những phần tử thuộc A tuyệt đối và tập những phần tử đó được gọi là hạt nhân của A. Định nghĩa 2.5: Hạt nhân của A, ký hiệu ker(A), là tập các phần tử của X tại đó hàm thuộc của A có giá trị 1: Ker(A)=  1 ) ( /   x f X x A Khi tập X là hữu hạn, ta cón đặc trưng tập con mờ A của X bởi lực lượng của nó, chỉ rõ độ thuộc tổng thể mà các phần tử của X thuộc A. Định nghĩa 2.6: Lực lượng của tập con mờ A của X được định nghĩa bởi: |A|= X x A x f ) (
  • 22. 22 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Nếu A là tập con thông thường của X, chiều cao của nó bằng 1; nó được chuẩn hóa và đồng nhất với giá và hạt nhân của nó; lực lượng của nó chính là số phần tử của tập theo định nghĩa cổ điển. 2.1.3. Các phép toán trên các tập con mờ a. Sự bằng nhau và sự bao hàm (chứa nhau) của các tập con mờ Định nghĩa 2.7: Hai tập con mờ A và B của X là bằng nhau nếu các hàm thuộc của chúng lấy cùng giá trị với mọi phần tử của X: ) ( ) ( : x f x f X x B A    Định nghĩa 2.8: Cho hai tập con mờ A và B của X, ta nói rằng A bao hàm trong B, ký hiệu B A  , nếu các hàm thuộc của chúng thỏa điều kiện ) ( ) ( : x f x f X x B A    b. Giao và hợp của các tập con mờ Định nghĩa 2.9: Giao của hai tập con mờ A và B của X là tập con mờ C, ký hiệu B A  , sao cho: )) ( ), ( min( ) ( : x f x f x f X x B A C    , Min ký hiệu toán tử lấy cực tiểu Định nghĩa 2.10: Hợp của hai tập con mờ A và B của X là tập con mờ D, ký hiệu là B A  sao cho: )) ( ), ( max( ) ( : x f x f x f X x B A D    , Max ký hiệu toán tử lấy cực đại. Tính chất 1:  Tính kết hợp của  và  ;  Tính giao hoán của  và  ;  , A X A       A  , A A   X X A  
  • 23. 23 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn  B A A B A      ) ' ' ( ) ' ( ) ' ' ' ( B A B A B B A        ) ' ' ( ) ' ( ) ' ' ' ( B A B A B B A        B A B A B A      c. Phần bù của một tập con mờ Định nghĩa 2.11: Phần bù AC của một tập con mờ A của X được định nghĩa là tập con mờ của X với hàm thuộc: ) ( 1 ) ( : x f x f X x A A     Tính chất 2:  Các luật De Morgan: c c c B A B A    ) ( , c c c B A B A    ) (  A A c c  ) (  X c      c X  X A A c   Tính chất 3: Giá và hạt nhân của A và phần bù của nó nghiệm đúng: (supp(Ac ))c =ker(A), (ker(Ac ))c = supp(A). d. Tích Descartes của các tập con mờ Định nghĩa 2.12: Cho các tập con mờ A1, A2, …, Ar được xác định tương ứng trên X1,X2, …, Xr, ta định nghĩa tích Descartes của chúng A=A1*A2*…*Ar như một tập con mờ của X có hàm thuộc: )) ( ),... ( min( ) ( , ) ,..., , ( 1 2 1 1 r A A A r x f x f x f X x x x x r     e. Hình chiếu của một tập con mờ
  • 24. 24 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Định nghĩa 2.13: Hình chiếu trên X1 của tập con mờ A của X1*X2 là tập con mờ ) ( Pr 1 A ojX của X1, với hàm thuộc được xác định bởi: )) , (( sup ) ( , 2 1 1 ) ( Pr 1 1 2 2 1 x x f x f X x A X x A ojX     Hình chiếu của A trên X2 cũng được định nghĩa tương tự. Định nghĩa 2.14: hình chiếu trên Xa*Xb*….*Xk của tập con mờ A của X1*X2*…Xr là tập con mờ Proj(A) của Xa*Xb*…*Xk với hàm thuộc được định nghĩa là: , ,...., k k a a X x X x      ,...)) ((.... sup ) ,..., ( ,..., , 1 / ) ( Pr i A k i a i r i i k a A oj x f x x f      f. Khuếch trụ của một tập con mờ Định nghĩa 2.15: Khuếch trụ của một tập con mờ B của Xa*Xb*…*Xk trên X= X1*X2*…Xr được định nghĩa là: ) ,..., ( ) ( , ) ,..., ,..., ,..., ( 1 k a B c B r k a x x f x f X x x x x x     2.2. Quan hệ mờ Quan hệ mờ đóng vai trò quan trọng trong Logic mờ và lập luận xấp xỉ. Khái niệm quan hệ mờ là sự tổng quát hoá trực tiếp của khái niệm quan hệ (quan hệ rõ). Trước hết ta nhắc lại về khái niệm quan hệ . Giả sử U và V là hai tập . Một quan hệ R từ U đến V (sẽ được gọi là quan hệ 2 ngôi, hoặc quan hệ nhị nguyên ) là một tập con của tích đề các UV. Trong trường hợp U = V, ta nói R là quan hệ trên U. Chẳng hạn, tập R bao gồm tất cả các cặp người (a, b) trong đó a là chồng của b, xác định quan hệ “vợ _ chồng” trên tập người nào đó. Khi U và V là các tập hữu hạn, chúng ta sẽ biểu diễn quan hệ R từ U đến V bởi ma trận, trong đó các dòng được đánh dấu bởi các phần tử x  U và các cột được đánh dấu bởi các phần tử y  V. Phần tử của ma trận nằm ở dòng x, cột y là R(x,y) 1 nếu (x,y) R R(x,y) =
  • 25. 25 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 0 nếu (x,y) R Ví dụ 1: Giả sử U = {1,2,3} và V = {a,b,c,d} giả sử R là quan hệ từ U đến V như sau: R = {(1,a), (1,d), (2,a), (2,b), (3,c), (3,d)} Chúng ta biểu diễn quan hệ R bởi ma trận sau: 1 0 0 1 1 1 1 0 0 2 0 0 1 1 3 a b c d Bây giờ ta xét quan hệ “anh em họ gần” trên một tập người U nào đó. Quan hệ này không thể đặc trưng bởi tập rõ của tích UU. Một cách hợp lý nhất là xác định quan hệ này bởi một tập mờ R trên UU. Chẳng hạn R(a,b) = 1 nếu a là anh em ruột của b; R(a,b) = 0,9 nếu a là anh em con chú con bác của b; R(a,b) = 0,75 nếu a là anh em cháu cô, cháu cậu của b;... Một quan hệ mờ từ U đến V là một tập mờ trên tích đề các UV. Tổng quát, một quan hệ mờ n ngôi là một tập R trong không gian tích đề các của n không gian U1x U2 x … x Un. Quan hệ mờ 2 ngôi R(u,v) gọi là: 1. Đối xứng nếu: R(u, v) = R(v, u) 2. Phản xạ nếu: R(u, u) = 1, u  U 3. Phản phản xạ nếu: R(u, u) = 0 , u  U 4. Bắc cầu Max_Min nếu R(u, v)  { R(u, w)  R(w, v): wW} 5. Bắc cầu Min_Max nếu R(u, v)  { R(u, w)  R(w, v): wW} 6. Phép hợp thành RS với RU W, S W U được định nghĩa như sau:  RS (u, v) = { R(u, w)  S(w, v): wW}. R =
  • 26. 26 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn R được gọi là quan hệ tương tự ( quan hệ tương đương mờ) nếu nó có các tính chất:  Phản xạ.  Đối xứng.  Bắc cầu. R được gọi là quan hệ không tương tự nếu nó là phần bù của một quan hệ tương tự hay một các tương đương, nó thỏa mãn các tính chất:  Phản phản xạ.  Phản đối xứng.  Bắc cầu Min_Max Ký hiệu dR(u, v) = R(u, v). Khi đó chúng ta thấy nó có các tính chất sau: a. dR(u, v)  0. b. dR(u, v) = dR(v, u). c. dR(u, v) = dR(u, w)  dR(w, v). Như vậy dR(u, v) có các tính chất tương tự như khoảng cách trong không gian hình học và được gọi là khoảng cách Min_Max. R là quan hệ giống nhau nếu nó thỏa mãn:  Phản xạ.  Đối xứng. R là quan hệ không giống nhau nếu nó là phần bù của quan hệ giống nhau, tức là:  Phản phản xạ  Đối xứng Như vậy bao đóng bắc cầu R^ của quan hệ giống nhau là quan hệ tương tự. R^ được tính theo công thức: R^ = R1  R2 .... Rk ....
  • 27. 27 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn R= Trong đó: R2 = RR với  RS (u, v) = { R(u, w)  S(w, v): wW} . Rk = Rk-1 R. Để tính R^ ta thường dùng các kết quả sau : 1. Nếu có n mà Rn =Rn+1 thì R^ = R1R2....Rn 2. Nếu U hữu hạn và U  =n thì R^ = R1R2....Rn Nếu R là quan hệ mờ tương tự thì tập mức  ,R = {u, v U: R (u, v)  } của R là quan hệ tương đương kinh điển và do đó phân hoạch U thành các lớp tương đương. Ký hiệu R là phần bù của R tức là R = CR thì R là quan hệ không tương tự và R1- = {u,v U : R(u, v)=dR(u, v) 1-} = R. Nói cách khác, khoảng cách giữa hai phần tử bất kỳ trong cùng một lớp tương đương không vượt quá 1-. Tương tự như trường hợp quan hệ rõ, khi cả U và V là các tập hữu hạn, chúng ta sẽ biểu diễn quan hệ mờ R bởi ma trận trong đó phần tử nằm ở dòng xU, cột yV là mức độ thuộc của (x,y) vào tập mờ R. Ví dụ : Chúng ta giả sử U = {1,2,3}, V = {a,b,c} và R là quan hệ mờ từ U đến V như sau: R = ) , 3 ( 42 , 0 ) , 3 ( 0 ) , 3 ( 9 , 0 ) , 2 ( 8 , 0 ) , 2 ( 75 , 0 ) , 2 ( 3 , 0 ) , 1 ( 0 ) , 1 ( 1 ) , 1 ( 5 , 0 c b a c b a c b a         Quan hệ mờ trên được biểu diễn bởi ma trận: 0,5 1 0 1 0,3 0,75 0,8 2 0,9 0 0,42 3 a b c Kết luận: phần trên giới thiệu những vấn đề khái quát về logic mờ làm cơ sở cho việc ứng dụng giải bài toán tối ưu đa mục tiêu
  • 28. 28 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Chương 3: KẾT HỢP GIẢI THUẬT DI TRUYỀN VÀ LOGIC MỜ GIẢI BÀI TOÁN TỐI ƯU ĐA MỤC TIÊU Chương này trình bày những vấn đề ứng dụng cơ sở lý thuyết để giải bài toán tối ưu đa mục tiêu 3.1 . Bài toán tối ưu đa mục tiêu Trong nhiều ứng dụng thực tế gắn liền với việc thiết kế và kế hoạch hóa trong các ngành kinh tế - kĩ thuật, điều khiển các hoạt động sản xuất, chúng ta thường gặp những bài toán liên quan đến việc phân tích, lựa chọn phương án tốt nhất thoả mãn nhiều mục tiêu khác nhau. Đó là bài toán tối ưu đa mục tiêu. 3.1.1. Phát biểu bài toán max(min) ) (  X Y n R D X   Trong đó: k k R X Y X Y X Y   )) ( ),..., ( ( ) ( 1 gọi là vectơ mục tiêu. X gọi là phương án. D gọi là tập các phương án. k Y Y ,..., 1 gọi là các hàm mục tiêu. Các bài toán tối ưu đa mục tiêu thường có nhiều hàm mục tiêu với các ràng buộc khác nhau và các lời giải khác nhau. Các lời giải này thưòng không so sánh được với nhau. Vì vậy người ta đưa ra tập lời giải tối ưu Pareto. Lời giải trội( phương án trội): Lời giải X được gọi là trội hơn lời giải Y nếu i  ta đều có: ) ( ) ( Y F X F i i  , còn Y được gọi là phương án bị trội bởi X. Phương án Pareto tối ưu: Một phương án X được gọi là phương án Pareto tối ưu nếu X không thể bị trội bởi bất kì phương án nào khác thuộc miền giới hạn. Nếu bài toán tối ưu đa mục tiêu có nghiệm được gọi là tối ưu theo một cách định nghĩa nào đó thì không phụ thuộc vào cách định nghĩa đã chọn, nghiệm tối ưu đó phải là một phương án Pareto tối ưu. 3.1.2. Một số phương pháp giải Có nhiều phương pháp để giải bài toán tối ưu đa mục tiêu như: phương pháp nhượng bộ dần, phương pháp tìm nghiệm có khoảng cách ngắn nhất đến
  • 29. 29 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn nghiệm lý tưởng, phương pháp giải theo dãy mục tiêu đã được sắp xếp, phương pháp trọng số...nhưng trong phạm vi nghiên cứu của đề tài chỉ trình bày một số phương pháp giải sau: 3.1.2.1 Phương pháp trọng số Trong phương pháp này hàm lợi ích U tuyến tính theo các giá trị phương án p X Y U  )) ( ( , ) ( ) ( 1 X Y p X Y i k i i    Bài toán QHĐMT viết ở dạng này là: ) ( max 1 X Y p i k i i   (1.1) D X  (1.2) Về mặt thực tiễn pi có thể xem là tỉ lệ quy đổi thứ nguyên của mục tiêu thứ i. Chẳng hạn ta quy đổi tất cả các mục tiêu về dạng tiền tệ, khi đó pi biểu diễn rằng: Một đơn vị mục tiêu thứ i có thể được thay thế bởi pi đơn vị tiền tệ. Bài toán (1.1), (1.2) là một bài toán quy hoạch đơn chỉ phụ thuộc tham số. Đặc biệt nếu mọi Yi(i=1,…,k) là các hàm tuyến tính thì ta có một bài toán quy hoạch tuyến tính phụ thuộc tham số ở hàm mục tiêu. Ở đây quan hệ ,  ~ được rút ra thông qua việc so sánh hàm mục tiêu (1.1). 3.1.2.2 . Phương pháp tìm nghiệm có khoảng cách ngắn nhất đến nghiệm lý tưởng Nghiệm lý tưởng ta là một nghiệm (nói chung không nhất thiết là phương án chấp nhận được), mà tại đó giá trị của mỗi hàm mục tiêu riêng rẽ đều đạt cực đại. Ở đây giá trị hàm lợi ích tỉ lệ với khoảng cách từ phương án X  D đến cái gọi là nghiệm lý tưởng. Phương án 2 1 X X  khi và chi khi X1 gần nghiệm lý tưởng hơn X2. Giả sử X1, X2  Rn . Khoảng cách giữa hai điểm X1, X2 là một số dα xác định bởi:
  • 30. 30 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn dα =               n i i i X X 1 2 1 Với X1 = (X1 1,…, X1 n); X2 = (X2 1,…, X2 n) α là tham số (α >=1) Số dα có tính chất: d∞  dα  d1 Với d∞ = lim d∞= max Bài toán tối ưu đa mục tiêu Max Y(X) X  D X* là nghiệm lý tưởng. Giả sử Y* là các giá trị tối ưu của từng mục riêng rẽ (Y*i = maxY(X)). Khi đó giá trị của hàm mục tiêu Y tại X* là : (Y*1,…,Y*k) và khoảng cách từ một phương án X đến nghiệm lý tưởng xác định bởi: d=          k i i i Y X Y 1 * ) (  Bài toán cực tiểu khoảng cách đến nghiệm lý tưởng là: minα          k i i i Y X Y 1 * ) (  (1.3) X  D (1.4) Ở đây vấn đề xác định α nói chung phụ thuộc vào các bài toán cụ thể và các kết quả về mặt lý thuyết để tìm ra một thuật toán giải bài toán quy hoạch (1.3) và (1.4). Với trường hợp α=1 việc cực tiểu hoá : Mindi XD = min XD      k i i Y X Y 1 * 1  Tương đương với tìm: max XD ) ( 1 X Y k i i   Và 2 1 X X        k i i k i i X Y X Y 1 2 1 1 ) ( ) ( . Trường hợp α = ∞:
  • 31. 31 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Bài toán : mind XD = min XD max 1ik   ) ( * X Y Y i i  Còn có thể viết dưới dạng : min W (1.5) Y*1-Yi(X)  W i = 1,k XD (1.6) Nếu X* là nghiệm của (1.5), (1.6) thì nó là nghiệm thoả hiệp tốt nhất theo nghĩa  X  D: X* X hoặc X hoặc X* ~ X (trường hợp sau xảy ra khi X cũng là nghiệm tối ưu). Ở đây 1  = Y* 1 - W ta hiểu là nhượng bộ của mục tiêu thứ 1, như thế quan điểm nhượng bộ ở đây là dựa trên nhượng bộ đồng đều theo tất cả các chỉ tiêu, phương án X* là trội nhất nếu nhượng bộ “đều ” của nó là nhỏ nhất. Trong trường hợp chung, tập các nghiệm của (1.3), (1.4) là tập các nghiệm thoả hiệp tốt nhất. Người ta cũng chứng minh được rằng tập các nghiệm thỏa hiệp tốt nhất là một tập con của tập các nghiệm không cải tiến được. Zeleny (1974) đã chứng minh: Tập các nghiệm thoả hiệp ứng với dα(1α∞) nằm trong khoảng nghiệm ứng với d1 và dα. Còn trong trường hợp α = ∞ Xalucvatde có nêu ra một thuật toán thoả hiệp. Ở đây các quan hệ , ~ được dựa trên các metric dα: X1  X2           k i i i X Y Y 1 1 ) ( *  <          k i i i X Y Y 1 2 ) ( *  X1 ~ X2           k i i i X Y Y 1 1 ) ( *  <          k i i i X Y Y 1 2 ) ( *  3.2. Thuật toán đề xuất Bước 1: Khởi tạo Khởi tạo quần thể QT gồm M (=Size) cá thể một cách ngẫu nhiên Tính các giá trị hàm mục tiêu Fi(x) với mỗi xQT. Độ phù hợp của mỗi cá thể được tính bởi a1F1(x) + … + akFk(x) trong đó các ai khởi tạo ngẫu nhiên sao cho: ai[0,1] và a1 + … + ak = 1. Thông thường việc gán các giá trị ai được cho trước bởi các chuyên gia, tuy
  • 32. 32 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn nhiên để đảm bảo độ phù hợp nhất của mỗi cá thể ta lựa chọn ai tại mỗi bước lặp ai có giá trị lớn nhất. Và cá thể phù hợp nhất sẽ được giữ lại cho bước tiến hóa (ở đây là tư tưởng dùng tính mờ của độ phù hợp mỗi cá thể kết hợp với thuật toán di truyền tại mỗi bước lặp trong thuật toán di truyền. Bởi thực chất ra thuật toán di truyền cũng là giải thuật toán xác xuất, vì thế ta dùng việc lựa chọn ai như trên để đánh giá và lựa chọn cá thể phù hợp nhất tại mỗi bước lặp). Bước 2: Tiến hóa Trong quần thể QT, ta thực hiện: 2.1: Chọn ngẫu nhiên 2 cá thể cha mẹ. Lai ghép tạo ra 2 cá thể con mới. 2.2: Thực hiện đột biến (với xác suất đột biến là pm) một trong hai cá thể con vừa tạo ra. 2.3: Tính độ phù hợp của mỗi cá thể vừa tạo. 2.4: So sánh các cá thể cha mẹ với các con vừa tạo. Cá thể nào có độ phù hợp tốt hơn thì được đưa vào quần thể kế tiếp. Bước 3: Nếu chưa thỏa mãn điều kiện dừng thì chuyển về B2. Bước 4: Đưa ra quần thể cuối cùng cho người dùng lựa chọn Tiêu chuẩn để so sánh 2 cá thể là Cá thể x “tốt hơn” y nếu a1F1(x) + … + akFk(x) < a1F1(y) + … + akFk(y) trong đó các ai khởi tạo ngẫu nhiên sao cho a1 + … + ak = 1. 3.3. Thử nghiệm 3.3.1 Bài toán thử nghiệm 3.3.1.1 Bài toán 1 [10]                      3 3 , 2 , 1 , 4 , 4 Min ) ) 3 1 (x exp(- - 1 = F2(x) Min ) ) 3 1 - (x exp(- - 1 = F1(x) 2 i 3 1 i 2 i n i xi a. Mã hóa Bài toán này gồm có 2 hàm mục tiêu đều tiến đến Min, mỗi hàm bao gồm 3 biến. Vì vậy, mỗi cá thể (lời giải của bài toán) được mã hóa là một
  • 33. 33 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn véctơ thực 6 chiều. Trong đó 6 thành phần đầu biểu diễn các giá trị biến xi (i=1,…,3); thành phần thứ 4, thứ 5 để ghi giá trị các hàm mục tiêu f1, f2 ứng với cá thể này. Thành phần thứ 6 để ghi giá trị hàm tổ hợp các mục tiêu của cá thể khi sử dụng giải thuật đề xuất, và để ghi giá trị độ thích nghi của từng cá thể khi sử dụng GA nhằm đánh giá trong việc chọn các cá thể đưa vào quần thể mới . b. Các toán tử lai, đột biến: Toán tử lai: Toán tử SBX (Simulated Binary Crossover) Giả sử x = (x1, x2 , ... xn) và y = (y1, y2 , ..., yn) là hai cá thể cha mẹ đã chọn để tạo sinh. Khi đó hai cá thể con c1 = (c1 1, ... , c1 n) và c2 = (c2 1, ... , c2 n ) được sinh ra theo công thức: c1 i = 0.5*((1 + ) * xi + (1 - ) * yi) (2.4) c2 i = 0.5*((1 - ) * xi + (1 + ) * yi) (2.5) trong đó  được tính bởi công thức:             otherwise u u if u 1 1 1 1 ) ) 1 ( * 2 1 ( 5 . 0 ) * 2 (    (2.6) với u là số ngẫu nhiên trong [0, 1];  là tham số điều khiển. Thủ tục lai ghép như sau: %lai ghep i1=1+fix(m*rand); i2=1+fix(m*rand); y(1,:)=x2(i1,:); y(2,:)=x2(i2,:); for v2=1:n; lamda=2; u=rand; beta=lamda*exp(-lamda*u);
  • 34. 34 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn yy1=0.5*((1+beta)*y(1,v2)+(1-beta)*y(2,v2)); yy2=0.5*((1+beta)*y(2,v2)+(1-beta)*y(1,v2)); if (yy1>=left)&(yy1<=righ); y(1,v2)=yy1; else; y(1,v2)=u*x2(i1,v2)+(1-u)*x2(i2,v2);; end; if (yy2>=left)&(yy2<=righ); y(2,v2)=yy2; else; y(2,v2)=(1-u)*x2(i1,v2)+u*x2(i2,v2);; end; end; Toán tử đột biến: sử dụng đột biến đều, với một gen i được chọn ngẫu nhiên để đột biến từ cá thể b = (x1 , x2, ... , xN), thành phần xi được thay thế bởi một số ngẫu nhiên trong khoảng xác định [li, ui] của xi . Thủ tục đột biến như sau: %Dot bien vd=1+fix(n*rand); %vi tri dot bien if rand<pm; %dot bien if rand<0.5; db=left+rand*(righ-left); y(1,vd)=db; else db=left+rand*(righ-left); y(2,vd)=db; end; end; c. Các tham số : Các tham số được sử dụng trong bài toán này là:  Kích thước quần thể: 30
  • 35. 35 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn  Xác suất lai 1, đột biến 0.1.  Chương trình thực hiện tiến hoá sau 1000 thế hệ. d. Thuật toán Khi sử dụng GA: Bước 1: Khởi tạo quần thể QT gồm M(=Size) cá thể một cách ngẫu nhiên Tính các giá trị hàm mục tiêu F1(x), F2(x); với mỗi xQT Bước 2: Tính   QT x x MT   | ) ( F min 1 1   QT x x F MT   | ) ( min 2 2 Dem:=1; Bước 3: Trong các cá thể trong quần thể QT, ta thực hiện: Bước 3.1: Chọn ngẫu nhiên 2 cá thể cha mẹ Bước 3.2: Lai ghép tạo ra 2 cá thể con mới. Bước 4: Với 2 cá thể con vừa sinh ra trong phép lai ghép trên, ta thực hiện đột biến (nếu xác suất đột biến là 0.1) và đột biến tại một trong hai cá thể này tùy thuộc vào giá trị ngẫu nhiên tạo ra. Bước 5: Tính giá trị các hàm mục tiêu của 2 cá thể sau khi đột biến, từ đó tính độ thích nghi của chúng. So sánh chúng với cha mẹ để chọn cá thể đưa vào quần thể sau. Nếu độ thích nghi của cá thể con tốt hơn độ thích nghi của cha mẹ thì thay cha mẹ bởi các con tương ứng và xác suất ngẫu nhiên có thể chọn các cá thể con này là 0.1. Bước 6: Dem= Dem+1; Bước 7: Nếu Dem = 80 thì quay về bước 2, nếu không thì chuyển đến B8. Bước 8: Nếu chưa thỏa mãn điều kiện dừng thì chuyển về B3. Khi sử dụng GA kết hợp FL: Bước 1: Khởi tạo quần thể QT gồm M(=Size) cá thể một cách ngẫu nhiên Tính các giá trị hàm mục tiêu F1(x), F2(x); với mỗi xQT Bước 2: Trong các cá thể trong quần thể QT, ta thực hiện: Bước 2.1: Chọn ngẫu nhiên 2 cá thể cha mẹ Bước 2.2: Lai ghép tạo ra 2 cá thể con mới.
  • 36. 36 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Bước 3:Với 2 cá thể con vừa sinh ra trong phép lai ghép trên, ta thực hiện đột biến (nếu xác suất đột biến là 0.1) và đột biến tại một trong hai cá thể này tùy thuộc vào giá trị ngẫu nhiên tạo ra. Bước 4: Tính giá trị các hàm mục tiêu của 2 cá thể sau khi đột biến, từ đó tính giá trị tổ hợp các mục tiêu của chúng. So sánh chúng với cha mẹ để chọn cá thể đưa vào quần thể sau. Bước 5: Nếu chưa thỏa mãn điều kiện dừng thì chuyển về B2. e. Kết quả được cho trong bảng sau: Lần thử thứ 1 Lần thử thứ 35 Lần thử thứ 100 GA GA+FL GA GA+FL GA GA+FL x1 0.53317 0.54056 0.52367 0.54489 0.51699 0.52863 x2 0.52933 0.54953 0.52627 0.54569 0.51106 0.52954 x3 0.52571 0.53832 0.53282 0.55695 0.50434 0.54802 f1 0.00690 1 0.00364 4 0.007445 0.002469 0.01327 9 0.00550 5 f2 0.97464 0.97682 0.97434 0.97779 0.97134 0.97564 Giá trị trung bình 0.4908 0.4902 0.4909 0.4903 0.4924 0.4906 Bảng 3.1: Một số lời giải sử dụng GA và GA kết hợp FL của bài toán 1. Trong bảng trên, cột GA là kết quả quá trình tiến hóa quần thể gồm 30 cá thể sau 1000 thế hệ và sau 100 lần lặp thì cập nhật lại giá trị lý tưởng sử dụng độ thích nghi đế đánh giá và chọn lọc cá thể, còn cột GA + FL là kết quả quá trình tiến hóa quần thể gồm 30 cá thể sau 1000 thế hệ sử dụng giá trị tổ hợp các mục tiêu để đánh giá và chọn lọc cá thể. Theo tác giả [10], các hàm mục tiêu đạt giá trị tốt nhất khi x     3 1 ,    3 1 . Kết quả ở bảng trên cũng hoàn toàn phù hợp với kết quả này, giá trị các hàm mục tiêu càng tiến dần tới Min khi giá trị của các xi xấp xỉ bằng nhau và x     3 1 ,    3 1 . Việc sử dụng giải thuật GA và giải thuật đề xuất có những ưu nhược điểm nhất định, tùy vào mục đích yêu cầu của người sử dụng mà ta có
  • 37. 37 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn thể chọn phương pháp giải cho bài toán cho phù hợp. Trong hai giải thuật này thì giải thuật đề xuất cho kết quả mà giá trị trung bình của các hàm mục tiêu nhỏ hơn, nghĩa là các cá thể được chọn đến quần thể cuối cùng trong giải thuật này có tính đồng đều hơn. 3.3.1.2 Bài toán 2 [5]                                        6 ,... 1 , 1 , 0 ))) 5 . 0 ( * 2 cos( ) 5 . 0 (( 5 * 100 ) 1 ( * ) 1 ( * 2 1 2 ) 1 ( * * 2 1 1 6 2 2 1 1 n n i x x x g Min g x f Min g x f i i i  a. Mã hóa Bài toán này gồm có 2 hàm mục tiêu đều tiến đến Min, mỗi hàm bao gồm 6 biến. Vì vậy, mỗi cá thể (lời giải của bài toán) được mã hóa là một véctơ thực 9 chiều. Trong đó 6 thành phần đầu biểu diễn các giá trị biến xi (i=1,…,6); thành phần thứ 7, thứ 8 để ghi giá trị các hàm mục tiêu f1, f2 ứng với cá thể này; thành phần thứ 9 để ghi giá trị hàm tổ hợp các mục tiêu của cá thể khi sử dụng giải thuật đề xuất, và để ghi giá trị độ thích nghi của từng cá thể khi sử dụng GA nhằm đánh giá trong việc chọn các cá thể đưa vào quần thể mới . b. Các toán tử lai, toán tử đột biến, các tham số và thuật toán của bài toán 2 đều tương tự như bài toán 1. c. Kết quả được cho trong bảng sau: Lần thử thứ 1 Lần thử thứ 35 Lần thử thứ 100 GA GA+FL GA GA+FL GA GA+FL
  • 38. 38 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn x1 0.90684 0.55335 0.41262 0.53912 0.29618 0.54436 x2 0.50682 0.50601 0.49908 0.49969 0.51565 0.50846 x3 0.46392 0.5006 0.50634 0.50023 0.51017 0.50211 x4 0.50353 0.50017 0.5002 0.50396 0.51134 0.50308 x5 0.48758 0.50112 0.50341 0.49889 0.49086 0.50028 x6 0.50382 0.50167 0.52386 0.50036 0.48621 0.50327 f1 1.8867 0.29993 0.47198 0.27919 0.37851 0.32652 f2 0.19384 0.24209 0.67188 0.23867 0.89945 0.2733 Giá trị trung bình 1.0408 0.2716 0.5737 0.2595 0.6422 0.3024 Thời gian chạy 0.092 0.196 0.109 0.218 0.12 0.237 Bảng 3.2: Một số lời giải sử dụng GA và GA kết hợp FL của bài toán 2. Trong bảng trên, cột GA là kết quả quá trình tiến hóa quần thể gồm 30 cá thể sau 1000 thế hệ và sau 100 lần lặp thì cập nhật lại giá trị lý tưởng sử dụng độ thích nghi đế đánh giá và chọn lọc cá thể, còn cột GA + FL là kết quả quá trình tiến hóa quần thể gồm 30 cá thể sau 1000 thế hệ sử dụng giá trị tổ hợp các mục tiêu để đánh giá và chọn lọc cá thể. Theo tác giả [5], các hàm mục tiêu đạt giá trị tốt nhất khi x=0.5. Kết quả ở bảng trên cũng hoàn toàn phù hợp với kết quả này, giá trị các hàm mục tiêu càng tiến dần tới Min khi giá trị của các xi xấp xỉ bằng nhau và x0.5. Trong hai giải thuật này thì giải thuật đề xuất cho kết quả mà giá trị trung bình của các hàm mục tiêu nhỏ hơn. Tuy nhiên, giá trị mục tiêu thì trong mỗi lần chạy lại cho những kết quả không cố định nên tùy vào yêu cầu của người nhận lời giải mà chọn phương pháp phù hợp. 3.3.1.3. Bài toán 3 [10]
  • 39. 39 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn                     30 n 1..30 i [0,1]; x 1) - )/(n x ( * 9 + 1 = g(x) min /g(x))) (x - (1 * g(x) F2(x) min x F1(x) n 2 i i 1 1 a. Mã hóa Bài toán này gồm có 2 hàm mục tiêu đều tiến đến Min, mỗi hàm bao gồm 30 biến. Vì vậy, mỗi cá thể (lời giải của bài toán) được mã hóa là một véctơ thực 33 chiều. Trong đó 30 thành phần đầu biểu diễn các giá trị biến xi (i=1,…,30); thành phần thứ 31, thứ 32 để ghi giá trị các hàm mục tiêu f1, f2 ứng với cá thể này; thành phần thứ 33 để ghi giá trị hàm tổ hợp các mục tiêu của cá thể khi sử dụng giải thuật đề xuất, và để ghi giá trị độ thích nghi của từng cá thể khi sử dụng GA nhằm đánh giá trong việc chọn các cá thể đưa vào quần thể mới. b. Các toán tử lai, toán tử đột biến, các tham số và thuật toán của bài toán 3 đều tương tự như bài toán 1. c. Kết quả được cho trong bảng sau:
  • 40. 40 Lần thử thứ 1 Lần thử thứ 35 Lần thử thứ 100 GA GA+FL GA GA+FL GA GA+FL x1 0.15482 0.084058 0.62662 0.18499 0.51478 0.084101 x2 0.16585 0.12662 0.10642 0.5028 0.33008 0.26395 x3 0.26327 0.29386 0.22727 0.11887 0.081155 0.22197 x4 0.15009 0.077826 0.2944 0.36481 0.43089 0.097028 x5 0.63224 0.30424 0.11755 0.46638 0.42374 0.15209 x6 0.34625 0.26004 0.34936 0.17919 0.1877 0.1981 x7 0.29794 0.81561 0.17381 0.09913 0.38651 0.013321 x8 0.28267 0.25818 0.48224 0.11706 0.22452 0.39959 x9 0.44043 0.44251 0.18435 0.44914 0.31189 0.071752 x10 0.19174 0.12697 0.30965 0.15359 0.38772 0.22791 x11 0.20197 0.31449 0.17657 0.15663 0.43363 0.3182 x12 0.083901 0.26798 0.34444 0.3536 0.61304 0.43493 x13 0.55726 0.2706 0.30772 0.22121 0.27541 0.20517 x14 0.49689 0.024928 0.65522 0.24375 0.14927 0.11059 x15 0.44053 0.32172 0.49138 0.15509 0.32192 0.023817 x16 0.47128 0.40979 0.61357 0.60229 0.32644 0.2227 x17 0.20155 0.096655 0.09922 0.31347 0.099068 0.38282 x18 0.11034 0.16986 0.56066 0.34096 0.2856 0.14097 x19 0.082088 0.20184 0.78217 0.32699 0.20936 0.13578 x20 0.35177 0.44851 0.34502 0.20571 0.60769 0.67773 x21 0.20732 0.18577 0.084859 0.14799 0.61583 0.30763 x22 0.28223 0.41607 0.18523 0.080261 0.1953 0.61245 x23 0.44567 0.144 0.11284 0.34933 0.37708 0.32425 x24 0.078637 0.1561 0.15885 0.15292 0.18368 0.2292 x25 0.12173 0.64318 0.49164 0.3942 0.2147 0.098754
  • 41. 41 x26 0.3834 0.53869 0.43095 0.21492 0.16024 0.76411 x27 0.18261 0.21196 0.44294 0.1206 0.059399 0.18899 x28 0.35402 0.17371 0.13455 0.31471 0.36455 0.64891 x29 0.24522 0.12535 0.29752 0.16653 0.41993 0.42386 x30 0.19819 0.10525 0.082369 0.32897 0.27481 0.19759 f1 0.15482 0.084058 0.62662 0.18499 0.51478 0.084101 f2 5.0285 4.9424 4.8976 4.7289 4.9685 5.0342 Giá trị trung bình 2.602948 2.553414 2.777312 2.515 2.747602 2.626977 Bảng 3.3: Một số lời giải sử dụng GA và GA kết hợp FL của bài toán 3. Trong bảng trên, cột GA là kết quả quá trình tiến hóa quần thể gồm 30 cá thể sau 1000 thế hệ và sau 100 lần lặp thì cập nhật lại giá trị lý tưởng sử dụng độ thích nghi đế đánh giá và chọn lọc cá thể, còn cột GA + FL là kết quả quá trình tiến hóa quần thể gồm 30 cá thể sau 1000 thế hệ sử dụng giá trị tổ hợp các mục tiêu để đánh giá và chọn lọc cá thể. Theo tác giả [10], các hàm mục tiêu đạt giá trị tốt nhất khi x1  [0,1] và xi=0. Kết quả khi chạy chương trình cũng tương đối phù hợp với kết quả này. Việc sử dụng giải thuật GA và giải thuật đề xuất có những ưu nhược điểm nhất định, tùy vào mục đích yêu cầu của người sử dụng mà ta có thể chọn phương pháp giải cho bài toán cho phù hợp. 3.3.2. Bài toán tối ưu đa mục tiêu điều khiển mức H trong bình khuấy trộn liên tục 3.3.2.1. Bài toán. Bài toán đặt ra là có hai dòng dung dịch độc lập, một là hỗn hợp dòng nhiên liệu gồm: đường, chất phụ gia, hương liệu... và dòng thứ hai là nước tinh khiết cùng được điều chỉnh lưu lượng Q1, Q2 qua van khí nén đổ vào bể trộn khuấy liên tục. Đầu ra của bình trộn là lưu lượng dung dịch Q3 thay đổi liên tục và phụ thuộc vào sự vận hành nhanh hay chậm của các công đoạn tiếp theo trong
  • 42. 42 dây truyền. Sự thay đổi liên tục của Q3 làm cho mức dung dịch H thay đổi theo. Do vậy trong quá trình sản xuất thì mức dung dịch H liên tục biến động, nên vấn đề giữ cho mức H ổn định nhanh chóng và chính xác được quan tâm. Từ sơ đồ cấu trúc của dây truyền ta đưa ra hai hàm mục tiêu nhằm đáp ứng tối ưu các vấn đề trên như sau: + Mục tiêu 1: Để ổn định mức dung dịch H chính xác nhất (tức là sai lệch tĩnh e(t) là nhỏ nhất) ta sử dụng phiếm hàm: 2 1 ( ) J E t dt min    (3.1) + Mục tiêu 2: Để mức dung dịch H ổn định nhanh nhất (tức là thời gian quá độ bé nhất) ta sử dụng phiếm hàm: 2 ( ) J E t dt min    (3.2) Từ đó dùng giải thuật di truyền giải bài toán hai mục tiêu tối ưu trên với ẩn bài toán là bộ thông số của bộ điều khiển (có thể là cả 3 hệ số: KP; KI; KD của bộ điều khiển PID). Sau đó lấy nghiệm của bài toán tối ưu hai mục tiêu trên lắp vào bộ điều khiển từ đó mô phỏng kết quả điều khiển mức dung dich H trên Matlab Simulink và quan sát và đánh giá kết quả. 3.3.2.2. Tính toán hai hàm mục tiêu. Từ sơ đồ khối điều khiển mức dung dịch H trong bình trộn (hình 3.1), giả sử bộ điều khiển với luật điều khiển là PD ta có hàm truyền của bộ điều khiển như sau: BDK P D W ( ) . s K K s  
  • 43. 43 Nếu khoảng giá trị của các hệ số KD và KP được chọn như sau: P D 25 100 1,35 50 K K        thì nghiệm của phương trình đặc trưng là: K 1 W 1 s K 1 s + WH (-) H 1 H(s ) H 2 U(s) 2 W Q1 Q2 E(s) PD Hình 3.1 Sơ đồ khối điều khiển mức bình trộn với bộ điều khiển PD Uđk
  • 44. 44     2 D D P D 1 2 D D P D 2 1,4 1 1,4 1 0,084. 1,4 1 0.03 0.03 1,4 1 1,4 1 0,084. 1,4 1 0.03 0.03 K K K K k K K K K k                              Khi đó nghhiệm của phương trình vi phân (1) như sau: 1 2 1 2 ( ) . k t k t E t C e C e   Trong đó, C1 và C2 là hằng số. Không mất tính tổng quát chọn C1=C2= 1, ta có một nghiệm riêng của phương trình vi phân (3.1) là: 1 2 ( ) . k t k t E t e e   Thay 1 2 ( ) k t k t E t e e   vào các hàm mục tiêu như sau: + Mục tiêu 1: Để ổn định mức dung dịch H chính xác nhất (tức là sai lệch tĩnh E(t) là nhỏ nhất) ta sử dụng phiếm hàm:   1 2 2 1 2 1 ( ) k t k t J E t dt min J e e dt min               1 2 1 2 1 2 1 2 2 2 2 1 2 t 2 1 1 1 2 2 2 1 2 1 2 2 k k t k t k t k k t k k t J e e e dt min J e e e min k k k k               + Mục tiêu 2: Để mức dung dich H ổn định nhanh nhất (tức là thời gian quá độ bé nhất) ta sử dụng phiếm hàm: 1 2 2 2 1 2 ( ) k t k t J E t dt min e e J min k k              Trong đó:
  • 45. 45     2 D D P D 1 2 D D P D 2 1,4 1 1,4 1 0,084. 1,4 1 0.03 0.03 1,4 1 1,4 1 0,084. 1,4 1 0.03 0.03 K K K K k K K K K k                              Sau khi thay t = 3(s) và chọn  = 0,03 vào các hàm mục rút ra được bài toán điều khiển tối ưu đa mục tiêu cho bình khuấy trộn liên tục với các ràng buộc như sau:   1 2 1 2 1 2 2 t 2 1 1 1 2 2 2 1 2 P D 1 2 1 2 2 25 100 1,35 50 k k t k k t k t k t J e e e min k k k k e e J min k k K K                              
  • 46. 46 3.3.2.3. Lưu đồ thuật toán Bắt đầu Khởi tạo quần thể ban đầu (ngẫu nhiên) 1. Chọn ngẫu nhiên 2 cá thể x1, x2 2. Lai ghép tạo 2 con y1, y2 3. Đột biến y1 tuỳ theo xác suất đột biến pm 4. Nếu y1 “tốt hơn” x1 thì thay x1 bởi y1 Nếu y2 “tốt hơn” x2 thì thay x2 bởi y2 5. Dem = Dem +1 Dem = 1 Dem <= Số lần lặp Ghi nhận quần thể cuối cùng Kết thúc Khởi tạo các tham số: Số lần lặp, Xác suất đột biến Hình 3.2 Lưu đồ thuật toán
  • 47. 47
  • 48. 48 Ghi chú: * Việc đánh giá cá thể “tốt hơn” như sau: 1) Trong 200 lần tiến hoá đầu tiên tiêu chí đánh giá dựa trên hàm mục tiêu f1 2) Trong 200 lần tiến hoá tiếp theo tiêu chí đánh giá dựa trên hàm mục tiêu f2 3) Trong 200 lần tiến hoá cuối cùng tiêu chí đánh giá dựa trên cả hai hàm mục tiêu với trọng số f1, f2 Các tham số này hoàn toàn có thể thay đổi tuỳ theo ý của người sử dụng. Các tham số dùng trong thuật toán này:  Kích cỡ quần thể: 30.  Xác suất lai ghép = 1.  Xác suất đột biến pm = 0,1.  Toán tử lai ghép là lai số học.  Toán tử đột biến là đột biến đều.  Số lần tiến hoá: 600. 3.3.2.4. Kết quả chạy chương trình tính toán bằng giải thuật. STT KP KD J1 J2 1 25.895 18.995 -0.00014 -0.01473 2 25.895 19.113 -0.00015 -0.01517 3 25.895 18.759 -0.00013 -0.01387 4 25.895 18.887 -0.00014 -0.01433 5 25.895 19.195 -0.00016 -0.01548 6 25.895 18.824 -0.00013 -0.01411 7 25.895 19.445 -0.00017 -0.01646 8 25.895 18.956 -0.00014 -0.01458 9 25.895 18.349 -0.00011 -0.01246 10 25.895 19.456 -0.00017 -0.0165 11 25.895 18.52 -0.00011 -0.01304 12 25.895 19.112 -0.00015 -0.01517 13 25.895 19.331 -0.00017 -0.01601
  • 49. 49 14 25.895 18.915 -0.00014 -0.01443 15 25.895 19.111 -0.00015 -0.01516 16 25.895 19.009 -0.00014 -0.01478 17 25.895 19.226 -0.00016 -0.0156 18 25.895 18.37 -0.00011 -0.01253 19 25.895 19.389 -0.00017 -0.01623 20 25.895 19.372 -0.00017 -0.01617 21 25.895 19.346 -0.00017 -0.01606 22 25.895 18.946 -0.00014 -0.01455 23 25.895 19.408 -0.00017 -0.01631 24 25.895 19.2 -0.00016 -0.0155 25 25.895 19.24 -0.00016 -0.01565 26 25.895 19.325 -0.00017 -0.01598 27 25.895 19.397 -0.00017 -0.01626 28 25.895 18.957 -0.00014 -0.01459 29 25.895 19.283 -0.00016 -0.01582 30 25.895 19.026 -0.00014 -0.01484 Bảng 3.2 Kết quả chạy chương trình giải thuật di truyền
  • 50. 50 3.3.3. Kết quả mô phỏng trên Matlab Simulink. Thay bộ giá trị tối ưu KD và KP vào thông số của bộ điều khiển PD, sau đó mô phỏng sơ đồ khối điều khiển mức dung dịch H như sau: *) Kết quả mô phỏng (với bộ thông sô thứ 9 trong bảng 3.2). Hình 3.3 Sơ đồ mô phỏng điều khiển mức H trên Simulink Hình 3.4 Kết quả mô phỏng với bộ giá trị thứ 9 của KD và KP trong bảng 3.2
  • 51. 51 *) So sánh kết quả mô phỏng (với bộ thông số khác KP =25.895 và KD = 30) Hình 3.5 So sánh kết quả mô phỏng với 2 bộ giá trị thứ 9 và bộ số khác của KP và KD
  • 52. 52 Nhận xét: Qua kết quả mô phỏng trên Matlab Simulink với các bộ giá trị của (KP và KD) lấy từ tập nghiệm của thuật toán giải thuật di truyền, ta có thể tìm thấy một bộ nghiệm tối ưu mà ở đó ta thấy chất lượng điều khiển mức dung dịch H tăng rõ rệt, độ sai lệch và thời gian quá độ đều nhỏ hơn so với các bộ giá trị khác. Kết luận: phần trên trình bày những vấn đề ứng dụng cơ sở lý thuyết để giải bài toán tối ưu đa mục tiêu điều khiển mức H trong bình khuấy trộn liên tục
  • 53. 53 KẾT LUẬN Sau khi tìm hiểu đề tài: “Kết hợp logic mờ và giải thuật di truyền giải bài toán tối ưu đa mục tiêu.”, em đã hiểu được một số vấn đề sau: - Những nội dung cơ bản về giải thuật di truyền nhất là giải thuật di truyền mã hoá số thực và logic mờ. - Một số phương pháp giải bài toán tối ưu đa mục tiêu. - Bước đầu nắm được kỹ thuật sử dụng giải thuật di truyền kết hợp với logic mờ để giải bài toán tối ưu đa mục tiêu trong hai bài toán cụ thể. - Biết xây dựng được chương trình bằng ngôn ngữ lập trình matlab 7.0. Hướng phát triển - Áp dụng cho lớp các bài toán khác phức tạp hơn. - Phát triển thuật toán hoặc tích hợp với các kỹ thuật khác như mạng nơron làm tăng hiệu suất tính toán và xử lý mềm dẻo hơn. Do thời gian và trình độ còn hạn chế nên đề tài chỉ dừng lại ở mức đơn giản, chương trình ứng dụng còn hạn chế, vì vậy đề tài không tránh khỏi những thiếu sót cần bổ sung sửa chữa. Em mong nhận được sự nhận xét và góp ý của các thầy, cô giáo và các bạn để đề tài được hoàn thiện hơn. Thái Nguyên, tháng 09 năm 2012 Học viên Đào Ngọc Tuất
  • 54. 54 TÀI LIỆU THAM KHẢO Tiếng Việt 1. Hồ Thuần, Đặng Thanh Hà, “Logic mờ và ứng dụng”, NXB ĐHQGHN, 2007. 2. Nguyễn Đình Thúc, “Lập trình tiến hoá”, NXB KH&KT, 2003. 3. Bùi Minh Trí, “Quy hoạch toán học”, NXB KHKT, 2006. 4. Vũ Mạnh Xuân, “Một số giải pháp ứng dụng giải thuật di truyền trong tối ưu đa mục tiêu”. Tiếng Anh 5. C. Grosan and A. Abraham (2007), “Hybrid Line Search for Multiobjective Optimization”. 6. Goldberg, D.E. (1989), “Genetic algorithms in search, optimization and machine learning”, Addison-Wesley, Reading, MA. 7. K. Deb (1998), “Non-linear Goal Programming Using Multi-Objective Genetic Algorithms”, Technical Report, No.CI-60/98. 8. K. Deb (1999), “Multi-Objective Genetic Algorithms: Problem Difficulties and Construction of Test Problems”, Evolutionary Computation, 7(3), 205-230. 9. K.Deb (1999), “Multi-Objective Evolutionary Algorithms: Introducing Bias Among Pareto-Optimal Solution”, KanGAL, Report No. 99002. 10. Kalyanmoy Deb, Associate Member, IEEE, Amrit, Sameer Agarwal, and T. Meyarivan, A Fast and Elitist Multiobjective Genetic Algorithm: NSGA – II.
  • 55. 55 PHỤ LỤC Chương trình tính toán bài toán tối ưu đa mục tiêu điều khiển mức dung dịch H của bình khuấy trộn liên tục bằng giải thuật di truyền. 1. Khai báo hệ số k1. %Tinh cac he so function ff1=k1(kp,kd); ff1=((-1.4*kd)-1-sqrt((1.4*kd+1)^2-0.084*kp))/0.03; %end; 2. Khai báo hệ số k2. function ff2=k2(kp,kd); ff2=((-1.4*kd)-1+sqrt((1.4*kd+1)^2-0.084*kp))/0.03; return; %end; 3. Khai báo hàm mục tiêu J1. function mt1=f1(kp,kd); kk1=k1(kp,kd); kk2=k2(kp,kd); mt1=(1/(2*kk1)*exp(6*kk1))+(1/(2*kk2)*exp(6*kk2))+(2/(kk1+kk2))*exp(3*(kk 1+kk2)); return; %end; 4. Khai báo hàm mục tiêu J2. function mt2=f2(kp,kd); kk1=k1(kp,kd); kk2=k2(kp,kd); mt2=(exp(3*kk1))/kk1+(exp(3*kk2))/kk2; return; %end;
  • 56. 56 5. Chương trình giải bài toán tối ưu hai mục tiêu J1, J2. %chuong trinh bai toan điều khiển mức clear; format long g; left1=25; righ1=100; left2=1.35; righ2=50; lap=600; %so lan lap pm=0.1; m=30; n=4; %m: kich co QT; n: chieu; pm=0.1; % xac suat dot bien x=zeros(m,n); %Khoi tao quan the x; x(1): kp; x(2): kd; x(3):f1; x(4): f2 xx=x; mt=zeros(1,2); y=zeros(2,n); %cac ca the con t1=clock; %khoi tao for v1=1:m; kp=left1+rand*(righ1-left1); kd=left2+rand*(righ2-left2); x(v1,1)=kp; x(v1,2)=kd; x(v1,3)=f1(kp,kd); x(v1,4)=f2(kp,kd); end; m1=min(x(:,3)) m2=min(x(:,4)) mt(1)=m1; mt(2)=m2; %muc tieu ly tuong xx=x; for v1=1:lap;
  • 57. 57 if rem(v1,100)==0; mt(1)=min(xx(:,3)); elseif rem(v1,200)==0; mt(2)=min(xx(:,4)); end; %lai ghep i1=1+fix(m*rand); i2=1+fix(m*rand); kp1=xx(i1,1); kp2=xx(i2,1); %lai 1 diem kd1=xx(i1,2); kd2=xx(i2,2); r=rand; kpm=r*kp1+(1-r)*kp2; %Lai so hoc kdm=r*kd1+(1-r)*kd2; %kpm=kp2;kdm=kd1; y(1,1)=kpm; y(1,2)=kdm; y(1,3)=f1(kpm,kdm); y(1,4)=f2(kpm,kdm); %kpm=(1-r)*kp1+r*kp2; kdm=(1-r)*kd1+r*kd2; kpm=kp1; kdm=kd2; if rand<pm; %dot bien if rand<0.5; kpm=left1+rand*(righ1-left1); else kdm=left2+rand*(righ2-left2); end; end; y(2,1)=kpm; y(2,2)=kdm; y(2,3)=f1(kpm,kdm); y(2,4)=f2(kpm,kdm); if v1<200;
  • 58. 58 if (xx(i1,3)>y(1,3)); xx(i1,:)=y(1,:); end; if (xx(i2,3)>y(2,3)); xx(i2,:)=y(2,:); end; elseif v1<400; if (xx(i1,4)>y(1,4)); xx(i1,:)=y(1,:); end; if (xx(i2,4)>y(2,4)); xx(i2,:)=y(2,:); end; else if (xx(i1,3)*0.4+xx(i1,4)*0.6>y(1,3)*0.4+y(1,4)*0.6); xx(i1,:)=y(1,:); end; if (xx(i2,3)*0.4+xx(i2,4)*0.6>y(2,3)*0.4+y(2,4)*0.6); xx(i2,:)=y(2,:); end; end; end; t2=etime(clock,t1) %tinh thoi gian chay %200 lan lap dau toi uu theo f2; 200 lan sau theo f1 %cac lan lap cuoi toi uu theo trong so tu bien doi