CN108009013A - For a kind of parallel neighborhood search method of collaboration of separation constraint knapsack problem - Google Patents
For a kind of parallel neighborhood search method of collaboration of separation constraint knapsack problem Download PDFInfo
- Publication number
- CN108009013A CN108009013A CN201711418903.1A CN201711418903A CN108009013A CN 108009013 A CN108009013 A CN 108009013A CN 201711418903 A CN201711418903 A CN 201711418903A CN 108009013 A CN108009013 A CN 108009013A
- Authority
- CN
- China
- Prior art keywords
- solution
- sub
- search
- line journey
- root thread
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention discloses the invention discloses a kind of a kind of parallel neighborhood search method of collaboration for separation constraint knapsack problem (DCKP).The present invention uses the parallel computational model based on MPI, and flexible message transmission can be provided for multiple programming.We used a kind of structure of classification, higher level's thread is similar to manager, for receiving and distributing the solution information come from subordinate's thread transmission.Each processing thread of subordinate is connected by higher level, realizes the interaction of information.The processing thread of each subordinate has different elementary solutions and the search strategy different from other threads, realizes the diversity of local search well, can help to produce more preferably to solve.In addition our model is healthy and strong, and scale and extensive example have good performance in processes etc..
Description
Technical field
Parallel neighborhood search method the present invention relates to one kind for a kind of collaboration of separation constraint knapsack problem (DCKP),
Belong to software field.
Background content
Existing method for parallel processing is mostly based on LNS (large neighbourhood search), is known as PLNS, can
Regard the Parallel Implementation of NLS as.NLS is a kind of local search approach, by establishing and exploring a series of local neighborhood at random
Preferably solved to find mass ratio, the two processes are called the process of foundation (building procedure) and heuristic process respectively
(exploring procedure), but the performance of NLS methods is not sufficiently stable.PLNS periodically uses a redirection process
The neighborhood of same elementary solution is explored to force each LNS processes to be gone, elementary solution is provided from each LNS processes in previous cycle
All solutions in select, as current preferably solution.PLNS is exactly to perform LNS on multiple and different threads at the same time in fact,
But be independent between each LNS threads, without mutual communication, and each LNS processes are enterprising in same elementary solution
Row search.Although its performance stabilizes but effect is not lifted compared with NLS, and the effect when handling extensive example
It is very poor.
The detailed process of LNS is described as follows:
(note:B represents to establish process, e expression heuristic process, siExpression ith iteration starts to solve, and n represents items's
Sum, a are a constants in section [0,1].)
(1) using b from start solve siGenerate a new independent sets w;
The step will use a random removal process (removing procedure), random to remove a*n
Items, a are a constant and a ∈ [0,1].Ascending sort, Ran Hou are carried out by profit mass ratio to all items first
It is spaced generation one random number r, the index k=n for the item to be removed in [0,1]i*rβ, wherein β is constant, niIt is current
Start to solve the size of corresponding independent sets.After calculating k, b removes item k and has the items j of conflict with it, and j and
Items f (f is not equal to k) Lothrus apterus in the corresponding independent sets of current solution.Above procedure is repeated until the items of removal
Reach a*n.
(2) after obtaining w, locally optimal solution is searched for using e.
It is two stages that e, which is divided to, comes to generate a feasible solution from w first by heuristic H, then using DLSrOr
DLSrTo improve present feasible solution.The locally optimal solution finally obtained starts to solve as a next iteration.
(3) above procedure is repeated until iterations reaches.
DLS (Descent local search) is also a kind of local search approach, by alternately using establishing process
More preferable solution is found with heuristic process., can be from starting to solve corresponding independence but this method is from when starting solution and establishing neighborhood
The items for removing fixed number is concentrated, produces the solution space of decline.DLSrIt is the random version of DLS, removes random number every time
Items.
PAMP algorithms:Full name Random Adaptive Memory Programming.
Taboo search method:A kind of meta-heuristic (meta-heuristic) random search algorithm, it begins at the beginning of one
Row solution is set out, and selects a series of specific direction of search (movement) to select realization to allow specific target function value to become as souning out
Change most movements.In order to avoid being absorbed in locally optimal solution, a kind of flexible " memory " technology is employed in TS search, to
The optimization process of progress is recorded and selected, and instructs the direction of search of next step, and here it is the foundation of Tabu tables.
Heuristic H:Heuristic H is used for inferring a feasible solution from an independent sets.It is broadly divided into two ranks
Section:
1. from given DCKP examples, an independent sets are found
2. the feasible solution (can be considered a binary knapsack problem) of a DCKP problem is found in the independent sets found.
Items:Article is in knapsack problem, when inventive algorithm describes with " project " replace.
The content of the invention
The present invention overcomes the shortcomings of the prior art, the invention discloses one kind for separation constraint knapsack problem
(DCKP) a kind of parallel neighborhood search method of collaboration.The parallel computational model that the present invention uses is based on MPI, can be parallel
Programming provides flexible message transmission.We used a kind of structure of classification, and higher level's thread is similar to manager, for receiving
The solution information come with distribution from subordinate's thread transmission.Each processing thread of subordinate is connected by higher level, realizes information
Interaction.The processing thread of each subordinate has different elementary solutions and the search strategy different from other threads, realizes well
The diversity of local search, can help to produce more preferably to solve.In addition our model is healthy and strong, in processes etc. scale and
Extensive example has good performance.
In order to solve the above technical problems, the technical solution adopted in the present invention is:
A kind of a kind of parallel neighborhood search method of collaboration for separation constraint knapsack problem, includes the following steps:
Step 1: initialization:It is that root thread one size of setting is n's at the same time to set a root thread and m sub-line journey
Xie Chi, n<M, m are sub-line number of passes;Each personal LNS of sub-line journey, which searches for obtain the locally optimal solution of oneself, returns to root thread, initially
Dissolve pond;
Step 2:Collaboratively searching:Root thread is randomly assigned the solution in a solution pond to each sub-line journey;
Step 3:Independent search:
3) sub-line journey receives the solution that the distribution of root thread comes;
4) sub-line journey uses the respective locally optimal solution of PAMP algorithm search;
Step 4:The locally optimal solution of oneself is returned to root thread by each sub-line journey, and root thread is fed back in each sub-line journey
Locally optimal solution comes more new explanation pond with choosing optimal preceding n solution in original solution in solution pond, while updates optimal solution;
Step 5:Repeat step two, three, four, reaches until the time of setting, obtains final optimal solution.
Further to improve, the PAMP algorithms include the following steps:
Step 1: t sub-line journeys (t=1,2 ... m) receive the solution transmitted from root threadT sub-line journeys are obtained to be found
Optimal local solutionThe solution transmitted with root threadBetween common item destination aggregation (mda), use the removal of LNS algorithms
Journey removed from the set of common ground some projects obtain referring initially toWherein in the removal process using LNS algorithms
In the step of some projects are removed from the set of same part, we have used following three kinds of ranking criterias in sequence:
2.1) according to pi/wiValue carry out ascending sort;
2.2) descending sort is carried out according to the value of reduced cost;
2.3) ascending sort is carried out according to the value of reduced cost;
According to these three different ranking criterias, we obtain three kinds of different removal processes, that is, have obtained three kinds
Different establishes process
A kind of sort method that process is removed as LNS algorithms in three kinds of ranking criterias is randomly choosed, with from same part
Set in remove some projects;
Step 2: the solution of t sub-line journey last time is denoted asProcess b is established in random selection onetCome fromMiddle removal
It is not included inIn project, obtain sub-line journey t and start to solve
Step 3: obtain starting to solveAfterwards, process b is establishedtFromEstablish a neighborhoodThen adjust
Plain neighborhood is searched with taboo search method tsTaboo search method ts is provided with taboo list, uses ISPOnce change before representing
The relevant independent sets of locally optimal solution that generation obtains, ISc represent the relevant independent sets of locally optimal solution obtained by current iteration;Such as
The current solution of fruit then compares the project in ISp and ISc, in the different entry portion of ISp and ISc than previous difference
Random selection 25% is added to taboo list, and the project being added into taboo list will cannot be searched in 15 iteration afterwards
Arrive.
Brief description of the drawings
Fig. 1 is overall model structure chart of the present invention;
Fig. 2 is overall algorithm flow chart of the present invention;
Fig. 3 PAMP algorithm flow charts.
Embodiment
As shown in Figs. 1-3, our complete technical solutions of detailed introduction below:
One, organization plans
It is proposed that method used in parallel computational model be similar to a kind of workflow of classification, supervisory thread
Equivalent to one manager, for receiving and distributing the solution information come from subordinate's thread transmission, the thread of subordinate is according to root thread
The information of distribution, looks for solving using respective resolution policy.We set the solution that a size is n in root thread
Pool, in the locally optimal solution that all sub-line journeys feedback is come, selects n best local solutions to be stored in solution
In pool.From algorithm, each iterative process mainly includes two stages:Collaboratively searching stage and independent search phase.
The collaboratively searching stage, which is exactly root thread, to be randomly assigned its optimal local solution for being stored to each sub-line journey and (corresponds to overall
The first step in algorithm flow chart in loop structure) and the current solution pool of renewal (correspond to overall algorithm flow chart
The 3rd step in loop structure);The independent search phase is each sub-line journey carry out office after the solution information of root thread distribution is received
Portion is searched for, and for diversified local search procedure, each sub-line journey has a search strategy for being different from other threads.
Overall model structure is as shown in Figure 1, overall algorithm flow is as shown in Figure 2.
Two:Searching algorithm for the independent search phase
In order to which diversified local search procedure is to find more preferable optimal solution, we allow each sub-line in the independent search phase
Journey has oneself different search strategy, and just as each staff of subordinate has oneself special attribute, this is searched
Mermis is characterized by two standards:
(1) it is used for the strategy for generating neighborhood search starting point (starting point)
(2) it is used for the strategy for establishing and exploring neighborhood
This algorithmic procedure is known as RAMP, algorithm flow chart such as Fig. 3.It is proposed that PAMP algorithms in, first plan
Slightly realized by learning process, second search strategy has used a variation of the big neighborhood search (ALNS) adapted to.This two
A strategy is not unique (has in the process of implementation multiple strategies available), and sub-line journey is right when realizing neighborhood search
The selection of each strategy is random, is illustrated below.
1. learning process
For sub-line journey when realizing PAMP, what is performed at first is a learning process, this process is received and transmitted from root thread
Solution information, then the neighborhood search for sub-line journey produce one referring initially to being denoted as sref.For k-th of sub-line journey,
Learning process first extracts the optimal local solution that this sub-line journey is foundThe solution transmitted with root threadBetween it is common
Items, that is, be synchronized local solution information and global solution information.Then certain is removed from the set of this common ground
A little items obtain referring initially toThis removes process (removing procedure) and the removal mentioned in LNS
Process is similar, but in LNS methods when being ranked up to items, only considered the profit of items and the ratio of quality
(pi/wi), and in our method, it is contemplated that three ranking criterias:
(1) according to pi/wiValue carry out ascending sort
(2) descending sort is carried out according to the value of reduced cost
(3) ascending sort is carried out according to the value of reduced cost
Thread k randomly chooses one in these three criterions and items is ranked up when remove operation, this
It is to ensure the independent multifarious part of search.And compared to criterion (1), the reduced cost criterions that we add more have
Advantage, because it combines the object function of DCKP problems and the information of two constraints.This part is corresponding to Fig. 3's
1st, 2 steps.
2.ALNS
It is for solving Vehicle Routing Problems that ALNS, which most starts to be suggested, this neighborhood search is based on a combination one
Set up vertical process and the random process of heuristic process.A variation of ALNS is used in our PAMP algorithms, RAMP's
Neighborhood search part is to be realized by the vertical process of the establishment of combination one and one based on the TABU search of heuristic process, this establishment
The difference of vertical process is that the removal process of the inside is different, similar to the removal process in learning process, has used different
Items sort methods.The complexity that RAMP simplifies ALNS makes it possible to utilize on DCKP.
Produced in learning process referring initially to srefAfterwards, RAMP carries out neighborhood search using ALNS and finds locally optimal solution.
1. start to solve
Neighborhood search has first had to one and has started to solve sstr.It is contemplated that two periods, by taking t-th of sub-line journey as an example,
It is upper once with root thread communication after first time iterative process when, the solution that t threads before last communicate determine is denoted asProcess b is established in random selection onetCome fromMiddle some items of removal, it is desired to which these items are not included in
In, so we have obtained thread t and start to solveConsiderWithOnly change to calculate to start to solve for the first time
For when use, the solution for starting solution and all being obtained using last iterative procedures search of iterative process afterwards.The implication phase of k and t
Together.
2. TABU search
Obtaining starting to solveAfterwards, process b is establishedtFromEstablish a neighborhoodThen TABU search is called
Ts goes to search plain neighborhoodIt is a mixed method that plain method is searched in the taboo that we use, combine heuristic H and
DLSr, we have used a taboo list to prevent that the items of low quality solution can be caused to be inserted into independent sets when performing H.
Use ISPAnd IScExpression and the relevant independent sets of locally optimal solution obtained by preceding an iteration and current iteration respectively,
If current solution compares IS than previous differencePAnd IScIn items, randomly choosed in wherein different part
25% items is added in taboo list, is specifically added into the items in taboo list by cannot in 15 iteration afterwards
The heuristic H mentioned above is used.
It is proposed that method have good performance on benchmark example in current document, the table on multiple examples
Existing effect is also better than the optimum solution in contemporary literature.Our parallel computational model robustness is good, and method applicability is strong, is solving
What is certainly also showed during extensive example is fine, and the performance in use-case popularization of other methods present in document becomes very
Difference;In addition, our method can find more preferable solution with the calculating cost of smaller.
Above-described embodiment is only the specific embodiment of the present invention, and simple transformation, replacement to it etc. also exist
In the protection domain of invention.
Claims (2)
1. the parallel neighborhood search method of a kind of a kind of collaboration for separation constraint knapsack problem, it is characterised in that including such as
Lower step:
Step 1: initialization:One root thread and m sub-line journey are set, while are the solution that root thread sets that a size is n
Pond, n<M, m are sub-line number of passes;Each personal LNS of sub-line journey, which searches for obtain the locally optimal solution of oneself, returns to root thread, initializes
Xie Chi;
Step 2:Collaboratively searching:Root thread is randomly assigned the solution in a solution pond to each sub-line journey;
Step 3:Independent search:
1) sub-line journey receives the solution that the distribution of root thread comes;
2) sub-line journey uses the respective locally optimal solution of PAMP algorithm search;
Step 4:The locally optimal solution of oneself is returned to root thread, the part that root thread is fed back in each sub-line journey by each sub-line journey
Optimal solution comes more new explanation pond with choosing optimal preceding n solution in original solution in solution pond, while updates optimal solution;
Step 5:Repeat step two, three, four, reaches until the time of setting, obtains final optimal solution.
2. a kind of parallel neighborhood search method of collaboration as claimed in claim 1 for separation constraint knapsack problem, it is special
Sign is that the PAMP algorithms include the following steps:
Step 1: t sub-line journeys (t=1,2 ... m) receive the solution transmitted from root threadObtain t sub-line journeys found it is optimal
Local solutionThe solution transmitted with root threadBetween common item destination aggregation (mda), using LNS algorithms removal process from altogether
With in the set of part remove some projects obtain referring initially toWherein operated using the removal of LNS algorithms from same portion
In the step of some projects are removed in the set divided, we have used following three kinds of ranking criterias in sequence:
2.1) according to pi/wiValue carry out ascending sort;
2.2) descending sort is carried out according to the value of reduced cost;
2.3) ascending sort is carried out according to the value of reduced cost;
According to these three different ranking criterias, we obtain three kinds of different removal processes, that is, have obtained three kinds of differences
Establish process
A kind of sort method that process is removed as LNS algorithms in three kinds of ranking criterias is randomly choosed, with from the collection of same part
Some projects are removed in conjunction;
Step 2: the solution of t sub-line journey last time is denoted asProcess b is established in random selection onetCome fromMiddle removal is not wrapped
It is contained inIn project, obtain sub-line journey t and start to solve
Step 3: obtain starting to solveAfterwards, process b is establishedtFromEstablish a neighborhoodThen call and prohibit
Avoid searching method ts and search plain neighborhoodTaboo search method ts is provided with taboo list, uses ISPAn iteration obtains before expression
The relevant independent sets of locally optimal solution arrived, ISc represent the relevant independent sets of locally optimal solution obtained by current iteration;If work as
Preceding solution then compares the project in ISp and ISc, in the different entry portion of ISp and ISc at random than previous difference
Selection 25% is added to taboo list, and the project being added into taboo list will cannot be searched in 15 iteration afterwards.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711418903.1A CN108009013A (en) | 2017-12-25 | 2017-12-25 | For a kind of parallel neighborhood search method of collaboration of separation constraint knapsack problem |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711418903.1A CN108009013A (en) | 2017-12-25 | 2017-12-25 | For a kind of parallel neighborhood search method of collaboration of separation constraint knapsack problem |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108009013A true CN108009013A (en) | 2018-05-08 |
Family
ID=62061064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711418903.1A Pending CN108009013A (en) | 2017-12-25 | 2017-12-25 | For a kind of parallel neighborhood search method of collaboration of separation constraint knapsack problem |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108009013A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111832842A (en) * | 2020-07-28 | 2020-10-27 | 西南交通大学 | Method for improving execution efficiency of time workflow network based on lead period |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102855328A (en) * | 2012-09-18 | 2013-01-02 | 浪潮(北京)电子信息产业有限公司 | Parallel variable neighborhood search method |
CN103366021A (en) * | 2013-08-07 | 2013-10-23 | 浪潮(北京)电子信息产业有限公司 | Variable neighborhood search method and system on cloud computing platform |
CN105844110A (en) * | 2016-04-07 | 2016-08-10 | 武汉大学 | Method for solving software and hardware partitioning through self-adaptive domain tabu search on basis of GPU (graphics processing unit) |
US20170091178A1 (en) * | 2011-07-29 | 2017-03-30 | At&T Intellectual Property I, L.P. | System and method for locating bilingual web sites |
CN107392402A (en) * | 2017-09-11 | 2017-11-24 | 合肥工业大学 | Production and transport coordinated dispatching method and system based on modified Tabu search algorithm |
-
2017
- 2017-12-25 CN CN201711418903.1A patent/CN108009013A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170091178A1 (en) * | 2011-07-29 | 2017-03-30 | At&T Intellectual Property I, L.P. | System and method for locating bilingual web sites |
CN102855328A (en) * | 2012-09-18 | 2013-01-02 | 浪潮(北京)电子信息产业有限公司 | Parallel variable neighborhood search method |
CN103366021A (en) * | 2013-08-07 | 2013-10-23 | 浪潮(北京)电子信息产业有限公司 | Variable neighborhood search method and system on cloud computing platform |
CN105844110A (en) * | 2016-04-07 | 2016-08-10 | 武汉大学 | Method for solving software and hardware partitioning through self-adaptive domain tabu search on basis of GPU (graphics processing unit) |
CN107392402A (en) * | 2017-09-11 | 2017-11-24 | 合肥工业大学 | Production and transport coordinated dispatching method and system based on modified Tabu search algorithm |
Non-Patent Citations (2)
Title |
---|
ZHE QUAN ET AL.: "Cooperative parallel adaptive nerghbourhood search for the disjunctively constrained knapsack problem", 《ENGINEERING OPTIMIZATION》 * |
贺一: "禁忌搜索及其并行化研究", 《中国优秀博硕士学位论文全文数据库(博士)》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111832842A (en) * | 2020-07-28 | 2020-10-27 | 西南交通大学 | Method for improving execution efficiency of time workflow network based on lead period |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107392402B (en) | Production and transport coordinated dispatching method based on modified Tabu search algorithm and system | |
Stützle | An ant approach to the flow shop problem | |
Laguna et al. | Tabu search for the multilevel generalized assignment problem | |
CN104735166B (en) | The Skyline method for service selection annealed based on MapReduce and multi-target simulation | |
Rahimian et al. | Ja-be-ja: A distributed algorithm for balanced graph partitioning | |
CN104462260B (en) | A kind of community search method in social networks based on k- cores | |
CN105429909B (en) | A kind of parallel switching dispatching method based on secondary color | |
CN104462609B (en) | RDF data storage and querying method with reference to star-like graph code | |
CN101719933B (en) | Combination method of manufacturing grid resource services orienting whole life cycle and supporting semantemes | |
JP2006174417A5 (en) | ||
CN110366193A (en) | A kind of splitting and disposing method and device of the network arrangements layer carrying of smart grid | |
CN106302172A (en) | Support Hash lookup and the storage of route querying, lookup method and device simultaneously | |
CN106611229A (en) | Iterated local search algorithm by employing improved perturbation mode for solving job-shop scheduling problem | |
Zheng et al. | Multi-objective swarm-based neighborhood search for fuzzy flexible job shop scheduling | |
CN101650805B (en) | Search method for path planning | |
CN108009013A (en) | For a kind of parallel neighborhood search method of collaboration of separation constraint knapsack problem | |
CN104635709B (en) | Flexible comprehensive scheduling method considering double targets of cost and time | |
CN105719189B (en) | Label recommendation method for effectively improving label diversity in social network | |
CN114372516A (en) | XGboost-based federal learning training and prediction method and device | |
CN104125146B (en) | A kind of method for processing business and device | |
CN109254962A (en) | A kind of optimiged index method and device based on T- tree | |
CN106981874A (en) | Power distribution network reconfiguration based on harmony algorithm avoids the coding method of infeasible solution | |
Wiese et al. | Keep–Best Reproduction: A Local Family Competition Selection Strategy and the Environment it Flourishes in | |
CN102346810B (en) | Mass data networked grouped and optimized blanking method | |
CN106384164B (en) | A kind of engineering parameter optimization method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180508 |
|
RJ01 | Rejection of invention patent application after publication |