1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

thuật toán di truyền

17 625 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 477,44 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giải thuật di truyền (GA) là một trong những mô hình tính toán phổ biến và thành công nhất trong lĩnh vực tính toán thông minh.Thuật giải di truyền, cũng như các thuật toán tiến hoá nói chung, hình thành dựa trên quan niệm cho rằng, quá trình tiến hoá tự nhiên là hoàn hảo nhất, hợp lý nhất, và tự nó đã mang tính tối ưu. Quan niệm này có thể được xem như 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. Quá trình tiến hoá thể hiện tính tối ưu ở chỗ, 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. Xuyên suốt quá trình tiến hoá tự nhiên, các thế hệ mới luôn được sinh ra để bổ xung 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 với môi trường sẽ bị đào thải. Sự thay đổi môi trường là động lực thúc đẩy quá trình tiến hoá. Ngược lại, tiến hoá cũng tác động trở lại góp phần làm thay đổi môi trường.

Trang 1

3

MỞ ĐẦU

Trong những năm gần đây, vấn đề tối ưu hóa kết cấu có vai trò và ý nghĩa quan trọng, nhằm mục đích xác định kích thước hợp lý của kết cấu trên

cơ sở đảm bảo đủ bền, tương ứng chi phí vật liệu là thấp nhất, không chỉ cho phép giảm giá thành sản phẩm mà còn ảnh hưởng tốt đến các tính năng của kết cấu

Giải thuật di truyền (GA) là một trong những mô hình tính toán phổ biến

và thành công nhất trong lĩnh vực tính toán thông minh.Thuật giải di truyền, cũng như các thuật toán tiến hoá nói chung, hình thành dựa trên quan niệm cho rằng, quá trình tiến hoá tự nhiên là hoàn hảo nhất, hợp lý nhất, và tự nó đã mang tính tối ưu Quan niệm này có thể được xem như 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 Quá trình tiến hoá thể hiện tính tối ưu ở chỗ, 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 Xuyên suốt quá trình tiến hoá tự nhiên, các thế hệ mới luôn được sinh ra để bổ xung 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 với môi trường sẽ bị đào thải Sự thay đổi môi trường là động lực thúc đẩy quá trình tiến hoá Ngược lại, tiến hoá cũng tác động trở lại góp phần làm thay đổi môi trường

Trang 2

4

I TỔNG QUAN VỀ TỐI ƯU HÓA

Trong lĩnh vực thiết kế kết cấu, hiện nay, ngoài các yêu cầu về độ bền, độ cứng, độ ổn định, người thiết kế phải thiết kế được kết cấu sao cho chi phí vật liệu là nhỏ nhất, giá thành thấp nhất, trọng lượng toàn kết cấu là bé nhất Với yêu cầu như vậy, việc tính toán kết cấu theo lý thuyết tối ưu là hết sức cần thiết

1 Các phương pháp cơ bản

Hai dòng phương pháp chính để giải bài toán tối ưu hóa kết cấu, đó là lý thuyết quy hoạch toán học và tiêu chuẩn tối ưu

1.1 Phương pháp quy hoạch toán học

Bài toán thiết kế tối ưu có thể phát biểu như sau :

Tìm tập hợp các giá trị X = (x1, x2, ., xn) để sao cho hàm số

Z  f (x , x , x ) đạt cực trị (cực đại hay cực tiểu), đồng thời thỏa mãn các điều kiện sau:

Trong đó, hàm Z gọi là hàm mục tiêu, điều kiện (1.1) là hệ các ràng buộc gồm nhiều hàm ràng buộc Riêng đối với bài toán bài toán tối ưu hóa kết cấu, hàm mục tiêu Z có thể là trọng lượng, giá thành , các hàm ràng buộc có thể là ràng buộc về độ bền, độ cứng, độ ổn định hoặc điều kiện cân bằng v v , còn

xi

min

, xi

max

là giá trị nhỏ nhất và giá trị lớn nhất của biến thiết kế, có thể là các kích thước kết cấu

Khi đó, tập hợp giá trị X = (x1, x2, … xn) thỏa mãn tất cả điều kiện ràng

Trang 3

5

buộc gọi là một phương án, còn phương án làm hàm Z đạt cực trị (cực đại hay cực tiểu) là phương án tối ưu hoặc nghiệm bài toán và mục tiêu của bài toán thiết kế tối ưu kết cấu là tìm ra phương án tối ưu, tức là nghiệm bài toán Miền tập hợp tất cả phương án gọi là miền nghiệm hay gọi là không gian biến thiết

kế

1.2 Phương pháp tiêu chuẩn tối ưu

Là phương pháp gián tiếp dựa trên phương pháp nhân tử lagrange, phương pháp này có ưu điểm cho kết quả chính xác, biểu diễn toán học chặt chẽ nhưng phạm vi áp dụng chủ yếu là các bài toán có các hàm rằng buộc là các phương trình Với các bài toán tối ưu hóa kết cấu phương pháp này ít áp dụng

2 Phân loại các bài toán tối ưu

2.1 Phân loại theo mức độ tuyến tính

* Tối ưu hóa tuyến tính: Hàm Z và g ( hàm rằng buộc) đều tuyến tính và thường được biểu diễn dưới dạng:

j j

[x ] [x] [x ]

* Tối ưu hóa phi tuyến: Có ít nhất một hàm g hoặc Z là phi tuyến

2.2 Phân loại theo số biến

* Tối ưu hóa hàm một biến: chỉ có một biến thiết kế

* Tối ưu hóa hàm nhiều biến: chỉ có một biến thiết kế

2.3 Phân loại theo điều kiện rằng buộc

* Tối ưu hóa có ràng buộc: bài toán có cả hàm mục tiêu và hàm ràng buộc

* Tối ưu hóa hàm nhiều biến: chỉ có hàm mục tiêu, không có hàm ràng

Trang 4

6

buộc Thực chất bài toán này là bài tón tìm cực trị của hàm mục tiêu

2.4 Phân loại theo tính liên tục của biến thiết kế

* Biến thiết kế liên tục: biến nhiệt độ, vận tốc

* Biến thiết kế rời rạc: Biến diện tích tiết diện, biến mô men kháng uốn

2.5 phân loại theo tính tường minh của hàm rằng buộc

* Hàm ràng buộc tường minh: Có thể lập được phương trình của hàm ràng buộc với các biến đầu vào

* Hàm ràng buộc không tường minh: Không lập được hàm ràng buộc tường minh vớ c, Đặc điểm của bài toán tối ưu hóa kết cấu

3 Đặc điểm của bài toán tối ưu hóa kết cấu:

Tính phi tuyến: Có thể là tuyến tính (Bài toán dàn, khung đơn giản) nhưng đa số là phi tuyến (bài toán thanh, khung, tấm …)

Tính tường minh: Có thể tường minh (Bài toán dàn) nhưng đa số không thể viết hàm ràng buộc tường minh

4 Ưu nhược điểm của các phương pháp tối ưu kết cấu hiện nay

4.1 Phương pháp tìm kiếm trực tiếp

+ Thuận lợi khi giải bài toán tối ưu rời rạc

+ Tối ưu được bài toán tuyến tính lẫn phi tuyến

+ Không cần hàm rằng buộc tường minh

+ Chắc chắn tìm được nghiệm tối ưu toàn miền

4.2 Phương pháp đồ thị

+ Chỉ tối ưu tuyến tính, bài toán tối đa hai biến

+ Tìm được nghiệm tối ưu toàn miền

+ Phải vẽ đồ thị, chỉ tối ưu kết cấu đơn giản (bài toán dàn đơn giản) + Không thể tự động hóa quá trình tối ưu

Trang 5

7

4.3 Phương pháp đơn hình( được cải tiến từ phương pháp đồ thị)

+ Chỉ tối ưu tuyến tính, có thể tối ưu hàm nhiều biến

+ Tìm được nghiệm tối ưu toàn miền

+ Phải lập bảng, chỉ tối ưu kết cấu đơn giản (bài toán dàn đơn giản) + Có thể tự động hóa quá trình tối ưu

4.4 Phương pháp gradien

+ Có thể tối ưu phi tuyến, có thể tối ưu hàm nhiều biến

+ Chỉ tìm được tối ưu toàn miền khi miền nghiệm lồi (trong bài toán kết cấu đa số miền ngiệm không lồi)

+ Độ chính xác và tốc độ tối ưu phụ thuộc nghiệm ban đầu lựa chọn

4.5 Phương pháp nhân tử Lagrange

+ Có thể tối ưu phi tuyến, có thể tối ưu hàm nhiều biến

+ Tìm được nghiệm toàn miền

+ Đòi hỏi các hàm phải tường minh o Độ chính xác tối ưu thấp

4.6 Phương pháp tuyến tính hóa

+ Có thể tối ưu phi tuyến, có thể tối ưu hàm nhiều biến

+ Tìm được nghiệm toàn miền

+ Đòi hỏi các hàm phải tường minh

+ Độ chính xác tối ưu thấp

4.7 Phương pháp sử dụng mạng trí tuệ nhân tạo (logic mờ, di truyền)

+ Có thể tối ưu phi tuyến, có thể tối ưu hàm nhiều biến

+ Tìm được nghiệm toàn miền

+ Không cần các hàm phải tường minh

+ Tốc độ tối ưu không xác định được, mang tính ngẫu nhiên

Trang 6

8

II THUẬT TOÁN DI TRUYỀN

1 Khái niệm

Thuật toán di truyền là thuật toán tìm kiếm để giải quyết những bài toán tối ưu hóa dựa trên sự mô phỏng bắt chước cơ chế chọn lọc tự nhiên và cơ chế di truyền ở trong giới sinh vật

Trong di truyền học, mỗi nhiễm sắc thể được tạo thành từ các Gen-biểu diễn trong một chuỗi tuyến tính, mỗi Gen kiểm soát một hay một nhóm đặc trưng nào đó của cá thể Mỗi nhiễm sắc thể coi như biểu diễn một lời giải của bài toán Trong giới tự nhiên, một quá trình tiến hóa xảy ra trên một quần thể các nhiễm sắc thể

Thuật toán di truyền mang nhiều đặc trưng của loại thuật toán tìm kiếm ngẫu nhiên nhưng điều khác biệt là nó kết hợp thêm cả các đặc tính của loại thuật toán tìm kiếm tất định Nó duy trì và xử lý liên tục một tập hợp (quần thể)các lời giải (các phương án có thể) chứ không chỉ xét mỗi lần một điểm trong không gian tìm kiếm Do vậy mà thuật toán di truyền có nhiều ưu điểm hơn khi giải các bài toán tối ưu hóa thực tế với rất nhiều biến số và không gian tìm kiếm thực tế rất phức tạp, khó mô tả bằng các công thức toán học thông thường

Thuật toán di truyền thực hiện tìm nghiệm tối ưu theo hướng bằng cách duy trì một tập hợp các nghiệm cho phép, và tạo ra sự trao đổi thông tin giữa các hướng tìm kiếm đó Tập hợp(quần thể) của các nghiệm cho phép, được trải qua quá trình tiến hóa, tương ứng với mỗi đợt tìm kiếm(coi như một thế hệ) thì lại tái sinh các nghiệm tương đối tốt, và loại bỏ các nghiệm xấu đi Tiêu chí để đánh giá mức độ tốt hay xấu của các nghiệm chính là giá trị tương ứng với nghiệm

đó của hàm số mục tiêu Vậy hàm số mục tiêu đóng vai trò giống như vai trò của điều kiện môi trường khắc nghiệt trong giới tự nhiên

2 Mục tiêu nghiên cứu của giải thuật di truyền (GA)

Trang 7

9

+ Trừu tượng hóa và diễn đạt chính xác về các quá trình thích nghi trong

hệ thống tự nhiên

+ Thiết kế những phần mềm về hệ thống nhân tạo nhằm duy trì các cơ chế quan trọng của hệ thống tự nhiên

+ Những mục tiêu này đã dẫn đến những khám phá quan trọng trong hệ thống khoa học tự nhiên lẫn nhân tạo

+ GA ra đời và phát triển dựa trên quá trình tiến hóa trong tự nhiên và đã được ứng dụng thành công trong nhiều lĩnh vực nhất là tối ưu hóa và máy học

3 Đặc điểm chủ yếu của thuật toán di truyền

1 Thuật toán di truyền xét duyệt toàn bộ các có thể, sau đó cho ra nghiệm tương đối tốt nhất trên cơ sở so sánh giữa các giá trị hệ số thích nghi

2 Thuật toán di truyền không để ý đến bản chất vật lý hay bản chất toán học của bài toán mà chỉ chú ý đến các nghiệm, đặc biệt là đến các dãy số đặc trưng cho nghiệm(tương ứng với khái niệm gen của di truyền học) Nói một cách khác thì thuật toán di truyền làm việc trên sự mã hóa của một tập các tham

số, chứ không phải chính bản thân của tham số đó

3 Thuật toán di truyền mang đặc điểm tìm kiếm ngẫu nhiên

4 Thuật toán di truyền sử dụng giá trị hàm mục tiêu chứ không dùng đạo hàm hay một giá trị gần đúng của đạo hàm

4 Trình tự áp dụng của thuật toán di truyền

Để giải quyết vấn đề bài toán bằng giải thuật di truyền, chúng ta cần thực hiện 7 bước quan trọng sau:

Bước 1: Chọn mô hình cho giải pháp của vấn đề, chọn một số đặc trưng cho toàn bộ các giải pháp (quần thể) có thể có cho vấn đề

Bước 2: Chỉ định cho mỗi giải pháp (cá thể) một ký hiệu Ký hiệu có thể là một dãy các số 0, 1 thuộc hệ nhị phân, hay dãy các số thập phân, dãy các chữ hay hỗn hợp của số và chữ Ký hiệu đơn giản nhất và thường dùng nhất là số nhị

Trang 8

10

phân

Bước 3: Tìm hàm số thích nghi cho vấn đề và tính hệ số thích nghi cho từng giải pháp (lời giải)

Bước 4: Dựa trên hệ số thích nghi của các giải pháp để thực hiện sự tạo sinh (reproduction) và biến hóa các giải pháp Các phương thức biến hóa bao gồm: lai ghép (crossover), đột biến (mutation)

Bước 5: Tính các hệ số thích nghi cho các giải pháp mới và loại bỏ những giải pháp kém nhất để chỉ còn giữ lại một số nhất định của giải pháp

Bước 6: Nếu chưa tìm được giải pháp tối ưu hay tương đối khá nhất hay chưa hết kỳ hạn ấn định, trở lại bước 4 để tìm giải pháp mới

Bước 7: Tìm được giải pháp tối ưu hoặc nếu thời gian cho phép đã chấm dứt thì kết thúc giải thuật và báo cáo kết quả tìm được

5 Sư khác biệt của giải thuât di truyền so với các giải thuật khác

GA khác với những sự tối ưu hóa thông thường và những giải thuật tìm kiếm khác bởi 4 điểm sau:

TTDT làm việc với sự mã hóa một bộ các thông số, chứ không phải bản thân các thông số

TTDT tìm kiếm từ một số điểm quần thể, chứ không phải từ một điểm

TTDT sử dụng các thông tin về hàm mục tiêu chứ không phải đạo hàm (derivatives) hay những tri thức phụ khác

TTDT sử dụng các luật chuyển đổi theo xác suất, chứ không phải các luật chuyển đổi tiền định

TTDT đòi hỏi một tập hợp các thông số tự nhiên của bài toán tối ưu để

mã hóa thành các chuỗi có chiều dài hữu hạn, dựa trên một số hữu hạn các ký tự

6 Nội dung cơ bản của thuật toán di truyền

Trong TTDT các cá thể (hay còn gọi là các NST) được mã hóa bởi

Trang 9

11

các chuỗi nhị phân, mỗi vị trí trên chuỗi nhị phân chỉ nhận một trong hai giá trị

“0” hoặc “1” Một NST trong GA có dạng như sau:1 0 1 1 0 0 1 0 0 1

Cơ chế của thuật toán di truyền rất đơn giản, chủ yếu là sao chép chuỗi và hoán vị từng phần của chuỗi TTDT là thuật toán tìm kiếm bắt chước theo cơ chế chọn lọc tự nhiên và sự tiến hóa của các gen di truyền

Chọn lọc tự nhiên là tạo mối liên kết giữa các chuỗi nhiễm sắc thể của các

ca thể khác nhau và thực hiện việc giải mã các chuỗi nhiễm sắc thể này Quá trình chọn lọc tự nhiên làm cho các chuỗi nhiễm sắc thể sinh ra các chuỗi khác Trong quá trình tái sinh, sự đột biến có thể làm cho các chuỗi nhiễm sắc thể ở các cá thể thế hệ sau khác đi so với cá thể của thế hệ trước Sự tổ hợp của quá trình này có thể tạo ra khá nhiều các cá thể khác nhau trong những lần sinh thế

hệ sau bằng cách kết hợp hai chuỗi nhiễm sắc thể của hai cá thể trong lần sinh trước Những đặc điểm của sự tiến hóa tự nhiên này cũng được đưa vào để phát triển TTDT

TTDT giải quyết vấn đề tìm kiếm các chuỗi nhiễm sắc thể tốt nhất để cho lai ghép bằng cách xác định các thông tin trong các chuỗi nhiễm sắc thể một cách mù quáng mà không hề biết gì về dạng các chuỗi nhiễm sắc thể mà chúng đang giải quyết.Chúng chỉ được cung cấp mỗi một thông tin đó là giá trị của mỗi chuỗi nhiễm sắc thể có giá trị xấu trong lần sinh tiếp theo

Cơ chế mã hóa và hàm mục tiêu tạo thành mối liên kết giữa thuật toán di truyền và bài toán cần giải quyết Một hàm mục tiêu sẽ lấy một chuỗi nhiễm săcs thể như là đầu vào và trả về giá trị tượng trưng cho chuỗi nhiễm sắc thể đó

để đánh giá trên vấn đề cần giải quyết Hàm mục tiêu có vai trò tương tự như môi trường sống trong sự tiến hóa của tự nhiên Vấn đề tương tác giữa một cá thể với môi trường sống được thể hiện qua giá trị của hàm mục tiêu trong mỗi một cá thể

TTDT là một phương pháp tối ưu hóa mang đặc điểm tìm kiếm ngẫu nhiên Phần tử cơ bản được xử lý bởi TTDT là chuỗi nhiễm sắc thể được tạo ra

Trang 10

12

do sự kết hợp của nhiều chuỗi con, mà mỗi chuỗi con đó có được là do mã

hóa một thông số của không gian tìm kiếm Giá trị hàm mục tiêu là lớn

nhất hay nhỏ nhất tùy theo giá trị bài toán;giá trị này quyết định xác xuất

của mỗi cá thể có thể tham gia vào các toán tử di truyền

7 Các toán tử di truyền

Trong thuật giải di truyền, các cá thể mới liên tục được sinh ra trong quá trình tiến hoá nhờ sự lai ghép ở thế hệ cha-mẹ Một cá thể mới có thể mang những tính trạng của cha-mẹ (di truyền), cũng có thể mang những tính trạng hoàn toàn mới (đột biến) Di truyền và đột biến là hai cơ chế có vai trò quan trọng như nhau trong tiến trình tiến hoá, dù rằng đột biến xảy ra với xác xuất nhỏ hơn rất nhiều so với hiện tượng di truyền Các thuật toán tiến hoá, tuy có những điểm khác biệt, nhưng đều mô phỏng ba toán tử cơ bản: Tái sinh, lai ghép, đột biến

7.1 Toán tử tái sinh(Reproduction)

Là một quá trình mà trong đó các chuỗi cá thể được lựa chọn tùy thuộc vào giá trị của hàm mục tiêu Toán tử này được xem như quá trình chọn lọc trong tự nhiên

Ý nghĩa: là mỗi cá thể được bảo lưu cho vòng tạo sinh tiếp theo tùy theo mức độ thích nghi của nó

Hàm mục tiêu f(i) được gán cho mỗi cá thể trong quần thể, cá thể nào có

có f(i) càng cao tức là càng tốt Hàm mục tiêu này có thể là không tuyến tính, không khả vi, không liên tục…

Quá trình tái sinh(chọn lọc trên cha mẹ) được điều khiển bằng cách quay trên một vòng tròn đặc biệt, vòng tròn này có các khe khác nhau tương ứng với giá trị hàm mục tiêu của các cá thể Đây gọi là chọn lọc cá thể cha mẹ trên vòng tròn Roulette Mỗi lần như vậy, một con cháu sẽ được chon ra kỹ thuật này gồm các bước:

Ngày đăng: 22/12/2016, 08:15

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w