V-PHÂN TÍCH CHƯƠNG TRÌNH:

Một phần của tài liệu đồ án tốt nghiệp giải thuật gen và một số bài toán về giải thuật gen (Trang 30 - 32)

HIỆN THỰC GIẢI THUẬT GEN

V-PHÂN TÍCH CHƯƠNG TRÌNH:

Chúng ta xác định một phép thử đơn giản .Chuỗi bit như là số nguyên không dấu 30 bit. Hàm thích nghi (x /c)n , trong đó c được chọn để chuẩn hóa x, và n được chọn là 10.

Ở đây ta chọn số mũ lớn hơn là vì với số mũ lớn hơn ,giá trị trung bình của hàm sẽ thấp hơn ,và một phần nhỏ hơn của vùng sẽ ánh xạ đến các giá trị trên một vài số lượng đã chỉ ra .Kết quả là dân số bắt đầu ngẫu nhiên sẽ không chứa nhiều điểm tốt để bắt đầu dò tìm, đây là phép thử tốt hơn cho việc thực hiện GAs.

Để xác định các mô phỏng một cách chính xác hơn ,hãy chọn một tập hợp các thông số tử cho GAs .Trong nghiên cứu của De Jong (1975) về GAs để tối ưu hóa hàm ,một loạt các thông số nghiên cứu bằng 5 hàm phù hợp với các bài toán ,đã khuyên cáo rằng sự thực hiện tốt đẹp của GAs đòi hỏi chọn lựa một xác suất ghép chéo lớn ,xác suất đột biến nhỏ (tỉ lệ nghịch với dân số) và một độ lớn dân số vừa phải .Theo khuyến cáo này , chúng ta chọn các thông số sau cho các mô phỏng tính toán đầu tiên :

pmutation = 0.0333 (xác suất đột biến) pcross = 0.6 (xác suất ghép chéo) popsize = 30 (độ lớn dân số)

Trong sự mô phỏng bằng tay ở chương 1 ,chiều dài chuỗi là ngắn (l=5) .vậy không gian tìm kiếm nhỏ , chỉ gồm 25 = 32 điểm .Miền này nhỏ quá, phép thử không có sức thuyết phục cao ,vì bất kỳ một phương pháp tìm kiếm kiểu liệt kê hay ngẫu nhiên nao cũng có thể tìm ra kết quả nhanh chóng với không gian tìm kiếm nhỏ như

vậy .Giờ đây ,chúng ta muốn thấy phép thử khắc nghiệt hơn đối với GAs ,chiều dài chuỗi được tăng lên và số mũ đem thử của hàm cũng được tăng lên ,với chiều dài chuỗi lchrom = 30 ,không gian tìm kiếm sẽ rộng hơn và cách làm việc kiểu ngẫu nhiên hay liệt kê sẽ không tích hợp .Với lchrom = 30 sẽ có 230 điểm,phương pháp liệt kê mỗi điễm một lần hoàn toàn không thể làm nhanh được .Hơn nữa với sự gia tăng hàm số mũ của hàm thích nghi vừa mới điều chỉnh thì chỉ có 1.05% số điểm của không gian tìm kiếm là có giá trị lớn hơn 0.9 ,hai sự sửa đổi này rõ ràng đã làm cho phép thử GAs thuyết phục hơn .

Chúng ta bắt đầu với GAs đơn giả và cho nó chạy qua 7 thế hệ .Bảng thống kê chỉ ra như sau :

Các thông số của GAs đơn giản :

Độ lớn dân số (popsize) = 30 Chiều dài nhiễm sắc thể (lchrom) = 30 Số thế hệ tối đa(maxgen) = 10 Xác suất ghép chéo (pcross) = 0.6 Xác suất đột biến (pmutation)=0.0333 Các thống kê dân số ban đầu :

Độ thích nghi cực đại dân số ban đầu = 2.8241322532E-0.1

Độ thích nghi trung bình dân số ban đầu = 3.4715832788E-0.2 Độ thích nghi cực tiểu dân số ban đầu = 1.1406151375E-10 Tổng độ thích nghi dân số ban đầu = 1.0414749837+0.0

Dân số khởi động có độ thích nghi trung bình là 0.0347 .Thích nghi trung bình của hàm trong khoảng đã cho có thể tính được bằng 0.0909 .Trong một chừng mực nào đó chúng ta đã không gặp may ,khi lựa chọn ngẫu nhiên dân số ban đầu .Lướt qua các độ tích nghi thành phần tốt nhất trong dân số khởi động chúng ta thấy fmax = 0.2824 ,chúng ta muốn có 30.(1-0.2824 0.1) = 3.56 hay là xấp xỉ 4 chuỗi trong một dân số ngẫu nhiên 30 phần tử có độ thích nghi tốt hơn 0.2824 .Không những chúng ta gặp xui với giá trị trung bình ,mà chúng ta lại không gặp may với giá trị max .Măc dù có sự giảm không mong muốn dân số ban đầu ,mỗi khi GAs khởi đông nó sẽ nhanh chóng tìm ra cách thực hiện tốt ,sau vòng sinh sản ,ghép chéo và đột biến đầu tiên .Trong thế hệ thứ nhất ,một chuỗi rất tốt với độ thích nghi là 0.8715 đã được tìm ra .Nếu chạy tiếp nữa sự cải thiện xa hơn được tìm thấy trên cả độ thích nghi dân số trung bình lẫn độ thích nghi dân số cực đại .Càng về cuối quá trình ,sự hội tụ quan sát được càng cao .Trong thế hệ thứ 7 ,Chúng ta nhận thấy rằng có sự hợp lý ở hầu hết các vị trí bit .Điều này đã xảy ra ,mặc dù chúng ta chưa đạt đến điểm tốt nhất trong không gian ,tuy nhiên chúng ta đã đến gần điểm đó .Ở thế hệ thứ 6 ,một cá thể đã xuất hiện với độ thích nghi là f =0.9807 .Điểm này gần điểm tối ưư nhưng chưa phải điểm tối ưu .Hành vi hội tụ mà không bảo đảm tối ưu đã làm phiền lòng những ai tiếp cậ GAs từ cơ sở tối ưu tuyền thống khác.Có nhiều cách làm giảm sự hội tụ sớm này ,chúng ta sẽ nghiên cứu vài cách.Tuy nhiên sự thật của vấn đề là các GAs không đảm bảo hội tụ trong bài toán tùy ý .Dù chúng ta rút ra được các miền đáng quan tâm của không gian tìm kiếm một cách nhanh chóng ,nhưng chúng là những phương pháp yếu ,không đảm bảo có những thủ tục hội tụ hơn.Điều nàynkhông làm giảm giá trị tiện ích của chúng .Hoàn toàn ngược lại có nhiều phương pháp hội tụ hơn

lại phải hy sinh tính toàn cục và tính linh hoạt cho sự hội tụ .Thêm nữa ,nhiều phương pháp bị hạn chế bởi một lớp hẹp các bài toán .Kết quả là các GAs có thể được dùng ở những nơi mà các kỹ thuật hội tụ hơn không giám giải quyết .Hơn nữa,nếu chúng ta đang giải quyết bài toán được biết là cục bộ nhưng hội tụ , thì các phương pháp hiện có ,các ý tưởng về phương pháp lai là hoàn toàn tự nhiên .Hãy bắt đầu sự tìm kiếm bằng GAs để chọn ra những ngọn đồi đáng qua tâm trong bài toán .Một khi GAs tìm được ra những miền tốt nhất ,kế đó hãy chọn các sơ đồ hội tụ cục bộ và leo lên những dỉnh cục bộ .Bằng các này ta có thể kết hợp tính toàn cục và tính song song của GAs ,với hành vi hội tụ hơn của kỹ thuật cục bộ .

Một phần của tài liệu đồ án tốt nghiệp giải thuật gen và một số bài toán về giải thuật gen (Trang 30 - 32)

Tải bản đầy đủ (DOC)

(108 trang)
w