Giải thuật tối ưu bầy đàn

Một phần của tài liệu (LUẬN văn THẠC sĩ) ứng dụng khai phá dữ liệu trong quản lý giao thông 04 (Trang 29 - 31)

3 Các giải thuật tìm đường

3.2 Các thuật toán tìm đường nâng cao

3.2.2 Giải thuật tối ưu bầy đàn

Giải thuật tối ưu bầy đàn (Particle Swarm Optimization - PSO) là giải thuật nhằm giải quyết các bài toán tối ưu trên mô hình quần thể thông minh hay bầy đàn thông minh. Giải thuật PSO được giới thiệu lần đầu tiên bởi Kennedy và Eberhat vào năm 1995 [4]. Các tác giả đã phát triển các phương pháp đơn giản nhưng hiệu quả trong vấn đề tối ưu hoá các hàm mục tiêu dạng phi tuyến liên tục và đã áp dụng thành công để giải nhiều bài toán cực trị hàm số và một số bài toán tối ưu đa mục tiêu khác. Thuật toán được xuất phát từ ý tưởng quan sát các quần thể sinh học

3.2. Các thuật toán tìm đường nâng cao 21

tự nhiên, Eberhart và Kennedy đưa thêm giả thuyết về quá trình tìm về tổ của bầy đàn theo các quy luật:

• Tất cả các phần tử trong bầy đàn đều có xu hướng chuyển động về tổ

• Mỗi phần tử đều ghi nhớ vị trí gần tổ nhất nó đã đạt tới

Tương tự như vậy, hai ông đưa giả thuyết về quá trình tìm mồi của bầy đàn trong một vùng không gian mà các phần tử trong bầy đàn đều biết thông tin về thức ăn cách bao xa và lưu giữ vị trí gần thức ăn nhất mà chúng đã đạt tới. Khi đó, cách tốt nhất để tìm thức ăn là theo sau những con phần tử đầu đàn – những con trong bầy gần chỗ thức ăn nhất. Từ đó, hai ông đề xuất thuật toán PSO phỏng theo kịch bản này và sử dụng nó để giải các bài toán tối ưu. Trong PSO, mỗi giải pháp đơn là một phần tử (particle) trong kịch bản trên. Mỗi phần tử được đặc trưng bởi hai tham số là vị trí hiện tại của phần tử (present) và vận tốc (v). Đây là hai vectơ trên trường số thựcRn vớin là tham số được xác định từ bài toán cụ thể. Đồng thời mỗi phần tử có một giá trị thích nghi(f itness value), được đánh giá bằng hàm đo độ thích nghi(f itness f unction). Tại thời điểm xuất phát, bầy đàn, hay chính xác là vị trí của mỗi phần tử được khởi tạo một cách ngẫu nhiên (hoặc theo một cách thức nào dó dựa vào tri thức biết trước về bài toán). Trong quá trình chuyển động, mỗi phần tử chịu ảnh hưởng bởi hai thông tin: vị trí tốt nhất mà phần tử đó đã đạt được trong quá khứ (pBest) và vị trí tốt nhất mà cả bầy đàn đã đạt được trong quá khứ(gBest). Trong nguyên bản do Eberhart và Kennedy đưa ra, các phần tử trong PSO sẽ duyệt không gian bài toán bằng cách theo sau các phần tử có điều kiện tốt nhất hiện thời (độ thích nghi lớn nhất). Cụ thể là sau mỗi khoảng thời gian rời rạc, vận tốc và vị trí của mỗi phần tử được cập nhật theo các công thức:

vik+1 =vki +c1.rand()(pbest−presentki) +c2.rand()(gbest−presentki) (3.1)

presentki+1=presentki +vki (3.2)

Điều kiện dừng phổ biến thường hay được sử dụng là số lần cập nhật, số lần cập nhật bầy đàn mà không đem lại kết quả tốt hơn, số lần cập nhật mà lượng thay đổi giữa hai lần cập nhật liên tiếp nhỏ hơn một ngưỡng nào đó,.. Ngoài ra điều kiện dừng cũng có thể được xác định từ bài toán cụ thể.

3.2. Các thuật toán tìm đường nâng cao 22

Algorithm 3Giải thuật tối ưu bầy đàn (PSO) 1: for mỗi cá thểdo

2: Khởi tạo particle 3: end for

4: do

5: for mỗi particle do

6: Tính giá trị fitness value

7: if fitness value < pBest then pBest = fitness value 8: end if

9: if pBest < gBest then gBest = pBest 10: end if

11: end for

12: for mỗi particle do

13: Tính vận tốc theo công thức 3.1

14: Cập nhật vị trí theo công thức3.2

15: end for

16: while chưa thỏa mãn điều kiện dừng

Phiên bản PSO được trình bày ở trên được gọi là phiên bản "tối ưu toàn cục" (global best), trong đó vận tốc của mỗi cá thể đều bị ảnh hưởng bởi hai yếu tố bao gồm yếu tố nội tại ứng với vị trí tốt nhất mà cá thể đạt được và yếu tố toàn cục ứng với vị trí tốt nhất mà cả bầy đàn đã trải qua được. Các cải tiến của PSO đưa vào yếu tố "cục bộ" tức là vận tốc của mỗi cá thể còn bị ảnh hưởng bởi vị trí tốt nhất đã đạt được trong số những hàng xóm của nólk

best. Khi đó công thức cập nhật vận tốc sẽ là:

vik+1 =vki+c1rand()(pbest−presentki)+c2rand()(gbest−presentki)+c2rand()(lkbest−presentki)

(3.3)

Một phần của tài liệu (LUẬN văn THẠC sĩ) ứng dụng khai phá dữ liệu trong quản lý giao thông 04 (Trang 29 - 31)

Tải bản đầy đủ (PDF)

(52 trang)