1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thuật toán phỏng bầy kiến giải bài toán K-Median

87 482 1
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thuật toán phỏng bầy kiến giải bài toán K-Median

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

'TRƯỜNG ĐẠI-HỌC BÁCH KHOA HÀ NỘI

LUẬN VĂN THẠC SĨ KHOA HỌC

THUAT TOAN PHONG BAY KIẾN GIAI BAI TOAN K-MEDIAN

NGANH : CONG NGHE THONG TIN MA S6:23.04.3898

‘TRAN TRUNG HIẾU

Người hướng dẫn khoa học: PGS TS NGUYEN DUC NGHIA

Trang 2

Với tất cả lòng kính trọng và biết ơn sâu sắc, em xin gửi lời cảm ơn chân thành tới thầy giáo PGS TS Nguyễn Đức Nghĩa, người đã tận tinh day dỗ và hướng dẫn em trong quá trình hoàn thành luận văn Em cũng xin gt cảm ơn chân thành tới các Thầy Cô Khoa Công nghệ Thông tin, Trường Đại hoc Bách Khoa Hà nội, những người đã tận tình giảng dạy, truyền cho chúng

em những kiến thức căn bản trong suốt quá trình học tập tại trường để tạo cơ

sở hoàn thành bài luận văn này

Trang 3

MỤC LỤC

CAC THUAT NGU VIET TAT

LOI NOI DAU

Trang 6 Tự Ỷ

1.3 Các không gian tìm kiếm, đặc tả và các hàm phù hợp 12

1.4 Phân loại các thuật toán phỏng sinh học 13

1.4.4 Các ứng dụng trong điều khiển 17

1.5 Nguyên lý cơ bản của các thuật toán phỏng sinh học 19

Trang 4

2.4.5 Bài toán định tuyến mạng 36

Chương 4 Giải thuật phỏng bầy kiến giải bài toán k-median _ — 53

4.3.6 Điều kiện dừng của thuật toán 59

Trang 5

Chương 5 Kết quả thực nghiệm 5.1 Mô tả thực nghiệm

5.1.1 Đặc điểm các bộ dữ liệu

5.1.2 Thiết kế chương trình

5.2 Kết quả thực nghiệm

5.2.1 Xác định các tham số 5.2.2 Các kết quả tính toán

5.3 Đánh giá kết quả thực nghiệm

5.3.1 Đánh giá về chất lượng thuật toán

5.3.2 Đánh giá về thời gian thực hiện

5.3.3 Đánh giá về độ ôn định

Kết luận và hướng phát triển Tài liệu tham khảo

61 61 61 62 | 64 64 68 75 75 76 77 78 79

Phụ lục: Cấu trúc dữ liệu và các modul chương trình 81

Trang 6

EC EA ACO AS GA TSP QAP

JSP GBAS SMTWTP GAP SCP

Single Machine Total Weighted Tardiness Scheduling Problem Generalized Assignment Problem Set Covering Problem

“Thuật toán di truyền

Bài toán người bán hàng, đi động

Bài toán phương trình bậc

hai

Bài toán lập lịch bán hàng

Hệ thống Ant dựa trên đồ thị

Bài toán lập lịch sản xuất

trên một máy đơn

Bài toán lập lịch tổng quát

Bài toán phủ đỉnh

Trang 7

LỜI NÓI ĐÀU

Các hệ thống công nghệ thông tỉn ngày nay càng phát triển, lối tư duy, cơ chế tính toán, suy diễn ngày càng tiến gần hơn với kiểu tư duy logie của con người Cùng với nó, các hệ thống tính toán mô phỏng, theo các eg chế hoạt động sinh học của các thực thể trong cuộc sống cũng, ngày cảng được nghiên cứu sâu hơn, chỉ tiết hơn, Các bài toán trong thực tế cũng được các

nhà nghiên cứu nắm bắt và giải quyết dễ dàng hơn thông qua các mối liên hệ tồn tại và không ngừng phát triển của các thực thể sinh học Các hệ thống tinh toán như vậy được nghiên cứu dưới tên gọi các hệ thống tính toán phỏng sinh

Các vấn đề phục vụ và năng lực phục vụ của các trạm dịch vụ đối với

các yêu cầu của khách hàng ngày nay trở thành một mảng đề tài khá nóng Do phải tiếp nhận số lượng lớn các yêu cầu từ các khách hàng và vẫn tiếp tục

tăng lên mà các trạm dịch vụ nhiều khi quá tải do năng lực phục vụ không đáp

ứng Đặc biệt, trong một số loại hình dịch vụ mang tính khẩn cấp, các yêu cầu

cần phục vụ với thời gian nhanh nhắt, thì vấn đề cài đặt các trạm dịch vụ một

cách hợp lý sao cho khả năng đáp ứng là tốt nhất có thể được lại trở nên hết sức quan trọng, Bài toán k-median, mt bai toán điển hình đáp ứng các kiểu mô hình trên đã được triển khai với nhiều nghiên cứu chuyên sâu

Với mục tiêu đi sâu nghiên cứu về hệ thống giải thuật phỏng bay kiến, cũng như ứng dụng nó để giải một lớp bài toán tối ưu tổ hợp đó là bài toán &-

Trang 8

median, luận văn này sẽ cố gắng tìm hiểu mô hình cơ bản nhất của hệ thống,

giải thuật phỏng bẩy kiến, bài toán k-median và ứng dụng giải thuật phỏng,

bẩy kiến để giải bai toán này Luận văn gồm 5 chương:

« Chương 1 Giới thiệu tổng quan về các hệ thống phỏng sinh học,

các phương pháp tính toán phỏng sinh học, cũng như nguyên lý

cơ bản của một hệ thống thuật toán phỏng sinh học

nghiên cứu nhiều, Tuy nhiên việc áp dụng thuật toán phỏng by kiến vào giải

bài toán k-median còn chưa được nghiên cứu sâu sắc Chính vì vậy, trong quá

trình nghiên cứu, từm hiều, chắc chắn các vấn để tôi đề cập còn có nhiều thiếu

sót, khiếm khuyết Do vậy rất mong nhận được sự đóng góp, chỉ đạy của các

thấy cô, các bạn học có quan tâm tới vấn đề này.

Trang 9

CHUONG I

TONG QUAN VE CAC HE THONG TINH TOÁN

PHONG SINH HOC

1.1 Giới thiệu

Các kỹ thuật tính toán phỏng sinh học (EC) [10] được nghiên cứu cho thấy chúng hoàn toàn phù hợp với các phương pháp tính, giải các bài toán tổ hợp Nguyên lý chung của các kỹ thuật này đều dựa trên các hiện tượng sinh học tự nhiên Các tính toán này bao gồm lớp các thuật toán phỏng sinh học

(EA), trong đó chứa các giải thuật tìm kiếm dựa trên các tri thức kinh nghiệm Các trí thức này có thể được sử dụng để tìm kiếm các lời giải tốt cho các bài

để suy diễn ra các lời giải tốt hơn từ các lời giải trước đó và đặc biệt phù hợp

với các dạng bài toán không, tồn tại các giải thuật hiệu quả (là giải thuật có thời gian tính toán đa thức) Các giải thuật này thường là đơn giản, mang tính

tổng quát và có thể được ứng dụng trong lớp các bài toán tìm kiếm và tối ưu Tắt nhiên, để có một sự đánh giá đúng về việc tại sao và làm thế nào các thuật toán có thể làm việc, cần có các hiểu biết cơ bản về di truyền và sự tiến hoá,

1.2 Di truyền và sự tiến hoá

Trong sinh học, sự khác biệt được tạo ra giữa kiểu gen và kiểu hình của sinh vật Kiểu gen là tổ hợp các gen mã hóa sinh vật, đặc biệt là các phân tử DNA có trong, mỗi tế bào của cơ thể sinh vật (cho dù đó là vi khuẩn, nấm,

Trang 10

thực vật hay động vật) Các phân tử DNA này có chứa các gen, đó là các đoạn

nhỏ của phân tử DNA mã hóa cho các đặc điểm riêng của sinh vật (còn gọi là

tính trạng), ví dụ như da hoặc màu lông, số lượng chỉ, kích thước sọ, Một

cách chính xác hơn, các gen (hoặc các đoạn DNA) này được dịch mã thành

các protein tạo nên các phần của cơ thể, và tạo nên các chức năng cân thi cho sự tồn tại (chuyển hóa, vận động cơ, bảo vệ chống lại bệnh tật, .) Sự

hình thành sinh vật cùng với các chức năng hoặc hành vỉ của nó tạo nên kiển

hình, hay sinh vật thực thể khi sống trong thế giới thực Nói tóm lại, cỏ quá trình 1 chiều mà thông tin về gen (kiểu gen) xác định (cùng với tác động của

môi trường) hình dạng và chức năng (kiểu hình) của sinh vật

Khi hai sinh vật cùng loài sống cùng nhau và sinh con, các thay đổi ở

mức gen như sau: sao lại các phân tử DNA của cả bố lẫn mẹ và kết hợp với

nhau, và kiểu gen của con nhận được một phần gen từ bố, một phần gen từ

mẹ Nói cách khác, kiểu gen của từng cá thể con là tổ hợp (một cách ngẫu nhiên) kiểu gen của bố mẹ, mỗi cá thể con có tổ hợp gen khác nhau Quá trình

này được gọi là lại Hơn nữa, trong quá trình sao chép thong tin gen từ bố mẹ

so với bố mẹ của chúng Một số tính trạng của thể hệ tiếp theo có từ bố, và

một số từ mẹ Hơn nữa, các đột biển ngẫu nhiên này có thể biểu hiện hoàn

toàn ở một số tính trạng nhất định Tóm lại, mỗi thay đổi đều có nguồn gốc,

xuất phát từ mức độ kiểu gen (qua lai và đột biến) và biểu hiện ở mức độ kiểu

Trang 11

11

trước khi trưởng thành; chúng có thể bị chết bởi thú ăn thịt, chúng phải tranh

thức ăn với các chuột khác, hoặc chúng có thể phải chống chọi với các mối đe

dọa từ tự nhiên hoặc bắt ngờ khác trước khi chúng có thể sinh sản Hậu quả là

chỉ có một phần nhỏ mỗi thế hệ chuột sẽ sinh sản, và truyền các thông tỉa di

truyền cho thế hệ sau Đặc biệt, những con chuộc có kiểu hình tốt, như #ó thể

chạy nhanh hoặc có màu lông cho phép chúng lẫn trốn được trong các bụi để tránh được thú ăn thịt, mới sống sót và sinh sản tuy nhiên, các con chuột có kiểu hình không tốt sẽ chết, và do đó không thể sinh sản được Quá trình này, được tổng kết bằng thành ngữ “tồn tại dành cho kẻ mạnh nhất” được gọi là

chọn lọc tự nhiên: các đặc tính (hoặc các biến đổi) có lợi nhìn chung sẽ được

bảo tồn và phát triển trong quần thể, và các đặc tính (hoặc các biến đổi) bất

lợi sẽ nhìn chung biến mắt, vì không truyền đến được thế hệ sau Hậu quả là

qua thời gian, quần thể nói chung sẽ thay đổi dần dân, hoặc tiến hóa dựa trên

các biến đổi về gen, và thích nghỉ tốt hơn với các thay đổi của môi trường qua chọn lọc tự nhiên

Điều đó chính là hình thức diễn ra của tiến hóa và chọn lọc tự nhiên

trong thế giới Tất nhiên đó là một hình ảnh được đơn giản hóa, nhưng điều quan trọng chính là các nguyên lý chủ yếu này Một cách nhìn đặc biệt về tiến

hóa đã trở nên phổ biến là tiến hóa chính là cách phân tích bài toán Bài toán ở đây chính là sự tồn tại và sinh sản, và sự tiến hóa qua chọn lọc tự nhiên chính là một kỹ thuật phân tích bài toán Nói cách khác, tiến hoá sẽ tìm kiếm

trong không gian các phần tử DNA (kiểu gen) để mã hoá các thành các kiểu hình có thể đảm bảo tổn tại và phát triển Những kiểu gen mã hóa các kiểu

hình thành công, sẽ, một cách tương đối, được sử dụng để tạo ra các kiểu gen (qua biến đổi gen) dé duy trì giống nòi Theo cách này, qua nhiều thế hệ kế

Trang 12

tiếp, các cá thé trong quan thể sẽ trở-nên ngày càng thành công trong, việc “phân tích bài toán”

14.3 Các không gian tìm kiếm, đặc tả và các hàm phù hợp Để có thể sử dụng các nguyên lý tiến hoá sinh học trong việc xây dựng các thuật toán tìm kiếm, đầu tiên ta cần tìm hiểu các khái niệm không gian tìm kiếm, các đặc tả di truyền và các hàm phù hợp

1.3.1 Không gian tìm kiếm

Không gian tìm kiếm của một bài toán đơn giản chính là không gian

của tất các các lời giải có thể có để giải bài toán Chẳng hạn với bài toán tính tổng: Dua ra một tập gồm ø số x„ thì có tồn tại hay không một tập con Ø các

số này mà tổng của chúng không vượt quá một số m cho trước? Khi đó tập các lời giải cho bài toán này (không gian tìm kiếm) là tập tất cả các tập con có thể của ø số, là 2" Một ví dụ khác là bài toán người bán hàng di động (TSP)

Đối tượng cần tìm một hành trình ngắn nhất đi qua » thành phố sao cho mỗi

thành phố chỉ được thăm đúng một lần Ở đây không gian tìm kiếm chính là tập tất cả các hành trình có thể qua ø thành phố này, chính là ø!1

1.3.2 Các đặc tả di truyền

Đôi khi các đặc tả này là các cách mô tả các lời giải cho một vài bài

toán theo nguyên tắc đơn giản, thuận tiện để tính toán, chẳng hạn thông qua

các xâu ký tự Ví dụ trong bài toán tính tổng con trên, mỗi lời giải có thể được mô tả bởi một chuỗi bit có độ dài „ Đưa ra một chuỗi bít, lời giải tương ứng

được định nghĩa bằng cách thêm vào một giá trị x; trong tập con lời giải nếu

bit giá trị thứ ¿ trong chuỗi bit bằng 1 Tương tự trong bài toán TSP, mỗi bộ

lời giải có thể được mô tả bởi một hoán vị của ø số tự nhiên từ 1 đến ø Mỗi

Trang 13

Các cách mô tả các lời giải này làm cho bài toán tương tự như mô tả

kiểu gen/kiểu hình trong các hiện tượng sinh học tự nhiên Các mô tả (các chuỗi bit, các hoán vị) là các kiểu gen và các lời giải tương ứng là các kiểu

hình Khi đó không gian tìm kiếm có thể được mô tả như là không gian của

các chuỗi bịt hay là không gian của các hoán vị 1.3.3 Các hàm phù hợp

Để áp dụng một thuật toán phỏng sinh học vào một bài toán, ta cần có

một vài cách đánh giá các lời giải Điều này có thể được thực hiện thông qua các hàm phù hợp Một hàm phù hợp là một hàm mà đầu vào là các mô tả (hay

các kiểu gen), dịch các mô tả này ra các lời giải tương ứng (hay các kiêu hình), kiểm tra các lời giải này trên bài toán đặt ra, sau đó trả về một giá trị

đánh giá mức độ tốt của lời giải

Chẳng hạn trong bài toán TSP, đầu vào là một hoán vị, được tính thành

hành trình tương ứng qua các thành phó, và độ dài của hành trình này sẽ được

tính ra

Xem xét với một bài toán tìm cực đại, sự phù hợp aên là cực đại, hàm

phù hợp khi đó được cấu trúc sao cho giá trị phù hợp càng cao thì lời giải sẽ càng tốt

1.4 Phân loại các thuật toán phỏng sinh học

Các ứng dụng của các hệ thống tính toán phỏng sinh học hết sức rộng, rãi [12] Việc phân loại nhiều khi chỉ mang tính chất tương, đối Tuy nhiên, về cơ bản có thể phân loại các thuật toán phỏng, sinh học dựa theo các ứng dụng,

Trang 14

trong thực tế của các thuật toán đó Để thuận tiện, có thể phân chia thành các

dạng ứng dụng tiêu biểu như sau:

® Các ứng dụng quy hoạch © Cac tg dung thiét ké

s - Các ứng dụng mô phỏng và nhận dạng

©_ Các ứng dụng điều khiển

Việc phân loại này chỉ mang tính chất tương đối Có thể có một vài bài

toán cụ thể nào đó đúng trong đồng thời nhiều dạng ứng dụng 1.4.1 Các ứng dụng trong quy hoạch

1.4.1.1 Bài toán định tuyến

Một trong các bài toán nổi tiếng trong hệ thống các bài toán tối ưu tổ hợp dạng này chính là bài toán người bán hàng di động (TSP) Một người

bán hàng cần phải đi qua một số thành phố, và sau đó trở về nhà Điều kiện

đặt ra là anh ta phải đi qua tất cả các thành phố với khả năng tối thiểu hoá

quãng đường đi

Một bài toán khác dạng này là bài toán vận chuyển (Transportation

Problem) Trong, bài toán này, hàng hoá cần được lấy từ một số kho hàng và

phân phối cho một số khách hàng Vậy đâu sẽ là giải pháp đảm bảo tối ưu chỉ

Trang 15

15

trường, không, đồng nhất, khi một yêu cầu xử lý trực tuyến được đặt ra, các

rôbốt phải đưa ra tức thì các di chuyển phủ hợp

1.4.1.2 Bài toán lập lịch

Các vấn đề lập lịch chủ yếu tập trung phân tích các kế hoạch đặgra để

thực hiện một số yêu cầu trong một khoảng thời gian nào đó, trong đó các yêu

cầu là có giới hạn, các ràng buộc thay đổi và sẽ có một số đối tượng được tôi

ưu

Bài toán lập lịch công việc bán hàng là một dạng bài toán NP đầy đủ Khung cảnh đặt ra là một nhà máy sản xuất, với các kiểu máy công cụ khác nhau Có một số công việc cần được hoàn thành, mỗi công việc bao gồm một

tập các nhiệm vụ Mỗi nhiệm vụ yêu cầu một máy riêng thực hiện trong một

khoảng thời gian xác định, và các nhiệm vụ cho mỗi công việc cần được hoàn thành theo yêu cầu Làm sao để lịch đưa ra có thể thực hiện tắt cả các nhiệm

vụ với chỉ phí tối ưu?

Một dạng bài toán lập lịch khác là đặt ra một thời gian có thể cho một

tập các bài kiểm tra, các bài giảng, hoặc một thể loại tương tự

Trong tính toán, các bài toán lập lịch còn bao gồm cả bài toán phân phối các công việc một cách có hiệu quả cho từng bộ*xử lý trong một hệ thống rất nhiều bộ xử lý

1.4.1.3 Bài toán đóng gói

Các thuật toán phỏng sinh học được ứng dụng trong rất nhiều các bài

toán đóng gói, mà đơn giản nhất là bài toán balô rỗng một chiều (Zero-One

Knapsack Problem) Dua ra một ba lô rỗng, và một tập các đồ vật, mỗi đồ vật

Trang 16

có kích thước và giá trị xác định Tìm-tập các đồ vật với giá trị lớn nhất có thé

chứa được trong balô đó Có nhiều bài toán thực tế có cùng kiểu này, chẳng

hạn bài toán cấp phát các kênh truyền thông cho khách hàng với chỉ phí cho

các kênh là khác nhau

Có rất nhiều dạng bài toán đóng gói hai chiều Khi việc sản xuất các đồ vật được thực hiện từ nhiều vật liệu khác nhau, mong, muốn đặt ra là tìm một dải phù hợp nhất các loại vật liệu, sao cho tối thiểu số lượng các vật liệu thừa Một bài toán tương tự trong lĩnh vực thiết kế mạch điện tử tích hợp, đó là làm

thế nào các mạch điện được sắp xếp để tối thiểu hoá tổng số lượng linh kiện và đường mạch dẫn được sử dụng

1.4.2 Các ứng dụng trong thiết kế

Việc thiết kế các hệ thống lọc trong điện tử nhận được nhiều sự quan

tâm Các thuật toán phỏng sinh học thường được sử dụng để thiết kế các hệ

thống điện tử hoặc hệ thống số, được thực hiện tại tần số trả lời mong muốn

Các thuật toán phỏng sinh học cũng đồng thời được sử dụng trong vấn

đề tối ưu các thiết kế của các hệ thống xử lý tín hiệu và trong thiết kế mạch

tích hợp

Các kỹ thuật tính toán phỏng sinh học được sử dụng rộng rãi trong các

mạng Nơron nhân tạo, cả trong thiết kế giao thức mạng cũng như trong tìm

kiếm các tập trọng số tối ưu

Có rất nhiều các ứng dụng kỹ thuật trong tính toán phỏng sinh học:

thiết kế cấu trúc, thay thế các suy hao trong các không gian cấu trúc, thiết kế

máy gia tốc tuyến tính, thiết kế hộp số, thiết kế lò phản ứng hoá học .

Trang 17

Các tính toán phỏng sinh học được ứng dụng trong các bài toán khác nhau trong hoá học cũng như sinh học Roosen và Meyer (1992) [12] sử dụng, chiến lược phỏng sinh học để xác định trạng thái cân bằng trong các hệ thống hoá học, bằng cách xác định chất entanpi dư thừa tối thiểu trong phân tích Việc xác định cấu trúc 3 chiều của các protein, đưa ra các chuỗi các amino axít cũng được thực hiện theo các tính toán phỏng sinh học

Trong lĩnh vực kinh tế, các tính toán phỏng sinh học cũng được sử dụng để mô hình hoá các thành phần kinh tế trong thị trường

Quá trình nhận dạng ngược với quá trình mô phỏng Nó phân tích, xác định một thiết kế của hệ thống đưa ra là vận hành được

Rất nhiều hệ thống có thể được mô tả thông qua các mô hình, đảm bảo

đưa ra các giá trị đầu ra dựa trên một hoặc một số giá trị đầu vào 1.4.4 Các ứng dụng trong điều khiển

Có hai kiểu xử lý khác nhau sử dụng các tính toán phỏng sinh học trong, điều khiển: online và offline, Xử lý online sử dụng một thuật toán phỏng sinh học như là một phần kích hoạt của việc xử lý điều khiển Với xử lý offline, không có một phỏng sinh học nào được ứng dụng

Trang 18

Một vài nhà nghiên cứu đã tìm-kiếm, sử dụng các hệ thống thích nghỉ

có chất lượng của các thuật toán phỏng sinh học để xây dựng các bộ điều khiển trực tuyến cho các hệ thống động Thuận lợi của một bộ điều khiển

phỏng sinh học là nó có thể phù hợp trong phạm vi hệ thống khi các đặc tính

bị thay đổi theo thời gian với các thay đổi có thể là từ từ hoặc đột biến Hầu hết các nhà nghiên cứu đưa ra các cách tiếp cận offline cho các điều khiển đối với các hệ thống không, đổi

Fonseca và Fleming (1993) [12] sử dụng các thuật toán phỏng sinh học

để thiết kế một bộ điều khiển cho các máy bơm ga Một hệ thống điều khiển

sẽ tối ưu khả năng đốt cháy trong các lò đa sợi đốt và làm sôi Các tính toán

phỏng sinh học đồng thời cũng được thiết lập cho phần hướng dẫn điều khiển và hệ thống dẫn đường

Ngoài các cách phân loại như đã trình bày ở trên, có thể phân loại các thuật toán phỏng sinh học dựa theo các mô hình phỏng sinh học trong thực tế

®- Dựa trên nguyên lý di truyền học, có các thuật toán di truyền

® Dựa trên nguyên lý chuyển động của bay kiến, ta có các thuật

“ ` À ak

toán phỏng bây kiên

s- Dựa trên nguyên lý trèo đổi có thuật toán trèo đổi (Hill Climbing

Algorithm),

Trong phạm vi luận văn này, ta sẽ nghiên cứu về thuật toán phỏng bầy

kiến và ứng dụng thuật toán để giải bài toán &-median,

Trang 19

19

4.5 Nguyên lý cơ bản của các thuật toán phỏng sinh học

Các thuật toán phỏng sinh học là một dạng tìm kiếm và tối ưu thông

qua các quá trình tích luỹ tri thức dựa cơ bản trên các nguyên lý phỏng sinh học và được thực hiện trên các máy tính trong hầu hết các trường, Hợp Nguyên tắc cơ bản là nếu một lời giải được sinh ra nằm trong tập lời giải có triển vọng và các lời giải khác là không, triển vọng thì lời giải được sinh ra sẽ

hội tụ tốt nhất trong tập lời giải triển vọng Nếu một lời giải chưa hoàn chỉnh

được thêm vào, quá trình tạo lời giải sẽ thăm dò không gian tìm kiếm và chuyển tới vùng lời giải có khả năng tăng các lựa chọn và kế thừa các thuộc

tính của lời giải trước đó Các quá trình này dựa trên các luật cơ bản của nguyên lý phỏng sinh học Darwinistic

Để phân tích bài toán tối ưu với các tri thức phỏng sinh học, các lời giải

phải mô tả phù hợp với các đặc điểm của bài toán đưa ra và các lựa chọn có

thể là tập tương ứng về số lượng các lời giải được mô tả

Số lượng các lời giải được mô tả được gọi là hàm phù hợp ý Các ký hiệu 4, B, € mô tả các tập riêng lẻ hay các lời giải Tình trạng hiện tại của

một xử lý phỏng sinh học được xác định bởi tham số s Một phần tử riêng lẻ với chỉ sé i trong tap lời giải 4(s) được ký hiệu là a(s) Xác suất lựa chọn a(s) ký hiệu là p„ Khi một mô tả cho một lời giải có thể của Jap bao gdm n phan tử, phần tử thứ ¿ định dạng lời giải có thể sẽ có thuộc tính x, Tức là một tập riêng lẻ bao gồm một vài thuộc tính x và sẽ mô tả một lời giải có thể thông,

qua các thuộc tính của nó.

Trang 20

<Đánh giá sự phù hợp của mọi 4, trong 4(s)>

<Lya chon phan tử phù hợp nhất a, nhu là các tổ tiên của

Trang 21

trạm làm việc vào năm 1991, Sau đó, rất nhiền 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ới thiệu Đặc điểm chủ yếu của

một thuật toán ACO là sự kết hợp của các thông tin về cấu trúc của lời giả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 đó

Hiệu quả của thuật toán ACO đã được thể hiện khi so sánh với một số

thuật toán nổi tiếng khác như thuật toán di truyén (GA), Simulated Annealing, Tabu-Search, Local Search Người ta áp dụng rất thành công các thuật toán kiến trong một số các bài toán tối ưu thường gặp như: bài toán người đưa thư,

bài toán gán, bài toán tô mầu đồ thị, bài toán lập lịch

Tuy nhiên về mặt lý thuyết, có rat it các công, trình nghiên cứu nhằm đưa ra các đánh giá về hiệu quả của thuật toán Tình hình này đã được thay

đổi khi lần đầu tiên, năm 2000, W.J Gutjahz chứng minh được tính hội tụ của

một thuật toán ACO, thuật toán GBAS [19, 20] Gutjahz chứng minh rằng,

trong một số điều kiện nhất định GBAS hội tụ đến lời giải tối ưu với xác suất

tiệm cận đến 1 với độ chính xác tuỳ ý Tuy nhiên GBAS chưa có một áp dụng

cụ thể nào trên thực tế nên các kết quả này thuần tuý chỉ có ý nghĩa lý thuyết.

Trang 22

a

Năm 2002 M.Dorigo và T.Stủzle đã chứng minh được tính hội tụ của

hai biến thé quan trọng nhất của ACO, đó là thuật toán Max ~ Min va ASC

[21] Điều này đã khiến cho ACO có một cơ sở lý thuyết vững vàng và mở ra một loạt các nghiên cứu đầy hứa hẹn về các tham số điều khiển trong ACO

+ Tính linh hoạU đa năng: Có nghĩa là nó có thể áp dụng mở rộng,

u bài toán khác nhau có một số điểm tương đồng Ví dụ

cho nh

như có thể mở rộng dễ dàng từ bài toán bán hằng di động sang

bài toán bán hàng di động bắt đối xứng

«© Có tính thích nghỉ cao: Có thể được áp dụng với chỉ những thay

đổi nhỏ tới những bài toán tổ hợp tối ưu, chẳng hạn bài toán

phương trình bậc hai (QAP) hay bai toán lập lịch công việc bán

hàng (JSP)

+ _ Có tính phổ biến: Điều này là khá thú vị vì nó cho phép khai thác

các khả năng quay lui trong các kỹ thuật tìm kiếm Nó đồng thời cũng tạo ra một hệ thống có thể thực hiện các xử lý song song.

Trang 23

23

2.2 Mô hình mô phỏng của thuật toán

Mô hình được diễn tả dưới đây [22] dựa trên thực tế hoạt động của đàn

kiến trong trong tự nhiên Ta gọi hệ thống đó là hệ thống Ant (AS)

Š ð|ợ F & ö|

Hình 2.1: Một ví dụ về hoạt động ctia bay kién trong thực té

Hình 2.1 là ví dụ về hành trình của bẩy kiến Hình 2.1a cho thấy bầy

kiến đi từ điểm A là nơi có thực phẩm thẳng tới tổ là điểm E và ngược lại

Bỗng nhiên một cản trở xuất hiện trên đường tại vị trí B Do đó tại B hoặc D,

by kiến phải quyết định rẽ phải hoặc rẽ trái (Hình 2 Ib) Sự lựa chọn sẽ bị tác động lớn khi xuất hiện mùi hương thu hút của một con khác giới

Nếu mùi hương thu hút từ bên phía phải càng lớn sẽ tạo cho bầy kiến một động lực mạnh mẽ hơn và do đó xác suất rẽ phải sẽ lớn hơn Con kiến

đầu đàn đến điểm B (hoặc D) sẽ có xác suất rẽ phải như rẽ trái (vì không có

mùi hương thu hút trước đó trên cả hai tuyến) Bởi vì tuyến B-C-D ngắn hơn

Trang 24

B-H-D, con kiến đầu đàn sau đó sẽ đến.điểm D trước khi con kiến đầu đàn đi

theo tuyến B-H-D (Hình 2c)

Kết quả là một con kiến đi từ E đến D sẽ tìm thấy mùi hương thu hút

trên tuyến D-C-B và làm cho một nửa đàn kiến còn lại quyết định vượt qua rào cản theo tuyến D-C-B-A va do đó bẩy kiến đã đi qua B-C-D Do vậy, số

các con kiến đi theo tuyến B-C-D theo đơn vị thời gian sẽ nhiều hơn so với số các con kiến đi theo tuyến B-H-D

Nếu mùi hương thu hút trên tuyến đi ngắn hơn lớn hơn sẽ thúc day việc

di chuyển nhanh hơn so với tuyến đài hơn, do đó xác suất chọn tuyến ngắn hơn là lớn hơn

Tuy nhiên, do sử dụng mô hình bầy kiến nhân tạo như là một phương

pháp tối ưu, nên hệ thống sẽ có một vài điểm khác so với cơ chế hoạt động

của bẩy kiến trong thực tế:

«- Bầy kiến nhân tạo có một vài bộ nhớ/ ký ức nhất định

e Chúng không hoàn toàn mù, tức cũng có một vài trí thức nhất định trong việc quan sát, đánh giá các thay đổi của môi trường © Chúng sẽ sống trong môi trường mà miễn thời gian là rời rạc Hình dưới mô tả một dạng mô hình của bay kiến nhân tạo.

Trang 25

Hình 2.2: Một ví dụ về đàn kiến nhân tạo

Một ý tưởng được đưa ra là nếu tại một điểm nào đó, một con kiến

chọn một đường đi từ tập các đường đi khác nhau, nó sẽ lựa chọn đường đi có

khả năng đạt tới đích cao nhất Hơn nữa đường đi đó cũng có nghĩa là đường, đi ngắn nhất

2.3 Trình bày giải thuật

2.3.1 Một số định nghĩa ban đầu Cho một bộ (S, / 42), trong đó:

© _Š: tập hợp các lời giải triển vọng

© / hàm đánh giá/: ->R

© @: các điều kiện ràng buộc

© Cần tìm lời giải tối ưu $* thoả /(S*) => min

Trong ACO, bài toán tối ưu tổ hợp (5, ƒ' 2) được giải quyết qua sơ đồ gồm các thành phân sau:

Trang 26

2.3.2 Trình bày thuật toán

Khởi đầu, mỗi con kiến được phân bố ngẫu nhiên trên các đỉnh của Ớ,

sau đó chọn một đỉnh nào đó làm đỉnh kế tiếp trong quá trình dịch chuyển

Quá trình chấm dứt khi mọi đỉnh đều được duyệt qua Việc chọn đỉnh kế tiếp

trong quá trình di chuyển của kiến phụ thuộc vào mật độ mùi trên các cung Điều kiện Ø được áp dụng bảo đảm các lời giải ứng cử viên thoả mãn cáể điều kiện ban đầu Sau khi các con kiến hoàn thành quá trình di chuyển, quá trình cập nhật mật độ mùi được thực hiện Lưu đồ thực hiện có thể được mô tả

như sau:

Trang 27

Định nghĩa các kết nói, các điều kiện

giới hạn của bài toán

|

Cáu trúc lời giải ban đầu với hàm

xác suất như đã mô tả

|

Tạo các lân cận hoặc danh sách

không gian lời giải cần tìm kiếm

rT Sinh đàn kiến nhân tạo }

Đánh giá lời giải triển vọng nhất được sinh ra dụa trên toàn bộ không gian lời giải

Cập nhật tập lời giải dựa trên lời giải

tốt và tạo dạng sách tìm kiếm mới

Hình 2.3 Lưu đồ giải thuật ACO

Dựa trên lưu đồ trên, các thủ tục được xây dựng như sau:

Procedure ACO_Algorithms;

Initialize; ⁄Khởi tạo các tham số ban đâu While <Diéu kiện dừng chưa thoả> do

Trang 28

ConstructAntSolutions; ⁄ Cấu trúc các lời giải dựa trên di

chuyển của bẩy kiến ApplyLocalSearch; //Tuy chon

UpdatePheromones; Cập nhật các thông tin

For <duyét qua & con kiến> do

// Xay dung tập lời giải cho con kiến thứ ¡ While <x; € X* and x; ¢ S> do

<Chon dinh tiép theo Cj,; theo biéu thtte xdc suất

ngẫu nhiên P(Œ,¡ = Œ | ?; x)>

<Bé sung Œ¡.¡ vào tập x/> End; //while

<V(,J) eS*: tú, J) := tí, J) + g(S*)> <Vự, j): tú, 7) = MAX {Tmiu rÚ, J)}> End; Kết thúc thủ tục UpdatePheromones

Trang 29

thông, qua một vài ứng dụng trong một số bài toán khác nhau [13]

Ở đây, ta sẽ xem xét 4 ứng dụng của thuật toán là các bài toán tối ưu thuộc dạng NP khó: TSP, SMTWTP, GAP, SCP Ta sẽ sử dụng những, bài

toán này để xem xét các cách thức khác nhau trong việc mô tả lời giải Trong,

khi bài toán TSP và SMTWTP là một dạng bài toán hoán vị, trong đó lời giải

được mô tả như là các hoán vị của các thành phần lời giải, lời giải trong bài

toán GAP thiết lập các nhiệm vụ cho các con kiến, còn trong bài toán SCP lời

giải được mô tả như là một tập con của các lời giải thành phần có triển vọng Một trong các ứng dụng khác của ACO là trong các bài toán động mà tiêu biểu là bài toán định tuyến dữ liệu trên mạng Thuật toán AntNet áp dụng cho bài toán này là một thuật toán rất thành công trong, việc đóng gói, chuyển

mạch dữ liệu trên mạng Internet

2.4.1 Giải thuật ACO cho bài toan TSP

Bài toán TSP là một bài toán tối ưu tổ hợp thuộc dạng NP-khó Đây là

một bài toán điển hình cho việc ứng dụng giải thuật ACO để giải

Trong hệ thống AS, mỗi con kiến sẽ khởi động từ một thành phố được chọn ngẫu nhiên và có một ký ức nhớ để lưu các thành phân lời giải mà nó sẽ

cấu trúc sau này Từ thành phố đầu tiên, mỗi con kiến sẽ do chuyển qua các

Trang 30

®ny= 1/4, là thông tin về trỉ thức ưu tiên;

© ø / là hai tham số do người dùng định nghĩa, xác định mức độ

ảnh hưởng của vệt mật độ mùi và thông tin về tri thức;

¢ Ni la cac lang giềng, khả thi của con kiến thứ #, có nghĩa là tập các thành phố mà con kiến thứ & có thể sẽ đến thăm

Việc cấu trúc lời giải cuối cùng sau khi mỗi con kiến hoàn thành hành

trình của mình kết thúc sau khi mỗi con kiến được cấu trúc có độ dài ø Tiếp

theo các vệt mật độ mùi sẽ được cập nhật theo công, thức:

a(t+1) = (1-p) a(t) + 3;Ar,() với moi (i, 7) (2.2)

Trang 31

và thời gian tới hạn đ, và mọi công việc có thể được xử lý từ thời điểm 750,

Độ trễ của công việc j được định nghĩa 7 = max{0,Œ,~ đ) với Œj là tha? gian

hoàn thành chuỗi công việc tại thời điểm hiện tại Mục tiêu là tìm kiếm chuỗi công việc sao cho tối thiểu hoá trọng số độ trễ được đưa ra bởi công thức:

bi oT,

Ứng dụng thuật toán ACO cho bài toán SMTWTP, tập các thành phần € là tập tất cả các công việc Giống như trong bài toán TSP, trạng thái của bài

toán là tắt cả các phần công việc nối tiếp có thể có Trong bài toán SMTWTP,

ta không xem xét chỉ phí ứng với các kết nối do hàm mục tiêu phụ thuộc vào các phần lời giải chưa được cấu trúc

Thuật toán Ant dùng cho bài toán SMTWTP hoạt động như sau: Mỗi

con kiến bắt đầu với một chuỗi rỗng, và sau đó lặp lại việc gắn một công việc

chưa có lịch vào phần chuỗi được cấu trúc Mỗi con kiến sẽ lựa chọn công việc kế tiếp sử dụng luật lựa chọn tỷ lệ thức giả ngẫu nhiên Các vệt mật độ mùi được định nghĩa như sau: 7 là lịch mong, muốn của công việc / tại vị trí i Các thông tin về trì thức được định nghĩa theo một trong, 3 bách:

() Luật thời gian tới hạn sớm nhất (EDD): sẽ đưa công việc có thời gian tới hạn không tăng được xác định bởi đ,

(ii) Luật sửa đổi thời gian tới hạn (MDD): đưa vào công việc có thời gian tới han kh6ng tang duge xdc dinh boi mdd) = max{C+p, dj} với C la tổng thời gian xử lý các công việc đã sắp xếp.

Trang 32

(ii) Luật khẩn cấp rõ ràng (AU): đưa vào các công việc khẩn cấp được

xác định theo công thức a, = (2⁄2)*exp(-(max{4-Œ,0})/k*p) với k là

tham số luật ưu tiên,

Trong mỗi trường hợp, thông tin tri thức được xác định theo công thức ?„y = 1/hy với hị là một trong các tham số đ, mđij, aw, được định nghĩa ở trên

Các mật độ mùi tổng quát và địa phương sẽ được cập nhật theo công thức mô tả ở trên

2.4.3 Bài toán GAP

Trong bài toán GAP, đưa ra một tập các nhiệm vụ 7 ={1 ø} được thiết lập cho tập các agents / ={I m}, Mỗi agent / chỉ có một dung lượng giới han

a, va mỗi nhiệm vụ ¿ khi thiết lập tới agent j dùng hết một lượng b„ của agent

J, dong thoi chju một chỉ phí thiết lập là đ/„ Mục tiêu là tìm một nhiệm vụ khả thi được thiết lập với chỉ phí nhỏ nhất

Đặt 1 Nếu nhiệm vụ ¿ được thiết lập cho agent /

Trang 33

33

Ràng buộc (2.4) đảm bảo giới hạn dung lượng tài nguyên của các

agents, trong khi các ràng buộc (2.5) và (2.6) đảm bảo rằng mỗi nhiệm vụ chỉ được thiết lập chính xác cho l agent và một nhiệm vụ không, thể phân chia

cho một vài agents

Bài toán GAP có thể được cài đặt dễ dàng sử dụng thuật toán Ant Bài toán có thể được mô tả bởi một đồ thị trong đó tập các thành phan chính là tập

các nhiệm vụ và các agents Có nghĩa la C =1U J va tap cdc kết nói trên đồ

thị Mỗi thiết lập, bao gồm n cặp (¡/) các nhiệm vụ va agents, theo di chuyén

của con kiến trên đồ thị Mỗi di chuyển thoả mãn (2.5) và (2.6) sẽ được thiết lập

Tại mỗi bước lặp, một con kiến sẽ thực hiện hai quyết định cơ bản sau:

(i) nd sé quyết định nhiệm vụ nào được thiết lập tiếp theo va (ii) nó sẽ quyết

định agent nào sẽ được thiết lập tới nhiệm vụ đó Các vệt mật độ mùi và thông, tin về trì thức có thể được thiết lập theo hai cách trên

Để đơn giản, đầu tiên một nhiệm vụ sẽ được thiết lập một cách ngẫu nhiên Sau đó, tại mỗi bước tiếp theo, một nhiệm vụ sẽ được thiết lập cho một

agent đảm bảo chỉ phí thiết lập nhỏ và mỗi agent chỉ cần một số lượng nhỏ tương đối tài nguyên để thực hiện nhiệm vụ Do đó thông tin về tri thức có thể

là ?ậy = 4/d,b„ và xác suất lựa chọn thiết lập có thể giống; luật xác suất trong,

hệ thống AS Sự rắc rối trong quá trình cấu trúc lời giải là GAP phân tích các ràng buộc dung lượng tài nguyên, thực tế là với GAP không có gì đảm bảo đưa ra một con kiến sẽ cấu trúc được lời giải khả thi đáp ứng các ràng, buộc

Thực tế là để đưa ra một lời giải khả thi, các rằng buộc tài nguyên cần được

tính toán trên tập Nj, tập các láng giềng khả thi của con kiến thứ & Trong GAP, ta định nghĩa Ni bao gom tất cả các apents mà nhiệm vụ ỉ có thể được

Trang 34

thiết lập mà không lo về dung lượng tài nguyên của agents Nếu không có yêu

cầu về tài nguyên, ta bắt buộc phải xây dựng một lời giải không khả thi và trong trường hợp này ta đơn giản lựa chọn M/ là tập tất cả các agents

Bài toán SCP khi đó có thể được định nghĩa như sau:

voi:

Ràng buộc (2.8) đảm bảo mỗi hàng được chứa trong ít nhất 1 cột

Thuật toán Ant được thiết lập theo cách khá dễ hiểu cho bài toán Các cột được chọn như các thành phần lời giải và được kết hợp với một hàm chỉ phí và tham số mật độ mùi Tập ràng buộc #2 nói rằng một cột có thể được

thăm bởi một con kiến một và chỉ 1 lần và đảm bảo lời giải cuối cùng sẽ chứa

Trang 35

35

tất cả các hàng Đường đi của con kiến trên đồ thị mô tả theo các cột thêm vào

lời giải bộ phận Mỗi con kiến bắt đầu với một lời giải rỗng và thêm dần các

cột cho đến khi hoàn thành Mật độ mùi 7 va thông tin trí thức 7 được kết

hợp vào mỗi cột ¡ Một cột được chọn nếu xác suất p/() được thoả mãn: -

cột ¿ vào lời giải bộ phận hiện tại

Một con kiến sẽ kết thúc việc tạo lời giải khi mọi hàng được chứa Trong một bước tiền tối ưu, một con kiến có thể loại bỏ các dư thừa, là các cột chỉ chứa các hàng, nằm trong một tập con của các hàng khác, trong, lời giải cuối cùng Việc cập nhật mật độ mùi giống, như trong các phần trước

Khi thiết lập thuật toán Ant cho bài toán SCP, ta có hai khác biệt chính

với các bài toán được mô tả trước đó: (¡) Các vệt mật độ mùi chỉ được kết hợp

tới các thành phần và (ii) Độ dài hành trình của một con kiến có thể phụ thuộc

vào số lượng kiến, có nghĩa là việc tạo lời giải chỉ kết thúc khi tất cả các con

kiến kết thúc hành trình của chúng.

Trang 36

2.4.5 Bài toán định tuyến mạng -

Cho một đồ thị mô tả một mạng truyền thông Bài toán đặt ra là tìm kiếm một đường dẫn giữa các cặp đỉnh của đồ thị sao cho tổng chỉ phí là tối

thiểu Một chú ý quan trọng là mặc dù việc tìm đường dẫn trên đồ thị là một

bài toán đơn giản (có thể sử dụng nhiều thuật toán giải bài toán với độ phức tạp là đa thức), nhưng điều này lại đặc biệt khó khi chỉ phí trên các cạnh lại thay đổi liên tục theo thời gian Đây chính là trường hợp bài toán định tuyến

các gói chuyên mạch trên mạng, một ứng dụng của bài toán đặt ra

Sau đây, ta sẽ đưa ra mô tả của bài toán Như ta đã biết, trong bài toán,

mỗi con kiến sẽ tìm kiếm một đường dẫn với chỉ phí nhỏ nhất Để đạt mục

tiêu này, mỗi con kiến sẽ di chuyển ngẫu nhiên từ một đỉnh trong mạng tới

một đỉnh khác Giả sử mỗi con kiến đi từ đỉnh nguồn s đến đỉnh đích đ, và di chuyển từ s tới đ phải đi qua một số đỉnh trung gian Khi con kiến thứ & nằm ở

đình ¿ lựa chọn đỉnh 7 tiếp theo dé chuyén dén theo một luật xác suất là hàm của bộ nhớ đàn kiến, mật độ mùi cục bộ và thông tin tri thức

Trong hệ thong AS, mật độ mùi được xác định trên các cạnh Tuy

nhiên, đối với bài toán này, mật độ mùi được xác định trên các cặp (cung -

điểm đến) Có nghĩa là một cung (¿ /) có „-l giá trị vét tg € [0,1], voi n 1a sd

lượng đỉnh trên đồ thị, nhìn chung ta # 1u Mỗi cung có thể được kết hợp một giá trị thông tin về tri thức ny = l-qy >, » Fu VOI gy la dQ dai cla hang

đợi các kết nối từ đỉnh ¿ đến các đỉnh láng giềng j Hang dgi cang ngắn thì giá trị thông tin trí thức càng cao Đàn kiến sẽ lựa chọn đường đi theo xác suất là hàm của 7„¿ và 7; Trong quá trình xây dựng đường đi tới điểm đích, các con

kiến di chuyển sử dụng cùng một hàng đợi giống như hàng đợi các gói dữ liệu

= tre.

Trang 37

tiêu biểu,

Bảng 2.1: Các ứng dụng hiện tại của thuật toán Ant

Tên bài toán | Tác giả Tên thuậttoán —— | Năm *

VRP Bullnheimer, Hart! & Strauss AS-VRP 1997

Gambardella, Taillard & Agazzi_| HAS-VRP 1999

White, Pagurek & Oppacher ASGA 1998

Di Caro & Dorigo AntNet & AntNet-FA | 1997

Subramanian, Druschel & Chen | Regular ants 1997

van der Put & Rothkrantz ABC-backward 1998

GAP Ramalhinho Lourene,o & Serra | MMAS-GAP 1998

ONRP Navarro Varela & Sinclair ACO-V WP 1999

Trang 38

2.5 Đánh giá ảnh hưởng các tham số

“Thuật toán Ant tạo các bộ lời giải khả thi dựa chủ yếu trên các thông tin

tri thức mang tính kinh nghiệm Một vải tham số đặc trưng cho các thông tin

này do đó sẽ tác động lên hiệu quả của thuật toán Các tham số đó sẽ được

phân tích trong các phần dưới đây

2.5.1 Xác định các vệt mật độ mùi

Đầu tiên, một lựa chọn rất quan trọng khi ứng dụng thuật toán Ant để

định nghĩa một thông số mang tính dự đoán là các vệt mật độ mùi Khi ứng,

dụng thuật toán Ant trong bài toán TSP, mô tả chuẩn của mật độ mùi , xác

định độ mong muốn của con kiến khi thăm thành phố / từ thành phố ¡ Có thông tin dựa trên độ mong muốn trong quan hệ

nghĩa là nó cung cấp một v:

lữa thành phố í và thành phố

bài toán SMTWTP, kết quả tốt hơn đạt được khi sử

dụng thuật toán Ant gì

dụng mô tả vị trí tuyệt đối ủa các vệt mật độ mùi, nơi mà z, là độ mong,

1) Trái lại, trong bài toán SMTWTP, ø và z" mô tả hai

khả năng chỉ phí rất khác nhau Khi đó, trong bài toán SMTWTP vị trí tuyệt

đối dựa trên cơ sở mật độ mùi là một lựa chọn tốt hơn Vi

định các bộ lời

xác định vệt mật độ mùi là một chỉ

`u quan trọng trong việc xác

i tip theo của thuật toán.

Trang 39

39

2.5.2 Cân nhắc các thăm dò và khai thác

Bắt kỳ một thuật toán siêu trí thức hiệu quả đều phải đưa ra một sự

(đánh giá giữa việc khai thác các kinh nghiệm trong tìm kiếm và thăm dò các

vùng không gian tìm kiếm chưa được thăm hoặc chưa khám phá Trong A€O

phát với tần suất cao Chú ý rằng dựa trên các phân bố mật độ mùi, các mẫu

phân bố có thể thay đổi Do vậy, cách đơn giản nhất để khai thác các kinh

nghiệm tìm kiếm của đàn kiến là liên tục cập nhập mật độ mùi của đàn kiến

như là một hàm của chất lượng lời giải được sinh ra từ mỗi con kiến

'Việc thăm dò không gian tìm kiếm được đưa ra trong thuật toán Ant bởi việc cấu trúc lời giải ngẫu nhiên của đản kiến Giả sử ta xem xét thuật toán Ant mà không có các thông tỉn về trí thức (điều nảy có thể dễ dàng đạt

(được bing cách đặt /?-0) Trong trường hợp đó việc cập nhật mật độ mùi của

đàn kiến sẽ được địch từ mẫu lời giải khởi tại của không gian tìm kiếm tới mẫu đang xem xét trong vùng không gian tìm kiếm Khi đó, việc thăm đỏ

không gian tìm kiếm sẽ được kết hợp trong phần khởi tạo của thuật toán và sẽ

giảm các tính toán phụ

Cuối cùng, một vấn đề quan trọng, đó là vai trò trong việc cân nhắc lựa

chọn các thăm đò và khai thác thông qua các tham số œ /Öđể xác định các ảnh

Âu tiên ta xem xét ảnh

hưởng của vệt mật độ mùi và thông tin tri thức

hưởng của tham số ø Với a>0, ø càng lớn việc khai thác các kinh nghiệm

tìm kiếm cảng chắc chắn; ø=0, các vệt mật độ mùi không ảnh hưởng đến quá

trình cấu trúc lời giải; với œ<0 hẳu hết các lựa chọn có thể được thực hiện bởi

Trang 40

đàn kiến có độ mong muốn thấp hơn từ khía cạnh vệt mật độ mùi, Do đó các

thay đổi của ø có thể được sử dụng để dịch chuyển từ việc thăm dò sang, khai thác hay ngược lại Tham số / xác định độ ảnh hưởng của thông tin tri thức

theo cách tương tự trên

2.5.3 ACO và tìm kiếm cục bộ

Trong rất nhiều các bài toán tối ưu tổ hợp, thuật toán Ant sẽ thực hiện

tốt hơn nếu kết hợp với một thuật toán tìm kiếm cục bộ Các thuật toán tìm

kiếm cục bộ sẽ tối ưu lời giải của đản kiến và lời giải tối ưu cục bộ đó được

sử dụng trong quá trình cập nhật các vệt mật độ mùi

Việc sử dụng tìm kiếm cục bộ trong các thuật toán Ant rất được quan

tâm Thực tế là các giải thuật Ant thực hiện tìm kiếm thô, và lời giải chúng

tạo ra có thể sau đó được tối ưu cục bộ bởi một thuật toán tìm kiếm cục bộ

tương xứng

Mặt khác, việc sinh lời giải khởi tạo cho thuật toán tìm kiếm cục bộ

không phải là một nhiệm vụ dễ dàng Chẳng hạn, với nhiều bài toán, việc lặp

lại tìm kiếm cục bộ từ một lời giải khởi tạo ngẫu nhiên là không hiệu quả Thực tế, đàn kiến có thể kết hợp các lời giải thành phần như là một phần của

lời giải cục bộ tốt nhất sau nảy, sinh ra một lời giải khởi tạo cho tìm kiếm cục bộ Bằng thực nghiệm, có thể tìm thấy sự kết hợp dựa trên xác suất, sự tương

thích về tri thức cấu trúc với tìm kiếm cục bộ để đưa ra một kết quả hoàn hảo Trừ phi phải sử dụng thuật toán tìm kiếm cục bộ như là một điều kiện

cho hiệu quả tốt nhất của nhiều ứng dụng ACO, còn nhìn chung thuật toán

Ant có hiệu quả thực hiện rất tốt với những, bài toán mà thuật toán tìm kiếm

cục bộ không thể áp dụng dễ dàng.

Ngày đăng: 10/11/2012, 10:10

Xem thêm: Thuật toán phỏng bầy kiến giải bài toán K-Median

TỪ KHÓA LIÊN QUAN

w