CƠ SỞ LÝ THUYẾT
B Ố TRÍ VỊ TRÍ CẦN TRỤC THÁP
Bố trí vị trí cần trục tháp (Tower Crane Layout - TLC) là một dạng điển hình của bố trí mặt bằng xây dựng (Construction Site Layout – CSL), một vấn đề được nghiên cứu rất nhiều trong các dự án xây dựng và điều kiện công trường Cần trục tháp có nhiệm vụ đưa những vật liệu nặng nề lên trên cao rồi đến điểm cần thiết, các vật liệu gồm dầm, bê tông, tấm cốp pha, máy móc và thiết bị trong công trường Vì vậy, cần trục tháp cần được đặt ở vị trí an toàn, tiện lợi nơi mà những vật liệu kể trên có thể được kiểm soát Tối ưu nhất, tay đòn của cẩu phải với tới và bao phủ bất kì bộ phận nào của công trường để có thể nâng, thả vật liệu từ những điểm cung cấp và yêu cầu
Việc lập kế hoạch tốt của một công ty thi công xây dựng là một nhân tố ảnh hưởng trực tiếp tới hiệu quả kinh doanh của doanh nghiệp Bố trí CSL là một trong những hoạt động quan trọng trong việc lên kế hoạch xây dựng được thực hiện bởi các nhà quản lý xây dựng Một cách bố trí hiệu quả sẽ giúp công ty cải thiện hiệu quả dự án Việc bố trí có ảnh hưởng đến kết quả hoạt động của công ty Thực tế thì từ 20% đến 50% tổng chi phí hoạt động trong sản xuất là do việc xử lý vật liệu (J
Một vị trí cẩu tháp và điểm cung cấp vật liệu tối ưu sẽ làm tăng hiệu quả công trường, giảm thời gian di chuyển, đặc biệt là trong những thành phố lớn nơi công
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN trường là một phạm vị giới hạn, nhỏ hẹp chứa nhiều vật tư vì không gian đất là không nhiều Trong việc lựa chọn vị trí của cẩu tháp, tính chất của những máy móc có sẵn cần được cân nhắc khi so sánh với tải trọng có thể xử lý được và lân cận xung quanh cẩu tháp Những yếu tố khác như trọng lượng, kích thước, góc nâng có vật liêu nặng nhất và lớn nhất cũng cần được xem xét
Tóm lại, vị trí đặt một cần trục tháp tối ưu sẽ đi tuân theo những điều kiện sau đây:
Bao phủ hết khu vực cần được vận chuyển bởi một cần trục với một khả năng vận chuyển tối đa hợp lý
Vị trí đặt cần trục tháp phải giảm thiểu sự cản trở cho quá trình xây dựng và di chuyển trong công trường
Hệ thống cần trục hợp lý cho phép cung cấp vật tư theo một tỉ lệ yêu cầu
Lắp đặt và tháo dỡ cần trục tháp
Nếu cần thiết, kết nối cẩu tháp với nhà cao tầng
Tối đa an toàn trong hoạt động và chờ đợi.
K Ỹ THUẬT M ETA -H EURISTIC
Những kỹ thuật tối ưu hóa thường được dùng để tìm kiếm giải pháp cho TCL (Sanad HM, 2008) Vấn đề này đã được giải quyết bởi nhiều nhà nghiên cứu bằng cách sử dụng hai kỹ thuật khác nhau: thuật toán chính xác và thuật toán gần đúng Thuật toán chính xác là các mô hình toán học đã được dùng để tìm kiếm giải pháp tối ưu Tuy nhiên với những công trình lớn, phương pháp này cần đến một khối lượng tính toán cực lớn, tốn nhiều công sức (Sanad HM, 2008) Vì vậy, thuật toán gần đúng ra đời, đó chính là Meta-Heuristic, một giải pháp gần tối ưu trong một thời gian giải thuật ngắn, phù hợp cho những công trình phức tạp
Meta-Heuristic là một cách gọi chung cho các giải thuật heuristic trong việc giải quyết các bài toán tổ hợp khó Metaheuristic bao gồm những chiến lược khác nhau trong việc khám phá không gian tìm kiếm bằng cách sử dụng những
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN phương thức khác nhau và phải đạt được sự cân bằng giữa tính đa dạng và chuyên sâu của không gian tìm kiếm Một cài đặt thành công của metaheuristic trong một bài toán tổ hợp phải cân bằng giữa sự khai thác được kinh nghiệm thu thập được trong quá trình tìm kiếm để xác định được những vùng với những lời giải có chất lượng cao gần tối ưu Trong bài toán toán tối ưu, bằng việc tìm kiếm trong một vùng lớn của những giải pháp khả thi (feasible solutions), Meta-Heuristic có thể tìm được lời giải gần gần tối ưu trong một khoảng thời gian ít hơn, tốn ít công sức hơn Vì vậy, Meta-Heuristic là cần thiết cho những vấn đề tối ưu
Hai thành phần chính của phương pháp Meta-heuristic là:
Thăm dò (đa dạng hoá): Quá trình khám phá không gian tìm kiếm và tránh bẫy trong các cực tiểu địa phương
Khai thác (tăng cường): Quá trình cải thiện bất kỳ giải pháp hứa hẹn nào đã thu được cho đến thời điểm hiện tại
Meta-Heuristic có thể chia là hai loại: mô phỏng tự nhiên và trí thông minh nhân tạo theo như hình 3.1
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Hình 3.1 Phân loại kỹ thuật Meta-Heuristic
Trí thông minh bầy đàn:
Tối ưu hóa bầy đàn (PSO) Tối ưu hóa đàn kiến (ACO) Tối ưu hóa bầy cá (FSO) Tối ưu hóa bầy dơi (BSA) Tối ưu hóa bầy ong nhân tạo(ABC) Tối ưu hóa bầy đom đóm (FA)
Phương pháp dựa trên xác suất:
Mô phỏng luyện kim (SA)
Lai ghép meta-heuristic Thuật toán Memetic
Trí thông minh nhân tạo
Thuật toán di truyền (GA) Chiến lược tiến hóa (ES) Chương trình tiến hóa (EP) Tiến hóa vi phân (DE) Tìm kiếm phân tán (SS)
Phương pháp dựa trên trí nhớ:
Tìm kiếm Tabu (TS) Tìm kiếm phân tán (SS)
Heuristics tìm kiếm lân cận:
Tìm kiếm các biến lân cận
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
T RÍ THÔNG MINH BẦY ĐÀN (SI)
Trí thông minh bầy đàn (Swarm Intelligence – SI) là tập tính thu thập thức ăn của những hệ thống tự tổ chức trong tự nhiên SI được giới thiệu lần đầu tiên bởi (Beni.G., 1989) trong ngữ cảnh về hệ thống robot phần tử, là những phương pháp dựa trên quần thể ngẫu nhiên, được sử dụng trong những vấn đề tối ưu kết hợp mà trong đó thói quen thu thập của những cá thể từ những tương tác với môi trường của chúng sẽ được đưa vào
Các cá thể ở đây là những loài côn trùng bầy đàn như kiến, mối, ong cũng như là các cộng đồng động vật như là đàn chim hay đàn cá… Các bầy côn trùng là nguồn cảm hứng cho cái nhà nghiên cứu từ nhiều năm nay, cơ cấu đằng sau thói quen của chúng là một ẩn số trong thời gian dài Mặc dù những cá thể trong quần thể này không tinh vi nhưng chúng có thể làm được những công tác phức tạp bằng cách hợp tác cùng nhau, giao tiếp với nhau Phần lớn những khía cạnh của hoạt động thu thập của bầy côn trùng là tự tổ chức và không cần điều khiển
Lấy một ví dụ nhỏ, những con kiến cắt lá cắt một chiếc lá thành từng mảnh nhỏ, mang nó về tổ để làm thức ăn cho quần thể của chúng Những con kiến thợ thì sẽ tạo thành những chuỗi bằng cơ thể của chúng để có thể lắp đầy những khoảng trống giữa hai chiếc lá, những góc cạnh của hai chiếc lá sẽ được kéo ra và gắn kết bằng một loại tơ tiết ra từ kiến thợ Đó chính là trí thông minh bầy đàn
Hình 3.2 Những con kiến hợp tác nhau để cắt nhỏ miếng thức ăn
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
T ỐI ƯU HÓA BẦY ĐÀN (P ARTICLE S WARM O PTIMIZATION - PSO)
Thuật toán PSO được tìm ra bằng việc mô phỏng việc đàn chim bay đi tìm kiếm thức ăn, nó được giới thiệu lần đầu tiên vào năm 1995 bởi (J Kennedy, 1995) PSO khác với GA ở chỗ nó thiên về sử dụng sự tương tác giữa các cá thể trong một quần thế để khám phá không gian tìm kiếm
Lấy một ví dụ nhỏ để hiểu rõ quá trình tìm kiếm thức ăn của bầy chim Tại thời điểm tìm kiếm thức ăn, từng cá thể trong đàn sẽ bay theo một hướng bất kì nào đó, sau một thời gian tìm kiếm một vài cá thể sẽ tìm được nguồn thức ăn Tùy vào lượng thức ăn tìm kiếm, mà cá thể đó sẽ gửi một tín hiệu lại cho các cá thể ở vùng lân cận xung quanh mình, và từ đó sẽ lan truyền tới cả quần thể Dựa trên luồng thông tin nhận được, các cá thể trong bầy sẽ điều chỉnh hướng bay về nơi có nhiều nguồn thức ăn nhất, và từ đó đàn chim sẽ tìm ra nơi có nhiều thức ăn nhất trong cả một không gian tìm kiếm rộng lớn
Trong thuật toán PSO, một điểm hay một tọa độ được gọi là cá thể (particle), sẽ di chuyển trong trong không gian của vấn đề tối ưu Một quần thể của những cá thể sẽ được tạo ra ngẫu nhiên ban đầu Mỗi cá thể đại diện cho cho một đáp án và có một vị trí được đại diện bởi vector vị trí (positon vector) Một bầy những cá thể sẽ di chuyển trong không gian tìm kiếm, tìm kiếm vị trí tốt hơn bằng cách thay đổi vận tốc của nó theo như thói quen của bầy chim Tại mỗi giai đoạn, một hàm đại diện cho việc đo lường chất lượng sẽ được tính, mỗi cá thể sẽ lưu giữ vị trí tốt nhất của chúng (pbest), vị trí đó có liên hệ với sự phù hợp nhất mà nó đã được bằng vector vị trí Thêm vào đó, vị trí tốt nhất của tất cả các cá thể (gbest) cũng được lưu lại như là đầu ra cho giá trị tối ưu
Các bước trong sơ đồ thuật toán được trình bày như sau:
(1) Tạo quần thể ban đầu: PSO bắt đầu bằng việc tạo quần thể với n cá thể (particle) ngẫu nhiên trong vùng tìm kiếm
(2) Đánh giá sự phù hợp: Đánh giá sự phù hợp của quần thể ở lần lặp đầu tiên (3) Tính toán vận tốc: Sự di chuyển của các cá thể sẽ được chỉ dẫn bởi vị trí tốt
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN nhất của chúng trong không gian tìm kiếm (pbest) cũng như là vị trí tốt nhất của các quần thể (gbest) theo như Hình 3.3 Khi mà vị trí tốt hơn được tìm thấy, hai yếu tố trên sẽ dẫn hướng sự chuyển động của cả đàn theo Công thức (1) Trong suốt vòng lặp của thuật toán, vận tốc và vị trí của các cá thể sẽ được cập nhật cho tới khi yêu cầu dừng lại thỏa mãn
Hình 3.3 Vị trí cập nhật của từng cá thể theo pbest và gbest
Trong đó, v t i ( 1) là vận tốc của cá thể i ở lần lặp (t+1), w là một tham số để kiểm soát sự ảnh hưởng của vận tốc trước đó và được gọi là trọng số quán tính (0~1), x t i ( ) là vị trí của cá thể i tại lần lặp (t), x gbest là vị trí tốt nhất của cá thể tại lần lặp (t), x gbest là vị trí tốt nhất của cả quần thể trong lần lặp, r1 và r2 là hai giá trị ngẫu nhiên phân bố đều trong khoảng [0,1], c1 và c2 là hai tham số gọi là hệ số gia tốc (1~4)
Trọng số quán tính giúp lưu giữ hướng đi của lần bay trước, giúp cho cá thể không đổi hướng đột ngột Hệ số c1 được gọi là thành phần nhận thức, đó là xu hướng của cá thể trở về vị trí tốt nhất lần trước đó, hệ số c2 được gọi là thành phần bầy đàn,đó là hoạt động của cá thể với những cá thể lân cận (4) Tính toán vị trí mới: Vị trí mới của cá thể sẽ được tính bằng cách cộng với
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN vận tốc của lần lặp tiếp theo (Công thức (2)) x t i ( 1)x t i ( )v t i ( 1)
(5) Đánh giá sự phù hợp: Tính giá trị phù hợp với vị trí mới của các cá thể (6) Cập nhật pbest và gbest: Cập nhật giá trị pbest và gbest nếu lần lặp hiện tại có giá trí phù hợp tốt hơn
(7) Kết thúc vòng lặp: Nếu vòng lặp chưa đạt được điều kiện kết thúc, vòng lặp sẽ trở lại bước ((3)~(6)) , nếu thỏa điều kiện kết thúc thì sẽ dừng vòng lặp và xuất ra kết quả
Tóm lại, sơ đồ thuật toán được trình bày như Hình 3.4:
Hình 3.4 Sơ đồ thuật toán PSO
Một trong những lý do mà thuật toán PSO hấp dẫn những nhà nghiên cứu là bởi nó có rất ít những tham số cần phải điều chỉnh, và thích hợp cho nhiều ứng dụng Đầu tiên có thể kể đến là mạng nơ ron nhân tạo (ANN), PSO được sử dụng không chỉ phát triển trọng lượng mạng lưới mà còn là cấu trúc mạng lưới (Kennedy,
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN 2001), từ đó giúp chúng ta chẩn đoán sợ hãi của con người (Eberhart, 1999), kiểm soát mỏ đào (Tandon, 2000) Nhiều lĩnh vực cũng đã được ứng dụng, bao gồm viễn thông, kiểm soát, khai thác dữ liệu, thiết kế, tối ưu hóa tổ hợp, hệ thống điện, xử lý tín hiệu, games, mô phỏng…
Trong quản lý xây dựng, PSO đã được thực hiện trong một số vấn đề tối ưu hóa như lập kế hoạch dự án bị ràng buộc tài nguyên (H Zhang, 2006), tối ưu thiết kế và bố trí cơ sở vật chất (Lien, 2012), thiết kế kết cấu (J P Paul, 2004), các vấn đề tối ưu hóa chi phí thời gian (Tavakolan, 2011) và cách bố trí mặt bằng không đồng đều trong công trường (Wang H Z., 2008)
Theo như (Q.Bai, 2010) có những ưu điểm như sau:
Là thuật toán dựa trên trí thông minh nên có thể áp dụng cho nghiên cứu khoa học và kỹ thuật
PSO không có những tính toán bị trùng lắp và đột biến Việc tìm kiếm dựa vào tốc độ của cá thể Chỉ có cá thể tối ưu nhất mới có thể truyền thông tin cho các cá thể khác, tốc độ của việc tìm kiếm là rất nhanh
Tính toán của PSO rất đơn giản Khi so sánh với các tính toán khác, nó có khả năng tối ưu hóa lớn hơn và có thể hoàn thành dễ dàng
PSO thừa hưởng code là con số thực, nó được quyết định trực tiếp bởi các giải pháp Số lượng chiều trong không gian thì bằng với sự ổn định của giải pháp
Tuy nhiên, thuật toán này cũng có những nhược điểm:
T HUẬT TOÁN BẦY ONG NHÂN TẠO (A RTIFCIAL B EE C OLONY - ABC)
ABC là một thuật toán tối ưu dựa trên thói quen tìm kiếm thức ăn của bầy ong mật, được đề xuất bởi (Karaboga, 2006) Lấy một ví dụ nhỏ như sau, các chú ong thợ đi ra ngoài tổ và tìm kiếm các nguồn thức ăn Nếu tìm được bờ hoa bụi rậm nào có mật các chú này sẽ quay lại tổ Ở tổ thì có sẵn khá nhiều chú ong đang chờ thông tin từ các chú ong thợ này Ong thợ khi về tổ, sẽ trình diễn một điệu nhảy (waggle dance) để thông báo về vị trí và số mật của nguồn thức ăn nó vừa tìm được Những chú ong đang chờ đó nếu thấy hứng thú với nguồn thức ăn sẽ đi theo chú ong thợ để khai thác nguồn thức ăn Khi mà một nguồn thức ăn cạn kiệt, chú ong thợ tìm ra nó sẽ có nhiệm vụ đi kiếm nguồn thức ăn mới, đó là toàn bộ quá trình tìm kiếm thức ăn của những chú ong cần mẫn
Trong mô hình ABC, bầy ong được chia là ba nhóm gồm: ong thợ (employed bees), ong quan sát (onlooker bees), ong do thám (scout bees) Các ong thợ sẽ tìm kiếm ngẫu nhiên để tìm được những vị trí thức ăn (các giải pháp của bài toán), sau đó bằng điệu nhảy của chúng, ong thợ chia sẻ số lượng mật có trong nguồn thức ăn (chất lượng của giải pháp) cho các chú ong quan sát đang chờ sẵn ở khu vực điệu nhảy (dance area) ở trong tổ Thời gian của điệu nhảy đại diện số lượng mật (giá trị phù hợp) của nguồn thức ăn đã được khai phá bởi ong thợ Các ong quan sát sẽ xem các điệu nhảy để chọn vị trí nguồn thức ăn, dựa vào xác suất nói lên chất lượng của nguồn thức ăn (chất lượng của giải pháp) Tất yếu, một vị trí nguồn thức thức ăn tốt sẽ thu hút được nhiều ong hơn Khi mà các ong quan sát và ong do thám tìm được nguồn thức ăn mới, chúng sẽ biến thành ong thợ Sau khi nguồn thức ăn được kiểm tra (đánh giá giải pháp), các ong thợ liên quan tới nguồn thức ăn đó sẽ bỏ đi và trở thành ong quan sát va ong do thám Trong thuật toán này, việc tìm kiếm và khai phá sẽ được thực hiện cùng lúc, các ong thợ và ong quan sát sẽ thực hiện việc tìm kiếm, trong khi đó, ong do thám sẽ kiểm soát quá trình tìm kiếm
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Sơ đồ thuật toán ABC được trình bày như Hình 3.5 dưới đây:
Hình 3.5 Sơ đồ thuật toán ABC
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Ứng dụng của thuật toán ABC là rất nhiều và rộng, nó được sử dụng trong tính toán mạng lưới (A Gómez-Iglesias, 2010), đánh giá hình ảnh (Lopes, 2009), khoa học máy tính (Singh, 2009), hệ thống giao tiếp (S.K Udgata, 2009)…
Trong quản lý xây dựng, thuật toán ABC được sử dụng trong những vấn đề tối ưu như vấn đề đánh giá nghịch đảo (F Kang, 2009), tối ưu composite đa mục tiêu (S.N Omkar, 2009), tối ưu hóa kết cấu dàn (Sonmez, 2010), tối ưu hóa mặt bằng công trường (Li-Chuan Lien, 2012), tối ưu hóa vị trí cần trục (L.-C Lien, 2014)…
Có thể thấy thuật toán này đã được áp dụng khá nhiều trong ngành quản lý xây dựng
Theo như (Eduardo Gerhardt, 2012), thuật toán ABC có những ưu điểm nổi trội sau:
Dễ thực hiện và ứng dựng được nhiều vấn đề như hàm phức tạp, vấn đề liên tục và rời rạc, trộn lẫn nhiều biến…
Không yêu cầu hàm mục tiêu phải khác biệt, liên tục hoặc đại diện cho tính toán
Có khả năng khai phá vùng lân cận
Tối ưu toàn cầu vì tìm kiếm hiệu quà thậm chí với bài toán độ phức tạp cao
Tuy nhiên, thuật toán vẫn tồn tại những khuyết điểm như sau:
Số lượng lớn các lần đánh giá hàm phù hợp
Quần thể các giải pháp khiến chi phí tính toán lớn do nhiều vòng lặp, nhiều dữ liệu
Thuật toán có nhiều tham số
Dễ bị mắc kẹt trong tối ưu địa phương khi gặp các vấn đề đa thức phức tạp
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
P HÂN PHỐI L EVY F LIGHTS
Levy Flight được giới thiệu lần đầu tiên bởi nhà toán học người Pháp tên Paul Levy Levy Flight một thống kê mô tả chuyển động phát triển từ chuyển động Brownian truyền thống cách đó hơn một trăm năm Ý tưởng của phân phối Levy Flights là từ một vị trí ban đầu, cá thể có thể di chuyển đến một vị trí mới Khoảng cách giữa hai vị trí là một phân phối xác xuất, đó chính là phấn phối Levy Flights Với phân phối Brownian, mỗi bước nhảy thường nhỏ và độ lệch chuẩn của phân phối là giới hạn, tuy nhiên, với Levy Flights, những bước nhảy nhỏ xen kẽ với những bước nhảy lớn hơn (hay còn gọi là “bay”) và làm cho độ lệch chuẩn của phân phối thay đổi
Hình 3.6 Minh họa Levy Flights
Levy Flight tạo những bước nhảy ngẫu nhiên, mà những bước nhảy được tạo ra theo phân phối mang đặc trưng gần đúng theo hàm mật độ xác xuất theo Công thức (3) dưới đây:
0 thì phân phối trong công thức trên không bình thường và không có ý nghĩa
0 1 thì giá trị mong đợi có khả năng không tồn tại
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Levy Flight được sử dụng nhiều trong các lĩnh vực vật lý, ở đó các nhà nghiên cứu sử dụng Levy filght để giải quyết các vấn đề tối ưu liên quan đến đo đạc, truyền động Bên cạnh đó, nhiều nghiên cứu đã áp dụng mô hình di chuyển dựa trên Levy Flights kết hợp với một thuật toán hoặc nhiều thuật toán khác, có thể kể đến như là phép lai Meta-heuristics Một số kết hợp cho kết quả là thuật toán lai có nhiều ưu điểm hơn so với thuật toán gốc.
T HUẬT TOÁN ĐOM ĐÓM (F IRELY A LGORITHM - FA)
FA là một thuật toán bầy đàn mới được phát triển bởi (Yang X , 2008), lấy cảm hứng từ ánh sáng phát ra từ những con đom đóm trong tự nhiên để giải quyết những vấn đề tối ưu khó nhất Đom đóm là loại côn trùng có trên 2000 chủng loại trên thế giới, chúng chủ yếu sống ở những vùng có khí hậu nhiệt đới và hoạt động chủ yếu về đêm Loài côn trùng này được rất nhiều nhà sinh vật học nghiên cứu bởi vì sự phát quang kì lạ của chúng trong đêm, khiến chúng giống như những tia lửa vậy Ánh sáng phát quang này được tạo ra từ những phản ứng hóa học và có một mục đích chủ yếu là hấp dẫn bạn tình, ngoài ra, nó còn giúp cảnh báo cho kẻ thù của chúng Cuộc sống cộng đồng của đom đóm không chỉ là tìm kiếm thức ăn mà còn là giao phối, những tập tính này có quan hệ mật thiết với ánh sáng phát quang của chúng, là nền móng sinh học chủ yếu để phát triển thuật toán đom đóm
Thuật toán đom đóm sử dụng ba giả thiết lý tưởng sau (Yang X , 2008):
Tất cả đom đóm là đa giới tính nên mỗi đom đóm có thể hấp dẫn những con đom đóm khác, không phụ thuộc giới tính
Sự hấp dẫn tỉ lệ với độ sáng của chúng, vì vậy giữa hai đom đóm đang phát sáng, đom đóm có độ sáng ít hơn sẽ di chuyển về phía đóm đóm sáng hơn Sự hấp dẫn và độ sáng sẽ giảm đi nếu khoảng cách giữa hai đom đóm gia tăng Nếu không có đom đóm nào sáng hơn một đom đóm cụ thể, nó sẽ di chuyển tự do
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Độ sáng của một con đom đóm thì bị ảnh hưởng va quyết định bởi khung cảnh trong hàm mục tiêu
Hình 3.7 Sự di chuyển của bầy đom đóm Để có thể tạo ra thuật toán FA, hai yếu tố quan trọng cần được xác định là sự biến thiên của sự hấp dẫn và độ sáng của đom đóm Độ sáng I(r) là các giải pháp của vấn đề và tỉ lệ với giá trị của hàm phù hợp Hàm I(r) biến thiên theo Công thức (4):
I 0 là độ sáng của nguồn sáng, là hệ số hấp thụ ánh sáng, r là khoảng cách từ vị trí của đom đóm tới nguồn sáng
Sự hấp dẫn của đom đóm có liên hệ với độ sáng I thấy được bởi đom đóm gần kề nên ta có hàm ( )r biến thiên theo Công thức (5) dưới đây:
0 là độ hấp dẫn tại trí r = 0, là hệ số hấp thụ ánh sáng, r là khoảng cách giữa hai đom đóm
Có thể thấy được rằng, độ sáng I và độ hấp dẫn là khá giống nhau Trong khi độ sáng là một giá trí tuyệt đối của ánh sáng phát ra bởi đom đóm thì độ hấp dẫn là một thước đo cho ánh sáng được nhìn thấy bởi đom đóm khác Khi mà đom đóm i
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN bị hấp dẫn bởi đom đóm j thì nó sẽ di chuyển về đom đóm j theo Công thức (6) và (7):
0 r ij ( ) i i j i i x x e x x (7) rij là khoảng cách giữa đom đóm i và j, d là số chiều của không gian tìm kiếm, xik và xjk lần lượt là tọa độ của cá thể i và j trong không gian d chiều, là một tham số ngẫu nhiên trong khoảng (0~1), i là phân bố đều ngẫu nhiên trong khoảng (0~1) - 0.5 Khi mà 0 0, sự di chuyển là các bước ngẫu nhiên Trong khi đó nếu
0, nó là một trường hợp đặt của PSO với độ hấp dẫn là không đổi trong không gian tìm kiếm, do đó, tham số có ảnh hưởng rất lớn tới tốc độ hội tụ, nên thường được chọn dựa vào vấn đề tối ưu, phổ biến là từ 0.1 tới 10
Các bước trong sơ đồ thuật toán FA được trình bày như sau:
(1) Tạo quần thể ban đầu: Thuật toán bắt đầu bằng việc tạo quần thể n ngẫu nhiên trong không gian tìm kiếm
(2) Tính toán sự phù hợp: Đánh giá sự phù hợp của các cá thể trong quần thể Ở giai đoạn này, độ sáng của đom đóm chính là giá trị phù hợp
(3) So sánh sự phù hợp: Chọn đom đóm (i) và so sánh giá trị phù hợp với tất cả n đom đóm từng con một, gọi là đom đóm (j)
(4) Di chuyển về phía trước: Nếu hàm phù hợp của đom đóm (i) nhỏ hơn của đom đóm (j) thì nó sẽ di chuyển về phía j theo Công thức (6) & (7) ở trên (5) Kết thúc vòng lặp: Nếu vòng lặp chưa thỏa điều kiện ngừng lặp thì sẽ thực hiện lại các bước từ (2)~(4) Nếu thỏa điều kiện thì sẽ dừng vòng lặp và xuất ra giá trị cuối cùng
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Sơ đồ thuật toán FA được trình bày như Hình 3.8 dưới đây:
Hình 3.8 Sơ đồ thuật toán FA
Nhìn chung, FA có thể chia nhỏ quần thể thành những nhóm nhỏ bởi sự thu hút lân cận vẫn mạnh hơn sự thu hút khoảng cách xa, nhờ đó FA phù hợp với những vấn đề không tuyến tính một cách tự nhiên và hiệu quả (Iztok Fister, 2013) Ngày nay, FA được sử dụng giải quyết nhiều vấn đề như: tối ưu hóa kết cấu (A.H.Gandomi, 2011), vấn đề tiến độ luồng công việc (M Sayadi, 2010) – một dạng vấn đề được xếp vào hàng NP-hard, nén ảnh kỹ thuật số (Horng, 2012), phân tán và phân loại (Senthilnath, 2011)…
Với các vấn đề trên, thuật toán FA được nhận xét là có kết quả tốt hơn so với các thuật toán khác như ACO, ABC, PSO… nên hiện được ứng dụng khá đa dạng và trong nhiều lãnh vực về kỹ sư, đặc biệt là tối ưu hóa công nghiệp Trong quản lý xây dựng thì FA chưa được sử dụng nhiều với chỉ hai bài báo của (S.Talatahari) và
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN (S Gholizadeh, 2012) Bảng 3.1 cho ta thấy được số lượng các bài báo mà trong đó
Bảng 3.1 FA trong lãnh vực kỹ sư
Lãnh vực kỹ sư Số lượng bài báo
Tối ưu hóa công nghiệp
Mạng lưới cảm biến không dây
FA là một thuật toán mới, và nó có những ưu điểm vượt trội sau:
Các cá thể tự tìm lấy vị trí tốt hơn cho chúng bằng cách so sánh độ sáng với các đom đóm khác, do đó không có gbest và pbest như PSO, từ đó giúp FA tránh khỏi hội tụ địa phương và tìm ra tối ưu toàn cầu trong ít lần lặp hơn
Tỉ lệ hội tụ cao
Không cần nhiều bộ nhớ cho thuật toán nhưng vẫn có thể giải quyết các bài toán phức tạp
Sử dụng ít tham số
Bên cạnh đó, thuật toán này vẫn có những nhược điểm:
Giá trị tham số là cố định và không đổi theo thời gian
Tốc độ hội tụ là chậm do không lưu lại vị trí tốt nhất của các cá thể ở mỗi lần lặp
Lượng cá thể càng lớn thời gian tính toán càng lâu
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Thuật toán vẫn có thể mắc phải tối ưu địa phương nếu có nhiều vị trí tối ưu địa phương
Từ những nhược điểm trên, việc cải tiến FA là cần thiết, đặc biệt là thời gian hội tụ vì sự di chuyển của các đom đóm là độc lập Chương sau sẽ nói về việc cải tiến
FA bằng cách kết hợp với thuật toán khác.
T HUẬT TOÁN TIẾN HÓA VI PHÂN (D IFFERENTIAL E VOLUTION – DE)
Thuật toán tiến hóa vi phân (DE) là thuật toán được giới thiệu lần đầu bởi (K.V.Price, 2005) DE có cấu trúc gần giống như thuật toán di truyền (GA), sử dụng các bước như lai ghép và đột biến để tạo ra các cá thể đời sau Tuy nhiên, DE sẽ khác với thuật toán GA truyền thống ở những thuộc tính của thế hệ con sau này và cách chọn lọc theo thuật toán tham lam (greedy) (Okdem, 2004)
DE tìm kiếm giải pháp tối ưu thông qua việc giữ lại một số lượng các giải pháp và tạo ra các giải pháp mới bằng cách kết hợp các thành phần hiện hữu với nhau bằng một hàm của nó, sau đó tiến hành so sánh và giữ lại các giá trị tốt nhất Theo như (X.-S Yang, 2014), DE là phiên bản phát triển hơn của của GA vì các bước lai ghép và đột biến có công thức rõ ràng chứ không ngẫu nhiên, điều đó rất tốt cho việc tìm kiếm giải pháp tối ưu thông qua việc tìm kiếm và khai thác không gian tìm kiếm
DE là thuật toán dựa trên quần thể giống như GA nên có các bước cơ bản tương tự là đột biến, lai ghép và chọn lọc Tuy nhiên DE lại coi quá trình đột biến như là nguồn động cơ tìm kiếm và quá trình chọn lọc dẫn hướng cho sự tìm kiếm tới những giải pháp hứa hẹn trong không gian tìm kiếm Bằng cách sử dụng những cá thể hiện hữu trong quần thể tạo ra những vector con, quá trình lai tạo sẽ xáo trộn thông tin về những tổ hợp thành công một cách có hiệu quả hơn, tạo điều kiện tìm vùng tìm kiếm tốt hơn (Okdem, 2004)
Các bước trong sơ đồ thuật toán được trình bày như sau:
(1) Khởi tạo quần thể ban đầu: DE bắt đầu bằng việc tạo ra quần thể n vector D
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN chiều ngẫu nhiên trong không gian tìm kiếm Vetor thứ i trong quần thể được thể hiện theo Công thức (8):
Trong đó D là số chiều trong không gian tìm kiếm, i là giá trị ngẫu nhiên đại diện cho cá thể, G = [1,2,…,Gmax] là các thế hệ trong tiến hóa vi phân
(2) Đánh giá hàm phù hợp: Đánh giá các giá trị phù hợp của các cá thể trong quần thể ở lần lặp đầu tiên
(3) Quá trình đột biến: Với mỗi vector x i G , , vector đột biến v i G , 1 có thể được tạo ra theo nhiều cách, tuy nhiên, có 2 cách thường hay sử dụng là đột biến DE/rand/1 và DE/best/1 Ở đây ta sử dụng phương pháp DE/rand/1 theo Công thúc (9) dưới đây:
, 1 v i G là vector đột biến mới, i; r1; r2; r3 = [1,2…n] là giá trị ngẫu nhiên được lựa chọn trong n cá thể trong quần thể và các giá trị phải khác nhau F là hệ số biên độ đột biến trong khoáng giá trị [0.3~0.9], hệ số này có ảnh hưởng tới việc khai thác không gian tìm kiếm, giúp tăng tốc độ hội tụ, tránh được cái tối ưu cục bộ nhưng giá trị càng lớn càng làm chậm quá trình tìm kiếm (Feoktistov V , 2006) Vì vậy, chưa thể có được giá trị tối ưu của hệ số F này
(4) Quá trình lai ghép: Mục đích của quá trình lai ghép là tạo ra một vector mới bằng cách trộn lẫn các thành phần của vector mẹ X i G , x 1, ,G i , x 2, ,G i , , x D, ,G i
theo Công thức (10) dưới đây:
, , 1 if rand CR or if rand > CR or j i G i j i G j i G i v j rn u x j rn
Trong đó u j i G , , 1 là vector thành phần thứ j của vector mới trong không gian
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
D chiều j 1, 2, , D , rand là một giá trị ngẫu nhiên trong khoảng từ [0,1],
CR là hằng số lai ghép trong khoảng [0.2~0.9] và rn i 1, 2, , D được chọn ngẫu nhiên, rn i đảm bảo rằng vector mới u j i G , , 1 luôn có ít nhất một tính chất được lấy tử vector đột biến Nếu như giá trị CR càng cao, sẽ làm gia tăng sự đa dạng quần thể và làm tăng tốc độ hội tụ, tuy nhiên, tỉ lệ hội tụ sẽ giảm xuống Ngược lại, giá trị CR càng nhỏ sẽ làm chậm quá trình tìm kiếm (5) Đánh giá hàm phù hợp: Tính toán lại hàm phù hợp của các vector trong quần thể
(6) Quá trình chọn lọc: Tất các các cá thể trong quần thể có cơ hội được chọn như nhau Cá thể con được tạo ra sau quá trình đột biến và lai ghép U i G , sẽ được đánh giá Nếu giá trị hàm phù hợp của chúng lớn hơn vector mẹ X i G , thì sẽ được giữ lại, nếu vector mẹ có giá trị tốt hơn thì vector mẹ sẽ được giự lại trong quần thể Quá trình này được thể hiện theo Công thức (11) dưới đây:
Trong đó f là giá trị hàm phù hợp của cá thể trong quần thể
(7) Kết thúc vòng lặp: Nếu vòng lặp chưa thỏa điều kiện dừng thì sẽ thực hiện lại các bước từ (3)~(6) Nếu thỏa điều kiện thì sẽ dừng vòng lặp và xuất ra giá trị cuối cùng
Sơ đồ thuật toán DE được trình bày như Hình 3.9 dưới đây:
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Hình 3.9 Sơ đồ thuật toán DE
DE đã được ứng dụng vào trong nhiều các lãnh vực khác nhau như là tối ưu hóa quá trình tổ hợp và những vấn đề thiết kế (Babu, 2006), tối ưu hệ thống cung cấp nước (Rakesh, 2003) Ngoài ra, trong lĩnh vực xây dựng, cũng đã có một số nghiên cứu như là vấn đề tối ưu chi phí (H H Zhong, 2012), hệ thống an toàn (Viadana, 2011) và vấn đề kết cấu (Z Juan, 2011)
Nhìn chung thuật toán DE có những ưu điểm vượt trội như sau:
Tốc độ hội tụ nhanh và sử dụng ít các tham số điều khiển (K.V.Price, 2005)
So với thuật toán GA truyền thống, DE sử dụng đơn giản hơn và áp dụng trực tiếp hơn Ngoài ra, DE là khá đơn giản để có thể viết code, đó là điều rất quan trọng (D Karaboga, 2004)
DE rất thich hợp cho việc tối ưu rời rạc và số nguyên, khá là hiệu quá cho việc tối ưu ráng buộc không tuyến tính theo hàm thưởng phạt Đó là
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN những ưu điểm lớn nhất của DE (Feoktistov V , 2006)
Tuy nhiên, thuật toán này vẫn có những khuyết điểm như sau:
DE có nhiều lúc có tỉ lệ hội tụ thấp cho những hàm phức tạp
Hội tụ sớm trong vùng tối ưu cục bộ với những vấn đề đa mode, mất đi sự đa dạng của quần thể
DE là bài toán trade off giữa hội tụ và loại giải pháp.
L AI GHÉP THUẬT TOÁN (H YBRID M ETAHEURISTIC )
Như đã nói ở các chương trước, phương pháp Metaheuristic được nghiên cứu rất nhiều với vô số các thuật toán như GA, ABC, FA…Tuy nhiên, khi áp dụng riêng lẻ các thuật toán này, chúng đều có những khuyết điểm và không thể giải quyết vấn đề một cách tối ưu nhất và khả năng không hội tụ có thể xảy ra Vào thưở ban đầu, các nhà nghiên cứu đều cho rằng thuật toán của họ nhìn chung là tốt nhất và tuân thủ theo những cách rất cứng nhắc Tuy nhiên, trong thực tế, các bài toán khó cần một thuật toán đặc biệt mà ở đó các thành phần hợp lý nhất được kết hợp với nhau, và rõ ràng kết hợp các thuật toán là cần thiết
Trong mười năm trở lại đây, để giải quyết vấn đề trên, việc lai ghép thuật toán (Hybrid Metaheuristic) đã được đề xuất rộng rãi giữa các nhà nghiên cứu Các nhà nghiên cứu kết hợp nhiều thành phần của các thuật toán, thường tạo ra từ những thuật toán trong các lãnh vực khác về vấn đề tối ưu Ý tưởng chủ đạo đằng sau việc kết hợp các thuật toán khác nhau là lợi dụng thế mạnh của từng thuật toán, vì vậy, lai ghép được cho là mang lại lợi ích (Christian Bluma, 2011), những sự kết hợp chính xác là chìa khóa cho việc giải quyết những vấn đề khó một cách nhanh nhất Rủi thay, việc lựa chọn một cách lai ghép hiêu quả nhìn chung là một công việc khó và nó đòi hỏi việc thông thạo nhiều mảng khác nhau trong việc tối ưu vì một thuật toán lai ghép có thể tốt cho vấn đề này nhưng lại không tốt trong vấn đề khác Phân loại cho việc lai ghép thuật toán được giới thiệu lần đầu bởi (Talbi, 2002), nó dựa vào vấn đề trong thiết kế và áp dụng của thuật toán Thiết kế tập trung vào
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN cấu trúc của những thuật toán (Hình 3.10), trong khi áp dụng liên quan tới phần cứng, mô hình của chương trình và môi trường mà thuật toán sẽ chạy (Hình 3.11)
Hình 3.10 Phân loại lai ghép thuật toán theo thiết kế Ở mức độ thấp, chỉ một vài hàm trong thuật toán này được thay bởi thuật toán khác, trong khi với mức độ cao, những thuật toán khác nhau được đưa vào và không có mối liên hệ khi làm việc giữa chúng Trong việc lai ghép lặp lại, một chuỗi những thuật toán được đưa vào liên tiếp nhau, cái sau sử dụng đầu ra của cái trước, ngược lại làm việc nhóm là mô hình tối ưu họp tác chung mà trong đó các thuật toán làm việc song song nhau, mỗi thuật toán phụ trách một vùng tìm kiếm
Lặp lại Làm việc nhóm
Lặp lại Làm việc nhóm
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Hình 3.11 Phân loại lai ghép thuật toán theo áp dụng
Phần lớn các thuật toán lai ghép được đề ra sử dụng phương pháp liên tiếp, tùy vào độ lớn của vấn đề mà cách áp dụng song song được cân nhắc Phương pháp song song có thể chia thành ba nhóm nhỏ như sau:
Tĩnh: số lượng các công việc và vị trí công việc được tạo ra theo thời gian cho trước
Động: số lượng công việc là cố định trong khoảng thời gian cho trước nhưng vị trí công việc được quyết định và thay đổi trong lúc chạy
Thích nghi: công việc được tạo ra và ngưng trong lúc chạy
Với những vấn đề tối ưu tổ hợp (Combinatorial Optimization Problem – COP), (J Puchinger, 2005) đề xuất việc lai ghép giữa thuật toán chính xác (MIP, branch- and-bound (B&B)…) và các Metaheuristics theo như Hình 3.12 bên dưới:
Những máy tính cụ thể
Những máy tính cho mục đích chung
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Hình 3.12 Phân loại lai ghép thuật toán chính xác và Metaheuristics
Phương pháp kết hợp này chia làm hai loại chính:
Kết hợp hợp tác: Các thuật toán trao đổi thông tin, nhưng không phải là một phần của nhau Các thuật toán chính xác và Metaheuristics có thể được thực hiện theo trình tự, liên kết hoặc song song với nhau
Sự kết hợp tích hợp: Bằng cách kết hợp có nghĩa là một kỹ thuật là một thành phần cấp dưới của một kỹ thuật khác Tức là, có một thuật toán chủ, nó có thể là thuật toán chính xác hoặc Metaheuristics, và một thuật toán kết hợp
Sau này khi các nhà nghiên cứu bắt đầu cân nhắc tới việc lại ghép, họ bắt đầu nghĩ về việc kết hợp các Metaheuristics với nhau bởi các Metaheuristics là xu thế hiện nay thay vì sử dụng các thuật toán chính xác để lai ghép với Metaheuristics như (J Puchinger, 2005) đã làm Việc lai ghép các Metaheuristics thiên về việc sử dụng các tìm kiếm lân cận với những phương pháp dựa vào quần thể (C Blum J P., 2011) đề xuất các phép lai các Metaheuristics với nhau để giải quyết vấn đề tối ưu tổ hợp cho mục tiêu đơn lẻ, bài viết hướng dẫn rất cụ thể cách kết hợp các thuật toán cũng như ứng dụng của chúng
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Nhìn chung, khi lai ghép Meta-heuristics, phương pháp dựa vào quần thể thì tốt trong việc nhận diện những vùng hứa hẹn của không gian tìm kiếm, và trong các vùng đó, tìm kiếm lân cận sẽ giúp cho ta tìm kiếm kết quả tốt nhất nhanh hơn Đó chính là lý do cách lai ghép này rất có ích
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
THUẬT TOÁN LAI GHÉP HFA
K ẾT HỢP THUẬT TOÁN PSO VÀ FA
Lai ghép giữa PSO và FA với mục đích ban đầu là tận dụng được thế mạnh về khả năng tìm kiếm cục bộ của PSO và thế mạnh về tìm kiếm toàn cục của FA Như đã nói ở chương 3, FA là một thuật toán tốt và nó giúp ta tránh phải những cái bẫy của tối ưu cục bộ, tuy nhiên, vì tránh những cái bẫy đó mà nó có thời gian hội tu khá lâu Nguyên do ở đây là do thuật toán FA không lưu lại lịch sự về các giá trị tốt nhất trong mỗi lần lặp (gbest và pbest), để cải thiện việc này ta kết hợp FA với PSO, một thuật toán có khả năng lưu lại lịch sử tìm kiếm và rất mạnh về tìm kiếm địa
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN phương Để lai ghép được hai thuật toán này, ta kết hợp thuật toán PSO và FA theo cách thực hiện tuần tự, là cách lai ghép khác phổ biến và đơn giản Ở giai đoạn ban đầu, PSO sẽ được đưa vào và tạo ra một quần thể gồm những cá thể đom đóm (particle firely), những cá thể này sẽ tìm kiếm trong không gian bài toán theo từng bước trong thuật toán PSO (Chương 3, mục 3.4) Nhiệm vụ của PSO là tạo ra và ghi nhớ các vị trí tốt nhất của đàn đom đóm, đó chính là gbest và pbest Ở trong thuật toán
FA, việc ghi nhớ này là không được thực hiện và do đó ta áp dụng PSO sẽ giúp tập trung vào việc tìm kiếm địa phương thông qua giá trị gbest và pbest
Kế đến, sau khi PSO kết thúc và giá trị tốt nhất đã được lưu lại, thuật toán FA được đưa vào để thực hiện quá trình tìm kiếm toàn cầu theo các bước trong thuật toán FA (Chương 3, mục 3.7), sau đó ta cập nhật lại gbest và pbest Nếu chưa tìm được giá trị tối ưu, ta quay trở lại quá trính tìm kiếm theo PSO Nhìn chung, khi kết hợp hai thuật toán này với nhau ta sẽ có được sự cân bằng giữa tìm kiếm địa phương và tìm kiếm toàn cầu, giúp cho việc tìm kiếm kết quả tối ưu diễn ra nhanh hơn Tóm tắt các bước làm có việc kết hợp này được trình bày như hình 4.1:
Hình 4.1 Kết hợp thuật toán PSO và FA Quần thể đom đóm
• Khởi tạo quần thể cá thể đom đóm ban đầu
• Áp dụng các bước trong thuật toán PSO
• Tìm ra giá trị pbest và gbest
• Áp dụng các bước trong thuật toán FA
• Cập nhật lại pbest và gbest
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
K ẾT HỢP THUẬT TOÁN DE VÀ FA
Việc lai ghép giữa thuật toán DE và FA được giới thiệu bởi (Afnizanfaizal Abdullah, 2012) Theo đó, DE và FA được kết hợp theo cách song song, theo đó mỗi thuật toán hoàn toàn không trao đổi thông tin với nhau và làm việc độc lập, giá trị tốt nhất của mỗi thuật toán sẽ được lưu lại
Lúc này quần thể sẽ chia thành 2 nhóm nhỏ, nhóm đầu tiên gồm những cá thể có giá trị phù hợp cao nhất sẽ tiến hành từng bước trong thuật toán FA (Chương 3, mục 3.7), nhóm thứ 2 gồm những cá thể có giá trị phù hợp nhỏ hơn sẽ tiến hành từng bước trong thuật toán DE (Chương 3, mục 3.8)
Nhìn chung, FA là một thuật toán tìm kiếm không gian rất tốt nhưng thời gian tìm kiếm là quá lâu vì nó so sánh quá nhiều giữa các đom đóm với nhau, Vì vậy, để giảm thiểu đi số lượng so sánh cần dùng trong FA, ta áp dụng thêm DE DE giúp tăng sự đa dạng trong quần thể và tốt trong việc khám phá không gian tìm kiếm, nhưng yếu trong việc khai phá cục bộ (Lampinen, 2003) Kết hợp hai thuật toán sẽ giúp tăng tốc độ hội tụ và độ chính xác của thuật toán
Sơ đồ lai ghép thuật toán FA và DE được trình bày như Hình 4.2 dưới đây:
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Hình 4.2 Kết hợp thuật toán FA và DE
K ẾT HỢP PHÂN PHỐI L EVY F LIGHTS VÀ FA
Trong thuật toán FA, quá trình di chuyển của đóm đóm khi bị thu hút bởi đom đóm khác sẽ di chuyển về phía đom đóm đó FA được cho là có tốc độ hội tụ khá chậm nên để cải tiến khả năng di chuyển của chúng, giúp tìm ra điểm tối ưu nhanh hơn và tăng tỉ lệ hội tụ ta có thể áp dụng Levy Flights
Nhiều nghiên cứu chỉ ra rằng, thói quan bay của nhiều loài động vật hay côn trùng có xu hướng theo tính chất của Levy Flights (Brown, 2007) Một nghiên cứu của Reynolds và Frye chỉ ra rằng những con ruồi khám phá khung cảnh bằng những chuỗi đường bay thẳng ngắt nhau bởi những góc rẻ 90 0 , dẫn tới xu hướng Levy Flight, thậm chí ánh sáng cũng có liên quan tới Levy, vì vậy việc áp dụng Levy
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Flights vào FA là một điều khả thi vì nó phù hợp với tập tính của loài đom đóm này Ở giai đoạn di chuyển của đom đóm i khi bị hấp dẫn bởi đom đóm j, ta có thể áp dụng Levy Flights vào công thức để giúp bài toán nhanh hội tụ hơn:
Vế thứ 3 của công thức là sự ngẫu nhiên được tạo bởi phân phối Levy Dấu có nghĩa là phép nhân độc lập giữa các ma trận Bước nhảy Levy được tìm ra theo phân phối sau:
u và v được rút ra từ phân phối chuẩn u~ N(0, u 2 ) , v~N(0, v 2 )
là sự mở rộng hàm giai thừa với giá trị biến thực được chuyển xuống 1 thành số thực
M Ô HÌNH THUẬT TOÁN HFA
Mô hình thuật toán đề xuất HFA được trình bày theo Hình 4.3 bên dưới:
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Hình 4.3 Mô hình thuật toán HFA
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Các bước trong sơ đồ thuật toán được trình bày như sau:
(1) Tạo quần thể ban đầu: Thuật toán bắt đầu bằng việc tạo ra quần thể gồm n cá thể đom đóm trong không gian tìm kiếm
(2) Đánh giá hàm phù hợp: Đánh giá giá trị phù hợp của tất cả các cá thể đom đóm trong lần lặp đầu tiên
(3) Tính toán giá trị pbest và gbest: Xác định các giá trị pbest (vị trí tốt nhất của cá thể) và gbest (vị trí tốt nhất của quần thể) theo như định nghĩa trong thuật toán PSO
(4) Tính toán vận tốc: Trong giai đoạn PSO, các cá thể đom đóm sẽ di chuyển theo sự dẫn hướng của pbest và gbest, vận tốc được tính toán theo như Chương 3, Công thức (1)
(5) Tính toán vị trí mới: Sau khi đã tính toán được vận tốc ở bước (4), vị trí mới của cá thể đom đóm sẽ được tính toán bằng cách cộng tọa độ hiện tại với vận tốc của lần lặp kế tiếp theo như Chương 3, Công thức (2)
(6) Cập nhật giá trị pbest và gbest: Tính toán lại giá trị hàm phù hợp của cá thể đom đóm ở vị trí mới, từ đó tìm ra gbest và pbest mới của bài toán Bước này cũng là bước kết thúc của quá trình PSO, các bước sau này là việc áp dụng song song 3 thuật toán DE, FA, Levy flights
(7) Bắt đầu từ bước (7) này, ta sẽ thực hiện song song 2 thuật toán DE và FA Vì vậy n cá thể sẽ được chia làm 2 nhóm với số lượng cá thể mỗi nhóm là n/2 Nhóm đầu tiên với những giá trị có hàm phù hợp kém hơn sẽ bước vào quá trình DE (7a), nhóm còn lại sẽ bước vào quá trình FA + Levy flights (7b) (7a.1) Quá trình đột biến: Đây là bước khởi đầu của giai đoạn DE Các vector đột biến i G , 1 được tạo ra bằng phương pháp DE/rand/1 theo như Chương 3, Công thức (9)
(7a.2) Quá trình lai ghép: Các thành phần của vector mẹ được trộn lẫn với các thành phần của vector đột biến theo Chương 3, Công thức (10) Hệ số
CR chọn là 0.3 để vừa tăng sự đa dạng quần thể nhưng vẫn đảm bảo tỉ lệ hội tụ
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN (7a.3) Đánh giá hàm phù hợp: Tính toán lại giá trị hàm phù hợp của các vector trong quần thể sau khi đã lai ghép
(7a.4) Quá trình chọn lọc: Tất cả các giải pháp trong quần thể đều có xác suất được lựa chọn giống như cá thể mẹ, không phụ thuộc vào giá trị hàm phù hợp Cá thể con được tạo ra sau quá trình đột biến và lai ghép U i G , nếu có giá trị hàm phù hợp lớn hơn vector mẹ X i G , thì sẽ được giữ lại theo Chương 3, Công thức (11) Đây là bước kết thúc giai đoạn DE trong thuật toán
(7b.1) So sánh giá trị hàm phù hợp: Ở bước này, các cá thể sẽ bắt đầu thuật toán
FA Các cá thể đom đóm sẽ được so sánh cặp với nhau
(7b.2) Di chuyển theo Levy Flights: Khi đom đóm (i) có giá trị hàm phù hợp nhỏ hơn đon đóm (j), hay còn gọi là bị hấp dẫn bởi đom đóm (j), nó sẽ di chuyển về phía đom đóm (j) theo Levy Flight dựa vào Chương 3, Công thức (12), giúp bài toán nhanh hội tụ hơn
(7b.3) Đánh giá hàm phù hợp: Sau khi đom đóm di chuyển, giá trị phù hợp của chúng được tính toán lại
(8) Cập nhật giá trị gbest và pbest: Sau khi tiến hành 3 thuật toán PSO, DE, FA + Levy Flights, ta có được các giá trị hàm phù hợp tương ứng Tất cả các giá trị này sẽ dùng để cập nhật giá trị gbest và pbest
(9) Kết thúc vòng lặp: Nếu đều kiện kết thúc vòng lặp chưa thỏa mãn, vòng lặp sẽ lặp lại các bước từ (4)-(8)
Nhìn chung, thuật toán PSO giúp tận dụng khả năng tìm kiếm cục bộ và ghi nhớ các giá trị tốt nhất của mỗi lần lặp, một trong những yếu điểm của thuật toán FA Thuật toán FA khi kết hợp với Levy Flights sẽ khiến cho đường bay của đom đóm phù hợp hơn với thực tế, làm tăng tốc độ hội tụ Thêm vào đó, thuật toán DE sẽ giúp cân bằng quá trình tìm kiếm và khai thác dựa vào việc điều chỉnh tham số F và
CR trong quá trình giải thuật
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Thuật toán lai ghép HFA đề xuất là một thuật toán có thể nâng cao khả năng và chất lượng của từng thuật toán tham gia, giúp tăng tốc độ hội tụ, giảm thiểu thời gian tính toán, tìm ra giá trị tối ưu nhất của bài toán
Pseudo code của thuật toán được trình bày như sau:
1 FOR từng cá thể đom đóm
2 Khởi tạo giá trị cho cá thể đom đóm trong quần thể (n cá thể và dim phương)
5 Tính toán giá trị hàm phù hợp của cá thể i F(i)
6 IF F(i) có giá trị tốt hơn pbest hiện tại thì pbest = F(i)
9 Chọn ra giá tri F tốt nhất trong n cá thể và đặt làm gbest
10 FOR i = 1: iter (iter là số vòng lặp của thuật toán)
12 Vận tốc của cá thể i được tính toán theo như Chương 3, Công thức (1)
13 Vị trí mới của cá thể i ở lần lặp tiếp theo sẽ được tính theo như Chương 3, Công thức (2)
16 Tính toán lại giá trị hàm phù hợp của cá thể i F(i) với trị trí mới
17 IF F(i) có giá trị tốt hơn pbest hiện tại thì pbest = F(i)
20 Chọn ra giá tri F tốt nhất trong n cá thể và đặt làm gbest
21 Chia quần thể thành 2 nhóm với số lượng cá thể bằng nhau, với nDE và nFA lần lượt là số lượng cá thể của DE và FA + Levy Flights
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
23 Các vector đột biến i G , 1 được tạo ra bằng phương pháp DE/rand/1
24 Quá trình lai ghép: Vector U i G , được tạo ra từ việc lai ghép vector mẹ X i G , và vector đột biến V i G ,
25 Quá trình chọn lọc: So sánh giá trị hàm phù hợp giữa vector U i G , và vector mẹ X i G , và tiến hành chọn lọc
GIAI ĐOẠN FA + LEVY FLIGHTS
28 IF F(i) < F(j), di chuyển cá thể i về phía cá thể j theo công thức kết hợp Levy Flights
30 Tính toán lại giá trị hàm phù hợp của các cá thể đom đóm
34 IF F(i) có giá trị tốt hơn pbest hiện tại thì pbest = F(i)
37 Chọn ra giá tri F tốt nhất trong n cá thể và đặt làm gbest
38 Nếu điều kiện ngừng lặp chưa thỏa mãn, bắt đầu lại từ bước 11-38
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
BÀI TOÁN CỤ THỂ
Đ ỊNH NGHĨA VẤN ĐỀ
Trong quá khứ, những nhà quản lý dự án phải cân nhắc các yếu tố về công trường, kết cấu công trình, điều kiện thời tiết để có thể quyết định vị trí cẩu tháp phù hợp và các vị trí liên kết với cẩu tháo là điểm cung cấp và điểm yêu cầu Ở bài toán này của chúng ta, cần trục tháp được lựa chọn dựa vào tổng chi phí nhỏ nhất cho quá trình vận hành Trước đó, (Tam, 2003) chỉ cân nhắc chi phí vận hành cho một cẩu tháp khi vận chuyển vật liệu mà bỏ qua các chi phí thuê, nhân công và lắp dựng cẩu tháp
Vì vậy, để thực tế hơn, mô hình được xậy dựng sẽ phản ánh được hết những yêu cầu thực tế trên công trường Mô hình này sẽ quyết định vị trí tối ưu của cần trục tháp cũng như là lượng vật liệu ở các điểm cung cấp và yêu cầu bằng cách sử dụng thuật toán HFA
Mặt bằng công trường được trình bày như Hình 5.1 bên dưới:
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Ci là vị trí của cẩu tháp (i=1~12)
Di là vị trí của điểm yêu cầu (i=1~9)
Si là vị trí của điểm cung cấp (i=1~9)
Hình 5.1 Mặt bằng công trường
Dự án này có tổng cộng 12 điểm khả thi để đặt cần trục tháp, tọa độ mỗi điểm được cho theo Bảng 5.1 bên dưới:
Bảng 5.1 Tọa độ các điểm đặt cần trục tháp
Thêm vào đó dự án có tổng cộng 9 điểm cung cấp (S) và 9 điểm yêu cầu (D), tọa độ của các điểm cung cấp và yêu cầu được cho theo Bảng 5.2 và 5.3 bên dưới:
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Bảng 5.2 Tọa độ các điểm cung cấp (S)
Bảng 5.3 Tọa độ các điểm yêu cầu (D)
Hàm mục tiêu của vấn đề TCL ở đây phải thỏa mãn được 2 điều kiện:
(1) Hàm có giá trị lớn cho những giải pháp có tính tham khảo thiết kế cao (2) Hàm có giá trị lớn cho những giải pháp thỏa mãn những ràng buộc về mặt bằng
Hàm mục tiêu được chọn theo Công thức 13 dưới đây:
(13) max( , ) min( , ) i hi vi i hi vi
T T T T T max( , ) min( , ) hi ai wi i ai wi
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Trong đó TC là tổng chi phí, n là số cẩu tháp, m là số điểm cung cấp, o là số điểm yêu cầu, Ti là thời gian cẩu của cần trục thứ i, Thi là thời gian di chuyển ngang của cần trục thứ i, Qjk là số lượng vật liệu đem từ điểm Sj tới Dk, CUi là chi phí đem vật liệu từ điểm Sj tới Dk trên một đơn vị vật liệu và thời gian của cần trục thứ i (được chọn bằng 1.92), i là độ của điểm di chuyển của cẩu theo độ và tiếp tuyến (được chọn bằng 1), Tvi là thời gian di chuyển thẳng đứng của cần trục thứ I, Vhi là vận tốc cẩu của cần trục thứ I (được chọn từ 35-60 m/min), i là độ của điểm di chuyển cẩu theo măt phẳng đứng và ngang của cần trục thứ i (được chọn bằng 0.25), Tai là thời gian cho di chuyển của con lăn theo độ của cần trục thứ i, Vai là vận tốc của con lăn của cần trục thứ i (được chọn từ 33.1-53.3 m/min), Twi là thời gian cho di chuyển của con lăn theo tiếp tuyến của cần trục thứ i, li là khoảng cách giữa điểm cung cấp và yêu cầu, Vwi là vận tốc xoay của tay cần (được chọn từ 2.8- 7.57 rad/min), (D 0 )là khoảng cách theo phương ngang từ cần trục cho tới điểm yêu cầu, ( )S i là khoảng cách theo phương ngang từ cần trục tới điểm cung cấp, Cr i là tọa độ của cần trục tháp, Di là tọa độ của điểm yêu cầu, Si là tọa độ của điểm cung cấp, R là chi phí thuê, S là chi phí lắp dựng cẩu tháp, L là chi phí nhân công,
Mi là chi phí thuê theo tháng của cần trục thứ i (được chọn bằng 1000), DYi là số ngày thuê cần trục của cần trục thứ I (được chọn bằng 80), ISi là chi phí lắp dựng ban đầu của cần trục (được chọn bằng 5000), MSi là chi phí lắp dựng được điều chỉnh của cần trục thứ i (được chọn bằng 500), MSTi là thời gian lắp dựng đã điều chỉnh của cần trục thứ I (được chọn bằng 10), RSi là chi phí tháo dỡ (được chọn bằng 2000), LCi là chi phí nhân công trên một người của cần trục thứ i (được chọn bằng 100), LAi là số lượng lao động của cần trục thứ i (được chọn bằng 5)
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Ngoài ra, ta còn có thêm hàm phạt nếu như hàm mục tiêu không thỏa điều kiện để bài toán nhanh hội tụ hơn:
Nếu sức chứa của điểm cung cấp > sức chứa giới hạn thì TC= TC + 40000
Nếu sức chứa của điểm yêu cầu sức chứa giới hạn thì TC= TC + 40000 Thời gian cẩu vật tư của cần trục là một thước đo quan trọng nhất để tính toán thời gian di chuyển của cần trục Quá trình này bao gồm di chuyển theo phương ngang và phương đứng, và sẽ ảnh hưởng tới chi phí vận hành của cần trục tháp Hình 5.2 mô phỏng quá trình cẩu vật tư của cần trục tháp
Hình 5.2 Mô phỏng quá trình di chuyển và cẩu của cần trục tháp
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
T RƯỜNG HỢP SỬ DỤNG 1 CẦN TRỤC THÁP
Bài toán sẽ được thực hiện 30 lần chạy với số vòng lặp lần lượt là 100, 300, 500,
1000 Mỗi giải pháp của bài toán được đại diện bằng một vector X x x 1 , 2 , , x m
, m là số cột tương ứng với trị trí C của cần truc tháp và lượng vật liệu từ các điểm cung cấp S tới các điểm yêu cầu (D)
Thuật toán HFA sẽ yêu cầu các tham số đầu vào là các vector X x x 1 , 2 , , x m với m =1, 2 ,… 82 (vị trí của cần trục tháp và 81 giá trị lượng vật liệu được cung cấp với 9 điểm cung cấp và 9 điểm yêu cầu)
Hình 5.3 Minh họa vector X bài toán 1 cần trục Các vector X sẽ được dùng để tính toán hàm mục tiêu theo Công thức 13, từ đó tìm ra giá trị hàm phù hợp, phục vụ cho quá trình tìm kiếm tối ưu Quá trình này sẽ lặp đi lặp lại trong vòng lặp cho tới khi thỏa mãn điều kiện dừng
Bảng 5.4 bên dưới liệt kê các giá trị tham số sẽ được sử dụng trong bài toán này
Bảng 5.4 Các tham số đầu vào của bài toán
FA PSO DE Levy Flights nFA = 13
Vị trí cần trục tháp
81 giá trị lượng vật liệu từ các điểm cung cấp cho các điểm yêu cầu
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Bảng 5.5 bên dưới cho biết các thông số của cần trục tháp được sử dụng
Bảng 5.5 Thông số của cần trục tháp được sử dụng
Tiến hành chạy thử bài toán bằng thuật toán đom đóm + Levy Flights (LFA) với số lượng cá thể là n = 25 và số lần lặp là 100, kết quả của bài toán là:
Best = 5.5854e+04, vị trí cần trục: C2 Hình 5.4 cho thấy sự thay đổi của giá trị tốt nhất trong mỗi lần lặp của LFA
Hình 5.4 Sự biến thiên giá trị tốt nhất mỗi lần lặp của LFA trường hợp 1 cần trục
Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu được trình bày như Bảng 5.6 bên dưới:
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Bảng 5.6 Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu của LFA trường hợp 1 cần trục
S9 5 558 586 0 1 0 0 0 1 1151 1500 77% Thực tế 900 800 700 600 500 600 700 800 900 6500 11500 57% Giới hạn 900 800 700 600 500 600 700 800 900 Tiến hành chạy thử bài toán bằng thuật toán tối ưu bầy đàn (PSO) với số lượng cá thể là n = 25 và số lần lặp là 100, kết quả của bài toán là:
Best = 5.5931e+04, vị trí cần trục: C2 Hình 5.5 cho thấy sự thay đổi của giá trị tốt nhất trong mỗi lần lặp của PSO
Hình 5.5 Sự biến thiên giá trị tốt nhất mỗi lần lặp của PSO trường hợp 1 cần trục
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu được trình bày như Bảng 5.7 bên dưới:
Bảng 5.7 Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu của PSO trường hợp 1 cần trục
S9 3 537 345 0 0 0 0 0 453 1338 1500 89% Thực tế 900 800 700 600 500 600 700 800 900 6500 11500 57% Giới hạn 900 800 700 600 500 600 700 800 900 Tiến hành chạy thử bài toán bằng thuật toán tiến hóa vi phân (DE) với số lượng cá thể là n = 25 và số lần lặp là 100, kết quả của bài toán là:
Best = 5.6016e+04, vị trí cần trục: C6 Hình 5.6 cho thấy sự thay đổi của giá trị tốt nhất trong mỗi lần lặp của DE
Hình 5.6 Sự biến thiên giá trị tốt nhất mỗi lần lặp của DE trường hợp 1 cần trục
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu được trình bày như Bảng 5.8 bên dưới:
Bảng 5.8 Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu của DE trường hợp
S9 641 507 0 0 6 8 0 6 123 1291 1500 86% Thực tế 900 800 700 600 500 600 700 800 900 6500 11500 57% Giới hạn 900 800 700 600 500 600 700 800 900 Tiến hành chạy thử bài toán bằng thuật toán lai ghép HFA với số lượng cá thể là n = 25 và số lần lặp là 100, kết quả của bài toán là:
Best = 5.5846e+04, vị trí cần trục: C2 Hình 5.7 cho thấy sự thay đổi của giá trị tốt nhất trong mỗi lần lặp của HFA
Hình 5.7 Sự biến thiên giá trị tốt nhất mỗi lần lặp của HFA trường hợp 1 cần trục
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu được trình bày như Bảng 5.9 bên dưới:
Bảng 5.9 Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu của HFA trường hợp 1 cần trục
Với mỗi thuật toán, ứng với mỗi vòng lặp (100, 300, 500, 1000), ta tiến hành chạy 30 lần, sau đó thu thập số liệu các giá trị tốt nhất, giá trị kém nhất, trị trung bình và phương sai Kết quả thu được như sau:
Iter Min Max Mean Std
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Từ kết quả ở trên, ta thấy được rằng tất cả các thuật toán đều tìm ra được vị trí tối ưu của cần trục tháp Tuy nhiên, HFA là thuật toán tìm được chi phí thấp nhất
5.5770e+04 mà vẫn thòa mãn các yêu cầu về các điểm cung cấp và các điểm yêu cầu, độ lệch chuẩn khi chạy bài toán là khá nhỏ, số liệu nằm quanh giá trị trung bình Từ đó, ta thấy được rằng, phép lai ghép thuật toán là đúng đắn và đã hạn chế được các khuyết điểm của thuật toán tham gia lai ghép Ứng với giá trị tốt nhất 5.5770e+04, vị trí của cần trục tối ưu là C6 (Hình 5.8),
Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu được trình bày bên dưới: Bảng 5.10 Sự phân bố vật liệu ứng với giá trị tốt nhất trường hợp 1 cần trục
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Hình 5.8 Vị trí cần trục tối ưu bởi thuật toán HFA trường hợp 1 cần trục
Hình 5.9 Biểu đồ đường cong hội tụ với 1000 lần lặp Với trường hợp 1000 lần lặp, ta tiến hành vẽ biểu đồ đường cong hội tụ của các thuật toán như Hình 5.9 Kết quả cho thấy với 1000 lần lặp, thuật toán HFA cho kết quả tối ưu hơn từ lúc bắt đầu cho tới lúc kết thúc vòng lặp Ngoài ra, đường cong
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN cho thấy bài toán được chạy bởi HFA sẽ hội tụ nhanh hơn bài toán chạy bởi LFA, điều này chứng tỏ khuyết điểm về thời gian hội tụ của thuật toán FA đã được loại bỏ Để tiếp tục kiểm tra sự hiệu quả của thuật toán lai ghép được, ta tiến hành sao sánh HFA với thuật toán ECBO, EVPS đã được sử dụng trong nghiên cứu trước đây bởi (Ali Kaveh, 2018) ECBO (Enhanced Colliding Bodies Optimization) là thuật toán tối ưu cải tiến dựa trên sự va chạm giữa các cá thể với nhau, EVPS (Enhanced Vibrating Particles System) là hệ thống cá thể dao động cải tiến, đây là hai thuật toán còn khá mới được giới thiệu bởi (Kaveh, 2016) Kết quả của 3 thuật toán này ứng với 30 lần chạy khi vòng lặp là 1000 với HFA, 5000 với ECBO và EVPS được trình bày như Bảng 5.11 dưới đây:
Bảng 5.11 So sánh HFA với nghiên cứu trước đây
Hình 5.10 Vị trí cần trục tối ưu bởi thuật toán ECBO, EVPS trường hợp 1 cần trục
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Kết quả cho thấy được rằng mặc dù tìm được vị trí tối ưu khác nhau nhưng HFA lại là thuật toán cho kết quả tốt hơn hai thuật toán còn lại Ngoài ra ta thấy được rằng mặc dù chỉ chạy kết quả HFA với 1000 vòng lặp, kết quả cho được vẫn tốt hơn
2 thuật toán còn lại khi chạy với 5000 vòng lặp Vì vậy, ta có thể rút ra được, mặc dù đã tiến hành cải tiến, thêm vào các giá trị ghi nhớ vị trí tốt nhất trong quần thể nhưng ECBO, EVPS vẫn bị vướng phải các tối ưu cục bộ, thiếu sự cân bằng giữa tìm kiếm cục bộ và toàn cục Trong khi đó thuật toán HFA vẫn tận dụng được khả năng tìm kiếm toàn cục rất tốt của FA,DE và sử dụng PSO như là một công cụ ghi nhớ và khai phá xung quanh các điểm cực trị, giúp bài toán vừa hội tụ nhanh, vừa tìm được kết quả tốt nhất.
T RƯỜNG HỢP SỬ DỤNG 2 CẦN TRỤC THÁP
Để đánh giá thêm sự hiệu quả của thuật toán và so sánh lượng chi phí cần có giữa trường hợp một cần trục tháp và nhiều cần trục tháp, ta sử dụng thuật toán HFA cho bài toán 2 cần trục tháp được bố trí trên mặt bằng công trường Khi đó, số lượng các biến sẽ tăng lên, vector X x x 1 , 2 , , x m
lúc này sẽ có m =1, 2 ,… 164 ( 2 vị trí của cần trục tháp và 162 giá trị lượng vật liệu được cung cấp với 9 điểm cung cấp và 9 điểm yêu cầu)
Hình 5.11 Minh họa vector X bài toán 2 cần trục Các tham số được sử dụng sẽ vẫn giống như Bảng 5.4
2 vị trí cần trục tháp
162 giá trị lượng vật liệu từ các điểm cung cấp cho các điểm yêu cầu
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Bảng 5.12 bên dưới cho biết các thông số của cần trục tháp được sử dụng
Bảng 5.12 Thông số của các cần trục tháp được sử dụng
Tiến hành chạy thử bài toán bằng thuật toán đom đóm + Levy Flights (LFA) với số lượng cá thể là n = 25 và số lần lặp là 100, kết quả của bài toán là:
Best = 1.0845e+05, vị trí cần trục: C2 và C1 Hình 5.12 cho thấy sự thay đổi của giá trị tốt nhất trong mỗi lần lặp của LFA
Hình 5.12 Sự biến thiên giá trị tốt nhất mỗi lần lặp của LFA trường hợp 2 cần trục
Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu được trình bày như Bảng 5.13 bên dưới:
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Bảng 5.13 Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu của LFA trường hợp 2 cần trục
Tiến hành chạy thử bài toán bằng thuật toán tối ưu bầy đàn (PSO) với số lượng cá thể là n = 25 và số lần lặp là 100, kết quả của bài toán là:
Best = 1.0880e+05, vị trí cần trục: C6 và C1 Hình 5.13 cho thấy sự thay đổi của giá trị tốt nhất trong mỗi lần lặp của PSO
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Hình 5.13 Sự biến thiên giá trị tốt nhất mỗi lần lặp của PSO trường hợp 2 cần trục
Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu được trình bày như Bảng 5.14 bên dưới:
Bảng 5.14 Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu của PSO trường hợp 2 cần trục
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Tiến hành chạy thử bài toán bằng thuật toán tiến hóa vi phân (DE) với số lượng cá thể là n = 25 và số lần lặp là 100, kết quả của bài toán là:
Best = 1.1030e+05, vị trí cần trục: C2 và C1 Hình 5.14 cho thấy sự thay đổi của giá trị tốt nhất trong mỗi lần lặp của DE
Hình 5.14 Sự biến thiên giá trị tốt nhất mỗi lần lặp của DE trường hợp 2 cần trục
Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu được trình bày như Bảng 5.15 bên dưới:
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Bảng 5.15 Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu của DE trường hợp 2 cần trục
Tiến hành chạy thử bài toán bằng thuật toán lai ghép HFA với số lượng cá thể là n = 25 và số lần lặp là 100, kết quả của bài toán là:
Best = 1.0829e+05, vị trí cần trục: C2 và C1 Hình 5.15 cho thấy sự thay đổi của giá trị tốt nhất trong mỗi lần lặp của HFA
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Hình 5.15 Sự biến thiên giá trị tốt nhất mỗi lần lặp của HFA trường hợp 2 cần trục
Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu được trình bày như Bảng 5.16 bên dưới:
Bảng 5.16 Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu của HFA trường hợp 2 cần trục
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Với mỗi thuật toán, ứng với mỗi vòng lặp (100, 300, 500, 1000), ta tiến hành chạy 30 lần, sau đó thu thập số liệu các giá trị tốt nhất, giá trị kém nhất, trị trung bình và phương sai Kết quả thu được như sau:
Iter Min Max Mean Std
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Từ kết quả ở trên, ta thấy được rằng tất cả các thuật toán đều tìm ra được vị trí tối ưu của 2 cần trục tháp Tuy nhiên, HFA là thuật toán tìm được chi phí thấp nhất
1.0812e+05 mà vẫn thòa mãn các yêu cầu về các điểm cung cấp và các điểm yêu cầu, độ lệch chuẩn khi chạy bài toán là khá nhỏ, số liệu nằm quanh giá trị trung bình Từ đó, ta thấy được rằng, mặc dù bài toán có số lượng biến lớn (164 biến), HFA vẫn có khả năng tìm được giá trị tối ưu nhất Ứng với giá trị tốt nhất 1.0812e+05, vị trí của 2 cần trục tối ưu là C2 và C1, Sự phân bố vật liệu cho các điểm cung cấp và yêu cầu được trình bày như Bảng 5.17 bên dưới:
Bảng 5.17 Sự phân bố vật liệu ứng với giá trị tốt nhất trường hợp 2 cần trục
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Hình 5.16 Vị trí cần trục tối ưu bởi thuật toán HFA trường hợp 2 cần trục
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN
Hình 5.17 Biểu đồ đường cong hội tụ với 1000 lần lặp Với trường hợp 1000 lần lặp, ta tiến hành vẽ biểu đồ đường cong hội tụ của các thuật toán như Hình 5.17 Kết quả cho thấy với 1000 lần lặp, mặc dù số lượng biến là lớn, thuật toán HFA vẫn cho kết quả tối ưu hơn từ lúc bắt đầu cho tới lúc kết thúc vòng lặp, trong khi các thuật toán khác đã cho thấy sự thiếu hiệu quả khi chạy với số lượng biến lớn Ngoài ra, đường cong cho thấy bài toán được chạy bởi HFA sẽ hội tụ nhanh hơn bài toán chạy bởi các thuật toán khác, điều này chứng tỏ khuyết điểm về thời gian hội tụ của thuật toán FA đã được loại bỏ Để tiếp tục kiểm tra sự hiệu quả của thuật toán lai ghép được, ta tiến hành sao sánh HFA với thuật toán ECBO, EBB-BC đã được sử dụng trong nghiên cứu trước đây bởi (Ali Kaveh, 2018) EBB-BC là thuật toán big bang – vụ co lớn cải tiến dựa vào lý thuyết big bang và vụ co lớn, những lý thuyết về sự tiến hóa của vũ trụ được giới thiệu bởi (Herdany, 2014) Kết quả của 3 thuật toán này ứng với 30 lần chạy khi vòng lặp là 1000 với HFA, 10000 với ECBO và EBB-BC được trình bày như Bảng 5.18 dưới đây:
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Bảng 5.18 So sánh HFA với 2 nghiên cứu trước đây
Hình 5.18 Vị trí cần trục tối ưu bởi thuật toán EBB-BC trường hợp 2 cần trục
Hình 5.19 Vị trí cần trục tối ưu bởi thuật toán ECBO trường hợp 2 cần trục
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN Kết quả cho thấy được rằng, với số lượng biến lớn (164 biến) HFA lại là thuật toán cho kết quả tốt hơn hai thuật toán còn lại Ngoài ra ta thấy được rằng mặc dù chỉ chạy kết quả HFA với 1000 vòng lặp, kết quả cho được vẫn tốt hơn 2 thuật toán còn lại khi chạy với 10000 vòng lặp Vì vậy, ta có thể rút ra được, với số lượng biến của bài toán càng lớn thì các thuật toán ECBO, EBB-BC càng dễ vướng vào tối ưu cục bộ mặc cho số vòng lặp là rất lớn, đó chính là điểm yếu của rất nhiều thuật toán hiện này Trong khi đó thuật toán HFA vẫn tối ưu được khả năng của ba thuật toán tham gia là FA, DE, PSO mặc cho số lượng biến đầu vào lớn, từ đó khai phá, mở rộng vùng tìm kiếm và tìm ra giá trị tối ưu với số lần lặp ít nhất
HVTH: TRƯƠNG MINH LUẬN – MSHV: 1670143 GHVD: PHẠM VŨ HỒNG SƠN