As a bio-inspired computational paradigm, Ant colony optimization (ACO) has been applied with great success to a large number of discrete optimization problems. However, up to now, there are few adaptations of ACO to continuous optimization problems, whereas these problems are frequent occurrence. Moreover, almost all of the adaptations use marginal distribution models and the pheromone update rules used are quite different than those of the original ACO algorithms. In some recent papers, Shigeyoshi Tsutsui and colleagues have proposed two algorithms for continuous optimization called the Aggregation Pheromone System (APS) and the enhanced APS (eAPS). These algorithms apply the same pheromone update rule in a way similar to those of the original ACO algorithms, and as a result the aggregation pheromone density eventually becomes a mixture of multivariate normal probability density functions. However, both of the above algorithms do not guarantee to find out a solution converging to an optimal solution. Based on an insight into the mathematical techniques used to prove convergence of ACO algorithms on the discrete domain, we propose an improved APS (iAPS). iAPS inherits APS’s ant-colony based approaches and allows a stronger exploration of better solutions found and at the same time; it can prevent premature stagnation of the search. Consequently, iAPS has a higher probability of finding out an optimal solution. We hope iAPS will be applied for realistic optimization problems in agricultural fields. Keywords: Aggregation pheromone system, Ant colony optimization (ACO), approximation algorithm, metaheuristics.
Tạp chí KHKT Nông nghiệp 2007: Tập V, Số 4: 60-66 Đại học Nông nghiệp I Hệ CộNG DồN MùI CảI TIếN TRONG TốI ƯU HóA BầY KIếN An Improved Aggregation Pheromone System in the Ant Colony Optimization Nguyễn Hoàng Huy * , Nguyễn Hải Thanh * SUMMARY As a bio-inspired computational paradigm, Ant colony optimization (ACO) has been applied with great success to a large number of discrete optimization problems. However, up to now, there are few adaptations of ACO to continuous optimization problems, whereas these problems are frequent occurrence. Moreover, almost all of the adaptations use marginal distribution models and the pheromone update rules used are quite different than those of the original ACO algorithms. In some recent papers, Shigeyoshi Tsutsui and colleagues have proposed two algorithms for continuous optimization called the Aggregation Pheromone System (APS) and the enhanced APS (eAPS). These algorithms apply the same pheromone update rule in a way similar to those of the original ACO algorithms, and as a result the aggregation pheromone density eventually becomes a mixture of multivariate normal probability density functions. However, both of the above algorithms do not guarantee to find out a solution converging to an optimal solution. Based on an insight into the mathematical techniques used to prove convergence of ACO algorithms on the discrete domain, we propose an improved APS (iAPS). iAPS inherits APSs ant-colony based approaches and allows a stronger exploration of better solutions found and at the same time; it can prevent premature stagnation of the search. Consequently, iAPS has a higher probability of finding out an optimal solution. We hope iAPS will be applied for realistic optimization problems in agricultural fields. Keywords: Aggregation pheromone system, Ant colony optimization (ACO), approximation algorithm, metaheuristics. 1. ĐặT VấN Đề Trong các nghiên cứu về nông nghiệp và sinh học, chúng ta gặp nhiều bài toán tối u. Nhiệm vụ chính của các bài toán này là phải xây dựng một phơng pháp hiệu quả để tìm ra những giải pháp tối u nhất. Vấn đề này, thực chất đợc đa về bài toán tìm giá trị nhỏ nhất của một hàm số ()f x trên miền n X R . Trong những năm gần đây, một số nghiên cứu (Bilchev G. and Parmee I. C., 1995; Dreo J. and Siarry P., 2002; Pourtakdoust S.H. and Nobahari H., 2004; Socha K., 2004; Tsutsui S., 2006; Wodrich M. and Bilchev G., 1997) đã triển khai một số phơng pháp tiếp cận phơng pháp tối u hóa bầy kiến (ACO) để giải bài toán tối u liên tục trên. Phơng pháp ACO là một phơng pháp tính toán hiệu quả trong lĩnh vực tính toán tự nhiên mới mẻ hiện nay: trí tuệ bầy đàn (swarm intelligence) (Engelbrecht A.P., 2005). Mục đích của những mô hình tính toán trí tuệ bầy đàn là mô phỏng tập quán đơn giản và những tác động cục bộ đối với môi trờng xung quanh của từng cá thể, từ đó thu đợc những tập quán của bầy đàn phức tạp hơn có thể đợc sử dụng để giải quyết những bài toán khó trong thực tế, chủ yếu là những bài toán tối u. Phơng pháp ACO mô phỏng tập quán tìm đờng đi ngắn nhất của bầy kiến khi kiếm ăn. Khi đi đến nguồn thức ăn, từng con kiến tiết ra mùi (pheromone) trên đờng đi và thích chọn những đờng đi có nồng độ mùi cao. Do đó, những đờng đi ngắn nhất có nhiều khả năng càng ngày nồng độ mùi càng tăng và đợc nhiều kiến lựa chọn hơn. Phơng pháp ACO, về nghiên cứu thực nghiệm, đã đợc áp dụng rất thành công trong * Khoa Công nghệ thông tin, Đại học Nông nghiệp I . 66 Hệ cộng dồn mùi cải tiến trong tối u hóa bầy kiến nhiều bài toán tối u rời rạc NP-khó. Tuy nhiên, về cơ sở lý thuyết toán học, chỉ có một số thuật toán trong những nghiên cứu đó đảm bảo sẽ tìm đợc lời giải tối u toàn cục (Engelbrecht A.P., 2005). Một số nghiên cứu thực nghiệm về phơng pháp ACO cho những bài toán tối u liên tục cũng bắt đầu đợc công bố trong những năm gần đây, trong đó có hai thuật toán APS và eAPS (Tsutsui S., 2006). APS và eAPS thay thế dấu vết mùi trong ACO cổ điển bằng hàm cộng dồn mùi, còn quy luật cập nhật hàm cộng dồn mùi" hoàn toàn tơng tự với quy luật cập nhật dấu vết mùi trong ACO đã đợc áp dụng cho các bài toán tối u rời rạc. Lúc này, hàm mật độ cộng dồn mùi trở thành tổ hợp tuyến tính của những hàm mật độ phân phối chuẩn nhiều chiều. APS cũng nh eAPS có thể giải quyết thành công một số bài toán tối u liên tục NP-khó. Tuy nhiên, hai thuật toán trên cũng nh tất cả các thuật toán áp dụng phơng pháp ACO cho những bài toán tối u liên tục khác (Bilchev G. and Parmee I. C., 1995; Dreo J. and Siarry P., 2002; Pourtakdoust S.H. and Nobahari H., 2004; Socha K., 2004; Wodrich M. and Bilchev G., 1997) do quá chú trọng vào tìm kiếm sâu nên không đảm bảo luôn tìm đợc lời giải tối u toàn cục (theo các tài liệu chúng tôi thu thập đợc cho tới nay). Trong bài báo này, chúng tôi đề xuất một lớp thuật toán iAPS cải tiến của thuật toán APS cho những bài toán tối u liên tục. Lớp thuật toán iAPS là lớp thuật toán xấp xỉ với thuật toán APS. Hơn nữa, nhờ sự cân bằng giữa tìm kiếm rộng và tìm kiếm sâu mà lớp thuật toán này có khả năng tìm kiếm đợc lời giải tối u toàn cục tốt hơn so với hai thuật toán APS và eAPS đặc biệt trong những bài toán tối u liên tục có nhiều cực trị địa phơng. Các mục tiếp theo của bài báo đợc sắp xếp nh sau. Mục 2 giới thiệu mô hình cơ bản hệ cộng dồn mùi APS. Trên cơ sở mục 2, mục 3 trình bày những cải tiến của lớp thuật toán iAPS. Mục 4 kết luận bài báo này. 2. MÔ HìNH CƠ BảN Hệ CộNG DồN MùI APS Thuật toán APS đợc S. Tsutsui, M. Peklikan, A. Ghosh đa ra lần đầu tiên vào năm 2005 và sau đó, đợc S. Tsutsui nâng cấp thành thuật toán eAPS vào năm 2006 (Tsutsui S., 2006). 2.1. Sự cộng dồn mùi Trong thực tế, sự cộng dồn mùi đợc sinh bởi một số loài côn trùng để chia sẻ thông tin về nguồn thức ăn, nơi ẩn nấp an toàn, sự thu hút giới tính hoặc kẻ thù. Ngời ta đã quan sát đợc rất nhiều chức năng của hành động cộng dồn mùi nh đánh dấu nguồn thức ăn, tìm kiếm nơi ẩn nấp, kết bạn hoặc tự vệ. Khi một con gián thấy một chỗ ẩn nấp an toàn, nó sẽ tiết ra một loại mùi đặc biệt trong phân của nó để thu hút những con gián khác. Sự khác biệt giữa ACO và APS chính là ở chức năng của mùi trong không gian tìm kiếm. Trong ACO nồng độ mùi đợc xác định là dấu vết trên mỗi đỉnh hoặc trên mỗi cạnh giữa các đỉnh của đồ thị tìm kiếm. Còn trong APS, hàm mật độ cộng dồn mùi đợc xác định là hàm mật độ trong không gian tìm kiếm n X R . Mỗi vòng lặp của APS gồm hai bớc cơ bản: Cập nhật hàm mật độ cộng dồn mùi Sinh ra các kiến mới nhờ vào hàm mật độ cộng dồn mùi tại thời điểm hiện tại. 2.2. Cập nhật hàm mật độ cộng dồn mùi Đặt ( ) ,tx là hàm mật độ (density) cộng dồn mùi trong vòng lặp t . APS khởi tạo ( ) min (0, )= 0,x = cx . Do đó, kiến mới ban đầu đợc sinh ra ngẫu nhiên theo phân phối đều trên toàn bộ không gian tìm kiếm m X . Để đảm bảo kiến đợc sinh ra nhiều hơn tại những vị trí có mật độ cộng dồn mùi cao, trong vòng lặp , các kiến mới đợc sinh ra ngẫu nhiên theo phân phối xác suất t (, )p tx xác định nh sau: ( ) () , (, ) , X tx ptx txdx = (1) Sau khi đợc sinh ra, mỗi kiến mới sẽ phát ra mùi trong lân cận của nó. Để đảm bảo nồng độ (intensity) mùi càng tăng khi càng gần mỗi kiến, đặc biệt là với các kiến tốt nhất, cũng nh để giảm bớt những biến đổi tuyến tính trong không gian tìm kiếm, có thể cập nhật mùi cho kiến ,tr x nh sau: 67 Nguyễn Hoàng Huy, Nguyễn Hải Thanh () 2 ', , 1 ,; ; (; ; ) tr tr t m k C trx x rNxx k = = (2) Trong đó là số điểm đạt đợc của kiến trong vòng lặp (số điểm r của kiến r t ,tr x càng tăng khi giá trị của hàm số ()f x càng nhỏ, kiến tốt nhất trong kiến ở vòng lặp này đợc điểm còn kiến tồi nhất đợc 1 điểm). m m 2 , (; ; ) tr t Nxx là hàm mật độ phân phối xác suất của biến ngẫu nhiên chuẩn chiều: n () () () 21 ,, 1/21/2 11 ;; exp ( ) 2 2 T tr t tr t tr t Nxx x x x x , = t là ma trận hiệp phơng sai của mẫu { } 1 ;, , m r tr x = là các tham số điều khiển . () ,0 > C là tổng nồng độ mùi trên toàn không gian tìm kiếm . X Khi đó, cộng dồn mật độ mùi tiết ra bởi tất cả kiến ở vòng lặp thứ t sẽ có: m () () ', 1 ,;; m tr r tx trx x = = ; với (3) và đặt 1t (0, )x c = (4) Với cách xây dựng nh trên, thuật toán APS luôn đảm bảo () () min 0, 0, (0, ) XXXX x dx x dx x dx cdx C === = (5) và () , X tx C = (6) Điều này rất quan trọng trong quá trình sinh ngẫu nhiên kiến mới. Sự cộng dồn mật độ mùi đợc cập nhật trong công thức sau: ( ) () ( 1, , ,tx tx tx += + ) ) 1 (7) Trong đó hằng số là tỷ lệ bay hơi của mùi. ( 0 < 2.3. Sinh ngẫu nhiên các kiến mới Từ quy luật cập nhật mật độ mùi trong phơng trình (7), hàm mật độ cộng dồn mùi của APS đợc xác định bởi công thức sau: () () 1 0 1, 0, ( , ) t th h tx x thx + = += + (8) Để thực hiện quá trình sinh ngẫu nhiên các kiến mới, cần phải có hàm mật độ phân phối xác suất ( ) 1,p tx + từ hàm mật độ cộng dồn mùi ( ) 1, .tx + Từ phơng trình (1), (5), (6), (8) ta có: () ( ) ( ) 1 11 0 00 ,0 1, . . ht t tt kk h kt thx x pt x CC + ++ = == += + , (9) Xét hàm mật độ phân phối xác suất ()f x tổng quát dới dạng tổ hợp tuyến tính của các hàm mật độ phân phối xác suất () () ( ) 11 2 2 ( ) ss f xpfxpfx pfx=+ ++ . (10) 68 Hệ cộng dồn mùi cải tiến trong tối u hóa bầy kiến Với thì quá trình sinh ngẫu nhiên các kiến mới theo hàm mật độ phân phối xác suất 1 1 s i i p = = ()f x đợc tiến hành nh sau: Chọn thành phần () i f x với xác suất i p . Sinh ngẫu nhiên các kiến mới theo hàm mật độ phân phối xác suất () i f x vừa chọn. Chú ý rằng ( 1, ) p tx + là tổ hợp tuyến tính của phân phối chuẩn nhiều chiều và một phần phối đều. Do đó các kiến mới có thể đợc sinh ngẫu nhiên bằng cách sử dụng thủ tục vừa nêu trong đó xác suất chọn thành phần thứ là: 1t + i 1 0 t i i k p k + = = (11) và thành phần thứ là: i () (0, ) 1 (,) i xCkhii t fx tixCkhiit =+ = (12) Quá trình sinh ngẫu nhiên các kiến mới theo thành phần cuối cùng 1 () t f x + là đơn giản vì 1 () t f x + là hàm hằng, nên nó là hàm mật độ của phân bố đều trên toàn không gian tìm kiếm. Những thành phần còn lại () i f t với it là tổ hợp tuyến tính của m thành phần: ( ) ( 2 , 1 1 , .;; m tir ti m r k tix r Nxx C k = = = ) (13) Do đó, việc sinh ngẫu nhiên các kiến mới theo hàm mật độ phân phối xác suất () i f t với có thể đợc làm tơng tự nh trên với xác suất chọn thành phần thứ r là : it 2 t-i,r N(x, x , ) ti 1 m r k pr k = = (14) Do mỗi thành phần thứ của vế phải (13) là hàm mật độ phân phối chuẩn, việc sinh các kiến mới có thể sinh ngẫu nhiên nhờ phân hoạch Cholesky (Suli E. and Mayers D.F., 2003). r Khi đủ lớn, việc tính t ( 1, ) p tx + theo phơng trình (9) đòi hỏi phải lu trữ một số lợng lớn các dữ liệu . Trong trờng hợp này, với t và đủ lớn, nên để khắc phục điều đó thuật toán APS xấp xỉ 2 , ; thr th x ) 0 t H H ( 1,p tx + trong (9) bởi: () ( ) 1 1 0 0 , 1, . h H H k h k thx pt x C = = += (15) 2.4. Sơ đồ thuật toán APS Các bớc của thuật toán APS Khởi tạo vòng lặp của APS: . :0t = Khởi tạo hàm mật độ cộng dồn mùi (0, )xc = , (0, )x c = và khởi tạo sinh ngẫu nhiên m kiến mới theo phân phối đều. ()Pt Đánh giá và đa ra số điểm r của mỗi kiến. ()Pt Tính ma trận t của m kiến . ()Pt Cập nhật hàm mật độ cộng dồn mùi ( ) 1,tx + theo phơng trình (7). Lu trữ kiến vào . m ()Et Sinh ngẫu nhiên kiến mới theo hàm mật độ phân phối xác suất xác định ở phơng trình (9) đối với t , trong phơng trình (15) tới tH m ()Pt H< Chọn kiến nhân tạo tốt nhất từ kiến m 2m ( ) ( ) { } Nt Et+ để sinh ra m kiến mới trong (1Pt )+ . :1tt= + 69 Nguyễn Hoàng Huy, Nguyễn Hải Thanh Nếu điều kiện kết thúc thoả mãn thì dừng thuật toán, nếu không quay lại bớc 4. 3. MÔ HìNH CƠ BảN Hệ CộNG DồN MùI iAPS Do hoàn toàn tập trung vào tìm kiếm sâu nên APS rất dễ hội tụ nhanh tới lời giải tối u địa phơng đủ tốt. Để khắc phục những nhợc điểm trên của APS, bài báo này xin đề xuất một lớp thuật toán cải tiến của thuật toán APS, đó là lớp thuật toán iAPS. Lớp thuật toán này không làm mất đi bản chất bầy kiến của APS cũng nh của phơng pháp ACO nói chung. Hơn nữa, về mặt thực nghiệm, iAPS là lớp thuật toán xấp xỉ với thuật toán APS và khá linh hoạt trong việc điểu chỉnh tìm kiếm rộng và tìm kiếm sâu. Dới đây là những điều chỉnh của lớp thuật toán iAPS so với thuật toán APS. 3.1. Cập nhật hàm mật độ cộng dồn mùi Sau khi kiến ,tr x đợc sinh ra iAPS cập nhật mùi cho kiến ,tr x nh sau: () () () min 2 ', , 1 11, ,; ; . (; ; ) tr tr t m k Ctxr trx x Nxx k = + = (2) ( ) min ,tx đợc chọn sao cho () min , log t c tx t = khi đủ lớn và . tN 0 t t limc a => Khi đó, cộng dồn mật độ mùi tiết ra bởi tất cả kiến ở vòng lặp thứ sẽ có: m t () () ', 1 ,;; m tr r tx trx x = = ; (3) Để đảm bảo sự tìm kiếm rộng ta xác định mật độ mùi thêm vào không gian tìm kiếm trong vòng lặp thứ là: t () () ( ) min ,, 1,tx tx t x c =++. (3) 3.2. Sinh ngẫu nhiên các kiến mới Từ quy luật cập nhật mật độ mùi trong phơng trình (7) ta có hàm mật cộng dồn mùi trong iAPS là: ( ) () ( ) () () () () ( ) 11 00 1 min min 000 1, 0, ; 0, , 1, . 1, tt thth hh ttt hhh hhh tx x thx x thx thx th thx ++ == + === += + = + ++=+ + (8) Để thực hiện quá trình sinh ngẫu nhiên các kiến mới trong iAPS, cần phải có hàm mật độ phân phối xác suất ( 1, ) p tx + từ hàm mật độ cộng dồn mùi ( ) 1, .tx + Từ phơng trình (1), (5), (6), (8) ta có: () () () ( ) () () ()() min 1 0 min 0 1 min 1 0 0 11, , 1, . 11, .1,0, h t t k h k h t t k h k thx thx pt x Cth thx x C + = = + + = = + += + + + x (9) 70 Hệ cộng dồn mùi cải tiến trong tối u hóa bầy kiến Chú ý rằng ( 1, ) p tx + là tổ hợp tuyến tính của phân phối chuẩn nhiều chiều và một phân phối đều. Do đó, các kiến mới có thể đợc sinh ngẫu nhiên bằng cách sử dụng thủ tục vừa nêu trong đó xác suất chọn thành phần thứ là: 1t + i () () min 1 0 1 min 0 1 1 0 11, 0,1,2, ., .1, i i t k k t h h t t k k tix p it thx p + = + = + + = + == + = (11) và thành phần thứ là: i () () () () () min 0, 1 , 11, i x khi i t C fx tix khi i t Ctix =+ = + (12) Quá trình sinh ngẫu nhiên các kiến mới theo thành phần cuối cùng 1 () t f x + là đơn giản vì 1 () t f x + là hàm hằng, nên nó là hàm mật độ của phân phối đều trên toàn không gian tìm kiếm. Những thành phần còn lại () i f t với it là tổ hợp tuyến tính của m thành phần: () () () ( 2 , 1 min 1 , .;; 11, m tir ti m r k tix r Nxx Ctix k = = = + ) (13) Do đó, việc sinh ngẫu nhiên các kiến mới theo hàm mật độ phân phối xác suất () i f t với có thể đợc làm tơng tự nh trong APS. it Khi t đủ lớn, iAPS xấp xỉ: () () ( ) () () () 1 min 1 0 0 1 min 1 0 min 0 0, 1, 1 , . , 11,. 11, h H H k h k h H H k h k x pt x t hx C thx thx Cth = = = = += + ++ + x (15) 3.3. Sơ đồ lớp thuật toán iAPS Sơ đồ lớp thuật toán iAPS gồm các bớc tơng tự sơ đồ thuật toán APS. iAPS khác APS ở bớc cập nhật hàm mật độ cộng dồn mùi và bớc sinh ngẫu nhiên các kiến mới. Trong iAPS, điều kiện kết thúc có thể là: số vòng lặp vợt quá một số cho phép, số vòng lặp liên tiếp mà không cải thiện đợc lời giải vợt quá số lần cho phép Hơn nữa, trong lớp thuật toán 71 Nguyễn Hoàng Huy, Nguyễn Hải Thanh iAPS, ngoài các điều kiện kết thúc nh trên còn có bổ sung một điều kiện kết thúc khác. Do khi lớp thuật toán iAPS hội tụ đến lời giải tối u toàn cục, nồng độ mùi hầu nh tập trung xung quanh lời giải đó nên thuật toán iAPS có thể kết thúc khi tổng nồng độ mùi trong một lân cận của lời giải tốt nhất vợt quá một số cho phép. 4. KếT LUậN So với hai thuật toán APS và eAPS, lớp thuật toán iAPS cân bằng đợc sự tìm kiếm sâu và tìm kiếm rộng một cách hiệu quả. Do đó, khi áp dụng lớp thuật toán iAPS, khả năng tìm đợc lời giải tối u toàn cục là cao hơn APS và eAPS. Trong khi đó, do chỉ chú trọng đến khả năng tìm kiếm sâu, nên các thuật toán APS và eAPS rất dễ bị mắc cạn tại lời giải tối u địa phơng. Chúng tôi đề xuất tiếp tục hoàn thành những định lý về cơ sở lý thuyết toán học nhằm chỉ ra những điều kiện làm cho thuật toán APS và eAPS không hội tụ tới lời giải tối u toàn cục. Đồng thời, tiếp tục hoàn thành chứng minh tính hội tụ của lớp thuật toán iAPS cũng nh đánh giá về độ phức tạp của lớp thuật toán này nhằm cải tiến lớp thuật toán iAPS có tốc độ hội tụ tốt hơn. Hơn nữa, cũng cần có những nghiên cứu tính toán so sánh lớp thuật toán này với các thuật toán tối u khác trên các bài toán tối u mẫu. Hy vọng lớp thuật toán iAPS sớm đợc cài đặt, khai thác sử dụng để giải quyết các bài toán tối u trong những lĩnh vực khác nhau trong đó có các bài toán tin sinh học. TàI LIệU THAM KHảO Bilchev G., I. C. Parmee (1995). The ant colony metaphor for searching continous design spaces. Proc. of the AISB Workshop on Evo. Comp, p. 24 - 39. Dreo J., P. Siarry (2002). A new ant colony algorithm using the heterarchical concept aimed at optimization of multiminima continuous functions. Proc. of the Third Int. Workshop on Ant Algorithms, p. 216 - 221. Engelbrecht A.P. (2005). Fundamentals of Computational Swarm Intelligence. John Wiley & Sons, Chichester, p. 361-510. Pourtakdoust S.H., H. Nobahari (2004). An extension of ant colony system to continuous optimization problems. Proc. of Fourth Int. Workshop on Ant Colony Optimization and Swarm Intelligence, p. 294-301. Socha K. (2004). ACO for continuous and mixed-variable optimization. Proc. of Fourth Int. Workshop on Ant Colony Optimization and Swarm Intellgence, p. 25-36. Suli E., D. F. Mayers (2003). An Introduction to Numerical Analysis. Cambridge University press, Cambridge, p. 39-91. Tsutsui S. (2006). An Enhanced Aggregation Pheromone System for Real-Prameter Optimization in the ACO Metaphor. Proc. of the Fifth Int. Workshop on Ant Colony Optimization and Swarm Intelligence, p. 60-71. Wodrich M., G.Bilchev (1997). Cooperative distribution search: the ants way. Control Cybernetics 3, p. 413-446. 72