CN102982008A - Complicated function maximum and minimum solving method by means of parallel artificial bee colony algorithm based on computer cluster - Google Patents
Complicated function maximum and minimum solving method by means of parallel artificial bee colony algorithm based on computer cluster Download PDFInfo
- Publication number
- CN102982008A CN102982008A CN2012104319962A CN201210431996A CN102982008A CN 102982008 A CN102982008 A CN 102982008A CN 2012104319962 A CN2012104319962 A CN 2012104319962A CN 201210431996 A CN201210431996 A CN 201210431996A CN 102982008 A CN102982008 A CN 102982008A
- Authority
- CN
- China
- Prior art keywords
- computing machine
- value
- feasible solution
- solution
- honeybee
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The invention discloses a complicated function maximum and minimum solving method by means of a parallel artificial bee colony algorithm based on a computer cluster and belongs to the field of computer parallel computing technique. According to the method, the purpose of complicated function maximum and minimum solving by means of the parallel artificial bee colony algorithm on a plurality of computers is achieved by combination of the method and a message passing interface (MPI) software package in the Linux system. Experimental results show that in a complicated function maximum and minimum solving process, the parallel artificial bee colony algorithm is higher in accuracy and higher in speed than an ordinary serial algorithm, and efficiency of computing function maxima and minima is improved greatly.
Description
Technical field
The present invention relates to a kind of method that is worth most based on the parallel artificial bee colony Algorithm for Solving complicated function of computer group, belong to computing machine parallel computing field.
Background technology
Along with the enhancing of China's economic strength and the fast development of infotech, computing machine has entered into huge numbers of families.Because China is populous, the personnel of each levels of culture level are uneven, for thousands upon thousands ordinary peoples, basically just use computer internet, play games, and the basic function of multimedia etc., and a large amount of computer resources is left unused.Yet, meanwhile, in colleges and universities, scientific research institutions, enterprise etc. research and development of products base and scientific research institution but are faced with the hugely situation of computational resource shortage.How the distribution of these computational resources of balance is uneven, has become pendulum in scientists and engineers' problem demanding prompt solution.In order to solve the problem of this class, a kind of method of parallel computation has been proposed.Parallel computation (Parallel Computing) refers to use simultaneously multiple computational resource to solve the process of computational problem.For carrying out parallel computation, computational resource should comprise that one is furnished with the computing machine of multiprocessor (parallel processing), the proprietary numbering of the computing machine that links to each other with network, and perhaps both are combined with.The fundamental purpose of parallel computation is the large-scale and complicated computational problem of quick solution.Comprise in addition: utilize non-local resource, save cost, use a plurality of " cheapness " computational resource to replace mainframe computer, overcome simultaneously the memory limitations that exists on the single computing machine.For parallel computing is become a reality, a MPICH software of being finished by the exploitation of U.S. Argonne National Laboratory occurred by 1994, and became the representative art of present realization parallel computation.Linux is support multi-user, multitask, multithreading, the operating system of many CPU take network as core, is one of operating system of generally using of present scientific research and large enterprise.Its outstanding behaviours aspect stability and reliability makes its selected operating system of doing server.Based on above concept and software, can realize at (SuSE) Linux OS the parallel computation of a plurality of common computer, finished the maximum utilization for the computing machine slack resources.Artificial bee colony algorithm Artificial Bee Colony Algorithm (ABCA) is a kind of Swarm Intelligent Model algorithm, it is proposed in 2005 by Turkey scholar Karaboga, and this algorithm is a kind of bionic intelligence computing method that bee colony seeks good nectar source of simulating.Algorithm model has a lot of good performances, and is low such as algorithm complex, strong robustness, and each iteration is all carried out the overall situation and Local Search, thereby has avoided largely local optimum.Based on its remarkable performance, usually be used to solve complicated optimization problem, certainly also comprise finding the solution that complicated function is worth most.As Department of Computer Science and Engineering, College of Engineering, Guindy, the Harikri shna Narasimhan of Anna University is at paper Parallel Artificial Bee ColonyAlgorithm(Nature﹠amp; Biologically Inspired Computing, 2009.NaBIC 2009.WorldCongress on, Page (s): 306-311), use the multi-core computer of a shared storage structure, utilize openMP software to realize the problem that parallel artificial bee colony Algorithm for Solving complicated function is worth most.But in this problem, there are two each and every one serious problems, the firstth, this multi-core computer that they use is the more advanced and outstanding computer equipment of performance of the general computing machine of a kind of ratio, the sort of effect of utilizing the idle computer resource Solve problems of domestic consumer that method is mentioned before can not solving in this is bought new equipment but spend more substantial fund; The second, when the algorithm that design walks abreast, the shared storage structure of employing, this structure just define algorithm can only can carry out when sharing same storer at same computing machine, can not be with computational resource allocation to different computing machines.Based on two problems that exist above, we design and have proposed to use this message transfer mode of the MPI method of artificial bee colony Algorithm for Solving Function Optimization solution problem that walks abreast, effectively solve two problems that exist above, and substantially improved the Efficiency and accuracy that the Algorithm for Solving complicated function is worth most.
Summary of the invention
For defective and the deficiency that overcomes prior art, to solve common serial algorithm when finding the solution complex optimization problem, the problem that computing time is oversize, computational accuracy is not high the present invention proposes a kind of method that is worth most based on parallel artificial bee colony Algorithm for Solving complicated function.
Technical scheme of the present invention realizes in the following way.
A kind of method that is worth most based on parallel artificial bee colony Algorithm for Solving complicated function, comprise many computing machines that participate in calculating, (SuSE) Linux OS and relevant MPICH software are installed on every computing machine, one end of every netting twine is inserted the network interface of computing machine, it is upper that the other end accesses the router of same LAN (Local Area Network), and the SSH of configuration Linux makes each computing machine can not need each other the access of password, and select wherein that a computing machine is main control computer, be responsible for collection and the distribution of data and task, these back works of the demonstration of result of calculation, simultaneously it also participates in calculating as a computing node, and remaining computing machine is responsible computing function only all; Connect and the configuration of software by the above-mentioned hardware of having finished parallel computation; When design artificial bee colony algorithm, the parameter of calculating is assigned on each computing machine that participates in calculating uniformly, and the communication interface function that provides according to the MPI software package communication of carrying out call parameter at the appropriate time of program operation with exchange, the method step is as follows:
1) artificial bee colony initialization: upper at main control computer, to needed parameter, comprise that the number of times that the gathering honey honeybee mechanism in population quantity in the algorithm, iterations, the algorithm needs to communicate by letter arranges, and carries out the description of mathematical formulae to the function problem that will find the solution in calculating process between the maximum search number of times of same position, different computing machine;
2) initialization of MPI parallel computation environment; Call the function of MPI configuration parallel environment, comprise MPI_Init, MPI_Comm_size, MPI_Comm_rank, MPI_Get_processor_name, MPI_Finalize carry out setting and the computer name of parallel environment, computing machine numbering, the reading of computing machine these call parameters of sum;
3) main control computer is according to the situation of above-mentioned configuration, calculate each as the parameter of the computing machine of computing node, comprise the population quantity on each node computer, iterations, when communicate, and the broadcasting function MPI_Bcast of these parameters by MPI be broadcast to each node computer, necessary computing method and formula are expressed as follows:
Wherein sub_SN represents the population quantity that each computing machine is assigned in the formula [1], and SN is illustrated in the population total that arranges on the main control computer, and num is the sum (comprising main control computer) that participates in the computing machine of calculating; This shows, be the principle of the mean allocation that adopts to the distribution of each computing machine population; Finish the iterations that the front algorithm of each communication will carry out on every computing machine of formula [2] expression, after the iteration of having finished this predetermined number of times, communicate between each computing machine, exchange of information, wherein sub_iteration represents the iterations of each computing machine, total_iteration is illustrated in the iterations that arranges on the main control computer, needs the number of times of communicating by letter between the different computing machines of comuni_num main control computer setting in calculating process; This shows that each computing machine is to communicate at every turn after having finished fixed number of iterations;
4) each computing machine receives data and the preservation that main control computer distributes;
5) each computing machine is on machine separately, RANDOM SOLUTION according to the scope initialization oneself of the feasibility solution that will generate, calculate its fitness function, find out the maximal value of fitness function, minimum value and in this matrix variables of artificial bee colony algorithm record feasibility solution corresponding position, the population that simultaneously the feasibility solution of fitness function maximum is updated to each computing machine oneself is used for recording in the variable of globally optimal solution, wherein optimum solution is the arbitrary feasible solution when instigating certain mathematical problem to be found the solution to reach optimal value to be maximal value or minimum value, what globally optimal solution recorded is from this computer program operation, the feasible solution of the fitness function maximum that up to the present obtains; Take the computing function minimum value as example, provide the expression formula of calculating fitness function and be described below:
What wherein value represented is functional value, and what fitness represented is the fitness function value, and thus can letter of guarantee numerical value less, fitness function be larger;
6) each computing machine carries out alone the gathering honey honeybee pattern of artificial bee colony algorithm, gathering honey honeybee pattern refers to a gathering honey honeybee (representing a feasible solution), in the neighborhood that limits, search for and produce new feasible solution according to its present feasible solution, the fitness function value of the new feasible solution that produces of test, its mathematical expression is provided by following formula
If the fitness function of new feasible solution is higher than its existing fitness function, then by greedy criterion, cover existing feasible solution with new feasible solution value, and be 0 with the gathering honey honeybee mechanism in the record algorithm of mentioning in the step 1) at this variable set up of maximum search number of times of same position, if the value of the fitness function of new feasible solution is less than or equal to the value of existing fitness function, gathering honey honeybee mechanism in the record algorithm of mentioning in the step 1) so adds 1 at this variable of maximum search number of times of same position, and existing feasible solution is constant;
7) each computing machine carries out the probability calculation pattern of artificial bee colony algorithm, and the probability selection mathematical model of selecting is provided by following formula,
8) each computing machine carries out the observation honeybee pattern of artificial bee colony algorithm, the observation honeybee of waiting for is selected the gathering honey honeybee that oneself will follow according to the mode of roulette, be every and observe honeybee (representing a new feasible solution) and generate at random the random number between 0 to 1, compare with the selection probability of every gathering honey honeybee (gathering honey honeybee with by calculating in the step 7)); As the number that generates at random of observing honeybee just follows greater than the selection probability of gathering honey honeybee, just do not follow when being less than or equal to, and this mode of following is exactly the feasibility solution of observing institute's gathering honey honeybee record that honeybee follows, and uses the pattern of describing in the step 6) to calculate;
9) each computing machine finds maximal value and the minimum value of fitness function, if the maximal value of fitness function is all larger than existing globally optimal solution, just upgrades its globally optimal solution;
10) each computing machine carries out the search bee pattern of artificial bee colony algorithm, for each the gathering honey honeybee on every computing machine, judge respectively whether its this variable that is used for recording same position maximum search number of times in step 6) has surpassed in the step 1) predefined value, if do not surpass, skip so this step, if surpassed, just abandon the existing feasibility solution of this gathering honey honeybee, and new feasible solution of random initializtion again;
11) computing machine is judged according to the variable about iterations of record, if do not reach the given number of iterations of each node, the variable of record iterations adds one, and forwards step 6) to; Otherwise the variable of record iterations makes zero, and carries out next step;
12) according to the unidirectional loop topological structure, the feasible solution of the fitness function value maximum of each computing node transmission oneself is to the computing machine of adjacent next one numbering, and accept the feasible solution corresponding to fitness function maximal value of the computing machine of the upper numbering be adjacent, replace the feasible solution of fitness function value minimum in the own population with it;
13) computing machine reads the variable that record exchanges number of times, judges whether it reaches total interchange number of times of setting, if do not reach the number of times that presets, the variable that record exchanges number of times adds one, forwards step 6) to; Otherwise forward next step to;
14) finish.
The specifying of used knowledge and technology among the present invention:
The English full name of MPI is Message Passing Interface, is message passing interface, and at first MPI is a storehouse, rather than a language.Many people think that MPI is exactly a kind of parallel language, and this is inaccurate.But, classification according to parallel language, can regard FORTRAN+MPI or C+MPI as a kind of obtains after expansion on the original serial language basis, parallel language MPI can be called by FORTRAN77/C/Fortran90/C++ in the storehouse, from grammer, it observes all calling rules to built-in function/process, and what difference is general function/process do not have.MPI is the representative of a kind of standard or standard, and do not refer in particular to some specific implementations to it, up to now, all parallel computer manufacturing commercial cities provide the support to MPI, can freely obtain the realization of MPI on different parallel computers on the net, a correct MPI program can not add with revising to be moved at all parallel machines.MPI is a kind of program message passing model, and becomes the representative of this programming model.In fact, although standard MPI is very huge, its final purpose is served this target of interprocess communication.
Used main function and function thereof and parameter declaration are as follows among the present invention:
1)MPI_Init
Initialization MPI running environment.Each MPI program must be called this function, and this function must call before all call the MPI function, and can only call once.For c program, MPI_Init must transmit all command line parameters:
MPI_Init(int*argc,int*argv)
2)MPI_Comm_size
This function returns the process number relevant with this group communication factor, the process number that usually can come the inquiring user program to comprise according to communication factor M PI_COMM_WORD:
MPI_Comm_size(MPI_COMM_WORLD?comm,int*size)
3)MPI_Comm_rank
This function returns the value (0 ~ process number-1) of this process in the designated communication factor, and the value of a process in the different communication factor may be different:
MPI_Comm_rank(MPI_COMM_WORLD?comm,int*rank)
4)MPI_Get_processor_name
Return the title of this process place processor, this title is according to name ground, the network address, and the size of name buffer zone must be greater than MPI_MAX_PROCESSOR_NAME, and real length is returned in the resultlength variable:
MPI_Get_processor_name(char*name,int*resultlength)
5)MPI_Finalize
Finish the MPI execution environment.When in a single day this function is employed routine call, just can not call other customary function (comprising MPI_Init) of MPI, the user must guarantee before process transfer MPI_Finalize all sign offs relevant with the process of finishing.
6)MPI_Send
Carry out the transmission function of point-to-point communication.
MPI_Send(*buf,count,datatype,dest,tag,comm)
7)MPI_Recv
Carry out the receive data function of point-to-point communication.
MPI_Recv(*buf,count,datatype,source,tag,comm,*status)
8)MPI_Bcast
The broadcasting function sends to all other processes in the group to data broadcast from one of appointment follow-up journey
MPI_Bcast(*buffer,count,datatype,root,comm)
Being expressed as follows of employed traditional artificial bee colony algorithm among the present invention:
In the artificial bee colony algorithm model, at first introduce nectar source (Food Source), it represents the various feasible solutions in the solution space, asks in the extreme value at Solving Multimodal Function, and the function value is relevant, is that the fitness function value is weighed the nectar source with digital quantity income degree.Introduce again three kinds of honeybees: gathering honey honeybee (employed bees), observe honeybee (onlookers) and search bee (scouts).The gathering honey honeybee links together with concrete nectar source, and these nectar sources are their current nectar sources that gathering.Observe the honeybee wait and make one's options in the dancing district and to food source, the gathering honey honeybee is always remembered own optimal location in the past, and according to remembering in neighborhood search.The effect of investigation honeybee is reposition of random search.In the ABC algorithm, the observation honeybee of half and the gathering honey honeybee of half are arranged in the bee colony.Only has a gathering honey honeybee for each food source.In other words, the quantity of gathering honey honeybee equals the quantity of food source in bee colony.When the food source of gathering honey honeybee was exhausted with the observation honeybee by the gathering honey honeybee, the gathering honey honeybee will become an investigation honeybee.The key step of ABC algorithm is as follows:
1. bee colony initialization;
2. circulation: release until satisfy end condition
Carry out the gathering honey honeybee stage
Carry out and observe the honeybee stage
Carry out the search bee stage
3. export the result of experiment.
In the artificial bee colony algorithm, a feasible solution of the corresponding optimization problem in the position in nectar source, the nectar amount correspondence in nectar source a fitness function value.The quantity of the quantity of gathering honey honeybee or observation honeybee equals number of solutions.The first step, algorithm produce the initial population that contains N investigation honeybee at random, and N has represented honeybee quantity (all honeybees of initial time all are the investigation honeybee), also is the quantity that finds food source simultaneously.Each solution (i=1,2 ... N) be a D dimensional vector, D is the number of optimization problem parameter here.After the initialization, the solution of position, nectar source or problem can be drawn by the search that three kinds of honeybees are repeated.After all gathering honey honeybees were finished search, they will share nectar source information and nectar source nectar amount information with the observation honeybee in the district of dancing.Each observes the nectar source nectar amount information that honeybee is estimated its acquisition, and presses position, probability selection nectar source with this.As for the gathering honey honeybee, she produces a localized area by the original position of memory, and detects the nectar amount of position candidate, and chooses the position, nectar source according to greedy criterion.The position, nectar source of being abandoned by honeybee will be investigated honeybee and produce new position, nectar source and replace.
From above-mentioned explanation, can clearly know three control parameters are arranged: the quantity of the quantity n(gathering honey honeybee in nectar source or the quantity of observing honeybee in basic ABC algorithm), the value of limit and maximum cycle MCN.
Beneficial effect of the present invention and characteristics are:
The method that is worth most by the parallel artificial bee colony Algorithm for Solving complicated function that uses based on computer group, make us can utilize the idle computational resource of computing machine to carry out finding the solution of challenge, less purchase the expense that special mainframe computer etc. will spend, can bring certain economic benefit.
Experimental result shows simultaneously, and when adopting parallel artificial bee colony Algorithm for Solving problem, computing velocity can have than common serial algorithm substantial raising.
The below provides and uses parallel artificial bee colony to find the solution the experimental result of two functional minimum values:
First experiment is for the GRIEWANK function, parameter dimension 1000, span [600 600], iterations 20000, the bee colony population quantity 24 of employing, the communication of parallel algorithm adds up to 20 in the computation process, known GRIEWANK functional minimum value is 0, can see table.
Second experiment is for the SPHERE function, parameter dimension 2000, and span [100 100], iterations 40000, population quantity 24, the communication of parallel algorithm adds up to 20 in the computation process, and known GRIEWANK functional minimum value is 0, can see table.
Contrast by unit monokaryon minimum value in the above table and the every machine monokaryon of two-shipper minimum value can obtain the double machine parallel artificial bee colony and calculate identical with the unit serial algorithm in the accuracy of finding the solution on the complicated function Constrained and Unconstrained Optimization.By the contrast of unit monokaryon working time in above-mentioned two forms and the every machine monokaryon of two-shipper working time, can obtain the double machine parallel artificial bee colony and calculate and lack than the unit serial computing in the time of finding the solution the consumption on the complicated function Constrained and Unconstrained Optimization.We can obtain a conclusion thus, the method that parallel artificial bee colony Algorithm for Solving complicated function is worth most is worth most with the serial algorithm solved function compares, under the prerequisite that guarantees the Algorithm for Solving accuracy, can effectively improve the efficient of Solve problems, reduce the time of computation process cost.
Description of drawings
Fig. 1 is the algorithm flow block diagram of parallel artificial bee colony Algorithm for Solving multimodal function minimum value in the inventive method.Wherein, 1-14 is each step among the present invention.
Embodiment
The present invention will be further described below in conjunction with drawings and Examples, but be not limited to this.
Embodiment:
As shown in Figure 1, a kind of method that is worth most based on parallel artificial bee colony Algorithm for Solving complicated function, comprise many computing machines that participate in calculating, (SuSE) Linux OS and relevant MPICH software are installed on every computing machine, one end of every netting twine is inserted the network interface of computing machine, it is upper that the other end accesses the router of same LAN (Local Area Network), and the SSH of configuration Linux makes each computing machine can not need each other the access of password, and select wherein that a computing machine is main control computer, be responsible for collection and the distribution of data and task, these back works of the demonstration of result of calculation, simultaneously it also participates in calculating as a computing node, and remaining computing machine is responsible computing function only all; Connect and the configuration of software by the above-mentioned hardware of having finished parallel computation; When design artificial bee colony algorithm, the parameter of calculating is assigned on each computing machine that participates in calculating uniformly, and the communication interface function that provides according to the MPI software package communication of carrying out call parameter at the appropriate time of program operation with exchange, the method step is as follows:
1) artificial bee colony initialization: upper at main control computer, to needed parameter, comprise that the number of times that the gathering honey honeybee mechanism in population quantity in the algorithm, iterations, the algorithm needs to communicate by letter arranges, and carries out the description of mathematical formulae to the function problem that will find the solution in calculating process between the maximum search number of times of same position, different computing machine;
2) initialization of MPI parallel computation environment; Call the function of MPI configuration parallel environment, comprise MPI_Init, MPI_Comm_size, MPI_Comm_rank, MPI_Get_processor_name, MPI_Finalize carry out setting and the computer name of parallel environment, computing machine numbering, the reading of computing machine these call parameters of sum;
3) main control computer is according to the situation of above-mentioned configuration, calculate each as the parameter of the computing machine of computing node, comprise the population quantity on each node computer, iterations, when communicate, and with the broadcasting function MPI bcast broadcast of these parameters by MPI to each node computer, necessary computing method and formula are expressed as follows:
Wherein sub_SN represents the population quantity that each computing machine is assigned in the formula [1], and SN is illustrated in the population total that arranges on the main control computer, and num is the sum (comprising main control computer) that participates in the computing machine of calculating; This shows, be the principle of the mean allocation that adopts to the distribution of each computing machine population; Finish the iterations that the front algorithm of each communication will carry out on every computing machine of formula [2] expression, after the iteration of having finished this predetermined number of times, communicate between each computing machine, exchange of information, wherein sub_iteration represents the iterations of each computing machine, total_iteration is illustrated in the iterations that arranges on the main control computer, needs the number of times of communicating by letter between the different computing machines of comuni_num main control computer setting in calculating process; This shows that each computing machine is to communicate at every turn after having finished fixed number of iterations;
4) each computing machine receives data and the preservation that main control computer distributes;
5) each computing machine is on machine separately, RANDOM SOLUTION according to the scope initialization oneself of the feasibility solution that will generate, calculate its fitness function, find out the maximal value of fitness function, minimum value and in this matrix variables of artificial bee colony algorithm record feasibility solution corresponding position, the population that simultaneously the feasibility solution of fitness function maximum is updated to each computing machine oneself is used for recording in the variable of globally optimal solution, wherein optimum solution is the arbitrary feasible solution when instigating certain mathematical problem to be found the solution to reach optimal value to be maximal value or minimum value, what globally optimal solution recorded is from this computer program operation, the feasible solution of the fitness function maximum that up to the present obtains; Take the computing function minimum value as example, provide the expression formula of calculating fitness function and be described below:
What wherein value represented is functional value, and what firness represented is the fitness function value, and thus can letter of guarantee numerical value less, fitness function be larger;
6) each computing machine carries out alone the gathering honey honeybee pattern of artificial bee colony algorithm, gathering honey honeybee pattern refers to a gathering honey honeybee (representing a feasible solution), in the neighborhood that limits, search for and produce new feasible solution according to its present feasible solution, the fitness function value of the new feasible solution that produces of test, its mathematical expression is provided by following formula
In the following formula
What represent is new feasible solution,
What represent is existing feasible solution, i feasible solution of i, j represents j parameter of i feasible solution, λ is a random number, and λ ∈ [1 arranged, 1], k represents k feasible solution, and k ≠ i is arranged, find out thus, what the gathering honey honeybee was adopted searches in the neighborhood that limits, and is a parameter to selecting at random in this feasible solution, according to other feasible solution in data carry out that computing obtains; If the fitness function of new feasible solution is higher than its existing fitness function, then by greedy criterion, cover existing feasible solution with new feasible solution value, and be 0 with the gathering honey honeybee mechanism in the record algorithm of mentioning in the step 1) at this variable set up of maximum search number of times of same position, if the value of the fitness function of new feasible solution is less than or equal to the value of existing fitness function, gathering honey honeybee mechanism in the record algorithm of mentioning in the step 1) so adds 1 at this variable of maximum search number of times of same position, and existing feasible solution is constant;
7) each computing machine carries out the probability calculation pattern of artificial bee colony algorithm, and the probability selection mathematical model of selecting is provided by following formula,
8) each computing machine carries out the observation honeybee pattern of artificial bee colony algorithm, the observation honeybee of waiting for is selected the gathering honey honeybee that oneself will follow according to the mode of roulette, be every and observe honeybee (representing a new feasible solution) and generate at random the random number between 0 to 1, compare with the selection probability of every gathering honey honeybee (gathering honey honeybee with by calculating in the step 7)); As the number that generates at random of observing honeybee just follows greater than the selection probability of gathering honey honeybee, just do not follow when being less than or equal to, and this mode of following is exactly the feasibility solution of observing institute's gathering honey honeybee record that honeybee follows, and uses the pattern of describing in the step 6) to calculate;
9) each computing machine finds maximal value and the minimum value of fitness function, if the maximal value of fitness function is all larger than existing globally optimal solution, just upgrades its globally optimal solution;
10) each computing machine carries out the search bee pattern of artificial bee colony algorithm, for each the gathering honey honeybee on every computing machine, judge respectively whether its this variable that is used for recording same position maximum search number of times in step 6) has surpassed in the step 1) predefined value, if do not surpass, skip so this step, if surpassed, just abandon the existing feasibility solution of this gathering honey honeybee, and new feasible solution of random initializtion again;
11) computing machine is judged according to the variable about iterations of record, if do not reach the given number of iterations of each node, the variable of record iterations adds one, and forwards step 6) to; Otherwise the variable of record iterations makes zero, and carries out next step;
12) according to the unidirectional loop topological structure, the feasible solution of the fitness function value maximum of each computing node transmission oneself is to the computing machine of adjacent next one numbering, and accept the feasible solution corresponding to fitness function maximal value of the computing machine of the upper numbering be adjacent, replace the feasible solution of fitness function value minimum in the own population with it;
13) computing machine reads the variable that record exchanges number of times, judges whether it reaches total interchange number of times of setting, if do not reach the number of times that presets, the variable that record exchanges number of times adds one, forwards step 6) to; Otherwise forward next step to;
14) finish.
Claims (1)
1. method that is worth most based on parallel artificial bee colony Algorithm for Solving complicated function, comprise many computing machines that participate in calculating, (SuSE) Linux OS and relevant MPICH software are installed on every computing machine, one end of every netting twine is inserted the network interface of computing machine, it is upper that the other end accesses the router of same LAN (Local Area Network), and the SSH of configuration Linux makes each computing machine can not need each other the access of password, and select wherein that a computing machine is main control computer, be responsible for collection and the distribution of data and task, these back works of the demonstration of result of calculation, simultaneously it also participates in calculating as a computing node, and remaining computing machine is responsible computing function only all; Connect and the configuration of software by the above-mentioned hardware of having finished parallel computation; When design artificial bee colony algorithm, the parameter of calculating is assigned on each computing machine that participates in calculating uniformly, and the communication interface function that provides according to the MPI software package communication of carrying out call parameter at the appropriate time of program operation with exchange, the method step is as follows:
1) artificial bee colony initialization: upper at main control computer, to needed parameter, comprise that the number of times that the gathering honey honeybee mechanism in population quantity in the algorithm, iterations, the algorithm needs to communicate by letter arranges, and carries out the description of mathematical formulae to the function problem that will find the solution in calculating process between the maximum search number of times of same position, different computing machine;
2) initialization of MPI parallel computation environment; Call the function of MPI configuration parallel environment, comprise MPI_Init, MPI_Comm_size, MPI_Comm_rank, MPI_Get_processor_name, MPI_Finalize carry out setting and the computer name of parallel environment, computing machine numbering, the reading of computing machine these call parameters of sum;
3) main control computer is according to the situation of above-mentioned configuration, calculate each as the parameter of the computing machine of computing node, comprise the population quantity on each node computer, iterations, when communicate, and the broadcasting function MPI_Bcast of these parameters by MPI be broadcast to each node computer, necessary computing method and formula are expressed as follows:
Wherein sub_SN represents the population quantity that each computing machine is assigned in the formula [1], and SN is illustrated in the population total that arranges on the main control computer, and num is the sum that participates in the computing machine of calculating; This shows, be the principle of the mean allocation that adopts to the distribution of each computing machine population; Finish the iterations that the front algorithm of each communication will carry out on every computing machine of formula [2] expression, after the iteration of having finished this predetermined number of times, communicate between each computing machine, exchange of information, wherein sub-iteration represents the iterations of each computing machine, total_iteration is illustrated in the iterations that arranges on the main control computer, needs the number of times of communicating by letter between the different computing machines of comuni_num main control computer setting in calculating process; This shows that each computing machine is to communicate at every turn after having finished fixed number of iterations;
4) each computing machine receives data and the preservation that main control computer distributes;
5) each computing machine is on machine separately, RANDOM SOLUTION according to the scope initialization oneself of the feasibility solution that will generate, calculate its fitness function, find out the maximal value of fitness function, minimum value and in this matrix variables of artificial bee colony algorithm record feasibility solution corresponding position, the population that simultaneously the feasibility solution of fitness function maximum is updated to each computing machine oneself is used for recording in the variable of globally optimal solution, wherein optimum solution is the arbitrary feasible solution when instigating certain mathematical problem to be found the solution to reach optimal value to be maximal value or minimum value, what globally optimal solution recorded is from this computer program operation, the feasible solution of the fitness function maximum that up to the present obtains; Take the computing function minimum value as example, provide the expression formula of calculating fitness function and be described below:
What wherein value represented is functional value, and what fitness represented is the fitness function value, and thus can letter of guarantee numerical value less, fitness function be larger;
6) each computing machine carries out alone the gathering honey honeybee pattern of artificial bee colony algorithm, gathering honey honeybee pattern refers to a gathering honey honeybee, in the neighborhood that limits, search for and produce new feasible solution according to its present feasible solution, the fitness function value of the new feasible solution that produces of test, its mathematical expression is provided by following formula
In the following formula
What represent is new feasible solution,
What represent is existing feasible solution, i feasible solution of i, j represents j parameter of i feasible solution, λ is a random number, and λ ∈ [1 arranged, 1], k represents k feasible solution, and k ≠ i is arranged, find out thus, what the gathering honey honeybee was adopted searches in the neighborhood that limits, and is a parameter to selecting at random in this feasible solution, according to other feasible solution in data carry out that computing obtains; If the fitness function of new feasible solution is higher than its existing fitness function, then by greedy criterion, cover existing feasible solution with new feasible solution value, and be 0 with the gathering honey honeybee mechanism in the record algorithm of mentioning in the step 1) at this variable set up of maximum search number of times of same position, if the value of the fitness function of new feasible solution is less than or equal to the value of existing fitness function, gathering honey honeybee mechanism in the record algorithm of mentioning in the step 1) so adds 1 at this variable of maximum search number of times of same position, and existing feasible solution is constant;
7) each computing machine carries out the probability calculation pattern of artificial bee colony algorithm, and the probability selection mathematical model of selecting is provided by following formula,
8) each computing machine carries out the observation honeybee pattern of artificial bee colony algorithm, the observation honeybee of waiting for is selected the gathering honey honeybee that oneself will follow according to the mode of roulette, be every and observe honeybee and generate at random random number between one 0 to 1, compare with the selection probability of every gathering honey honeybee; As the number that generates at random of observing honeybee just follows greater than the selection probability of gathering honey honeybee, just do not follow when being less than or equal to, and this mode of following is exactly the feasibility solution of observing institute's gathering honey honeybee record that honeybee follows, and uses the pattern of describing in the step 6) to calculate;
9) each computing machine finds maximal value and the minimum value of fitness function, if the maximal value of fitness function is all larger than existing globally optimal solution, just upgrades its globally optimal solution;
10) each computing machine carries out the search bee pattern of artificial bee colony algorithm, for each the gathering honey honeybee on every computing machine, judge respectively whether its this variable that is used for recording same position maximum search number of times in step 6) has surpassed in the step 1) predefined value, if do not surpass, skip so this step, if surpassed, just abandon the existing feasibility solution of this gathering honey honeybee, and new feasible solution of random initializtion again;
11) computing machine is judged according to the variable about iterations of record, if do not reach the given number of iterations of each node, the variable of record iterations adds one, and forwards step 6) to; Otherwise the variable of record iterations makes zero, and carries out next step;
12) according to the unidirectional loop topological structure, the feasible solution of the fitness function value maximum of each computing node transmission oneself is to the computing machine of adjacent next one numbering, and accept the feasible solution corresponding to fitness function maximal value of the computing machine of the upper numbering be adjacent, replace the feasible solution of fitness function value minimum in the own population with it;
13) computing machine reads the variable that record exchanges number of times, judges whether it reaches total interchange number of times of setting, if do not reach the number of times that presets, the variable that record exchanges number of times adds one, forwards step 6) to; Otherwise forward next step to;
14) finish.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012104319962A CN102982008A (en) | 2012-11-01 | 2012-11-01 | Complicated function maximum and minimum solving method by means of parallel artificial bee colony algorithm based on computer cluster |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012104319962A CN102982008A (en) | 2012-11-01 | 2012-11-01 | Complicated function maximum and minimum solving method by means of parallel artificial bee colony algorithm based on computer cluster |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102982008A true CN102982008A (en) | 2013-03-20 |
Family
ID=47856050
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012104319962A Pending CN102982008A (en) | 2012-11-01 | 2012-11-01 | Complicated function maximum and minimum solving method by means of parallel artificial bee colony algorithm based on computer cluster |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102982008A (en) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294875A (en) * | 2013-06-28 | 2013-09-11 | 山东师范大学 | Group formation simulation method based on group intelligence and self-adaption evaluation |
CN103701621A (en) * | 2013-12-10 | 2014-04-02 | 中国科学院深圳先进技术研究院 | Message passing interface broadcasting method and device |
CN104009948A (en) * | 2014-05-12 | 2014-08-27 | 南京信息工程大学 | Blind source separation method based on improved artificial bee colony algorithm |
CN104965941A (en) * | 2015-06-02 | 2015-10-07 | 上海电力学院 | Magnetic flux leakage testing defect reconstruction method based on improved artificial bee colony algorithm |
CN105893258A (en) * | 2016-03-31 | 2016-08-24 | 中电海康集团有限公司 | Performance optimizing method and tool based on artificial fish school algorithm |
CN106599585A (en) * | 2016-12-19 | 2017-04-26 | 兰州交通大学 | Hydrological model parameter optimization method and apparatus based on parallel bee colony algorithm |
CN106709597A (en) * | 2016-12-12 | 2017-05-24 | 广东电网有限责任公司电力科学研究院 | Parallel TSP problem optimizing method and device based on artificial bee colony algorithm |
CN107862416A (en) * | 2017-11-29 | 2018-03-30 | 辽宁工程技术大学 | A kind of emergency materials warehouse Optimization Method for Location-Selection based on the uncertain collection of box |
CN108415783A (en) * | 2018-02-27 | 2018-08-17 | 天津大学 | A kind of heterogeneous polynuclear method for allocating tasks based on improvement ant colony algorithm |
CN108711155A (en) * | 2018-04-20 | 2018-10-26 | 西京学院 | A kind of image Fast Segmentation Algorithm of artificial bee colony Optimization of Fuzzy cluster |
CN109508193A (en) * | 2018-11-28 | 2019-03-22 | 北京东土科技股份有限公司 | A kind of application deployment operation method, device, terminal device and medium |
CN110633784A (en) * | 2018-06-25 | 2019-12-31 | 沈阳高精数控智能技术股份有限公司 | Multi-rule artificial bee colony improvement algorithm |
CN112488387A (en) * | 2020-11-30 | 2021-03-12 | 重庆邮电大学 | Software product line configuration method based on multi-objective optimization algorithm |
CN113918210A (en) * | 2021-09-16 | 2022-01-11 | 成都信息工程大学 | OMP-based optimization method and system for calmet program |
CN117132945A (en) * | 2023-10-25 | 2023-11-28 | 四川三思德科技有限公司 | Multi-source data fusion-based key area security method and device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101894273A (en) * | 2010-05-26 | 2010-11-24 | 北京航空航天大学 | Artificial bee colony refine edge potential field function-based unmanned plane target identification method |
CN102170137A (en) * | 2011-04-26 | 2011-08-31 | 华北电力大学 | ORP (optimal reactive power) method of distribution network of electric power system |
-
2012
- 2012-11-01 CN CN2012104319962A patent/CN102982008A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101894273A (en) * | 2010-05-26 | 2010-11-24 | 北京航空航天大学 | Artificial bee colony refine edge potential field function-based unmanned plane target identification method |
CN102170137A (en) * | 2011-04-26 | 2011-08-31 | 华北电力大学 | ORP (optimal reactive power) method of distribution network of electric power system |
Non-Patent Citations (2)
Title |
---|
ANAN BANHARNSAKUN,TIRANEE ACHALAKUL,BOONCHAROEN SIRINAOVAKUL: "《Artificial Bee Colony Algorithm on Distributed Environments》", 《SECOND WORLD CONGRESS ON NATURE AND BIOLOGICALLY INSPIRED COMPUTING 2010》, 17 December 2010 (2010-12-17) * |
HARIKRISHNA NARASIMHAN: "《Parallel Artificial Bee Colony(PABC) Algorithm》", 《WORLD CONGRESS ON NATURE&BIOLOGICALLY INSPIRED COMPUTING 2009》, 11 December 2009 (2009-12-11) * |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294875A (en) * | 2013-06-28 | 2013-09-11 | 山东师范大学 | Group formation simulation method based on group intelligence and self-adaption evaluation |
CN103294875B (en) * | 2013-06-28 | 2015-12-09 | 山东师范大学 | Based on the group formation simulation method of swarm intelligence and Adaptive critic |
CN103701621A (en) * | 2013-12-10 | 2014-04-02 | 中国科学院深圳先进技术研究院 | Message passing interface broadcasting method and device |
CN103701621B (en) * | 2013-12-10 | 2017-11-24 | 中国科学院深圳先进技术研究院 | A kind of message passing interface broadcasting method and device |
CN104009948A (en) * | 2014-05-12 | 2014-08-27 | 南京信息工程大学 | Blind source separation method based on improved artificial bee colony algorithm |
CN104009948B (en) * | 2014-05-12 | 2017-02-01 | 南京信息工程大学 | Blind source separation method based on improved artificial bee colony algorithm |
CN104965941A (en) * | 2015-06-02 | 2015-10-07 | 上海电力学院 | Magnetic flux leakage testing defect reconstruction method based on improved artificial bee colony algorithm |
CN105893258A (en) * | 2016-03-31 | 2016-08-24 | 中电海康集团有限公司 | Performance optimizing method and tool based on artificial fish school algorithm |
CN106709597B (en) * | 2016-12-12 | 2020-07-03 | 广东电网有限责任公司电力科学研究院 | Method and device for parallel optimization processing of TSP problem based on artificial bee colony algorithm |
CN106709597A (en) * | 2016-12-12 | 2017-05-24 | 广东电网有限责任公司电力科学研究院 | Parallel TSP problem optimizing method and device based on artificial bee colony algorithm |
CN106599585B (en) * | 2016-12-19 | 2018-09-28 | 兰州交通大学 | Hydro-Model Parameter Calibration Technology optimization method and device based on parallel ant colony algorithm |
CN106599585A (en) * | 2016-12-19 | 2017-04-26 | 兰州交通大学 | Hydrological model parameter optimization method and apparatus based on parallel bee colony algorithm |
CN107862416A (en) * | 2017-11-29 | 2018-03-30 | 辽宁工程技术大学 | A kind of emergency materials warehouse Optimization Method for Location-Selection based on the uncertain collection of box |
CN108415783B (en) * | 2018-02-27 | 2021-12-07 | 天津大学 | Heterogeneous multi-core task allocation method based on improved bee colony algorithm |
CN108415783A (en) * | 2018-02-27 | 2018-08-17 | 天津大学 | A kind of heterogeneous polynuclear method for allocating tasks based on improvement ant colony algorithm |
CN108711155A (en) * | 2018-04-20 | 2018-10-26 | 西京学院 | A kind of image Fast Segmentation Algorithm of artificial bee colony Optimization of Fuzzy cluster |
CN110633784B (en) * | 2018-06-25 | 2022-07-22 | 沈阳中科数控技术股份有限公司 | Multi-rule artificial bee colony improvement algorithm |
CN110633784A (en) * | 2018-06-25 | 2019-12-31 | 沈阳高精数控智能技术股份有限公司 | Multi-rule artificial bee colony improvement algorithm |
CN109508193B (en) * | 2018-11-28 | 2022-02-18 | 北京东土科技股份有限公司 | Application deployment and operation method, device, terminal equipment and medium |
CN109508193A (en) * | 2018-11-28 | 2019-03-22 | 北京东土科技股份有限公司 | A kind of application deployment operation method, device, terminal device and medium |
CN112488387A (en) * | 2020-11-30 | 2021-03-12 | 重庆邮电大学 | Software product line configuration method based on multi-objective optimization algorithm |
CN112488387B (en) * | 2020-11-30 | 2023-08-29 | 重庆邮电大学 | Software product line configuration method based on multi-objective optimization algorithm |
CN113918210A (en) * | 2021-09-16 | 2022-01-11 | 成都信息工程大学 | OMP-based optimization method and system for calmet program |
CN117132945A (en) * | 2023-10-25 | 2023-11-28 | 四川三思德科技有限公司 | Multi-source data fusion-based key area security method and device |
CN117132945B (en) * | 2023-10-25 | 2024-01-09 | 四川三思德科技有限公司 | Multi-source data fusion-based key area security method and device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102982008A (en) | Complicated function maximum and minimum solving method by means of parallel artificial bee colony algorithm based on computer cluster | |
Jouppi et al. | Tpu v4: An optically reconfigurable supercomputer for machine learning with hardware support for embeddings | |
US20140249688A1 (en) | Decentralized controls and communications for autonomous distribution networks in smart grid | |
Zheng et al. | Architecture-based design and optimization of genetic algorithms on multi-and many-core systems | |
Wu et al. | A mapreduce based ant colony optimization approach to combinatorial optimization problems | |
Kaur et al. | An energy-efficient load balancing approach for scientific workflows in fog computing | |
CN102176200A (en) | Software test case automatic generating method | |
CN111639054B (en) | Data coupling method, system and medium for ocean mode and data assimilation | |
WO2023071238A1 (en) | Computational graph compiling and scheduling methods and related products | |
CN103324765A (en) | Multi-core synchronization data query optimization method based on column storage | |
Lu et al. | Algorithms for balanced graph colorings with applications in parallel computing | |
Talbi et al. | Metaheuristics on gpus | |
Chen et al. | TAMM: A new topology-aware mapping method for parallel applications on the Tianhe-2A supercomputer | |
Liang et al. | An energy-aware resource deployment algorithm for cloud data centers based on dynamic hybrid machine learning | |
Majd et al. | Parallel imperialist competitive algorithms | |
He et al. | Haas: Cloud-based real-time data analytics with heterogeneity-aware scheduling | |
Liu et al. | Energy-Aware on-chip virtual machine placement for cloud-supported cyber-physical systems | |
CN206100022U (en) | It calculates cluster system directly to link framework based on infinite bandwidth | |
Wang et al. | A study of hybrid parallel genetic algorithm model | |
Wu et al. | TurboGNN: Improving the End-to-End Performance for Sampling-Based GNN Training on GPUs | |
Zhang et al. | Optimising data access latencies of virtual machine placement based on greedy algorithm in datacentre | |
Li et al. | Parallel optimization based on artificial bee colony algorithm | |
Scherger et al. | On Using the UML to Describe the MASC Model of Parallel Computation. | |
Kelkawi et al. | Spark-based cooperative coevolution for large scale global optimization | |
Runbang | Design and Implementation of Neural Computing Platform Application System Based on Super Computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130320 |