Đã có một số thuật toán được áp dụng dé giải quyết bài toán này như: thuật toán may rủi heuristic, thuật toán quy hoạch động, thuật toán nhánh và cận, thuật toán di truyền, thuật toán tì
Trang 1VŨ ANH QUẦN
NGHIÊN CỨU GIẢI BÀI TOÁN TÌM CAU TRÚC CHUOI NGUON
CHUYEN NGANH ~— : KHOA HỌC MAY TÍNH
MA SO : 60.48.01.01
TOM TAT LUAN VAN THAC SI
HÀ NỘI - 2015
Trang 2Người hướng dẫn khoa học: PGS.TS Đỗ Trung Tuấn
Có thê tìm hiệu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 3MO DAU
Từ qua trình tái tổ hợp ta có một bài toán quan trọng va rất được nhiều nhà nghiên cứuquan tâm là tìm ra cấu trúc của các chuỗi nguồn từ tập các chuỗi tái tổ hợp Đã có một số thuật
toán được áp dụng dé giải quyết bài toán này như: thuật toán may rủi (heuristic), thuật toán quy
hoạch động, thuật toán nhánh và cận, thuật toán di truyền, thuật toán tìm kiếm Tabu.
Bài toán tìm cấu trúc nguồn của tập tái tổ hợp (FSR - Founder SequenceReconstruction) được xếp vào lớp các bài toán tối ưu tô hợp Dé giải quyết lớp bài toán tối ưu
to hợp có một thuật toán rất hiệu quả là thuật toán tối ưu đàn kiến (ACO — Ant Colony
Optimization).
Tuy nhiên hiện tại chưa có mô hình nào được đưa ra dé giai bai toan FSR bang thuattoán ACO Vi lý do này tôi xin chon đề tài “Nghiên cứu giải bài toán tim cau trúc chuỗi nguồncủa tập tái t6 hợp” dé nghiên cứu bai toán FSR và các thuật toán đã được áp dụng Và dùng
những kết quả nghiên cứu được đề đưa ra mô hình giải bài toán FSR bằng thuật toán ACO
Nội dung của luận văn được trình bày thông qua 3 chương:
Chương 1: Trinh bày về tái tổ hợp và bài toán tìm cấu trúc nguồn của tập tái t6 hợp Giới
thiệu một số thuật toán đã được áp dụng để giải quyết bài toán
Chương 2: Giới thiệu về thuật toán ACO và ứng dụng của nó trong việc giải lớp bài toán
tối ưu tổ hợp
Chương 3: Trong chương này luận văn xây dựng mô hình giải bài toán tìm cấu trúc
nguồn bằng thuật toán ACO Sau đấy, luận văn cũng đưa ra kết quả thực nghiệm so sánh hiệuquả thuật toán ACO với các thuật toán khác.
Trang 42CHƯƠNG 1
TAI TO HOP VÀ TÌM CẤU TRÚC CHUOI NGUON CUA TẬP TAI
TO HOP
1.1 Khai niệm về tái tổ hop
Tái tổ hợp là cơ chế chủ yếu dé tạo ra biến di di truyền Quá trình này có thé mô tả ngắngọn là quá trình các phân tử DNA của nhiễm sắc thé của người bố dính vào nhiễm sắc théngười me và sau day tách ra dé tạo thành DNA của nhiễm sắc thể người con DNA của ngườicon được cấu thành từ các phần tương ứng từ DNA người bố và DNA của người mẹ
Ss prefix
FEU y) 1111111001
S? 00011/0000001111
suffix
Quá trình tái tổ hợp giữa S1 và S2 sinh ra T
(Nguồn: Minimum Mosaic Inference of a Set of Recombinants)
Cho hai chuỗi có độ dài giống nhau, quá trình tái tổ hợp sẽ tạo ra chuỗi thứ ba có cùng
độ dài bằng cách nối phần đầu của một chuỗi với phần đuôi của chuỗi còn lại
1.2 Bài toán tim cấu trúc nguồn của tập tái tổ hợp
Trong các nghiên cứu về tái tổ hợp của một quan thé, thông thương các nhà nghiên cứuđều đặt ra giả thiết là quần thể tổ tiên đầu tiên là rất bé Dựa trên giả thiết đó, bài toán FSRđược phát biển lần đầu bởi Ukkonen và được chứng minh thuộc lớp NP-khó với #¿> 2 Bài toán
FSR được định nghĩa như sau:
Cho một tập hợp gồm n phan tử tdi t6 hợp C = {C,, , C„}; mỗi phan tử C; là một chuỗi
có độ dài là m trên tập mẫu tự Ð, C; = đ¡j Cạ„ VỚI cụ € & Một phương án dự bị của bài toán
là tap hợp gồm ky phan tử nguồn F = ƒF), , Fy Mỗi một phần tử nguồn F; là một xâu độ dài
m trên tập mẫu tự Ð: F; = ƒ?j› /„ với „€ 3> Một phương án dự bị #' được gọi là phương án
hợp lệ nếu như tập hợp tái tổ hợp C có thé xây dựng được từ F Trong trường hợp này mỗi
phần tử C;€ C đều có thé được chia thành chuỗi gồm p; mảnh đu đu, vé Fri sao cho mỗi Fjphải xuất hiện ở cùng vị tri trong ít nhất một chuỗi thuộc F
Trang 5Một cách chia được gọi là toi giản nêu như không có hai mảnh liền kề thuộc về cùng
một chuỗi nguồn Với mỗi phương án hợp lệ F, chúng ta có thé tìm được một phương án chiatối giản thỏa mãn “,ø, —n là tối thiểu, giá trị này còn được gọi là số lượng điểm bẻ
(breakpoints) của C theo F’ Gọi hàm mục tiêu của # có giá trị này là f(F) Bài toán đặt ra là tìmmột phương án hợp lệ #” với ky phần tử (ky cho trước) thỏa mãn điều kiện có số lượng điểm bẻ
là thôi thiêu.
Tap tai to hợp Tap nguồn Phan mảnh toi gian
01001000 01101110 (a) a albla ale cc
Tập tái tố hợp, tập nguồn và phân mảnh tối giản
(Nguôn: Recombination systems)
Vi dụ minh họa ở hình trên với = = {0, 1} Hình bên trái là 6 phan tử của tập tái tổ hop.Giả sử ky= 3, một phương án hợp lệ là tập nguồn gồm 3 phan tử như hình ở giữa Ký hiệu a là
phần tử nguồn đầu tiên, b là thứ 2 và c là phần tử thứ 3 Hình bên phải cho thấy cách phân
mảnh từng phan tử tái tô hợp từ tập nguồn Các điểm bẻ được ký hiệu bằng | Đây là phương ánphân mảnh với 8 điểm bẻ
1.3 Một số thuật toán đã được đề xuất dé giải bài toán tìm cấu trúc nguồn
Trong mục này luận văn giới thiệu một số thuật toán đã được các nhà khoa học đề xuất
để giải bài toán tìm cấu trúc nguồn của tập tái tô hợp
Thuật toán đầu tiên để giải bài toán được Ukkonen đề xuất dựa trên quy hoạch động.Tuy nhiên phương pháp này không hiệu quả khi số lượng chuỗi nguồn và độ dài của tái tổ hợplớn Rastats và Ukkonen cũng giới thiệu một thuật toán quy hoạch động khác, còn Song thì đềxuất thuật toán nhánh và cận Tuy rằng đầy hứa hẹn, nhưng các phương pháp này chỉ được thực
nghiệm va tỏ ra hiệu quả trong các bộ dữ liệu bé.
Wu và Gusfield đã đề xuất thuật toán xây dựng cây tăng trưởng và đặt tên là RecBlock
Thuật toán nay có hai phiên bản cai đặt: may rủi heuristic và duyệt toàn bộ Vì vậy với phiên
bản duyệt toàn bộ, RecBlock đưa ra kết quả tối ưu, còn phiên bản may rủi sẽ dành để chạy
được trên các bộ dữ liệu lớn hơn RecBlock sẽ được mô tả trong mục 1.3.1 dưới đây.
Trang 6Nhận ra một số hạn chế của RecBlock, Roli đã đề xuất thuật toán tìm kiếm Tabu Trongcông bố này Roli cũng đề xuất một thuật toán may rửi kiến tao (construction heuristic) tốt cóthời gian chạy nhanh hơn nhiều khi so sánh với RecBlock may rui Phương pháp này được
trình bày ở mục 1.3.2 của luận văn và được cài đặt trong chương trình giải bài toán tìm cấu trúcchuỗi nguồn của luận văn
Benedettini cải tiến thuật toán may rủi đã xây dựng bằng việc thêm vào một số yêu tố
ngẫu nhiên và tién đoán trước Thêm nữa việc sử dụng phương pháp siêu may rủi lặp tham lam
— metaheuristic IG(Iterated Greedy), đã cho ra đời thuật toán BackForth có kết quả thựcnghiệm tốt hơn hắn so với thuật toán tìm kiếm Tabu Phương pháp này cũng được luận văntrình bày tại mục 1.3.3 đồng thời sẽ tiến hành cài đặt và tiến hành thực nghiệm tại chương 3
Mục 1.3.4 sẽ trình bày về thuật toán PGMFL — một thuật toán siéu may rủi
(metaheuristic) thuộc nhóm các phương pháp GA Thuật toán nay do Jingli Wu và Hua Wangcông bó Bài báo có đưa ra kết quả thực nghiệm so sánh giữa thuật toán PMGML và thuật toán
BackForth Kết quả cho thấy với cùng thời gian chạy, trong phần lớn các bộ kiểm thử được sửdụng, thuật toán PMGML cho ra lời giải là tập chuỗi nguồn có số điểm bẻ nhỏ hon so với lời
giải của thuật toán BackForth Thuật toán RecBlock
1.3.1 Thuật toán RecBlock
RecBlock được Yufeng Wu và Dan Gusfield công bố lần đầu vào năm 2007 Trong baibáo này Wu đã đề xuất một thuật toán đơn giản và hiệu quả để giải bài toán FSR với trường
hop kr= 2.
Với trường hợp k 2, Wu đề xuất RecBlock và chỉ ra bang thuc nghiém thuat toan hiéuqua hơn so với các thuật toán từng được áp dung dé giải FSR trước đó Wu xây dựng thuật toán
RecBlock bằng việc xây dựng tăng trưởng ma trận tập chuỗi nguồn từ cột thứ nhất đến cột thứ
m Wu có nhận xét sau: một cột bat kì của F đều có ky phan tử nên số kha năng có thê thiết lập
tại một cột sẽ là 2Ÿ — 2.Trong thuật toán RecBlock việc xây dựng cột thứ 7 sẽ phụ thuộc vào
thiết lập đã có đến cột thứ j-1 Tai cột thứ 7 thuật toán RecBlock sẽ chọn khả năng tốt nhất cóthé xảy ra dé tăng trưởng RecBlock đưa ra hai phiên ban là phiên bản may rui kiến tao
(construction heuristic) và phiên bản duyệt toàn bộ.
Trang 71.1.1.1 Recblock may rủi kiến tạo (RecBlock construction heuristic)
1.112 RecBlock duyệt toàn bộ
1.1.1.3 Kết quả thử nghiệm thuật toán RecBlock may rủi
1.1.2 Thuật toán tìm kiếm Tabu
Tìm kiếm Tabu là một phương pháp để liên tục cải tiến một phương án giải ban đầu đã
có săn Mục đích của tìm kiếm Tabu khi áp dụng giải bài toán FSR là làm giảm đi số lượngđiểm bẻ của lời giải hợp lệ có sẵn Khi áp dụng phương pháp này, thông thường sẽ phải tạo lập
một lời giải ban đầu tốt dé từ đó có thé tìm kiếm các tối ưu cục bộ
Thực nghiệm trong bài báo cho thấy, khi áp dụng vào bài toán FSP, thuật toán tìm kiếmTabu chạy tốt hơn so với thuật toán RecBlock được trình bày ở mục trên Điều này có thể lýgiải như sau: đối với phiên bản duyệt toàn bộ, RecBlock tim được kết quả tối ưu cho các
trường hợp với k bé, cụ thé là & = 3, 4 và với độ dài của các chuỗi tái tổ hợp < 50, còn đối vớicác bộ dữ liệu lớn hơn, RecBlock không đưa ra được lời giải, còn với thuật toán RecBlock may
rủi kiến tạo (construction heuristic) do không cải thiện lời giải bằng việc lặp và chỉ đưa ra mộtlời giải cho mỗi dữ liệu kiểm tra nên kết quả đạt được sẽ không thể tốt băng thuật toán tìmkiếm Tabu
Cũng trong bài báo này, Roli đưa ra một phương pháp may rủi kiến tạo khác so với Wu.Roli nhận thấy răng số khả năng tại mỗi bước khi tạo lập lời giải bằng phương pháp RecBlock
kiến tạo heuristic là lũy thừa theo k, chính vì thế khi k lớn sẽ cho ra lời giải chậm Roli đã đưa
ra thuật toán heuristic kiến tạo khác dé xây dựng lời giải
Ngoài ra, trong thuật toán Tabu, dé xác định láng giềng của một lời giải F, Roli sẽ xemxét việc xóa bỏ một điểm bẻ trên một dòng nào của C biểu diễn trên lời giải F Dé làm điều này
ta sẽ phải thay đôi chuỗi nguồn đứng trước hoặc sau điểm bẻ của C Theo kết quả thực nghiệm
đã được công bố thì thuật toán tìm kiếm Tabu dùng phương pháp này đạt kết quả vượt trội khiđem so sánh với RecBlock.
1.1.3 Thuật toán BackForth
Trong bài báo công bồ về thuật toán mới giải bài toán FSR, Benedettini đã kết hợp với
cùng với hai tác giả của thuật toán tìm kiếm Tabu đã nêu ở mục trước để đưa ra thuật toánBackForth Nền tang mà BackForth sử dụng là một thuật toán may rui (heuristic) có nhiều nét
Trang 8tương đồng với thuật toán may rủi kiến tạo đã được trình bay trong mục 1.3.2, thuật toán nay
có thêm một số yếu tố ngẫu nhiên cũng như “tiên đoán trước”
Trong thực nghiệm được công bố, thuật toán BackForth chạy tốt hơn khi đem so sánh
với các thuật toán tìm kiếm Tabu và thuật toán RecBlock
1.1.4 Thuật toán di truyền PGMFL
Nền tảng của PGMFL cũng dựa trên một thuật toán may rửi kiến tao xây dựng lời giải
và thuật toán này có rất nhiều nét tương đồng với thủ tục xdy đựng lời giải ngẫu nhiên đã được
trình bày tại mục trước Các bước thực hiện cũng tương tự trong thủ tục xây đựng lời giải ngẫu
nhiên, việc xây dựng lời giải được thực hiện qua 4 bước và cũng có tăng thêm yếu tố ngẫu
nhiên cùng tính năng tiên đoán trước
PGA (Parthenogenetic Algorithm) là một biến thé của phương pháp GA Phương pháp
sử dụng phép chọn (selection operator) thay cho phép chéo (crossover operator) dé chọn cá thé
sinh ra các cá thể thế hệ sau Một số kỹ thuật chủ chốt sau đã được J Wu sử dụng dé thiết kế
thuật toán PGMEL Đó là:
1) Miễn xác định
2) Sinh ra quan thé thé hệ dau tiên (lời giải thé hệ dau tiên
3) Phép chon (selection operator)
4) Phép sinh (recombination operator)
5) Thiét kế ham lượng giá
1.4 Kếtluận
Chương 1 đã trình bày cơ sở ly thuyết về tái tô hợp và bài toán cấu trúc chuỗi nguồn
Tại mục 1.3, luận văn đã trình bày về bốn thuật toán đã được các nhà khoa học công bố
để giải bài toán FSR Điểm chung của các thuật toán là đều dùng thuật toán may rủi kiến tạolàm cơ sở Có hai thuật toán kiến tạo đáng chú ý là thuật toán ReckBlock may rui và thuật toánmay rui được BackForth sử dụng làm cơ sở dé xây dựng lời giải Hai thuật toán này có hai cách
xây dựng lời giải khác nhau và đều có thể tham khảo để xây dựng đồ thị cấu trúc khi áp dụng
mô hình giải trên thuật toán ACO.
Trang 97CHƯƠNG 2
THUẬT TOÁN ACO ĐỀ GIẢI LỚP BÀI TOÁN TÓI ƯU TỎ HỢP
2.1 Giới thiệu thuật toán tối ưu đàn kiến
Thuật toán tối ưu đàn kiến là một phương pháp siêu may rủi metaheuristic dựa trên ýtưởng mô phỏng cách tìm đường đi từ tổ tới nguồn thức ăn của các con kiến tự nhiên Thuật
toán này lần đầu tiên được ứng dụng giải bai toán phân loại các trạm làm việc vào năm 1991.Sau đó, rất nhiều các biến thể của thuật toán dựa trên các nguyên lý cơ bản của nó được giớithiệu Đặc điểm chủ yếu của thuật toán ACO là sự kết hợp của các thông tin về cau trúc của lờigiải triển vọng với thông tin về cấu trúc của các lời giải tốt trước đó
Thuật toán ACO tỏ ra hiệu qua khi đem so sánh với các phương pháp metaheuristic khác
trên lớp bài toán tối ưu tô hợp Có rất nhiều công bồ về tính hiệu quả của thuật toán ACO trên
các bài toán khác nhau Tuy nhiên, chưa có công bố nào về việc sử dụng ACO để giải bài toán
FSR Ở chương này luận văn xin giới thiệu về thuật toán ACO và ứng dụng cũng như đưa ra
mô hình giải bài toán FSR dé có thể tiến hành thực nghiệm tại chương 3
2.1.1 Xuất xứ về thuật toán đàn kiến
Khi tìm đường đi, đàn kiến (tự nhiên) trao đổi thông tin gián tiếp và hoạt động theophương pháp tự tổ chức Trên đường đi từ tổ kiến đến nguồn thức ăn và ngược lại, mỗi conkiến dé lại một chất hóa học gọi là vết mùi dùng dé đánh dấu đường di Bằng cách cảm nhậnvết mùi, kiến có thé lần đi đến nguồn thức ăn được các con kiến khác khám phá theo phươngthức chọn ngẫu nhiên có định hương theo nồng độ vết mùi Kiến chịu ảnh hưởng vết mùi củacác con kiến khác chính là ý tưởng thiết kế thuật toán tối ưu đàn kiến ACO
Có nhiều thực nghiệm nghiên cứu về hành vi dé lại vết mùi và đi theo vết mùi của loàikiến Tiêu biểu là thực nghiệm về chiếc cầu đôi, được thiết kế bởi Deneubourg và các cộng sự
Thực nghiệm cây cầu đôi cho thấy đàn kiến tự nhiên có thể sử dụng luật đi chuyền theoxác suất, dựa trên thông tin địa phương dé tìm được đường đi ngắn nhất giữa hai địa điểm Vếtmùi của đàn kiến cho phép liên tưởng tới cách học tăng cường (reinforcement learning) trong
bài toán chọn tác động tối ưu, gợi mở mô hình mô phỏng cho bài toán tìm đường đi ngắn nhất
giữa hai nút (tương ứng là tô và nguồn thức ăn) trên đồ thi, trong đó các tác tử (agent) là đàn
Trang 10kiến nhân tạo Tuy nhiên, trong các bài toán ứng dụng các đồ thị thường phức tạp hon Từ mỗi
đỉnh có thể có nhiều cạnh, nên nếu mô phỏng thực sự hành vi của đàn kiến tự nhiên nhiều con
kiến sẽ đi luận quân và do đó hiệu quả thuật toán sẽ rất kém Vì vậy, người ta dùng kỹ thuật da
tác tử (multiagent) mô phỏng đàn kiến nhân tạo, trong đó mỗi con kiến nhân tạo có khả năng
nhiều hơn so với kiến tự nhiên Kiến nhân tạo (về sau trong luận văn ta sẽ gọi đơn giản là kiến)
có bộ nhớ riêng, có khả năng ghi nhớ các đỉnh đã thăm trong hành trình và tính được độ dài
đường di nó chọn Ngoài ra, kiến có thé trao đổi thông tin với nhau, thực hiện tính toán cầnthiết, cập nhật mùi
Sử dụng mô hình kiến nhân tạo này, Dorigo (1991) đã xây dựng thuật toán hệ kiến (Ant
System - AS) giải bài toán người chào hàng Hiệu quả của thuật toán so với các phương pháp
mô phỏng tự nhiên khác như Simulated Annealing (SA) và thuật toán Genetic (GA) đã được
kiêm chứng bằng thực nghiệm.
2.1.2 Thuật toán toi wu đàn kiến
Với mỗi bài toán dé áp dụng thuật toán ACO, ta thiết lập đồ thị cầu trúc G = (V,E,H,t),trong đó V là tập đỉnh, E là tập cạnh, H là vectơ các trọng số heuristic của cạnh và + là vectơ
biểu thi các thông tin học tăng cường Tịj (vết mùi) Trường hợp tổng quát, G là đồ thị đầy đủ
Tuy nhiên, tùy theo ràng buộc của bài toán, các cạnh có thé lược bớt dé giảm miền tìm kiếm lờigiải theo thủ tục mở rộng tuần tự
2.1.2.1 Xday dung lời giải
Lời giải trên đồ thị cầu trúc G = (V, E,H,t) như sau: khởi tạo với m con kiến, Tại mỗi
lần lặp, kiến chọn ngẫu nhiên một đỉnh làm thành phần khởi tao x = {uo} và thực hiện xây dựnglời giải theo thủ tục bước ngẫu nhiên Dựa trên lời giải tìm được, đàn kiến sẽ thực hiện cập nhật
mùi theo cách học tăng cường.
Từ đỉnh uạkiến tiến hành mở rộng các đỉnh cho đến khi xây dựng được lời giải chấpnhận được Giả sử con kiến đang ở đỉnh i = uy(X„ = < uạ, ,u„ >) và có đường đi đến đỉnh
J = u„,¡ để mở rộng (hay có thé hiểu con kiến từ đỉnh i sẽ lựa chọn đỉnh j) được chọn với xácsuất như sau:
[rul“[hul
PQ)= S.eyeolzalrIRa]P với Ix)
0 với) EJ (x)
Trang 11Trong công thức trên:
- J(x;, là tập các đỉnh mở rộng được từ x,.
- Tj, h¿;: Giá trị thông tin mùi và thông tin heuristic.
- a@,B: Hai tham số quyết định sự ảnh hưởng tương quan giữa thông tin mùi và
thông tin heuristic.
- 1: Dinh lân cận của đỉnh i ma kiến có thé đi đến
* 7, là giá trị thông tin vết mùi
* - ø trong khoảng [0,1] là hệ số bay hơi
¢ A(ij) là lượng mùi được tăng hay giảm tùy theo từng thuật toán.
2.2 Thuật toán ACO va ứng dụng trong giải lớp bài toán tối ưu tổ hợp
2.2.1 Lớp bài toán toi wu tổ hợp
Trong đời sống và trong các hệ thông tin, ta thường phải giải nhiều bài toán tối ưu tổhợp (TUTH) quan trọng Chang hạn như: tìm đường đi ngắn nhất nối hai điểm trên một đồ thị
và di qua hết các đỉnh, lập kế hoạch phân phối nguồn hàng tới nơi tiêu thụ với chi phí cực tiểu,
lập thời khóa biểu cho giáo viên và học sinh thuận lợi nhất, định tuyến cho các gói đữ liệutrong Internet, lập lịch hợp lý cho các hệ thống sản xuất, đối sánh các chuỗi gen trong sinh học
phân tử v.v Mỗi bài toán TƯTH được xem là một bài toán cực trị hàm có biến, trong đó mỗi
biến nhận giá trị trong tập hữu hạnC ké cả giá trị rỗng Nói một cách khác, nó là bài toán tìmkiếm trong không gian vectơ độ dài không quá A trên đồ thị đầy đủ có các đỉnh có nhãn trong
Trang 12ưu nhờ tìm kiếm vét cạn hoặc bằng một thuật toán với thời gian đa thức, được xây dựng dựatrên các phân tích toán học Nhiều bài toán trong số đó là NP-khó, nên với các bài toán cỡ lớn,người ta phải tìm lời giải gần đúng Các thuật toán gần đúng trước đây dùng áp dụng trên các
bài toán TƯTH khó thường dựa trên 2 kỹ thuật cơ bản: thudt foán kiến tao(construction
algorithm), tim kiếm cục bộ (local search)
2.2.2.1 Thuật toán kiến tao
Khi không thể tìm được lời giải tối ưu của bài toán, trong thực hành người ta tìm lời giảigần đúng Một kỹ thuật hay được dùng là may rủi kiến tạo, trong đó lời giải của bài toán TƯTHđược xây dựng theo cách mở rộng tuần tự Từ thành phần khởi tạo, từng bước lời giải được mởrộng không quay lui, băng cách thêm vào các thành phần mới theo phương thức ngẫu nhiên hay
tất định dựa trên các quy tắc may rửi đã chọn Các quy tắc may rui này thường được xây dung
dựa trên các kết quả phân tích toán học hoặc kinh nghiệm
Dễ dàng hình dung phương pháp này khi áp dụng thuật toán cho bài toán TSP với đồ thịday đủ và sử dụng quy tắc may rửi láng giềng gần nhất để chọn đỉnh thêmvào (tức là chọn đỉnh gần nhất chưa đi qua dé thêm vào hành trình) Các thuật toán này có ưuđiểm là tốn ít thời gian chạy nhưng nhược điểm chính là không cải tiến lời giải được
2.2.2.2 Tìm kiếm cục bộ
Kỹ thuật tìm kiếm cục bộ hay còn gọi là tìm kiếm địa phương, thực hiện bằng cách bắtđầu từ một phương án chấp nhận được, lặp lại bước cải tiến lời giải nhờ các thay đôi cục bộ Déthực hiện kỹ thuật này, ta cần xác định được cấu trúc lân cận của mỗi phương án (lời giải) đangxét, tức là những phương án chấp nhận được, gần với nó nhất, nhờ thay đổi một số thành phan.Cách thường dùng là lân cận k-thay đổi, tức là lân cận bao gồm các phương án chấp nhận đượckhác với phương án đang xét nhờ thay đổi nhiều nhất & thành phần Nhược điểm của tìm kiếm
cục bộ là thường chỉ cho cực trị địa phương.
2.2.2.3 Siêu may rủi metaheuristic
Dựa trên hai kỹ thuật co ban trên thì sau này các phương pháp metaheuristic ra đời.
Metaheuristic là một phương pháp may rủi tong quát được thiết kế, định hướng cho các thuậttoán cụ thể (bao gồm cả may rủi kiến tạo và tìm kiếm cục bộ) Nhu vậy, một metaheuristic làmột lược đồ thuật toán tổng quát ứng dụng cho các bài toán tối ưu khác nhau, với một chút sửađổi cho phù hợp với từng bài toán Ngoài ACO thì trong các phương pháp metaheuristic ta có
Trang 13các thuật toán điển hình là: tìm kiếm Tabu, thuật toán di truyền (Genetic Algorithm - GA), thuật
toán mô phỏng luyện kim(Simulated Annealing- SA).
Trong ứng dụng thực tế, các thudt toán ACO thường được kết hợp với tìm kiếm cục bộ
theo mô hình memetic này Khi áp dụng các thudt toán ACO cho các bài toán TƯTH cụ thé, ba
yếu tô quan trọng sau anh hưởng quyết định đến hiệu quả thuật toán:
« - Xây dựng đồ thị cấu trúc thích hợp Việc xây dựng đồ thị cấu trúc dé tìm được lời giải cho
bài toán theo thủ tục tuần tự không khó Khó khăn chính là với các bài toán cỡ lớn, khônggian tìm kiếm quá rộng, đòi hỏi ta sử dụng các ràng buộc một cách hợp lý dé giảm miễn tìm
kiếm của kiến.
* Chon thông tin heuristic Thông tin heuristic tốt sẽ tăng hiệu quả thuật toán Tuy nhiên,
trong nhiều bài toán không có thông tin này thì có thé đánh giá chúng như nhau Khi đó,
ban đầu thuật toán chỉ đơn thuần chạy theo phương thức tìm kiếm ngẫu nhiên, vết mùi thê
hiện định hướng của học tăng cường và thuật toán vẫn thực hiện được.
¢ Chon quy tắc cập nhật mùi Quy tắc cập nhật mùi thể hiện chiến lược học của thuật toán
Trong khi đồ thị cấu trúc và thông tin heuristic phụ thuộc vào bài toán cụ thể, quy tắc cậpnhật mùi lại là yếu tố phố dụng và thường dùng dé đặt tên cho thuật toán
2.2.3 Vai trò của thuật toán đàn kiến
ACO được cộng đồng các nhà khoa học quan tâm rất nhiều Phương pháp metaheuristic(siêu may rủi) này được sử dụng rộng rãi để giải các bài toán TƯTH khó, hiệu quả nỗi trội của
nó đã được chứng tỏ bằng thực nghiệm Hiện tại có số lượng rất lớn các công bố về VIỆC apdụng thành công ACO trên các bài toán TƯTH khác nhau.Các công bố này được chia thành hai
lớp:
¢ Lớp các bài toán NP-khó Lớp bài toán này các thuật toán tối ưu đều có độ phức tạp tính
toán lũy thừa Thông thường khi giải quyết lớp bài toán này, thuật toán ACO sẽ sử dụng
* Các bài toán tìm đường đi ngắn nhất mà các thuộc tính trên đồ thị bài toán thay đổi liên tục
tùy thuộc vào thời điểm và vi vậy quá trình tối ưu hóa phải thích nghỉ với các thông tinđộng của bài toán Ví dụ minh họa lớp bài toán này là bài toán về mạng lưới (Internet,WAN, LAN ) khi mà đường truyền vật lý là tĩnh nhưng các thông số, và thuộc tính trên
đó như băng thông còn trống thay đổi theo thời gian