Giải bài toán tìm đường đi ngắn nhất bằng thuật toán song song meta heuristic

13 1.2K 0
Giải bài toán tìm đường đi ngắn nhất bằng thuật toán song song meta heuristic

Đ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

-1- -2- B GIÁO D C VÀ ĐÀO T O Đ I H C ĐÀ N NG Cơng trình đư c hoàn thành t i Đ I H C ĐÀ N NG LÊ NG C QUANG Ngư i hư ng d n khoa h c: PGS.TSKH Tr n Qu c Chi n GI I BÀI TỐN TÌM ĐƯ NG ĐI NG N NH T B NG THU T TOÁN SONG SONG Ph n bi n 1: PGS.TS Võ Trung Hùng META-HEURISTIC Ph n bi n 2: TS Hoàng Th Lan Giao Chuyên ngành: Khoa h c máy tính Mã s : 60.48.01 Lu n văn s ñư c b o v t i H i ñ ng ch m Lu n văn t t nghi p Th c sĩ k thu t h p t i Đ i h c Đà N ng vào ngày 04 tháng 03 năm 2012 TÓM T T LU N VĂN TH C SĨ K THU T * Có th tìm hi u lu n văn t i: - Trung tâm Thông tin - H c li u, Đ i h c Đà N ng Đà N ng - Năm 2012 - Trung tâm H c li u, Đ i h c Đà N ng -3M Đ U -43 Đ i tư ng ph m vi nghiên c u Đ i tư ng nghiên c u Lý ch n ñ tài Bài toán t i ưu t h p d ng tốn có đ ph c t p tính - Nghiên c u gi i thu t ki n - Mơ hình tính tốn song song Message Passing Interface tốn cao thu c l p NP khó S ñ i c a gi i thu t Meta-Heuristic - Thu t tốn ki n song song gi i quy t toán v i hi u qu cao cho k t qu l i gi i g n Ph m vi nghiên c u t i ưu h gi i thu t ki n (Ant Algorithm), gi i thu t luy n thép - T p trung nghiên c u thu t toán song song áp d ng vào gi i SA (Simulated Annealing), gi i thu t di truy n GA (Genetic Algorithm) V i đ ph c t p tính tốn cao c a toán t i ưu t h p địi h i v m t th i gian, vi c gi i toán v i tính thu t ki n - Vi c th nghi m đ i v i tốn ngư i du l ch - Travelling Salesman problem (TSP) ñư c s d ng thư vi n chu n TSPLIB Phương pháp nghiên c u ch t tu n t c a gi i thu t s g p ph i nh ng v n ñ v th i gian th c Phương pháp tài li u: hi n chương trình, t c đ x lý, kh lưu tr c a b nh , x lý Nghiên c u lý thuy t v thu t toán ki n, v n ñ song d li u v i quy mơ l n Kích thư c tốn tăng lên khơng gian song hóa Trên s lý thuy t nghiên c u ñư c s v n d ng k t qu tìm ki m l n yêu c u c n ph i song song hóa gi i thu t đ tìm ki m t i ưu c a thu t ki n song song vào toán ngư i du l ch tăng t c ñ hi u qu c a gi i thu t M c đích c a đ tài gi i quy t tốn tìm đư ng ñi ng n Phương pháp th c nghi m Xây d ng chương trình đánh giá k t qu th nghi m v i nh t b ng thu t toán ki n song song nh m phát huy s c m nh c a mơ hình song song tốn Trên s s đưa k t qu ñánh giá hi u qu c a thu t toán Ý nghĩa khoa h c th c ti n c a ñ tài ki n mơ hình song song M c đích nghiên c u Các m c tiêu c th g m: - Nghiên c u v gi i thu t Meta-Heuristic ñ c bi t h gi i thu t ki n - Nghiên c u v v n đ song song hóa gi i thu t ñàn ki n song song - Áp d ng gi i thu t ki n song song vào tốn tìm đư ng ng n nh t Nghiên c u gi i thi u thu t toán ñàn ki n thu t toán ñàn ki n song song vi c gi i tốn tìm ñư ng ñi ng n nh t ng d ng thu t toán vào toán ngư i du l ch C u trúc lu n văn N i dung c a lu n văn đư c chia thành ba chương v i n i dung sau: Chương – Cơ s lý thuy t: N i dung tìm hi u, nghiên c u lý thuy t liên quan ñ n v n ñ nghiên c u v lý thuy t ñ th , v n đ l p trình song song, thu t tốn đàn ki n -5- -6- Chương – Thu t toán ki n song song: T thu t tốn t i CHƯƠNG ưu đàn ki n tu n t th c hi n chuy n sang thu t tốn t i ưu đàn ki n CƠ S LÝ THUY T song song mơ hình truy n thơng p Chương – Phân tích, xây d ng cài đ t chương trình: 1.1 CÁC KHÁI NI M CƠ B N V Đ Phân tích ch c xây d ng chương trình ng d ng vào toán 1.1.1 Đ nh nghĩa ñ th ngư i du l ch ñ ng th i ti n hành ch y th nghi m, ñánh giá k t qu TH 1.1.2 Tính liên thơng c a ñ th 1.1.3 Đ th Euler ñ th Hamilton Đ nh nghĩa 1.13 Chu trình (tương ng ñư ng ñi) ñơn ch a t t c c nh (ho c cung) ñ nh c a đ th (vơ hư ng ho c có hư ng) G đư c g i chu trình (tương ng ñư ng ñi) Euler M t ñ th liên thơng (liên thơng y u đ i v i đ th có hư ng) có ch a m t chu trình (tương ng đư ng đi) Euler đư c g i ñ th Euler (tương ng n a Euler) Đ nh nghĩa 1.14 Chu trình (tương ng đư ng ñi) sơ c p ch a t t c ñ nh c a ñ th (vô hư ng ho c có hư ng) G đư c g i chu trình (tương ng đư ng đi) Hamilton M t đ th có ch a m t chu trình (tương ng ñư ng ñi) Hamilton ñư c g i ñ th Hamilton (tương ng n a Hamilton) 1.1.4 Bi u di n đ th máy tính 1.1.4.1 Ma tr n k , ma tr n tr ng s 1.1.4.2 Danh sách c nh (cung) 1.1.4.3 Danh sách k 1.2 TÍNH TỐN SONG SONG VÀ CÁC V N Đ SONG SONG HĨA 1.2.1 Mơ hình máy tính song song M t h th ng máy tính song song m t máy tính v i nhi u m t b x lý cho phép x lý song song D a vào s phân bi t k t n i gi a b x lý (hay thành ph n x lý), gi a -7- -8- b x lý b nh mà có r t nhi u lo i ki n trúc máy tính song 1.3.1 Các khái ni m b n song khác Nhưng theo nguyên t c phân lo i c a Flynn 1.3.2 Các đ c tính b n c a m t chương trình MPI có hai ki n trúc máy tính song song song thơng d ng sau: 1.3.3 Trao đ i thơng tin m – m 1.2.1.1 Mơ hình Đơn dịng l nh đa d li u – SIMD K thu t truy n thông b n c a MPI s chuy n giao d 1.2.1.2 Mơ hình đa l nh đa d li u - MIMD li u gi a hai x lý, m t bên g i m t bên nh n, g i hình 1.2.2 Mơ hình l p trình song song th c Point to Point (ñi m - ñi m) H u h t c u trúc x lý M t mơ hình l p trình song song s d ng m t t p c a chu n MPI ñ u d a truy n thông Point to Point k thu t ph n m m ñ th hi n gi i thu t song song ñưa 1.3.3.1 Các thơng tin c a thơng p ng d ng vào th c hi n h th ng song song Mơ hình bao 1.3.3.2 Các hình th c truy n thông g m ng d ng, ngôn ng , b biên d ch, thư vi n, h th ng 1.3.4 Các ki u d li u ñã ñư c ñ nh nghĩa c a MPI truy n thơng vào/ra song song Hi n có r t nhi u mơ hình 1.4 T I ƯU T l p trình song song: Đa lu ng (Threads), Truy n thơng p 1.4.1 Bài tốn T i ưu t h p (Message Passing), Song song d li u (Data Parallel), Lai H P VÀ BÀI TOÁN NGƯ I DU L CH Bài tốn t i ưu hóa t h p liên quan t i vi c tìm giá tr cho (Hybird) bi n s r i r c l i gi i t i ưu mà có lưu ý t i hàm m c tiêu 1.2.3 Các chi n lư c song song hóa thu t tốn (objective function) cho trư c Bài tốn có th tốn tìm c c đ i 1.2.3.1 Song song hóa k t qu ho c tìm c c ti u M t cách thông thư ng, toán t i ưu hoá t h p 1.2.3.2 Song song hóa đ i di n đư c cho dư i d ng b (S, f, 1.2.3.3 Song song hóa chuyên bi t c viên, f hàm m c tiêu (hàm gán giá tr f(s) cho m i l i gi i 1.3 MƠ HÌNH TRUY N THÔNG ĐI P - MPI MPI - Message Passing Interface - thư vi n truy n thông ng c viên s ∈ S), ) Trong S t p l i gi i ng t p ràng bu c c a toán Các l i gi i thu c t p S ⊆ S th a mãn t p ràng bu c * g i l i gi i ñi p tiêu chu n d a s ñ ng thu n c a di n ñàn MPI v i 40 kh thi M c tiêu tốn tìm m t l i gi i kh thi t i ưu toàn c c t ch c tham gia bao g m c nhà cung c p, nhà nghiên c u, s* V i toán t i ưu hóa c c ti u tìm l i gi i s* v i giá nh nhà phát tri n thư vi n ph n m m ngư i s d ng Đó m t nh t, nghĩa f(s*) ≤ f(s) v i m i l i gi i s ∈ S Ngư c l i toán thư vi n hàm (trong C) ho c ti n trình (trong Fortran) cho t i ưu hóa c c đ i tìm l i gi i s* v i giá l n nh t, nghĩa f(s*) ≥ phép b n chèn vào code ñ th c hi n trao ñ i d li u gi a f(s) v i m i l i gi i s ∈ S Bài tốn t i ưu hóa t h p có th chia ti n trình M c tiêu c a MPI cung c p m t tiêu chu n đư c s lo i: Bài tốn tĩnh tốn đ ng d ng r ng rãi đ vi t chương trình chuy n gói tin đ m b o tính di đ ng, hi u qu linh ho t -9- -10- 1.4.2 Bài toán Ngư i du l ch ñư ng, m t ñ mùi l n chúng có xu hư ng ch n D a 1.4.2.1 Phát bi u toán vào hành vi tìm ki m mà đàn ki n tìm đư c đư ng ng n nh t Có m t ngư i du l ch hay m t ngư i giao hàng c n ñi giao hàng t i n thành ph Anh ta xu t phát t m t thành ph đó, t t ñ n ngu n th c ăn sau quay tr v t c a 1.5.3 Đàn ki n nhân t o qua thành ph khác ñ giao hàng tr v thành ph ban ñ u Đàn ki n nhân t o (Artificial Ants) mơ ph ng ho t đ ng M i thành ph ch ñ n m t l n, kho ng cách t m t thành ph ñ n c a đàn ki n t nhiên có m t s thay ñ i, ñi u ch nh so v i ñàn thành ph khác ñã ñư c bi t trư c Hãy tìm m t chu trình (m t ki n t nhiên đ tăng tính hi u qu c a thu t tốn Các tính ch t c a đư ng khép kín th a mãn ñi u ki n trên) cho t ng ñ dài ñàn ki n nhân t o sau: c nh nh nh t - Ngồi thơng tin pheromone đàn ki n nhân t o cịn s 1.4.2.2 Phân lo i tốn d ng thơng tin heuristic xây d ng lu t di chuy n c a 1.4.2.3 Các phương pháp ti p c n gi i tốn TSP chúng Có nhi u hư ng đ ti p c n tốn TSP thi t k thu t - Ki n nhân t o có b nh đ lưu thơng tin c a ki n nh m tốn tìm l i gi i xác, thu t tốn x p x , thu t tốn Heuristic m c đích xác đ nh hành trình qua đ tính tốn ñ dài gi i quy t trư ng h p đ c bi t c a hành trình 1.5 T NG QUAN V THU T TOÁN KI N - Lư ng thơng tin mùi pheromone đư c thêm vào b i ki n 1.5.1 Gi i thi u chung nhân t o hàm c a ch t lư ng l i gi i mà chúng tìm đư c T i ưu hóa thu t tốn đàn ki n (Ant Colony Optimization - Ki n nhân t o thư ng ch th c hi n tăng lư ng thông tin mùi ACO) m t thu t tốn MetaHeuristic đư c thi t k đ gi i sau hồn thành l i gi i quy t toán t i ưu t h p, s d ng phương pháp tính xác su t - Ki n nhân t o s d ng ch bay thơng tin pheromone đ tìm đư ng ñi ng n nh t c a ñ th H th ng ACO l n ñ u tiên ñ tránh b t c toán t i ưu c c b ñư c Marco Dorigo gi i thi u lu n văn c a vào năm 1992, ñư c g i H th ng ki n (Ant System, hay AS) 1.5.2 Đàn ki n t nhiên Ki n lo i cá th s ng b y ñàn Chúng giao ti p v i thơng qua mùi mà chúng đ l i hành trình mà chúng qua M i ki n ñi qua m t ño n ñư ng s đ l i đo n m t ch t mà g i mùi S lư ng mùi s tăng lên có nhi u ki n ñi qua Các ki n khác s tìm đư ng d a vào m t đ mùi 1.5.4 Các nguyên t c c a thu t tốn ki n -11- -12- CHƯƠNG chúng ñi qua G n v i m i c nh (i,j) n ng ñ v t mùi τ ij thông T I ƯU ĐÀN KI N VÀ THU T TOÁN KI N SONG SONG 2.1 T I ƯU ĐÀN KI N –ACO s heuristic η ij c nh ñó Ban ñ u n ng ñ mùi m i c nh (i,j) ñư c kh i t o b ng 2.1.1 Thu t toán Ant System (AS) m t h ng s c, ho c ñư c xác ñ nh theo công th c: 2.1.1.1 Quy t c di chuy n c a ki n τ ij = τ = Trong thu t toán AS, ki n xây d ng m t ñư ng ñi b t ñ u t i T i ñ nh i, m t ki n k s ch n ñ nh j chưa ñư c ñi qua α η ij (2.4) V i ρ kho ng (0,1) t c ñ bay c a pherromone - Ti p theo m i ki n ñàn s ñ t thêm m t lư ng : xác su t ki n k l a ch n c nh (i,j) : n ng ñ v t mùi c nh (i,j) thông tin pheromone nh ng cung mà chúng ñã ñi qua hành trình c a chúng m k τ ij ← τ ij + ∑ ∆τ ij : h s ñi u ch nh nh hư ng c a τ ij : thơng tin heuristic giúp đánh giá xác s l a ch n c a ki n quy t ñ nh ñi t ñ nh i qua ñ nh j η ij = (2.5) k =1 k Trong đó: ∆τ ij lư ng pheromone mà ki n k ñ t lên c nh mà qua đư c tính sau: đư c tính theo cơng th c: dij τ ij ← (1 − ρ ).τ ij (2.1) Trong đó: τ ij - Đ u tiên t t c pheromone cung s ñư c gi m ñi b i m t lư ng: k i pijk (2.3) Vi c c p nh t pheromone ñư c ti n hành sau: m t ñ nh ñư c ch n ng u nhiên t p láng gi ng c a i theo công th c sau: (τ ij )α (ηij )β , j ∈ N k k pij = i α β ∑l∈N (τ il ) (ηil ) m , ∀(i, j ) C nn d ij (2.2) : kho ng cách gi a ñ nh i ñ nh j β : h s ñi u ch nh nh hư ng c a η ij Nik : t p ñ nh láng gi ng c a i mà ki n k chưa ñi qua 2.1.1.2 Quy t c c p nh t thơng tin mùi Trong q trình di chuy n tìm đư ng c a đàn ki n, chúng th c hi n vi c c p nh t thơng tin mùi nh ng đo n đư ng mà 1 / C k , ∆τ =  0 , k ij n u ki n k qua cung (i,j) ngư c l i (2.6) V i: C k ñ dài ñư ng ñi c a ki n th k sau hồn thành đư ng đi, t c b ng t ng cung thu c ñư ng ñi mà ki n ñã ñi qua -13- -14- 2.1.2 Thu t toán Ant Colony System (ACS) C p nh t thông tin mùi c c b : 2.1.2.1 Quy t c di chuy n c a ki n Công th c sau: Trong thu t tốn ACS, ki n k τ ij ← (1 − ρ )τ ij + ρτ ñ nh i, vi c ki n ch n ñ nh j ñ di chuy n ñ n ñư c xác ñ nh b ng qui lu t sau: (2.9) V i: - Cho q0 m t h ng s cho trư c (0 ≤ q0 ≤ 1) - ρ : tham s bay n m kho ng (0,1) - Ch n ng u nhiên m t giá tr q kho ng [0, 1] - τ0 = - N u q ≤ q0 ki n k ch n ñi m j di chuy n ti p theo d a nC nn giá tr l n nh t c a thông tin mùi thông tin heuristic có c nh - n : s ñ nh hay s thành ph tương ng v i công th c: - Cnn: chi u dài hành trình cho b i phương pháp tìm ki m g n ( j = arg l∈N k max τ il (η il ) i β ) (2.7) nh t (nearest neighbor – nn) 2.1.3 Thu t toán Max-Min Ant System (MMAS) - N u q > q0 ki n k s ch n ñ nh j chưa ñư c ñi qua t p Lu t di chuy n c a ki n ñư c th c hi n tương t láng gi ng c a i theo m t qui lu t phân b xác su t ñư c xác ñ nh thu t toán ACS d a công th c (2.7) theo công th c sau: 2.1.3.1 Quy t c c p nh t thông tin mùi (τ ) (η ) α k pij = β ij ij α β ∑ (τ ) (η ) l∈N ik il Thu t toán MMAS th c hi n vi c c p nh t thông tin mùi , j ∈ N ik toàn b ki n đàn hồn thành l i gi i lư ng thông tin mùi ch il c p nh t c nh thu c l i gi i t i ưu nh t Ban ñ u th c 2.1.2.2 Quy t c c p nh t thông tin mùi hi n bay thông tin mùi c nh thu c lơi gi i t i ưu v i m t C p nh t thông tin mùi toàn c c: M t ki n có đư ng t t nh t sau m i l n l p đư c phép c p nh t thông tin pheromone Vi c c p nh t ñư c th c hi n lư ng ñư c xác ñ nh t i công th c (2.4) Lư ng pheromone m t c nh ñư c xác ñ nh sau : best τ ij ← τ ij + ∆τ ij theo công th c sau: bs τ ij ← (1 − ρ )τ ij + ρ∆τ ij bs V i ∆τ ij = C bs (2.8) lư ng pheromone ñ t lên c nh (i,j) mà ki n ñi qua Cbs ñ dài ñư ng ñi t t nh t c a ki n th k sau hoàn thành ñư ng ñi, t c b ng t ng cung thu c ñư ng ñi t t nh t mà ki n ñã ñi qua v i 1 / Cbest best ∆τ ij =  0 n u ki n qua c nh (i,j) ngư c l i Cbest ñ dài ñư ng ñi ng n nh t c a ki n th k sau c đàn hồn thành đư ng -152.1.3.2 Kh i t o kh i t o l i thông tin mùi Thu t tốn MMAS thêm vào giá tr c n giá tr c n dư i cho thông tin pheromone g i τmin τmax Sau m i l n c p nh t giá tr thông tin mùi τ ij , n u τ ij < τ s gán τ ij = τ n u τ ij > τ max gán τ ij = τ max Giá tr c n τ max thư ng ñư c thi t l p v i công th c sau: τ max = ρC best Giá tr c n dư i τ ñư c xác ñ nh b ng công th c τmin = τmax / 2n 2.2 THU T TOÁN KI N CHO BÀI TOÁN NGƯ I DU L CH Áp d ng thu t toán ki n vào toán ngư i du l ch v i thông s c a ki n sau: - m: s lư ng ki n -16- aki : nh n giá tr True, False tương ng v i ki n k ñã thăm ho c chưa ñi qua ñ nh i Các bư c xây d ng thu t toán sau: Đ u vào: Đ th G=(V,E), v i t p ñ nh V t p c nh E, ma tr n tr ng s D = d[i,j], v i i, j ∈ V S lư ng ki n m Đ u ra: ñư ng ñi S v i kho ng cách ng n nh t CS Các bư c Bư c 1: Kh i t o Kh i t o tham s NC, β, α, ρ, s lư ng ki n m s ñ nh n Kh i t o ñ dài ñư ng ñi ng n nh t Cbest h ng s Tính đ dài đư ng ng n nh t Cnn Tính giá tr τ max = ρC nn τ = τ max / 2n τ ij : n ng ñ v t mùi c nh (i,j) ρ : tham s bay n m kho ng (0,1) - Kh i t o giá tr q0 v i (0 ≤ q0 ≤ 1) - pijk : xác su t ki n k l a ch n c nh (i,j) Kh i gán ñi u ki n k t thúc stop := : h s ñi u ch nh nh hư ng c a τ ij Thi t l p ma tr n pheromone t t c c nh - -α - η ij : thông tin heuristic giúp đánh giá xác s l a ch n c a ki n ñi t ñ nh i t i ñ nh j : h s ñi u ch nh nh hư ng c a η ij -β - Nik : t p ñ nh láng gi ng c a i mà ki n k chưa ñi for i:=1 to n for j:=1 to n τ ij = τ max Bư c 2: Xây d ng ñư ng ñi c a ki n Trư ng h p hoàn thành xong t t c bư c l p: stop > NC xu t ñư ng ñi ng n nh t k t thúc qua - ∆τ k ij lư ng pheromone mà ki n k ñ t lên c nh mà qua - NC : s bư c l p c a thu t toán - Sk : ñư ng ñi c a ki n k ( t p ñ nh mà ki n k ñi qua) - q : giá tr ng u nhiên kho ng [0, 1] 2.1 Thi t l p ñ nh ki n chưa ñi qua nh n giá tr false for k:=1 to m for i:=1 to n aki:= false Thi t l p ñư ng ñi c a ki n S k = φ 2.2 Ch n ng u nhiên v trí xu t phát c a ki n -17- -18for j:=i to n τ ij := (1 − ρ )τ ij for k:=1 to m 4.2 Thêm thông tin mùi c nh thu c ñư ng ñi t t nh t for i:=1 to n r ← random{ n} Sk,best B sung r vào ñư ng ñi Sk:={r}, akr:= true; best N u c nh (i, j ) ∈ S k Gán ñ dài ñư ng ñi Ck:=0 2.3 Xác ñ nh ñ nh ñ n ti p theo c a ki n k - Ch n ng u nhiên m t giá tr q: q ← random{0 1} Ki m tra thông tin pheromone v i c n c n dư i N u τij < τmin τij = τmin - N u q ≤ q0 ki n k ch n ñi m u di chuy n ti p theo v i ( u = arg l∈N k max τ rl (η rl ) r β ) - N u q > q0 ki n k s ch n ñ nh u chưa ñư c ñi qua t p láng gi ng c a r theo công th c sau: (τ ru )α (η ru )β , u ∈ N k k p ru = r α β ∑l∈N (τ rl ) (η rl ) k r - Ch n ñ nh u ñ nh ti p theo, b sung ñ nh u vào Sk Sk:= {r, u} - Tăng ñ dài ñư ng ñi Ck:=Ck + dru - Gán aku:=true Bư c 3: Xác ñ nh ñư ng ñi ng n nh t Ta có Ck ñ dài ñư ng ñi c a ki n k v i k=[1 m] thu ñư c t bư c N u Ck < Cbest hi u ch nh Cbest:=Ck Bư c 4: C p nh t thông tin mùi T i bư c này, ch c p nh t thơng tin mùi đư ng c a ki n k có giá tr Ck nh nh t thu ñư c t bư c 3, t c giá tr Cbest 4.1 Bay thông tin mùi c nh for i:=1 to n C τ ij := best + ∆τ τ ij Tính giá tr pheromone ∆τ = N u τij > τmax τij = τmax Tăng giá tr stop:=stop+1 2.3 SONG SONG HĨA THU T TỐN KI N 2.3.1 T ng quan thu t toán ki n song song Trong lu n văn trình bày chi ti t hai chi n lư c song song hóa thu t toán ki n c a B Bullnheimer, G Kotsis, C Strauss song song ñ ng b song song b t ñ ng b m t ph n 2.3.2 Thu t tốn song song đ ng b 2.3.2.1 Ý tư ng thu t toán Thu t toán s d ng mơ hình Master/Slave ki n trúc b nh phân tán g m m t vi x lý ñ m nh n vai trò Master vi x lý l i Slave M i m t Slave ñư c gán cho m t tác t ki n th c hi n nhi m v xây d ng m t đư ng Master có nhi m v kh i t o thông tin ban đ u, c p nh t thơng tin pheromone tồn c c nh n t Slave ñưa k t qu t i ưu 2.3.2.2 Các bư c thu t toán Đ i v i Master Bư c 1: Kh i t o G i tham s ñ n m i Slave G i ma tr n d pheromone τ ñ n m i Slave Bư c 2: Xác ñ nh ñư ng ñi ng n nh t c a ki n -19Bư c 3: C p nh t thông tin Pheromone -20Đ i v i Slave Đ i v i Slave Bư c 1: Nh n tham s t Master Bư c 1: Nh n tham s t Master Bư c 2: Xây d ng ñư ng ñi cho ñàn ki n Bư c 2: Xây d ng ñư ng ñi N u step > T d ng chuy n sang bư c Bư c 3: G i ñư ng ñi Sk ñ dài ñư ng ñi Ck v Master 2.1 Kh i t o thành ph xu t phát c a m i ki n t i m i Slave 2.3.2.3 Sơ đ thu t tốn 2.2 Xây d ng ñư ng ñi cho t ng ki n 2.3.3 Song song b t ñ ng b m t ph n 2.3 C p nh t ma tr n pheromone c c b 2.3.3.1 Ý tư ng thu t tốn Bư c 4: G i đư ng Sk ñ dài ñư ng ñi Cbest v Trong chi n lư c s lư ng ki n m nhi u s vi x lý Master P, (P < m) Như v y, m i Slave ñ m nh n th c hi n xây d ng ñư ng 2.3.3.3 Sơ đ thu t tốn cho m t ñàn ki n v i s lư ng m/P Vi c phân chia theo chi n 2.3.4 Hi u qu c a thu t gi i song song lư c gi m đáng k chi phí truy n thông gi a Master Slave Vi c xem xét hi u qu c a thu t gi i song song thư ng 2.3.3.2 Các bư c thu t toán c vào y u t như: th i gian thi hành, t c ñ (Speedup), hi u su t Đ i v i Master (efficienly), chi phí (Cost) qui mơ (Scaling) Bư c 1: Kh i t o 2.3.4.1 Chi phí Bư c 2: Xác ñ nh ñư ng ñi ng n nh t Ký hi u T0 hàm overhead, ta có: Trư ng h p stop > NC xu t đư ng ñi ng n nh t k t T0 = pTP – TS 2.3.4.2 T c ñ thúc T c ñ ký hi u S = TS/TP 2.1 G i tham s ñ n m i Slave G i ma tr n d pheromone τ ñ n m i Slave 2.2 Nh n ñư ng ñi Sk ñ dài ñư ng ñi Ck t Slave 2.3.4.3 Hi u su t 2.3 Xác ñ nh ñư ng ñi ng n nh t h u ích, t s gi a t c ñ (Speedup) s ph n t x lý PE (E = N u Ck < Cbest Cbest := Ck Bư c 3: C p nh t thông tin Pheromone 3.1 Bay thông tin mùi c nh 3.2 Thêm thông tin mùi c nh thu c ñư ng ñi ng n nh t Sk,best 3.3 G i ma tr n Pheromone τ m i cho Slave Hi u su t ñ ño th i gian mà ph n t x lý (PE) s d ng S/p) -21CHƯƠNG -223.1.2.3 C p nh t Pheromone PHÂN TÍCH, XÂY D NG VÀ CÀI Đ T CHƯƠNG TRÌNH 3.1 Đ C T C U TRÚC D LI U VÀ CÁC CH C NĂNG Có hai giai đo n ch c c p nh t thơng tin pheromone th c hi n bay cung c p nh t thơng CHÍNH C A CHƯƠNG TRÌNH tin pheromone m i cung thu c ñư ng ñi t t nh t c a ki n 3.1.1 C u trúc d li u Trong thu t tốn MMAS có b sung thêm giá tr c n giá tr 3.1.1.1 Các thơng s c n dư i c a thông tin pheromone nên có ch c ki m tra giá Trong ph n mô t c u trúc d li u c a thơng s c a chương trình Chương trình s d ng mã ngu n thu t toán ki n tr 3.1.2.4 Th c hi n song song tu n t ACOTSP.V1.01 tham kh o [15] phát tri n thành Vi c th c hi n song song lu n văn cho p tác t chương trình song song Chương trình s d ng t p tin gr24.tsp, ki n ho c đàn ki n ti n hành tìm ñư ng ñi hay xây d ng gi i pháp st70.tsp, kroA100.tsp thư vi n TSPLIB [13] ñ ñánh giá k t cho p b vi x lý Bài tốn đư c xây d ng ch y ki n trúc b nh phân tán qu th nghi m 3.1.1.2 C u trúc d li u c a ki n v i mơ hình song song truy n thơng p, s d ng thư vi n MPI 3.1.1.3 Ki u d li u c a MPI 3.2 NGƠN NG 3.1.2 Các ch c TRI N 3.1.2.1 Kh i t o d li u Ch c kh i t o d li u bao g m hàm kh i t o cho L P TRÌNH VÀ MƠI TRƯ NG PHÁT NG D NG Ngơn ng l p trình đư c s d ng ngơn ng C, trình biên d ch GCC (GNU C compiler), ph n m m h tr phát tri n ng c u trúc d li u ñã nêu ph n 3.1.1 Đ u tiên s th c hi n ñ c d ng CodeBlocks Thư vi n chu n ñ c t truy n thơng p s d li u t t p tin TSP, sau t o l p ma tr n tr ng s , danh d ng chương trình b n MPICH2 sách láng gi ng, kh i t o thông tin Heuristic, kh i t o c u trúc 3.3 K T QU TH C NGHI M CHƯƠNG TRÌNH ki n kh i t o m t s bi n b sung ñ theo dõi th c hi n thu t toán 3.3.1 Th c nghi m chương trình 3.1.2.2 Xây d ng dư ng ñi 3.3.2 Đánh giá k t qu Ch c xây d ng ñư ng ñi cho ki n đư c th c hi n thơng 3.3.2.1 Đánh giá chương trình song song qua giai đo n riêng bi t Đ u tiên m i ki n s đư c phân b ng u - Chương trình song song không phá v c u trúc c a thu t nhiên t i m t thành ph xu t phát, sau ki n xây d ng m t đư ng tốn tu n t ch t lư ng l i gi i c a tương t chương ñi qua t t c thành ph b ng cách xác đ nh v trí thành ph di trình tu n t chuy n ti p theo cu i tr v l i v trí xu t phát tính đ dài đư ng hồn thành - Chương trình ch th c hi n song song pháp ñư ng ñi c a ki n bư c xây d ng gi i -23- -24- - Chương trình khơng th c hi n c u trúc liên k t m ng trao B ng 3.2 Th i gian trung bình tìm gi i pháp t i ưu s vi ñ i thơng tin gi a đàn ki n, chi phí truy n thơng gi a Master/Slave l n, th i gian th c hi n ph thu c vào c u hình máy x lý tính ch y chương trình 15 10 3.3.2.2 Đánh giá k t qu th c hi n 12 Th i gian cho 21 15 11 m i vòng l p 29 33 13 (giây) - K t qu c a chương trình tu n t song song tương t c t p tin k t qu xu t c a chương trình - Qua th c nghi m, th i gian th c hi n thu t toán song song S vi x lý 19 10 tìm ki m k t qu t i ưu nhanh so v i tìm ki m b ng thu t tốn 10 tu n t t l ph thu c vào s lư ng vi x lý s d ng 17 17.57 12 8.85 - Khi s lư ng b vi x lý tăng lên th i gian trung bình đ Trung bình tìm gi i pháp t i ưu s gi m - Đ i v i s lư ng b vi x lý th i gian trung B ng 3.3 Hi u su t tương ng v i d li u c a tốn TSP bình đ tìm gi i pháp t i ưu t i m i vịng l p khác khác nhau, đư c mơ t b ng 3.1 Bài tốn TSP T c ñ th c hi n Gr24.tsp 0.8 0.7 0.7 St70.tsp 1.27 1.23 1.23 kroA100.tsp 1.41 1.37 1.37 Gr24.tsp 0.4 0.175 0.116 0.63 0.307 0.205 kroA100.tsp TSP St70.tsp B ng 3.1 T c ñ th c hi n tương ng v i d li u c a toán Bài toán TSP Hi u su t th c hi n 0.705 0.342 0.228 -25K T LU N VÀ HƯ NG PHÁT TRI N K t lu n Nh ng k t qu nghiên c u c a lu n văn cho phép rút nh ng k t lu n: -26- Lu n văn ch t p trung nghiên c u thu t tốn đàn ki n h P-Meta heuristic, chưa nghiên c u thu t toán khác ( thu t tốn đàn ong ) đ có nh ng so sánh đánh giá - Trong vi c song song hóa thu t tốn đàn ki n, chưa tìm V lý thuy t hi u v q trình trao đ i thông tin mùi gi i pháp gi a đàn - Tìm hi u đư c thu t tốn ñàn ki n vi c xác ñ nh ñư ng ñi ki n vi c xây d ng ñư ng ñi ng n nh t b ng phương pháp tính xác su t gi a m di chuy n V th c nghi m d a thơng tin v đ dài đư ng đi, thơng tin heuristic - M c dù phân tích đư c nhóm ch c cịn thơng tin mùi pheromone mà ki n đ l i ñư ng ñi nhi u ch c chưa cài đ t hồn ch nh ho c cài đ t chưa q trình di chuy n ki m tra th nghi m th c t - Hi u ñư c phương pháp ti p c n t i ưu thu t tốn đ nâng - Chương trình ch m i song song hóa đư c m t ph n d a cao đ xác cho thu t tốn ki n, c th c i ti n quy lu t di theo ý tư ng ñã nêu, chưa th c nghi m ki n trúc song song b chuy n c a ki n qui lu t c p nh t thông tin mùi pheromone th nh chia s đ có đánh giá hi u qu c a thu t toán lo i ki n hi n trúc khác thu t toán Ant Colony System Max-Min Ant System - Hi u ñư c chi n lư c song song hóa thu t tốn th c hi n - Chương trình cịn tính ch t mô ph ng chưa ph i m t ng song song hóa thu t tốn ki n ki n trúc b nh phân tán mô d ng c th hình song song Master/Slave Qua đánh giá đư c thu t tốn d a Hư ng phát tri n tiêu chí v t c ñ , hi u su t chi phí V th c nghi m Phân tích mơ t đư c nhóm ch c c a chương trình ng d ng Đây s ñ ti p t c phát tri n ñ tài tương lai V lý thuy t - Ti p t c nghiên c u sâu thêm v thu t tốn đàn ki n v i nh ng phương pháp t i ưu hóa đư c c i ti n áp d ng toán t i ưu hóa t h p ph c t p Cài đ t thành cơng chương trình th c nghi m tìm ñư ng ñi ng n - Nghiên c u m t s thu t toán thu c toán thu c h P-Meta nh t c a thu t toán ki n áp d ng vào toán ngư i du l ch mơi heuristic song song hóa đ so sánh, đánh giá tính xác trư ng song song Chương trình đư c ki m tra v i d li u ñ u vào m c ñ hi u qu gi a thu t toán meta heuristic ñư c khai thác t thư vi n TSPLIB Đánh giá ưu ñi m h n ch c a ñ tài V lý thuy t V th c nghi m - Ti p t c cài ñ t ch c cịn thi u, đ c bi t b sung ch c trao ñ i thơng tin gi a đàn ki n mơ hình liên k t m ng khác ... sách k 1.2 TÍNH TỐN SONG SONG VÀ CÁC V N Đ SONG SONG HĨA 1.2.1 Mơ hình máy tính song song M t h th ng máy tính song song m t máy tính v i nhi u m t b x lý cho phép x lý song song D a vào s phân... Nghiên c u v gi i thu t Meta- Heuristic ñ c bi t h gi i thu t ki n - Nghiên c u v v n đ song song hóa gi i thu t ñàn ki n song song - Áp d ng gi i thu t ki n song song vào tốn tìm đư ng ng n nh t... c Bài tốn có th tốn tìm c c đ i 1.2.3.1 Song song hóa k t qu ho c tìm c c ti u M t cách thông thư ng, toán t i ưu hoá t h p 1.2.3.2 Song song hóa đ i di n đư c cho dư i d ng b (S, f, 1.2.3.3 Song

Ngày đăng: 30/12/2013, 13:21

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan