.1 Chọn cá thể theo vòng thi đấu

Một phần của tài liệu (LUẬN văn THẠC sĩ) thuật toán di truyền song song giải bài toán VRP (vehicle routing problem) với hạn chế thời gian (Trang 57 - 61)

Với cơ chếchọn theo vòng thi đấu, cá thể có tính thích nghi cao hơn sẽcó nhiều cơ

hội hơn tham gia vào quá trình tái tổ ợ h p để sinh ra các cá thể con ở h thế ệ tiếp theo.

4.2.4.2 Tái tổ hợp

Quá trình tái tổ ợ h p là một trong các chức năng quan trọng nhất trong chuỗi tiến hóa sinh học. Tương tự trong thu t toánậ GA, t mộ cơ chế tái tổ ợ h p thông minh và hiệu quả ẽ s nâng cao hiệu năng của thuật toán Tái t. ổ ợ h p trong GA bao gồm hai loại

thao tác là lai và đột bi n. ế

Thao tác lai sử ụ d ng phương pháp heuristic trao đ i chéo liên quan đổ ến khoảng cách giữa các gene. Theo đó, một điểm cắt ngẫu nhiên được thực hi n trên hai nhiệ ễm sắc thể. Phương pháp sẽ ắ đầ b t u so sánh các gene ngay sau vị trí c t. Ví d : ắ ụ

NST1: K H E D G F E | B I J A L

Giả ử s gene B là gene đầu tiên trong nhiễm sắc thể con. Khi đó, gene L được hoán v v i ị ớ gene B trong NST2 đểtránh sự ặ l p lại sau đó. ếK t quảsau hoán vị thu được:

NST 1: K H E D G F E | B I J A L NST 2: C E G A D F | L B K I J H NST con: B _ _ _ _ _ _ _ _ _ _ _

Sau đó, so sánh khoảng cách gi a gene B v i hai gene li n sau I và K và ch n gene ữ ớ ề ọ

nào có khoảng cách gần B hơn. Gi s K ả ử là gene được ch n, tọ ức d(B,K) <d(B,I).

Khi đó, gene I phải được hoán v vị ới gene K trong NST1 để tránh s trùng l p. K t ự ặ ế

quả sau hoán vị thu được:

NST 1: I H E D G F E | B K J A L NST 2: C E G A L D F | B K I J H NST con: B K _ _ _ _ _ _ _ _ _ _

X ử lý được lặp lại cho đến khi nhiễm sắc thểcon có sốgene bằng với s ốgene trong nhiễm sắc th ểcha/ . mẹ

Thao tác đột bi n trong thuế ật toán di truyền có th là thao tác chèn, xóa, hoán v m t ể ị ộ

gene hoặc đoạn gene. Cho bài toán VRPTW, bởi vì chiều dài của nhiễm sắc thể là c ố định (tức là sốkhách hàng cố định ban đầu) nên các thao tác chèn, xóa hoàn toàn không thích hợp. Do đó, chỉ có thao tác hoán vị có th ể được áp dụng và thường sử

dụng hoán vịgene.

4.2.5 Tạo thế hệ mới

Ở ỗ m i th h , các cá th tế ệ ể ốt được ch n l a ra t qu n th hi n t iọ ự ừ ầ ể ệ ạ. Sau đó, tùy theo các xác suất lai và đột biến, các thao tác di truy có thền ể được áp dụng lên các cá thể này nh m t o ằ ạ ra các cá thể con m i và chúng s ớ ẽ thay thế cha m ẹ trong thế ệ h tiếp theo N. ếu thao tác di truyền không được áp d ng, cá thụ ểđược sao chép nguyên

Sau khi thế ệ ớ h m i được hình thành, thuật toán đánh giá các cá thểtrong quần thể

của thế ệ ớ h m i và thực hiện thay thếcá thể ấ x u nhất bởi cá thể ố t t nhất của quần thể ở ế ệ th h trư c đó.ớ Nh th , cá th t t nh t trong qu n th th h sau luôn m b o ờ ế ể ố ấ ầ ể ở ế ệ đả ả

tốt hơn hoặc bằng cá thể ố t t nhất trong quần thể ở h thế ệ trước đó. Thuật toán di truyền gi i ả bài toán VRPTW:

• Bước 1: Kh i t o qu n th ở ạ ầ ể ban đầu g m N cá th (m t ph n qu n th ồ ể ộ ầ ầ ể được khởi tạo từ ờ l i giải khả thi S c a PFIH và các lân củ ận Nλ(S); một phần quần thểđược khởi tạo ngẫu nhiên).

• Bước 2: Đánh giá tính thích nghi của các cá th trong qu n th ể ầ ểban đầu. Tính max

D và thiết lập một sốthông số ầ c n thi t cho thu t toán. ế ậ

• Bước 3: L p tu n t t ặ ầ ự ừbư c 3.1 đ n bư c 3.5 cho đớ ế ớ ến khi s th h ố ế ệvượt quá s h lốthế ệ ớn nhất cho phép.

 Bước 3.1: Tìm cá th t t nh t trong qu n th hi n t i, c p nh t l i gi i ể ố ấ ầ ể ệ ạ ậ ậ ờ ả

tốt nhất hiện tại.

 Bước 3.2: T o qu n th m i b ng cách l p l i cáạ ầ ể ớ ằ ặ ạ c bư c sau cho đớ ến khi quần th mể ới có đủ N cá th . ể

 Bước 3.2.1: Ch n l a các cá th cha m bọ ự ể ẹ ằng phương pháp

chọn theo vòng thi đấu.

 Bước 3.2.2: Th c hiự ện trao đổi chéo trên t ng c p cá th ừ ặ ể

cha mẹ ứ ng với xác suất trao đ i chéo cho trưổ ớc. Nếu thao tác trao đổi chéo không được thực hi n, cá thệ ểcon được sao chép nguyên y từ cá th cha m . ể ẹ

 Bước 3.2.3: Th c hiự ện đột bi n các cá th con m i ng v i ế ể ớ ứ ớ

xác suấ ột đ t biến cho trước.

 Bước 3.4: Tìm cá th x u nh t trong qu n th m i. ể ấ ấ ầ ể ớ

 Bước 3.5:Th c hi n thay th cá th x u nh t b ng cá th t t nh t c a ự ệ ế ể ấ ấ ằ ể ố ấ ủ

quần th ểtrước.

• Bước 4: K t xu t l i gi i t t nh t và k t thúc thu t toán. ế ấ ờ ả ố ấ ế ậ

4.3 Thuật toán di truyền song song giải bài toán VRPTW

Qua khảo sát thu t toá di truyậ n ền, d dàng nh n th y thao tác chễ ậ ấ ọn lọc liên quan n đế

tất cảcác cá thểtrong quần thể. Trong khi đó các thao tác lai, độ, t biến và tính toán tính thích nghi của các cá thể chỉ liên quan đến một hoặc m t vài cá thộ ểtrong quần thể. Do đó, các thao tác này hoàn toàn có thể phân b ổcho các tiến trình khác nhau

để ự th c hi n song song nh m rút ng n th i gian tính toán. ệ ằ ắ ờ

Trong thuật toán di truyền, bước đánh giá tính thích nghi của các cá thể trong quần thể thường tiêu tốn nhiều thời gian tính toán nhất. Bởi l , thao tác này phẽ ụ thuộc nhiều vào thời gian giải mã nhiễm sắc thểthành lời giải tương ứng và th i gian tính ờ

toán theo một s tiêu chí hay m c tiêố ụ u; Đồng thời, thuật toán phả ặi l p qua nhiều thế

h ệ và số cá thể ở ỗ m i thế ệ ớ h l n. Chính vì vậy, đa số các giải thuật di truyền song song chỉsong song hóa giai đo n đánh giá tính thích nghi cạ ủa các cá thể.

Ở đây, gi i thu t di truyả ậ ền song song cho bài toán VRPTW đư c đợ ề xu t d a theo ấ ự

mô hình song song d ng chạ ủ ớ t . Thuật toán thao tác trên m t qu n th và lộ ầ ể ặp qua các thế ệ h . Theo đó, tiến trình chủ (master) điều khiển quá trình th c thi cự ủa giải thuật di truy n và thề ực hiện thao tác chọn lọc cá thể cha mẹ trong quần th . Các tiể ến trình t (slave) th c hiớ ự ện các thao tác lai (trao đ i chéo), đổ ột bi n và tính toán giá trế ị

thích nghi c a các cá thủ ể. Truy n thông chính giề ữa ti n trình ch và các tiế ủ ến trình tớ

là truy n các c p cá thề ặ ể cha/mẹ đến các ti n trình tế ớ và nh n vậ ềcác c p cá thặ ể con

Một phần của tài liệu (LUẬN văn THẠC sĩ) thuật toán di truyền song song giải bài toán VRP (vehicle routing problem) với hạn chế thời gian (Trang 57 - 61)

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

(84 trang)