MBO

所属分类:数值算法/人工智能
开发工具:Visual C++
文件大小:13KB
下载次数:9
上传日期:2015-05-12 19:58:23
上 传 者一世无情
说明:  帝王蝶优化算法,一种新的元启发式优化算法。
(In nature, the eastern North American monarch population is known for its southward migration during the late summer/autumn the northern United States and southern Canada to Mexico, covering thousands of miles. By simplifying and idealizing the migration of monarch butterflies, a new kind of nature-inspired metaheuristic algorithm, called Monarch Butterfly Optimization (MBO), a first of its kind, is proposed in this paper. In MBO, all the monarch butterfly individuals are located in two distinct lands viz. Southern Canada & northern United States (Land 1) and Mexico (Land 2). Accordingly, the positions of the monarch butterflies are updated in two ways. Firstly, the offsprings are generated (position updating) by migration operator, which can be adjusted by the migration ratio. It is followed by tuning the positions for other butterflies by means of butterfly adjusting operator. In order to keep the population unchanged and minimize fitness uations, the sum of the newly-generated but)

文件列表:
MBO_FEs_v1\Agent.cpp (256, 2015-05-12)
MBO_FEs_v1\Agent.h (338, 2015-05-12)
MBO_FEs_v1\ggwFunc.cpp (1102, 2015-05-12)
MBO_FEs_v1\ggwFunc.h (683, 2015-05-12)
MBO_FEs_v1\main.cpp (1822, 2015-05-12)
MBO_FEs_v1\MBO_Object.cpp (7429, 2015-05-12)
MBO_FEs_v1\MBO_Object.h (1150, 2015-05-12)
MBO_FEs_v1\output.txt (442, 2015-05-12)
MBO_Generations_v1\Agent.cpp (256, 2015-05-12)
MBO_Generations_v1\Agent.h (338, 2015-05-12)
MBO_Generations_v1\ggwFunc.cpp (1102, 2015-05-12)
MBO_Generations_v1\ggwFunc.h (683, 2015-05-12)
MBO_Generations_v1\main.cpp (991, 2015-05-12)
MBO_Generations_v1\MBO_Object.cpp (7030, 2015-05-12)
MBO_Generations_v1\MBO_Object.h (1114, 2015-05-12)
MBO_Generations_v1\output.txt (293, 2015-05-12)
MBO_FEs_v1 (0, 2015-05-12)
MBO_Generations_v1 (0, 2015-05-12)

Monarch Butterfly Optimization (MBO) Gai-Ge Wang May 12, 2015 email: gaigewang@163.com gaigewang@gmail.com The files in this zip archive are C++ files that can be used to study Monarch Butterfly Optimization algorithm. MBO is the method that we invented and wrote about in the following paper: Gai-Ge Wang, Suash Deb, and Zhihua Cui, Monarch Butterfly Optimization. Neural Computing and Applications, in press. DOI: 10.1007/s00521-015-1923-y Note: 1) I compile all the codes by using two compilers: Visual Studio Professional 2013 and Dev-C++ 5.10. I do not test other compilers. For Visual Studio Professional 2013: It works well and there is no additional settings. For Dev-C++ 5.10: It should open C++0x feature when compiling the files (C++0x feature is not open in the default form). The methods are as follows: Tools--Compiler Options--General--select °Add the following commands when calling the compiler:±, and then add °-std=c++11± in the following text box. Tools--Compiler Options--General--select °Add the following commands when calling the linker:±, and then add °-static-libstdc++ -static-libgcc± in the following text box. 2) The codes are implemented in C++11 with extensive use of auto, lambdas, std::vectors and std::algorithms. Please use the compiler to run the codes that support the feature of C++11. 3) There are two folders: °MBO_FEs_V1± and ±MBO_Generations_V1±. The fixed generations (iterations) and fixed Function Evaluations (FEs) are considered as termination condition for °MBO_FEs_V1± and ±MBO_Generations_V1±, respectively. In the following, I will provide the detailed description about all the codes. 4) As discussed in the paper, the MBO cannot find the best solution for each run. Our research team will improve it and distribute the codes in our future research. The C++ files can be used to reproduce the results in the paper, or to do your own experiments. The software is freely available for any purposes (it is on the Internet, after all) although I would of course appreciate an acknowledgement if you use it as part of a paper or presentation. The C++ files and their descriptions are as follows: For °MBO_Generations_V1± folder: Agent.h, Agent.cpp: This is to describe each monarch butterfly in MBO. Each monarch butterfly discussed in this paper includes two properties: position and fitness. Of course, you can add more properties to monarch butterfly. ggwFunc.h, ggwFunc.cpp: Some tools are defined in these two files, such as generating random number. MBO_Object.h, MBO_Object.cpp: These two files are most important files. They implement the MBO algorithm. The fixed number of generations (iterations) is considered as termination condition. main.cpp: Defines the entry point for the console application. output.txt: Some important parameters and the best solution are saved in this file after the main.cpp is implemented. For °MBO_FEs_V1±folder: Agent.h, Agent.cpp, ggwFunc.h, ggwFunc.cppmain.cpp, output.txt: They are the same with °MBO_Generations±. MBO_Object.h, MBO_Object.cpp: These two files are most important files. They implement the MBO algorithm. The fixed number of Function Evaluations (FEs) is considered as termination condition. I hope that this software is as interesting and useful to you as is to me. Feel free to contact me with any comments or questions.

近期下载者

相关文件


收藏者