Việc nâng cao chất lượng, hiệu quả công tác tìm kiếm cứu nạn trên biển có ý nghĩa hết sức quan trọng. Bài viết này nghiên cứu đề xuất sử dụng thuật toán vi khuẩn sửa đổi để tính toán phương án tìm kiếm tối ưu trong trường hợp có một tàu tìm kiếm cứu nạn.
CHÚC MỪNG NĂM MỚI 2019 THUẬT TOÁN VI KHUẨN SỬA ĐỔI TÍNH TỐN PHƯƠNG ÁN TÌM KIẾM TỐI ƯU TRÊN BIỂN CHO MỘT TÀU TÌM CỨU A REVISED BACTERIAL FORAGING OPTIMIZATION ALGORITHM FOR OPTIMAL SEARCH ROUTE OF A SEARCH AND RESCURE VESSEL PHẠM NGỌC HÀ1, TRẦN HẢI TRIỀU2, BÙI DUY TÙNG2, NGUYỄN MINH ĐỨC3 Trường Đại học Giao thông Vận tải TP Hồ Chí Minh, 2Cục Hàng hải Việt Nam, 3Viện Đào tạo Quốc tế, Trường Đại học Hàng hải Việt Nam Email liên hệ: ha.pham@ut.edu.vn Tóm tắt Việc nâng cao chất lượng, hiệu cơng tác tìm kiếm cứu nạn biển có ý nghĩa quan trọng Bài báo nghiên cứu đề xuất sử dụng thuật tốn vi khuẩn sửa đổi để tính tốn phương án tìm kiếm tối ưu trường hợp có tàu tìm kiếm cứu nạn Từ khóa: Thuật tốn tìm kiếm tối ưu, tìm kiếm cứu nạn, thuật tốn vi khuẩn Abstract The enhancing effectiveness of search and rescue operation is the utmost importance In this article, the authors study and proposethe revised bacterial foraging optimization algorithm applying for caculation of optimal search method with one search and rescure vessel Keywords: Search and rescure, optimal search algorithm, BFOA Đặt vấn đề Trong cơng tác tìm kiếm cứu nạn biển, sau dự đốn khu vực trơi dạt phương tiện bị nạn (khu vực tìm cứu) việc tìm kiếm phương tiện bị nạn với thời gian ngắn yếu tố quan trọng định thành công, đồng thời giúp giảm thiểu rủi ro, chi phí cho lực lượng tìm kiếm cứu nạn Hiện phương pháp chạy tàu tìm cứu - search and rescure vessel (tàu SAR) để tìm kiếm phương tiện bị nạn thường tiến hành theo hướng dẫn Sổ tay Hướng dẫn tìm kiếm cứu nạn hàng khơng hàng hải quốc tế (IAMSAR Manual) [1] chưa có nghiên cứu sử dụng thuật tốn tối ưu số tính tốn chạy tàu SAR khu vực biển Việt Nam công bố Bài báo sử dụng thuật tốn Monte Carlo để mơ dự đốn khu vực tìm cứu đề xuất sử dụng thuật tốn vi khuẩn sửa đổi tính tốn tuyến đường chạy tàu SAR (có xét đến ảnh hưởng gió dòng chảy), từ vị trí trực ban đến khu vực tìm cứu sau chạy tàu SAR quét hết khu vực với tổng thời gian tìm kiếm ngắn Dự đốn khu vực tìm cứu yếu tố ảnh hưởng tới cơng tác tìm cứu Cơng tác tìm kiếm phương tiện bị nạn biển chia làm hai giai đoạn chính: giai đoạn dự đốn khu vực tìm cứu giai đoạn chạy tàu SAR từ vị trí trực ban đến quét hết khu vực tìm cứu Khu vực tìm cứu phụ thuộc vào loại phương tiện bị nạn phụ thuộc nhiều thông tin thời tiết, dòng chảy Việc tính tốn tuyến đường chạy tàu SAR phụ thuộc đặc tính tàu SAR điều kiện thời tiết, dòng chảy 2.1 Thơng tin thời tiết, dòng chảy Theo nghiên cứu [4], [5], tác giả tổng hợp, phân tích, đánh giá độ xác lựa chọn nguồn thơng tin thời tiết dòng chảy từ tin gió dạng Grib file Trường Đại học Kyoto - Nhật Bản liệu dòng chảy OSCAR Trung tâm nghiên cứu Trái đất Vũ trụ theo thời gian thực khu vực biển Ninh Thuận đến Kiên Giang để sử dụng cho mục đích dự đốn trơi dạt phương tiện bị nạn biển 2.2 Ảnh hưởng thời tiết tới tốc độ tàu SAR Ảnh hưởng gió tới tốc độ tàu khó xác định cần thực nghiệm Thơng thường, có gió nhẹ, tốc độ tàu bị giảm tàu ngược gió tăng lên chút trường hợp tàu xi gió Khi tốc độ gió lớn, tàu bị giảm tốc độ việc ngược hay xi gió ảnh hưởng sóng gây gió Trong nghiên cứu này, tính ảnh hưởng gió đến tốc độ tàu SAR theo phương pháp vecto Theo đó, mức độ tăng, giảm tính theo phần trăm tốc độ tàu tính cho hướng gió (tương đối), tốc độ gió sử dụng tính tốn 2.3 Xác định khu vực tìm kiếm Trong nghiên cứu này, phương pháp Monte-Carlo [2] sử dụng để dự đốn khu vực trơi dạt phương tiện bị nạn Đối với tàu cá có vị trí phát cuối (LKP) 13000'N - 114000'E, với liệu thời tiết phần 2.1, phương pháp Monte-Carlo sử dụng 10.000 mẫu ngẫu nhiên cho kết mô vùng trôi dạt sau 72 giờ, theo liệu thời tiết tháng tháng năm 2017 Tạp chí khoa học Cơng nghệ Hàng hải Số 57 - 01/2019 31 CHÚC MỪNG NĂM MỚI 2019 thể Hình 1(a); 2(a) Tuy nhiên, đặc điểm phương pháp mô ngẫu nhiên Monte-Carlo với số mẫu hữu hạn, tồn nhiễu đốm kết tính tốn, có nằm hồn tồn vùng cần tìm kiếm bị bỏ sót Vì vậy, tác giả sử dụng lọc Median-Filter để loại bỏ nhiễu, xác định khu vực tìm kiếm phù hợp Vùng xác suất vị trí tàu sau áp dụng Median-Filtering thể Hình 1(b); 2(b) Speckle-Noise loại trừ, vùng tìm kiếm có biên liền mạch, liên tục rõ nét a Mô chưa xử lý nhiễu b Mơ sử dụng lọc Median-Filter Hình Khu vực tìm kiếm tàu cá ngày 15/1/2017 Tính tốn phương án tìm cứu tối ưu thuật tốn vi khuẩn sửa đổi 3.1 Thuật toán vi khuẩn cổ điển(Bacterial Foraging Optimization Algorithm - BFOA) a Mô chưa xử lý nhiễu b Mơ sử dụng lọc Median-Filter Hình Khu vực tìm kiếm tàu cá ngày 15/7/2017 Được đề xuất Passino [3] năm 2002, thuật tốn tối ưu dựa mơ q trình tìm kiếm thức ăn bầy vi khuẩn (BFOA) thu hút quan tâm nhiều nhà nghiên cứu coi giải pháp khả thi cho nhiều vấn đề khác tối ưu Áp dụng thuật tốn BFOA, tốn giải nhờ việc lặp lặp lại mô phát triển tập hợp vi khuẩn thể qua giai đoạn thời gian sống cá thể sau: - Mỗi cá thể vi khẩn tự thích nghi với mơi trường phát triển; - Sự phù hợp cá thể vi khuẩn với môi trường xác định hệ Các cá thể vi khuẩn khỏe tồn sinh sơi, cá thể yếu chết khơng tồn tại; - Các cá thể vi khuẩn tồn tập hợp có xu hướng kết bầy Như vậy, sau vòng lặp trên, cá thể vi khuẩn khỏe cá thể trước đó, tức vi khuẩn tiến gần tới nghiệm tối ưu toán Thuật toán BFO cổ điển thực qua bước sau: + Bước 1: Khởi tạo Mỗi cá thể vi khuẩn đặt vị trí ngẫu nhiên khơng gian tìm kiếm + Bước 2: Tiến hóa Lặp lặp lại q trình tiến hóa tập hợp vi khuẩn qua bước nhỏ: Tìm kiếm, phát triển kết bầy (chemotaxis and swarming), theo đó, cá thể tìm di chuyển tới vị trí lân cận có hàm lượng thức ăn nhiều hơn; Sinh sản, trình cá thể vi khuẩn KHỎE tự nhân đơi kết đôi tạo thể mới; 32 Tạp chí khoa học Cơng nghệ Hàng hải Số 57 - 01/2019 CHÚC MỪNG NĂM MỚI 2019 Loại trừ phân tán, theo cá thể yếu tự chết cá thể sinh ngẫu nhiên + Bước 3: Kết thúc Trả phương án ứng với cá thể vi khuẩn có sức khỏe tốt 3.2.Thuật tốn vi khuẩn tính tốn tuyến đường tìm cứu tối ưu Sau xác định khu vực tìm cứu, việc chạy tàu để tìm kiếm phương tiện bị nạn với thời gian ngắn quan trọng Tuy nhiên việc xác định tuyến đường chạy tàu tối ưu để tìm kiếm phương tiện bị nạn với thời gian ngắn phức tạp điều kiện thời tiết, gió, dòng chảy sóng ln thay đổi, trạng thái tàu tìm cứu khơng cố định Trong thực tế có nhiều phương pháp tối ưu số sử dụng để tính tốn tuyến đường chạy tàu, tác giả lựa chọn thuật toán vi khuẩn kết mơ vùng tìm cứu sử dụng Monte Carlo phù hợp với việc tính tốn tuyến đường chạy tàu SAR tối ưu thuật toán Mặt khác thuật toán đơn giản mặt lý thuyết song lại công cụ mạnh để tính tốn tuyến đường tìm kiếm thuật tốn vi khuẩn cho trường hợp có tàu tìm cứu Trong tính tốn này, vị trí cá thể vi khuẩn S (tương ứng với nghiệm khả thi, phương án chạy tới tìm cứu khu vực dự đốn có phương tiện bị nạn) đoạn (giới hạn điểm Waypoint) từ điểm xuất phát tàu SAR tới điểm khu vực cần tìm, đoạn nối điểm vùng biên khu vực tìm kiếm theo hướng tìm kiếm (hướng quét) định Hàm mục tiêu lựa chọn để tính tốn tổng thời gian tìm kiếm nhỏ Hình Lưu đồ tính tốn tuyến đường tìm kiếm tối ưu Hình Lưu đồ tính tốn tuyến đường theo BFOA 3.2.1 Khởi tạo tập hợp vi khuẩn (Bacteria Position Initialization) Mục đích q trình khởi tạo vị trí ban đầu cho vi khuẩn tập hợp cách ngẫu nhiên Vậy, việc khởi tạo vị trí ban đầu vi khuẩn lựa chọn cách ngẫu nhiên điểm chuyển hướng (Waypoint), hướng quét vùng tìm cứu thứ tự đoạn chạy qua theo hướng quét chọn Việc thực minh họa Hình Hình 8, với yếu tố chọn là: - Hướng tìm kiếm ngẫu nhiên; - Điểm bắt đầu tìm kiếm ngẫu nhiên; - Các điểm Waypoint điểm xuất phát, tới điểm lựa chọn biên vùng tìm cứu 3.2.2 Di chuyển Chemotaxis Xuất phát từ vị trí, tương ứng với phương án tiếp cận tìm kiếm cho trước, vi khuẩn tìm vị trí xung quanh (hay thực sửa đổi tuyến đường tìm cứu) cho hàm mục tiêu (tổng thời gian tìm kiếm) giảm Chuyển động xoay (tumble) vi khuẩn coi việc thay đổi hướng quét khu vực tìm cứu, thể cơng thức đổi hướng ngẫu nhiên đơn giản sau: ScanDirnew = ScanDirold + ∆dir × (random − 0.5) Trong 𝑆𝑐𝑎𝑛𝐷𝑖𝑟𝑛𝑒𝑤 , 𝑆𝑐𝑎𝑛𝐷𝑖𝑟𝑜𝑙𝑑 hướng quét ban đầu hướng quét hay đổi, ∆𝑑𝑖𝑟 thể mức độ thay đổi lớn random hàm ngẫu nhiên có giá trị từ đến 1, xác định mức độ thay đổi hướng quét Chuyển động bơi (swim) cá thể vi khuẩn định nghĩa dịch chuyển điểm Waypoint tuyến từ điểm xuất phát tới điểm biên khu vực tìm cứu Chuyển động mô tả theo công thức đơn giản: WP_Lat new = WP_Lat old + ∆dist × COS(random ∗ 360) WP_Lonnew = WP_Lonold + ∆dist × SIN(random ∗ 360) Chi phí tuyến so sánh với tuyến lưu trữ Nếu chi phí thấp hơn, tức tuyến tốt tuyến cũ, cá thể vi khuẩn chuyển vị trí sang vị trí Vi khuẩn thực di chuyển chemotaxis lặp lặp lại số lần định Tuyến đường tìm kiếm tương ứng với vị trí vi khuẩn, theo đó, tốt dần lên Ta thấy, sau khởi tạo, vị trí vi khuẩn hồn Tạp chí khoa học Công nghệ Hàng hải Số 57 - 01/2019 33 CHÚC MỪNG NĂM MỚI 2019 tồn mang tính ngẫu nhiên, vi khuẩn trải tồn khơng gian tìm kiếm Điều đảm bảo tất tuyến đường kiểm tra Tuy vậy, sau thực di chuyển Chemotaxis, vi khuẩn chuyển đến vị trí tương ứng với tuyến chạy tàu tốt nhiều Nếu khơng có q trình khác Sinh sản (Reproduction), Triệt tiêu (Elimination) Phân tán (Dispersal) sau số đủ lớn bước di chuyển chemotaxis, nhiều khả vi khuẩn vị trí ứng với giá trị tối ưu cục 3.2.3 Nâng cao hiệu tính tốn sửa đổi thuật tốn BFOA (thuật tốn ghép đơi) Để tăng hiệu tìm kiếm cục cá thể vi khuẩn, thuật tốn ghép đơi sử dụng nghiên cứu để tạo cá thể vi khuẩn mới, tương ứng với phương án tìm kiếm lai ghép phương án tìm kiếm tốt nhất, lựa chọn ngẫu nhiên Việc lai ghép mô đơn giản sau: ScanDirchild = (ScanDirfather + ScanDirmother )/2 WP_Lat(I)child = (WP_Lat(I)father + WP_Lat(I)mother )/2 WP_Lon(I)child = (WP_Lon(I)father + WP_Lon(I)mother )/2 Trong 𝑆𝑐𝑎𝑛𝐷𝑖𝑟𝑐ℎ𝑖𝑙𝑑 , 𝑆𝑐𝑎𝑛𝐷𝑖𝑟𝑓𝑎𝑡ℎ𝑒𝑟/𝑚𝑜𝑡ℎ𝑒𝑟 hướng quét tìm cứu cá thể vi khuẩn cá thể vi khuẩn bố, mẹ WP_Lat(I), WP_Lon(I) (child/father/mother) kinh, vĩ độ điểm WP thứ i, dẫn tới khu vực tìm cứu vi khuẩn cá thể vi khuẩn bố, mẹ 3.4 Kết tính tốn Trong giai đoạn triển khai tìm cứu, phương án tìm kiếm song song (parallel sweep search) lựa chọn để xây dựng đường tìm cứu 3.4.1 Tính tốn với liệu gió dòng chảy ngày 15/01/2017 + Khởi tạo ngẫu nhiên 50 vi khuẩn tương ứng với 50 tuyến chạy tàu tìm kiếm ngẫu nhiên khác trải tồn vùng trôi dạt tàu cá ngày 15/1/2017 Điều đảm bảo tất tuyến đường chạy tàu tìm cứu (có thay đổi tốc độ ảnh hưởng điều kiện thời tiết ngày 15/1/2017) kiểm tra Vi trí xuất phát tìm kiếm: 12021’ N; 109036’ E a Tuyến tìm cứu ngẫu nhiên b Hướng quét vùng tìm cứu Hình Khởi tạo ngẫu nhiên 50 phương án tìm kiếm tàu cá ngày 15/1/2017 + Vòng lặp quần thể sau 10 hệ có kết sau: vi khuẩn thực di chuyển chemotaxis lặp lặp lại 10 lần Tuyến đường tìm kiếm tương ứng với vị trí vi khuẩn, theo đó, tốt dần lên a Tuyến tìm cứu b Đường quét khu vực tìm cứu Hình Tập hợp tuyến tìm tuyến tối ưu sau 10 hệ ngày 15/1/2017 a Tuyến tìm cứu b Đường quét khu vực tìm cứu Hình Tập hợp tuyến tìm tuyến tối ưu sau 100 hệ ngày 15/1/2017 34 Tạp chí khoa học Công nghệ Hàng hải Số 57 - 01/2019 CHÚC MỪNG NĂM MỚI 2019 + Vòng lặp quần thể sau 100 hệ: vi khuẩn thực di chuyển chemotaxis lặp lặp lại 100 lần Tuyến đường tìm kiếm tương ứng với vị trí vi khuẩn, theo đó, tốt dần lên 3.5.2 Tính tốn với liệu gió dòng ngày 15/7/2017 + Khởi tạo ngẫu nhiên 50 vi khuẩn tương ứng với 50 tuyến chạy tàu tìm kiếm ngẫu nhiên khác trải tồn vùng trơi dạt tàu cá ngày 15/7/2017 a Tuyến tìm cứu ngẫu nhiên b Hướng quét vùng tìm cứu Hình Khởi tạo ngẫu nhiên 50 phương án tìm kiếm tàu cá ngày 15/7/2017 + Vòng lặp quần thể sau 10 hệ: a.Tuyến tìm cứu b Hướng quét vùng tìm cứu Hình Tập hợp tuyến tìm tuyến tối ưu sau 10 hệ ngày 15/7/2017 + Vòng lặp quần thể sau 100 hệ: a Tuyến tìm cứu b Hướng quét vùng tìm cứu Hình 10 Tập hợp tuyến tìm tuyến tối ưu sau 100 hệ ngày 15/7/2017 Kết luận Xác định vùng tìm kiếm tính tốn phương án tìm kiếm tối ưu có ý nghĩa định tới kết tìm cứu Mơ Monte-Carlo, kết hợp với Median-Filter cho phép xác định khu vực tìm cứu phù hợp Thuật tốn BFOA áp dụng hiệu để xác định phương án tìm cứu nhanh chóng Để nâng cao hiệu việc tính tốn cần nghiên cứu việc thay đổi hướng tìm kiếm tàu SAR thời tiết trình quét vùng tìm kiếm khu vực tìm kiếm thay đổi thời tiết Các cơng việc nhóm tác giả tập trung nghiên cứu bổ sung thời gian tới TÀI LIỆU THAM KHẢO [1] IAMSAR Manual - IMO/ICAO London 2016; [2] Allen, A A and JV Plourde, 1999 Review of Leeway: Field Experiments and Implementation, Technical Report CG-D-08-99, US Coast Guard Research and Development Center, 1082 Shennecossett Road, Groton, CT, USA; [3] K M Passino, "Biomimicry of bacterial foraging for distributed optimization and control", IEEE Control Systems Magazine, Vol 22, pp.52-67, 2002 [4] Phạm Ngọc Hà, Nguyễn Minh Đức Tổng hợp thơng tin thời tiết để dự đốn trơi dạt vật thể tìm kiếm cứu nạn Tạp chí Khoa học Công nghệ Hàng hải - Số 51(8/2017), tr.105-110; [5] Pham Ngoc Ha, Nguyen Minh Duc Weather Data Analysis and Drift Object Estimation by Monte Carlo Simulation for Vietnam's East Sea “The 16th Asia Maritime & Fisheries Universities Forum 2017”: pp 467-477, 2017 Ngày nhận bài: Ngày nhận sửa: Ngày duyệt đăng: 30/8/2018 19/9/2018 30/9/2018 Tạp chí khoa học Công nghệ Hàng hải Số 57 - 01/2019 35 ... Mô sử dụng lọc Median-Filter Hình Khu vực tìm kiếm tàu cá ngày 15/1/2017 Tính tốn phương án tìm cứu tối ưu thuật toán vi khuẩn sửa đổi 3.1 Thuật toán vi khuẩn cổ điển(Bacterial Foraging Optimization... Kết thúc Trả phương án ứng với cá thể vi khuẩn có sức khỏe tốt 3.2 .Thuật tốn vi khuẩn tính tốn tuyến đường tìm cứu tối ưu Sau xác định khu vực tìm cứu, vi c chạy tàu để tìm kiếm phương tiện bị... chạy tàu SAR tối ưu thuật toán Mặt khác thuật toán đơn giản mặt lý thuyết song lại cơng cụ mạnh để tính tốn tuyến đường tìm kiếm thuật tốn vi khuẩn cho trường hợp có tàu tìm cứu Trong tính tốn này,