CN104463322A - Parallel and mixed artificial bee colony method of heterogeneous system - Google Patents

Parallel and mixed artificial bee colony method of heterogeneous system Download PDF

Info

Publication number
CN104463322A
CN104463322A CN201410645481.1A CN201410645481A CN104463322A CN 104463322 A CN104463322 A CN 104463322A CN 201410645481 A CN201410645481 A CN 201410645481A CN 104463322 A CN104463322 A CN 104463322A
Authority
CN
China
Prior art keywords
processor
bee colony
artificial bee
heterogeneous system
parallel
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
Application number
CN201410645481.1A
Other languages
Chinese (zh)
Inventor
王娅娟
张广勇
吴韶华
沈铂
卢晓伟
吴庆
张清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Beijing Electronic Information Industry Co Ltd
Original Assignee
Inspur Beijing Electronic Information Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN201410645481.1A priority Critical patent/CN104463322A/en
Publication of CN104463322A publication Critical patent/CN104463322A/en
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention discloses a parallel and mixed artificial bee colony method of a heterogeneous system. The parallel and mixed artificial bee colony method includes the following steps that S1, an initial data set is divided by a processor to obtain a plurality of initial data subsets, and the different initial data subsets are distributed to calculation devices in the heterogeneous system in a multi-threading mode in parallel; S2, after receiving the data subsets, the calculation devices carry out a round of evolution according to a mixed artificial bee colony algorithm to obtain calculation results of the round, and the calculation results of the round are transmitted to the processor to update the data set, wherein the calculation results of the round include the locally optimal solution of the round; S3, the processor judges whether a stop condition is met or not, if yes, the processor obtains the globally optimal solution according to the locally optimal solution, if not, the updated data set is divided by the processor into multiple updated data subsets again, the updated data subsets are distributed to the multiple calculation devices in the multi-threading mode in parallel, and then the step S2 is executed again. According to the method, the artificial bee colony algorithm is applied to the heterogeneous system to solve the problem that much time is consumed to find the optimal solutions in the optimization process.

Description

A kind of parallel mixing artificial bee colony method of heterogeneous system
Technical field
The present invention relates to machine learning field, high-performance computing sector, particularly relate to the Heterogeneous Computing field in high-performance calculation, relate to a kind of parallel mixing artificial bee colony method of heterogeneous system.
Background technology
Optimization problem is an ancient topic, and the exploration of optimization problem is also one of mankind's research theme always.Along with expanding economy and She Hui Jin Walk, while optimization problem obtains development, new challenge is also following.Generally speaking, novel optimization problem has following principal character: higher-dimension, a large amount of restrictive conditions, multi-peak and discontinuous.And traditional optimization mainly utilizes the method such as mathematical analysis, iterative to solve practical problems.Although these methods have complete theoretical analysis and mathematical justification, continuous, low-dimensional optimization problem also achieves good result, multimodal, higher-dimension and discontinuous optimization problem are but seemed helpless.
Tradition optimized algorithm generally has hard objectives, and this is also that it does not have the one of the main reasons of good behaviour in complicated higher-dimension problem.So scholars start to seek better method and solve these problems.Biological occurring in nature has many swarm intelligences biological, as flying bird, fish, insect etc.Wherein single individuality only has simple intelligence, but the colony be made up of individuality shows the intelligence be added far beyond individuality, and the self organization ability of their mutual coordination and cooperations can be good at complicated meticulous task.Particularly nearly decades, along with people are to the more deep understanding of spontaneous phenomenon, proposing the optimization method with stronger applicability---intelligent optimization algorithm, this creates condition for solving complex large system problem.The algorithm of this type mainly contains ant group algorithm (Ant Colony Optimization, ACO), simulated annealing (SimulatedAnnealing, SA), particle swarm optimization algorithm, artificial bee colony algorithm etc.
Wherein, artificial bee colony algorithm (Artificial Bee Colony, ABC) is a kind of global optimization approach based on swarm intelligence, compares with other algorithm, and this algorithm has and realizes the features such as simple, parameter is few and speed of searching optimization is fast.Artificial bee colony algorithm is proposed by Karaboga at first, is inspired in some knowledge of artificial life, social psychology and group theory.Meanwhile, artificial bee colony algorithm is also a kind of evolutionary computation, similar with other EVOLUTIONARY COMPUTATION, artificial bee colony algorithm random initializtion one group of population solution, loop iteration evolution optimizing.As one of typical Swarm Intelligent Algorithm, artificial bee colony algorithm is a kind of heuristic search algorithm based on population, it can make full use of mutual cooperation between individual in population and information sharing, the food source of the abundantest, the shortest path of search of food around honeycomb.
In artificial bee colony algorithm, the process (namely finding high-quality nectar source) of honeybee producting honey is similar to the process of optimum solution in the searching problem to be optimized in evolutionary computation.In gathering honey model, the solution that nectar source expresses possibility, gathering honey behavior is equivalent to search for optimum solution, and nectar source quality visual is fitness function, and this function determines the Evolutionary direction of whole algorithm.
The key step of artificial bee colony algorithm is described below:
Step l: initial parameter is set: population quantity, maximum cycle, dimension etc., wherein gathering honey honeybee and each half of observation honeybee;
Step 2: initialization, and calculate nectar source and be suitable for angle value, enter circulation;
Step 3: adopt honeybee producting honey and share nectar source information phase;
Step 4: observe honeybee and obtain nectar source information, and select the nectar source gathering honey stage;
Step 5: after limited number of times, nectar source suitability degree is still not up to standard, abandons, and gathering honey honeybee becomes search bee and continues search, and upgrades position by (formula 1.1);
Step 6: record optimum solution cycle index adds 1, judges whether to meet stop condition (normally greatest iteration algebraically), if then terminate, otherwise forward Step 3 to.
(formula 1.1)
Artificial bee colony algorithm is widely used in real-life various aspects, can say, artificial bee colony algorithm can solve the optimization problem that the evolution algorithms such as every genetic algorithm can solve substantially.Artificial bee colony algorithm can be utilized to carry out neural network training, such as seek optimal weights; Or solve TSP (Traveling Salesman Problem, TSP) and JSP (Job-Shop Schedule Problem, JSP) by artificial bee colony algorithm.
Many cores (Many Integrated Core that Intel (Intel) company releases, MIC) processor is towards high-performance calculation (High Performance Computing, HPC) field, be intended to lead industry to enter trillion calculating epoch, it is in computer architecture, not for replacing CPU, but exist as coprocessor.Compare with general multinuclear Xeon, many-core processor has less kernel and hardware thread, and many-core processor computational resource density is higher, and chip-on communication expense significantly reduces, there is more transistor and energy, more complicated Parallel application can be competent at.
Intel MIC product is based on X86-based, and the x86 core that MIC chip has dozens of to simplify usually, provides the computing power of highly-parallel.Many-core processor, comprises the core of more than 50, and the vectorial bit wide of 512bit, and two smart performance is more than 1TFlops.
MIC has programming mode extremely flexibly, and mic card can exist as a processor, also can be counted as an independently node.Basic MIC programming model MIC is regarded as a processor, and a part of code, according to the instruction of program, is operated in MIC end by CPU (central processing unit) (CPU).Now there are two kind equipments, i.e. CPU end and many core (MIC) processor end.Primary CPU program also can be run usually on MIC chip, and this also means that can utilize the computational resource of MIC, adequately protected software investment to existing program without the need to carrying out large change.Along with developers adopt higher degree of parallelism (instruction, data, task, vector, thread and cluster etc.), commonly use important of Intel Architecture processor and programming model easily extensible that is universalness to Intel MIC framework, and without the need to changing programming tool.
Existing many supercomputers, and the HPC purpose processor in future is as NVIDIA Echelon etc., all adopts based on CPU, main force's computing accelerates computing framework (Heterogeneous) based on the mixing of GPU.In this unlike, Knights series then belong to adopt the multiple x86 cores substantially identical with host CPU framework integrated come the type (Homogeneous) of auxiliary host CPU computing.
Heterogeneous system is the massive parallel processing of current main flow, and CPU processor combines with MIC processor and together processes large-scale calculations problem by it, possesses extremely strong computing power.If the powerful computing power of this heterogeneous system can be utilized to utilize mixing artificial bee colony to remove solving practical problems, will greatly accelerate to obtain optimum solving practical problems process.But traditional artificial bee colony algorithm is all serial iteration process, cannot make full use of the parallel processing capability of heterogeneous system, is difficult to the performance advantage playing this system.
Summary of the invention
The invention provides a kind of parallel mixing artificial bee colony method of heterogeneous system, finding optimum solution time long problem by artificial bee colony algorithm being applied to heterogeneous system to solve in optimizing process.
For solving the problems of the technologies described above, the invention provides a kind of parallel mixing artificial bee colony method of heterogeneous system, comprise the following steps: S1: processor divides initial data set and obtains multiple primary data subset, distributes different primary data subsets to the multiple computing equipments in heterogeneous system multi-threaded parallel; S2: after described multiple computing equipment receives respective data subset respectively, carry out taking turns evolution according to mixing artificial bee colony algorithm respectively, obtain respective this and take turns result of calculation, and respective this is taken turns result of calculation and be sent to described processor with more new data set, wherein, this is taken turns result of calculation and comprises this and take turns locally optimal solution; S3: described processor judges whether to meet stop condition, if, described processor is taken turns locally optimal solution according to described this and is obtained globally optimal solution, if not, data set after renewal is reclassified as the data subset of multiple renewal, be distributed to described multiple computing equipment multi-threaded parallel, return S2 afterwards.
Further, the process of described step S1 comprises: multiple thread distributed by processor, for each thread distributes primary data subset, multi-threaded parallel ground sends call request to the multiple computing equipments in heterogeneous system, described computing equipment, after receiving described call request, obtains respective primary data subset.
Further, described initial data set is stored in the storage system of processor with the form of configuration file.
Further, described processor to the data subset that computing equipment is distributed be through coding data subset.
Further, described computing equipment is MIC coprocessor.
Further, after step S2, also comprise: iterations is added one by described processor.
Further, described stop condition is maximum iteration time.
Technical scheme provided by the invention, for solving the slower problem of optimum solution process, by the cooperated computing of processor and computing equipment (MIC processor), and adopts artificial bee colony algorithm, can greatly accelerate the process solving optimum solution.
Embodiment
In present pre-ferred embodiments, such as, assuming that heterogeneous system comprises N number of processor and M computing equipment (in this, being coprocessor), wherein, N and M be more than or equal to 1 integer.Wherein, processor is central processing unit (CPU), and coprocessor is such as many core (MIC) processor.
When initialization data set and parameter, need initial data set to be stored in the storage system of processor with the form of configuration file.Processor initial data set divides and obtains multiple primary data subset, in order to play the parallel processing capability of heterogeneous system better, processor can initiate N number of thread (N be more than or equal to 1 integer), different primary data subsets is distributed to simultaneously the coprocessor in heterogeneous system.Specifically, N number of thread initiated by processor, and distributes respective primary data subset (such as comprising data acquisition and parameter) for each thread, and multi-threaded parallel ground sends call request to coprocessor, coprocessor, after reception call request, obtains respective primary data subset.Wherein, different coprocessor primary data subset is separately different.
In this, reduce the traffic between processor and coprocessor in order to try one's best in data subset distribution procedure, before carrying out Data dissemination, different data subsets be encoded.Data characteristics due to these data subsets is the same, only needs a kind of coding method meeting these data characteristicses.
After coprocessor receives respective data subset, carry out taking turns evolution, obtain the result of calculation that this is taken turns according to mixing artificial bee colony algorithm, wherein, result of calculation comprises the parameter (comprising other solutions calculated) of this locally optimal solution of taking turns and correspondence.Specifically, to each coprocessor, start N number of thread, each thread is responsible for the data subset to the sub-range corresponding to data subset, carries out this evolution taken turns respectively, and selects the optimum solution of epicycle evolution.The result of calculation (comprising the parameter of locally optimal solution and correspondence) that each coprocessor obtains writes back in the configuration file of processor successively.If do not meet stop condition, the more new data set in configuration file is reclassified as M new data subset by processor more again, in the mode of distributing at random, new data subset is distributed to M coprocessor, carries out the evolution of a new round.Wherein, each new data subset again distributed comprises the locally optimal solution obtained from M coprocessor, that is, a M locally optimal solution replaces M data of the afterbody of new data subset.
In this, the process finding the optimal characteristics of data subset is actually a process of minimizing on this heterogeneous system.
In the evolutionary process of often taking turns, each coprocessor starts corresponding number thread and carries out parallel evolution renewal to the sample in data subset simultaneously, until obtain the locally optimal solution on each coprocessor.Owing to not having correlativity between these data, and each iterative evolution process belongs to computation-intensive, can carry out parallel accelerate calculating by coprocessor.
When often taking turns after evolution terminates, result of calculation can be back to processor by each coprocessor, and meanwhile, iterations adds one.Processor judges whether to meet stop condition.In this, stop condition is maximum iteration time.If meet stop condition, then processor return from each coprocessor this take turns locally optimal solution and select globally optimal solution.If do not meet stop condition, then the data set that the result of calculation returned according to coprocessor upgrades is divided into M renewal data subset by processor, be distributed to M coprocessor multi-threaded parallel, after coprocessor receives the data subset upgraded, continue next round and evolve.Said process is circulated to and meets stop condition, obtains globally optimal solution and namely stops.
More than show and describe ultimate principle of the present invention and principal character and advantage of the present invention.The present invention is not restricted to the described embodiments; what describe in above-described embodiment and instructions just illustrates principle of the present invention; without departing from the spirit and scope of the present invention, the present invention also has various changes and modifications, and these changes and improvements all fall in the claimed scope of the invention.

Claims (7)

1. a parallel mixing artificial bee colony method for heterogeneous system, is characterized in that, comprise the following steps:
S1: processor divides initial data set and obtains multiple primary data subset, distributes different primary data subsets to the multiple computing equipments in heterogeneous system multi-threaded parallel;
S2: after described multiple computing equipment receives respective data subset respectively, carry out taking turns evolution according to mixing artificial bee colony algorithm respectively, obtain respective this and take turns result of calculation, and respective this is taken turns result of calculation and be sent to described processor with more new data set, wherein, this is taken turns result of calculation and comprises this and take turns locally optimal solution;
S3: described processor judges whether to meet stop condition, if, described processor is taken turns locally optimal solution according to described this and is obtained globally optimal solution, if not, data set after renewal is reclassified as the data subset of multiple renewal, be distributed to described multiple computing equipment multi-threaded parallel, return S2 afterwards.
2. the parallel mixing artificial bee colony method of heterogeneous system as claimed in claim 1, it is characterized in that, the process of described step S1 comprises: multiple thread distributed by processor, for each thread distributes primary data subset, multi-threaded parallel ground sends call request to the multiple computing equipments in heterogeneous system, described computing equipment, after receiving described call request, obtains respective primary data subset.
3. the parallel mixing artificial bee colony method of heterogeneous system as claimed in claim 1, is characterized in that: described initial data set is stored in the storage system of processor with the form of configuration file.
4. the parallel mixing artificial bee colony method of heterogeneous system as claimed in claim 1, is characterized in that: described processor is the data subset through coding to the data subset that computing equipment is distributed.
5. the parallel mixing artificial bee colony method of heterogeneous system as claimed in claim 1, is characterized in that: described computing equipment is many core (MIC) processor.
6. the parallel mixing artificial bee colony method of heterogeneous system as claimed in claim 1, is characterized in that, after step S2, also comprise: iterations is added one by described processor.
7. the parallel mixing artificial bee colony method of heterogeneous system as claimed in claim 6, is characterized in that: described stop condition is maximum iteration time.
CN201410645481.1A 2014-11-10 2014-11-10 Parallel and mixed artificial bee colony method of heterogeneous system Pending CN104463322A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410645481.1A CN104463322A (en) 2014-11-10 2014-11-10 Parallel and mixed artificial bee colony method of heterogeneous system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410645481.1A CN104463322A (en) 2014-11-10 2014-11-10 Parallel and mixed artificial bee colony method of heterogeneous system

Publications (1)

Publication Number Publication Date
CN104463322A true CN104463322A (en) 2015-03-25

Family

ID=52909327

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410645481.1A Pending CN104463322A (en) 2014-11-10 2014-11-10 Parallel and mixed artificial bee colony method of heterogeneous system

Country Status (1)

Country Link
CN (1) CN104463322A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105573834A (en) * 2015-12-16 2016-05-11 复旦大学 High-dimensional-data-oriented vocabulary tree building method based on heterogeneous platform
WO2016119429A1 (en) * 2015-01-26 2016-08-04 华为技术有限公司 System and method for training parameter set in neural network
CN106709597A (en) * 2016-12-12 2017-05-24 广东电网有限责任公司电力科学研究院 Parallel TSP problem optimizing method and device based on artificial bee colony algorithm
CN107578090A (en) * 2017-08-31 2018-01-12 上海爱优威软件开发有限公司 A kind of FPA realization method and systems based on CUDA platforms
CN109916404A (en) * 2017-12-12 2019-06-21 顺丰科技有限公司 A kind of paths planning method, device, storage medium and equipment
CN111274488A (en) * 2020-02-20 2020-06-12 深圳前海微众银行股份有限公司 Recommendation method, device, equipment, system, terminal to be executed and storage medium
CN111722923A (en) * 2020-05-29 2020-09-29 浪潮电子信息产业股份有限公司 Heterogeneous resource calling method and device and computer readable storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101178666A (en) * 2007-12-13 2008-05-14 中兴通讯股份有限公司 Coordinating and scheduling method between heterogeneous multi-core
CN103197976A (en) * 2013-04-11 2013-07-10 华为技术有限公司 Method and device for processing tasks of heterogeneous system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101178666A (en) * 2007-12-13 2008-05-14 中兴通讯股份有限公司 Coordinating and scheduling method between heterogeneous multi-core
CN103197976A (en) * 2013-04-11 2013-07-10 华为技术有限公司 Method and device for processing tasks of heterogeneous system

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
代殿鑫: "混合人工蜂群算法的改进研究", 《中国学位论文全文数据库》 *
纪剑雄等: "一种异构计算系统动态任务分配模型", 《南通大学学报(自然科学版)》 *
高卫峰: "混合人工蜂群算法", 《系统工程与电子技术》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016119429A1 (en) * 2015-01-26 2016-08-04 华为技术有限公司 System and method for training parameter set in neural network
CN105573834A (en) * 2015-12-16 2016-05-11 复旦大学 High-dimensional-data-oriented vocabulary tree building method based on heterogeneous platform
CN105573834B (en) * 2015-12-16 2018-12-11 复旦大学 A kind of higher-dimension vocabulary tree constructing method based on heterogeneous platform
CN106709597A (en) * 2016-12-12 2017-05-24 广东电网有限责任公司电力科学研究院 Parallel TSP problem optimizing method and device based on artificial bee colony 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
CN107578090A (en) * 2017-08-31 2018-01-12 上海爱优威软件开发有限公司 A kind of FPA realization method and systems based on CUDA platforms
CN109916404A (en) * 2017-12-12 2019-06-21 顺丰科技有限公司 A kind of paths planning method, device, storage medium and equipment
CN111274488A (en) * 2020-02-20 2020-06-12 深圳前海微众银行股份有限公司 Recommendation method, device, equipment, system, terminal to be executed and storage medium
CN111722923A (en) * 2020-05-29 2020-09-29 浪潮电子信息产业股份有限公司 Heterogeneous resource calling method and device and computer readable storage medium

Similar Documents

Publication Publication Date Title
CN104463322A (en) Parallel and mixed artificial bee colony method of heterogeneous system
Shen et al. Agent-based traffic simulation and traffic signal timing optimization with GPU
Gharaibeh et al. On graphs, gpus, and blind dating: A workload to processor matchmaking quest
Dasgupta et al. A discrete inter-species cuckoo search for flowshop scheduling problems
Subotic et al. Parallelized multiple swarm artificial bee colony algorithm (MS-ABC) for global optimization
CN110135584A (en) Extensive Symbolic Regression method and system based on self-adaptive parallel genetic algorithm
CN107832885A (en) A kind of fleet Algorithm of Firepower Allocation based on adaptive-migration strategy BBO algorithms
Zhang et al. Dynamic bee colony algorithm based on multi-species co-evolution
CN109299778A (en) A kind of calculation method of the RCRSS rescue map subregion based on cuckoo searching algorithm
Wang et al. Balanced training for sparse gans
CN101795275B (en) Parallel optimization technology of multiplayer online network game server
CN108446455A (en) A kind of multiple target Method for HW/SW partitioning based on fireworks algorithm
Yang An improved artificial fish swarm algorithm and its application in multiple sequence alignment
Nguyen et al. Evolutionary processes as models for exploratory design
CN113537439A (en) Improved artificial bee colony optimization algorithm
Gao et al. An improved artificial fish swarm algorithm and its application
Li et al. Search experience-based search adaptation in artificial bee colony algorithm
Ruz et al. Reconstruction of Boolean regulatory models of flower development exploiting an evolution strategy
Nayak et al. Multiple Processor Scheduling with Optimum Execution Time and Processor Utilization Based on the SOSA
Huang et al. The application of reinforcement learning in Amazons
Li et al. Improved Feature Learning: A Maximum‐Average‐Out Deep Neural Network for the Game Go
He et al. Root Growth Optimizer with Self‐Similar Propagation
Wang et al. Spark load balancing strategy optimization based on internet of things
Houssein et al. Salp swarm algorithm: modification and application
Nardin et al. Scale and topology effects on agent-based simulation: A trust-based coalition formation case study

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20150325