چکیده
یک تکنیک هوشمند جدید ارائه شده است که آن الگوریتم سنجاقک نام دارد (DA). الگوریتم اصلی DA از رفتارهای ایستا و پویا متشکل از رفتار سنجاقک در طبیعت است. دو مرحله ضروری برای بهینه سازی، اکتشاف و بهره برداری، با تعامل اجتماعی سنجاقک ها که در جستجوی غذا و دوری از دشمنان در هنگام پیدایش هستند، طراحی شده است. این مقاله نسخه های چند هدفه و باینری را که به ترتیب نسخه چند هدفه DA (BDA) و چند هدفه DA (MODA) نامیده می شود را ارائه داده است. الگوریتم هایی که چندین توابع آزمون ریاضی و یک مطالعه موردی را که به صورت کیفی و کمی سنجیده می شوند را این مقاله ارائه کرده است. نتایج DA و BDA که باعث بهبود الگوریتم ها می شود و به صورت تصادفی مسائل را مقداردهی اولیه کرده است و به بهترین وجه بهینه سازی سراسری را انجام داده است، و نتایج بسیار دقیقی را از الگوریتم های دیگر در این ادبیات را ارائه کرده اند. نتایج MODA نشان می دهد که این الگوریتم بهترین راه حل پارتو را برای طیف گسترده ای از مسائل چند هدفه ارائه می دهد. مجموعه ای از طرح ها مسائل زیردریایی پروانه را برای نشان دادن محاسن MODA و برای حل مسائل واقعی که هنوز در اصل پارتو ناشناخته هستند را به کار می برند. توجه داشته باشید که الگوریتم های BDA، DA و MODA به صورت عمومی در سایت http://www.alimirjalili.com/DA.html. قابل دسترس است.
1 معرفی
طبیعت پر از رفتارهای اجتماعی برای انجام وظایف مختلف است. گرچه هدف نهایی تمام افراد و رفتارهای جمعی زنده ماندن است، اما موجودات به دلایل مختلفی: به صورت شکار، دفاع، راه رفتن و غذا خوردن در گروه ها، گله ها، مدارس باهم تعامل دارند. به عنوان مثال، گرگ بسته به یکی از تعاملات اجتماعی برای شکار به صورت اختصاصی سازماندهی شده است. گرگ ها به پیروی از رهبر به صورت اجتماعی برای شکار شیطانی در مراحل مختلف تمایل دارند: تعقیب شکارچیان، چرخاندن خزه ها، آزار و اذیت قارچ ها و حمله به قارچ ها ]1،2[. یک نمونه از دفاع جمعی مدارس ماهی ها در اقیانوس ها است. هزاران ماهی یک مدرسه را ایجاد می-کنند و با هشدار دادن به یکدیگر از شکارچیان جلوگیری می کنند و کار شکارچیان را دشوار می کنند ]3[. اکثر شکارچیان به منظور تقسیم این مدارس به زیر مدارس با حمله به آنها و در نهایت شکار کردن افرادی که جدا شده اند، تکامل پیدا می کنند.
ناوبری یکی دیگر از دلایل ازدحام بعضی از موجودات است. پرندگان بهترین نمونه هایی از این رفتارهای هستند که در بین قاره ها و در گله ها به راحتی مهاجرت می کنند. ثابت شده است که پیکربندی v-shaped پرواز به شدت موجب صرفه جویی در انرژی و به همان اندازه باعث توزیع در میان افراد گله می شود. آخرین باری نیست، که خوردن غذا یکی دیگر از دلایل اصلی تعاملات اجتماعی بسیاری از گونه ها در طبیعت است. مورچه ها و زنبورها بهترین نمونه هایی از رفتار جمعی با هدف تغذیه است. ثابت شده است که مورچه ها و زنبورها قادر به یافتن و علامت گذاری کوتاه ترین مسیر لانه / کندو به منبع غذا هستند ]5[. آنها هوشمندانه غذاها را جستجو می کنند و مسیر استفاده از فرومون را برای اطلاع دادن و هدایت دیگران نشان می دهند.
بسیار جالب است که موجودات موقعیت مطلوب را پیدا می کنند و وظایف را به صورت موثر در گروه ها انجام می دهند. واضح و روشن است که آنها در طول این قرن ها تکامل پیدا کرده اند تا رفتارهای مطلوب و کارآمد را دریابند. بنابراین، کاملا منطقی است که از آنها برای حل مسائلمان الهام می بخشیم. این همان هدف اصلی مطالعه است که هوش گروهی نام دارد (SI)، که توسط بنی و وانگ در سال 1989 ارائه شده است ]6[. SI اشاره به اجرای مصنوعی / شبیه سازی هوش جمعی و اجتماعی گروهی از موجودات زنده در طبیعت دارد ]7[. محققان در این زمینه سعی کردند قوانین محلی را برای تعاملات بین افراد که به هوش اجتماعی هدایت شده اند، درک کنند. از آنجا که هیچ واحد کنترل متمرکزی برای هدایت افراد وجود ندارد، یافتن قوانین ساده میان برخی از آنها می تواند رفتار اجتماعی کل جمعیت را شبیه سازی کند.
الگوریتم بهینه سازی کلونی مورچه (ACO) یکی از اولین تکنیک های SI است که اطلاعات اجتماعی مورچه ها را در هنگام پروش یک کلونی مورچه تقلید می کند ]9،8[. این الگوریتم از واقعیت ساده الهام گرفته است که هر مورچه می تواند مسیر خود را به سمت منابع غذایی خارج از لانه توسط فرومون نشان دهد. زمانی که مورچه یک منبع غذایی را پیدا می کند، به لانه می رسد و مسیر فرومون را نشان می دهند تا دیگران مسیر را پیدا کنند. زمانی که مورچه های مورچه های دیگر علائم فرومون را می بینند مسیر را دنبال می کنند و فرومون های خود را ترک می کنند. کلید اصلی این است که آنها ممکن است راه های مختلفی را برای منابع غذایی داشته باشند. از آنجا که یک مسیر طول می کشد تا مورچه ها سفر کنند، با این وجود، فرومون با میزان بالاتر قبل از آنکه توسط مورچه های دیگر مشخص شوند تبخیر می شود. بنابراین، کوتاه ترین مسیر به سادگی با دنبال کردن مسیر باسطح قوی فرومون و رها کردن مسیرهای با سطح فرومون ضعیف به دست می آید. دورینگو اولین بار از این مفاهیم ساده الهام گرفته و الگوریتم شناخته شده ACO را ارائه کرد ]10[.
الگوریتم بهینه سازی ذرات (PSO) یکی دیگر از الگوهای شناخته شده SI است. فرآیند رفتاری این الگوریتم ناوبری گله های پرنده را تقلید می کند و توسط ابرهارت و کندی ارائه شده است ]11[. الهام بخش اصلی قوانین ساده تعاملات بین پرندگان است: پرندگان تمایل دارند مسیر پرواز خود را در جهت مسیر فعلی خود، بهترین محل منبع غذایی را به دست آورند و بهترین محل غذا را که تاکنون یافت شده است را حفظ کنند ]12[. الگوریتم PSO به سادگی این سه قاعده را تقلید می کند و ذرات را به سوی بهترین راه حل های بهینه توسط هر یک از افراد و به طور همزمان هدایت می کنند.
الگورریتم کلونی زنبور عسل (ABC) یکی دیگر از الگوریتم های مبتنی بر سیگنال جدید و محبوب است. این الگوریتم دوباره رفتار اجتماعی جوجه های زنبور عسل را در هنگام تغذیه شهد توسط کارابوگا ارائه کرده است ]13[. تفاوت این الگوریتم در مقایسه با ACO، و PSO تقسیم زنبورهای عسل دیده بانی، ناظر، و کارگر است ]14[. زنبورهای کارگر مسئول یافتن منابع غذایی و اطلاع رسانی به دیگران با یک رقص ویژه هستند. علاوه بر این، تماشاگران رقص را تماشا می کنند، و یکی از آنها را انتخاب می کند و مسیر را به سمت منابع غذایی انتخاب و آن را دنبال می کنند. زنبورهای دید ه بانی منابع غذایی رها شده را کشف می کنند و آنها را جایگزین منابع جدید می کنند.
از آنجا که تعداد قابل توجهی از محققان تلاش کردند این الگوریتم ها را در زمینه های گوناگون مورد استفاده قرار دهند مسائل مربوط به آنها حل شده است ]20-15[. کاربرد موفقیت آمیز این الگوریتم ها در علم و صنعت نشان دهنده شایستگی های تکنیک مبتنی بر SI در عمل است. دلایل مربوط به استفاده از مزایای الگوریتم های مبتنی بر SI عبارتند از: اولا، تکنیک های مبتنی بر SI در طول مراحل تکرار در فضای جستجو به صورت اطلاعاتی ذخیره می شوند، در حالی که این اطلاعات توسط الگوریتم های تکاملی (EA) نسل به دور ریخته می شوند. ثانیا، پارامترهای کنترل در الگوریتم مبتنی بر SI کمتر وجود دارند. سوما، الگوریتم SI مبتنی بر اپراتورها در مقایسه با الگوریتم EA مجهز هستند. سرانجام، تکنیک های مبتنی بر SI از انعطاف پذیری سود می برند، و به راحتی برای مسائل در زمینه های مختلف به کار می روند.
Abstract
A novel swarm intelligence optimization technique is proposed called dragonfly algorithm (DA). The main inspiration of the DA algorithm originates from the static and dynamic swarming behaviours of dragonflies in nature. Two essential phases of optimization, exploration and exploitation, are designed by modelling the social interaction of dragonflies in navigating, searching for foods, and avoiding enemies when swarming dynamically or statistically. The paper also considers the proposal of binary and multi-objective versions of DA called binary DA (BDA) and multi-objective DA (MODA), respectively. The proposed algorithms are benchmarked by several mathematical test functions and one real case study qualitatively and quantitatively. The results of DA and BDA prove that the proposed algorithms are able to improve the initial random population for a given problem, converge towards the global optimum, and provide very competitive results compared to other well-known algorithms in the literature. The results of MODA also show that this algorithm tends to find very accurate approximations of Pareto optimal solutions with high uniform distribution for multi-objective problems. The set of designs obtained for the submarine propeller design problem demonstrate the merits of MODA in solving challenging real problems with unknown true Pareto optimal front as well. Note that the source codes of the DA, BDA, and MODA algorithms are publicly available at http://www.alimirjalili.com/DA.html.
1 Introduction
Nature is full of social behaviours for performing different tasks. Although the ultimate goal of all individuals and collective behaviours is survival, creatures cooperate and interact in groups, herds, schools, colonies, and flocks for several reasons: hunting, defending, navigating, and foraging. For instance, Wolf packs own one of the most well-organized social interactions for hunting. Wolves tend to follow a social leadership to hunt preys in different steps: chasing preys, circling preys, harassing preys, and attacking preys [1, 2]. An example of collective defence is schools of fishes in oceans. Thousands of fishes create a school and avoid predators by warning each other, making the predation very difficult for predators [3]. The majority of predators have evolved to divide such schools to sub-schools by attacking them and eventually hunting the separated individuals.
Navigation is another reason for some of the creature to swarm. Birds are the best examples of such behaviours, in which they migrate between continents in flocks conveniently. It has been proven that the v-shaped configuration of flight highly saves the energy and equally distribute drag among the individuals in the flock [4]. Last but not least,foraging is another main reason of social interactions of many species in nature. Ants and bees are the best examples of collective behaviours with the purpose of foraging. It has been proven that ants and bees are able to find and mark the shortest path from the nest/hive to the source of food [5]. They intelligently search for foods and mark the path utilizing pheromone to inform and guide others.
It is very interesting that creatures find the optimal situations and perform tasks efficiently in groups. It is obvious that they have been evolved over centuries to figure out such optimal and efficient behaviours. Therefore, it is quite reasonable that we inspire from them to solve our problems. This is then main purpose of a field of study called swarm intelligence (SI), which was first proposed by Beni and Wang in 1989 [6]. SI refers to the artificial implementation/ simulation of the collective and social intelligence of a group of living creatures in nature [7]. Researchers in this field try to figure out the local rules for interactions between the individuals that yield to the social intelligence. Since there is no centralized control unit to guide the individuals, finding the simple rules between some of them can simulate the social behaviour of the whole population.
The ant colony optimization (ACO) algorithm is one of the first SI techniques mimicking the social intelligence of ants when foraging in an ant colony [8, 9]. This algorithm has been inspired from the simple fact that each ant marks its own path towards to food sources outside of the nest by pheromone. Once an ant finds a food source, it goes back to the nest and marks the path by pheromone to show the path to others. When other ants realize such pheromone marks, they also try to follow the path and leave their own pheromones. The key point here is that they might be different paths to the food source. Since a longer path takes longer time to travel for ants, however, the pheromone vaporizes with higher rate before it is re-marked by other ants. Therefore, the shortest path is achieved by simply following the path with stronger level of pheromone and abandoning the paths with weaker pheromone levels. Doringo first inspired from these simple rules and proposed the well-known ACO algorithm [10].
The particle swarm optimization (PSO) algorithm is also another well-regarded SI paradigm. This algorithm mimics the foraging and navigation behaviour of bird flocks and has been proposed by Eberhart and Kennedy [11]. The main inspiration originates from the simple rules of interactions between birds: birds tend to maintain their fly direction towards their current directions, the best location of food source obtained so far, and the best location of the food that the swarm found so far [12]. The PSO algorithm simply mimics these three rules and guides the particles towards the best optimal solutions by each of the individuals and the swarm simultaneously.
The artificial bee colony (ABC) is another recent and popular SI-based algorithm. This algorithm again simulates the social behaviour of honey bees when foraging nectar and has been proposed by Karaboga [13]. The difference of this algorithm compared to ACO and PSO is the division of the honey bees to scout, onlooker, and employed bees [14]. The employed bees are responsible for finding food sources and informing others by a special dance. In addition, onlookers watch the dances, select one of them, and follow the path towards the selected food sources. Scouters discover abandoned food sources and substitute them by new sources.
Since the proposal of these algorithms, a significant number of researchers attempted to improve or apply them in to different problems in diverse fields [15–20]. The successful application of these algorithms in science and industry evidences the merits of SI-based techniques in practice. The reasons are due to the advantages of SI-based algorithms. Firstly, SI-based techniques save information about the search space over the course of iteration, whereas such information is discarded by evolutionary algorithms (EA) generation by generation. Secondly, there are fewer controlling parameters in SI-based algorithm. Thirdly, SIbased algorithm is equipped with less operators compared to EA algorithms. Finally, SI-based techniques benefit from flexibility, which make them readily applicable to problems in different fields.
چکیده
1 معرفی
2 الهام بخش
3 الگوریتم سنجاقک
3.1 اپراتورهایی برای اکتشاف و بهره برداری
3.2 مسائل تک هدفه الگوریتم DA
3.3 مسائل باینری الگوریتم DA (BDA)
3.4 الگوریتم DA برای مسائل چند هدفه (MODA)
4 نتایج و بحث
4.1 نتایج الگوریتم DA
4.2 نتایج الگوریتم BDA
5 نتیجه گیری
Abstract
1 Introduction
2 Inspiration
3 Dragonfly algorithm
3.1 Operators for exploration and exploitation
3.2 The DA algorithm for single-objective problems
3.3 The DA algorithm for binary problems (BDA)
3.4 The DA algorithm for multi-objective problems
(MODA)
4 Results and discussion
4.1 Results of DA algorithm
4.2 Results of BDA algorithm
5 Conclusion