TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 5(40).2010
9
ỨNG DỤNG GIẢI THUẬT META-HEURISTIC
TRONG BÀI TOÁN TÌM ĐƯỜNG ĐI NGẮN NHẤT
APPLICATION OF META-HEURISTIC ALGORITHM
FOR A SEARCH OF SHORTEST PATH Đoàn Duy Bình
Trường Đại học Sư phạm, Đại học Đà Nẵng
TÓM TẮT
Bài toán tìm kiếm được xem là bài toán được nhiều người quan tâm, đặc biệt là tìm
kiếm tối ưu toàn cục. Một thuật toán được xem là lý thuyết vững chắc trong việc giải các bài
toán tìm kiếm tối ưu toàn cục đã có nhiều ứng dụng thực tế như: tìm kiếm các trang web cần
tìm trên mạng, kế hoạch sắp xếp thời khóa biểu cho các y tá trong bệnh viện, tìm kiếm đường
đi tối ưu cho những ng
ười lái xe hơi… đấy là thuật toán kiến (ACS – Ant Colony Search hoặc
ACO - Ant Colony Optimization). Trong bài báo này chúng tôi giải thuật Meta-Heuristic và đặc
biệt là thuật toán kiến để thực hiện bài toán tìm kiếm. Thuật toán kiến mô phỏng hành vi của
đàn kiến trong tự nhiên nhằm tìm kiếm đường đi ngắn nhất giữa tổ kiến và nguồn thức ăn dựa
trên mật độ mùi - Pheromone mà các con kiến để lại trên đường đi.
ABSTRACT
Search problem is a problem that concerns many people, especially in the field of
global optimal search. An algorithm is considered to be a well-established theory in solving
problems of globally optimal search and it has many practical applications such as searching for
pages needed to be found on the web, planning a schedule for the nurses in hospitals, finding
an optimal way for people to drive,etc That is an ant algorithm (ACS - Ant Colony Search or
ACO - Ant Colony Optimization). In this paper, we introduce the Meta-Heuristic algorithm,
sl
llr /
=
gia dài hai nhánh ca
cây cu,
l
l là dài ca nhánh dài và
s
l là dài ca nhánh ngn hn. Trong th
nghim u tiên vi cây cu có hai nhánh chiu dài bng nhau (r = 1; xem hình 1.1a). . Hình 1. Thí nghiệm chiếc cầu đôi. (a) Hai nhánh có kích thước bằng nhau,
(b) Một nhánh có kích thước gấp đôi nhánh kia
Khi bt u, trên 2 nhánh ca cây cu u cha có pheromones. Do ó, các con
kin có th chn mt trong các nhánh vi cùng mt xác sut. Tuy nhiên, do s la chn
là ngu nhiên lên sau mt thi gian s lng kin i trên nhng chi nhánh s là khác
nhau. Bi vì loài kin s gi pheromones trong khi di chuyn, dn dn s lng
pheromones trên nhng nhánh cng s khác nhau, iu này càng kích thích thêm àn
kin s la chn nhánh có lng mùi pheromones ln, và nh vy n mt thi gian nào
ó tt c àn kin s hi t v cùng mt nhánh.
s
giây, vi r=l
l
/l
s
.
Xác sut p
ia
(t) là xác xut ti im i (i {1,2}) (xem hình 1.1b) kin chn nhánh
a (a {s,l}), trong ó s, l là các chi nhánh ngn và dài tng ng, ti thi im t tng s
lng pheromones
ia
(t) c thit lp trên các chi nhánh, là tng lng pheromones
mà các loài kin li trên các chi nhánh cho n thi gian t ó.
Trong mô hình này àn kin gi li vt mùi pheromones ca h trên c hai
ng i: t t n ngun thc n và quay tr li t. S di chuyn này là mt hành vi
ng x cn thit có c s hi t ca àn kin hng v nhánh ngn.
2. Đàn kiến nhân tạo
Qua th nghim chic cu ôi cho thy rõ ràng có kh nng xây dng c ti
u hóa àn kin: Thông tin tìm ra con ng ngn nht gia 2 im có th da vào
quy tc xác xut.
Có 2 khía cnh bt ng quan trng:
- Phm vi xem xét các hành vi ca h thng là trung bình, và không phi nhng
hành vi ng x tuân theo bin thiên ngu nhiên ca àn kin là duy nht.
- ây là thí nghim trên nhng thi gian không liên tc, trong khi trc ó mô
hình xét trong mt thi gian liên tc.
3. Kiến nhân tạo và chi phí tối thiểu trên đường đi
Nhng hành vi là:
1. Gii pháp xây dng theo hng xác xut bi vt mùi pheromones, vi s cp
nht pheromones nhanh
tính xác sut chn nh j nh sau:
Trong ó
k
I
N là vùng lân cn ca kin k nh i trong S-ACO vùng lân cn ca
nh i là tt c các nh kt ni trc tip n nh i trong th G =(N,A), ngoi tr tt
c các nh trc (ví d, các nh trc khi di chuyn n nh i ca kin).
Đường đi về tổ và sự cập nhập vết mùi. Khi t ti nh ích, kin thc hin quá
trình quay v t trên cùng con ng n ngun thc phm. B sung tính nng này là,
trc khi bt u quá trình quay v t, kin s loi b nhng ng i ri vào tình trng
vòng lp mà nó ã gp phi trên ng i tìm n ngun thc n.
Trong thi gian quay tr v t con kin th k s li mt lng ∆τ
k
pheromones
trên các cnh mà nó i qua. Trong ó, nu kin th k quay tr v t trên cnh (i,j), thì
giá tr
ij
τ
pheromones s thay i nh sau:
k
ijij
τττ
∆+← (1.9)
Mt khía cnh quan trng vn là s la chn ca ∆τ
k
. Trong nhng trng hp
n gin nht, giá tr ca ∆τ
k
τ
τ
α
il
N
k
i
l
ij
k
ij
p
(1.8)
TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 5(40).2010
13
Trong ó tham s (0,1]. Sau khi s bay hi pheromones ã c áp dng cho
tt c các cnh, s lng pheromones ∆τ
k
s c thêm vào các cnh.
2. Các ACO METAHEURISTIC
2.1. Trình bày vấn đề
Chúng tôi xem xét các vn cc tiu hoá (
Ω
,, fS ). Trong ó S là ni tp hp
các gii pháp c xét, f là mc tiêu ca chc nng quan trng, trong ó quy nh giá tr
ca chc nng ó là mt hng s ),( tsf ca mi gii pháp
Ss
∈
và )(tΩ là mt tp
ScheduleActivities
ConstructAntsSolutions
UpdatePheromones
DaemonActions % optionnal
End-ScheduleActivities
End-procedure.
TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 5(40).2010
14
S thut toán ACO cho bài toán TSP
ghé thm
Ghi li dài ca cuc hành
trình và xoá danh sách
visited
Xác nh hành trình ngn
nht t trc n nay và
cp nht pheromone
S vòng lp ti
a ã c thc
hin
Kết thúc
TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 5(40).2010
15
Mi cung (i,j) thuc A c gán mt giá tr d
ij
mô t chiu dài ca ng i gia
hai nh i, j vi i, j thuc N. Mc ích cui cùng ca bài toán ngi di lch chính là tìm
ra chu trình Hamilton ngn nht ca th G có n nh vi n là s thành ph mà ngi
di lch phi i qua. Nh vy, kt qu tt nht ca bài toán chính là mt hoán v ca các
nh {1, 2,…, n}, sao cho chiu dài f() là nh nht. f() c tính theo công thc sau:
5.1. Giải thuật ACO cho bài toán người di lịch
Vic xây dng mt th G=(C, L) tng ng vi vic xây dng th G(N,A)
trên vi C=N và L=A. Trong ó tp hp các ng i ca th tng ng vi tp
hp các hành trình tng phn có th có và giá tr nhm ràng buc rng con kin ch
tìm nhng ng i tng ng vi các hoán v ca các thành ph. ây bài toán tìm
ng
i
∈
TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 5(40).2010
16
vi
ij
=1/ d
ij
là giá tr Heuristic có th có, α và β là hai tham s quyt nh s nh hng
ln nhau ca các pheromones trên các hành trình c xây dng và các thông tin
Heuristic. N
i
k
là nhng thành ph mà con kin k có th i n, t v trí hin ti là thành
ph i ( ây là các thành ph mà con kin này cha ving thm bao gi). Vi tp lut
nh trên, kh nng la chn mt cung (i,j) t l thun vi giá tr ca các pheromones có
liên quan
ij
và ca giá tr heuristic
ij
.
Sau khi tt cá các hành trình c xây dng, các pheromone bt u c cp
nht. Vic cp nht c thc hin bng cách gim mt pheromone trên tt c các
cung ca th, sau ó thêm pheromone trên các hành trình mà con kin ã i qua. Vic
xóa các du c thc hin nh sau:
τ
ij
← (1-ρ)τ
ij
c xây dng bi con kin th k, c tính bng
tng chiu dài ca các cung thuc T
k
.
TÀI LIỆU THAM KHẢO
[1]. M. Dorigo and Thomas Stützle. Ant Colony Optimization, papes 17-20. McGraw
Hill, London, UK, 2004
[2]. M. Dorigo and Thomas St
ützle. Ant Colony Optimization, papes 70-90. McGraw
Hill, London, UK, 2004
[3]. M. Dorigo and T. Stütxle. The ant colony optimization metaheuristic:
Algorithms,
applications and advances
. Technical Report IRIDIA/2000-32, IRRIDIA,
Université Libre de Bruxelles, Belgium, 2000.