CN110427191A - A kind of disposition optimization method towards net structure application module based on multiple target ant group algorithm - Google Patents
A kind of disposition optimization method towards net structure application module based on multiple target ant group algorithm Download PDFInfo
- Publication number
- CN110427191A CN110427191A CN201910414369.XA CN201910414369A CN110427191A CN 110427191 A CN110427191 A CN 110427191A CN 201910414369 A CN201910414369 A CN 201910414369A CN 110427191 A CN110427191 A CN 110427191A
- Authority
- CN
- China
- Prior art keywords
- algorithm
- target
- solution
- hardware
- host
- 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
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 128
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000005457 optimization Methods 0.000 title claims abstract description 45
- 230000008569 process Effects 0.000 claims abstract description 29
- 239000003016 pheromone Substances 0.000 claims description 58
- 230000004044 response Effects 0.000 claims description 35
- 230000006870 function Effects 0.000 claims description 30
- 241000257303 Hymenoptera Species 0.000 claims description 24
- 238000004458 analytical method Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 11
- 230000006399 behavior Effects 0.000 claims description 9
- 239000013256 coordination polymer Substances 0.000 claims description 7
- 230000003993 interaction Effects 0.000 claims description 7
- 230000008020 evaporation Effects 0.000 claims description 4
- 238000001704 evaporation Methods 0.000 claims description 4
- 230000000694 effects Effects 0.000 claims description 3
- 238000010187 selection method Methods 0.000 claims description 3
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 claims description 2
- 239000004744 fabric Substances 0.000 claims description 2
- 238000002474 experimental method Methods 0.000 abstract description 9
- 238000013461 design Methods 0.000 abstract description 8
- 230000002028 premature Effects 0.000 abstract description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 101710094396 Hexon protein Proteins 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 239000001301 oxygen Substances 0.000 description 1
- 238000011158 quantitative evaluation Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The disposition optimization method towards net structure application module based on multiple target ant group algorithm that the present invention relates to a kind of, automatically explore search space, it is intended that a net structure application program finds one group of Pareto optimality deployment architecture, its performance and cost for meeting the requirements, and show the compromise to the two.The algorithm is the modified version to traditional algorithm, it, which introduces one, which gives up elitism strategy, prevents algorithm Premature Convergence, and designs a local search procedure and accelerate to obtain the process of feasible solution.One group of experiment is executed in the example of three different scales, the results showed that MACO-DO algorithm more has prospect than existing disposition optimization algorithm.
Description
Technical Field
The invention belongs to the technical field of software deployment and performance analysis, and particularly relates to a deployment optimization method based on a multi-objective ant colony algorithm aiming at the performance of a web application program.
Background
The Internet software is a new software paradigm for Internet computing environment proposed by chinese researchers, which is open, dynamic and constantly changing. Unlike conventional software systems, the web application is aware of the dynamic changes in the operating environment and its ability to evolve its structure and behavior in accordance with these changes, so that it can provide users with high quality services. However, such adaptive behavior requires some support from the related art. The present invention focuses on the impact of environmental changes on the performance and cost of a web application and studies how to provide web services to users with better performance/cost ratios by optimizing their deployment.
A web application consists of a set of autonomous software entities deployed on distributed hardware hosts and a set of connections that allow the entities to cooperate in different ways. Optimizing the deployment of a web application is the decision to make the best allocation of software entities to hardware hosts, which has a significant impact on its performance and cost. However, making these decisions is difficult and faces two challenges.
First, there may be many possible deployment architectures for a web application, which would take much time and cost to find the optimum by searching the entire deployment space. The number of possible deployment architectures for a web application is the number of software entities and hardware hosts, and the former is often an exponential growth. Therefore, searching the entire deployment space is computationally expensive, even for medium-scale software.
Second, performance improvements and cost reductions are conflicting, so a compromise between both needs to be made when searching for the optimal deployment architecture. For example, to reduce the response time of a request, more expensive infrastructure needs to be rented to deploy software; however, this is in conflict with the goal of reducing costs. Therefore, rather than finding a single optimal deployment solution, it is important to represent the best compromise in generating conflicting objectives.
Disclosure of Invention
Aiming at the research background and the problems, the invention provides a multi-objective ant colony optimization method (MACO-DO) for automatically exploring a search space, aiming at finding a group of pareto optimal deployment system structures for a network application program, meeting the required performance and cost and showing the compromise between the performance and the cost. Given a variety of pareto optimal deployment architectures, software vendors can better understand the trade-offs between conflicting goals and make desirable decisions based on their needs and what is preset as a framework application to select the best deployment. The method is an improved version of the traditional algorithm, introduces a rejection eligibility strategy to prevent the algorithm from being converged prematurely, and designs a local search process to accelerate the process of obtaining a feasible solution. A set of experiments are performed on three examples of different scales, and the results show that the MACO-DO method is more promising than the existing deployment optimization method.
The technical scheme adopted for realizing the purpose of the invention is as follows: the deployment optimization method of the network-oriented application program based on the multi-objective ant colony algorithm comprises the following steps:
a deployment optimization method for a network-oriented application module based on a multi-objective ant colony algorithm (MACO-DO) is characterized by comprising the following specific steps:
1) setting initialization parameters and completing the initialization process of the network application module: setting a framework application module entity S and related parameter functions TR, SR and IR, the parameter function TR specifying a reference processing time for each service for 1 request, i.e. the time required for each service to process 1 request when it is allocated to a resource with a unit of computing power; the parameter function SR is used for appointing the memory space required by each service operation; the parameter function IR is used to define the interaction relationship between arbitrary services; setting a hardware module host H and related parameter functions CP, AS and HC, wherein the parameter CP specifies the computing capacity of each hardware module host, the function AS specifies the available memory space of each hardware module host, and the function HC specifies the running cost of each hardware module host; setting an average request arrival function RA, an objective function and a constraint;
2) initialization pheromone tauk(i, j) and heuristic ηk(i, j): each pheromone should be set to an initial value
τinitial k(i, j) is defined as
Wherein,based on the kth target definition; since there is an upper bound for each target, defineIs the inverse of the upper limit of the kth target, expressed as
Heuristic etak(i, j) is also based on this goal; if the kth target is the response time of the web application module, the heuristic ηk(i, j) shall be defined as
Wherein, R' (h)j,si) Represents when siDistribution to hardware hosts hjSoftware entities (including s) already allocated to hardware hosts at time of uploadingi) Current aggregate response time of;
if the kth target is the maximum utilization among all used hardware hosts, the software entity is inclined to be allocated to the hardware host with lower utilization; so the heuristic should be defined as
ηk(i,j)=1-U'(hj) (8)
Wherein, U' (h)j) Indicating hardware host hjCurrent utilization; the heuristic may prevent deployment of the software entity to a heavily loaded host;
if the kth target is the total cost of the used hardware hosts, then the following heuristic is presented
Wherein HdIs a set of occupied hardware hosts; this means that a software entity is more likely to be deployed on an occupied hardware host, followed by cheaper unoccupied hardware hosts;
3) constructing a deployment scheme: selecting a feasible solution component according to a pseudo-random proportion rule; if q is<q0Solution component of choice<si,hj>Is that
Otherwise, selecting a solution component by using a wheel disc selection method; giving a solution component<si,hj>Probability p ofij
Where FC is a set of feasible solution components, pkIs the weight of the kth target, and the optimization period is randomly generated by ants, such as the definition of Merkle D and the like; α and β are parameters that determine the relative impact of pheromones and heuristics; they have the following effect on the algorithm behavior: if α is>Beta, the selection of ants depends on pheromone and exceeds the dependency heuristic; if α is<Beta, the selection of ants depends on a heuristic method to exceed the dependence of pheromones;
4) updating local pheromones: suppose an ant has already beenSelection understanding component<si,hj>Element τ of the pheromone vectork(i, j) the number of pheromones on each target k is reduced; the pheromone local update rule for these elements can be expressed as follows:
where ρ is a parameter in the interval (0,1), called the evaporation rate;
5) abandoning elite solution: setting a maximum number sgmax of iterations during which the elite solution is allowed to be unchanged; when an elite solution exceeds the maximum number sgmax of its iterations, updating with the pareto optimal solution produced by that iteration;
6) and (3) local search process: pareto codes for the local search process are as follows:
initializing z to 0 when z<At LSN, randomly selecting a plan ps from POSi;
To optimize psiRandom selection of a target OS from an OSj;
According to osjAt psiGenerating a new scheme ns by applying the optimization strategy;
evaluating ns and obtaining a target value no thereof;
if ns is stronger than psiReplacing ps in POS by nsiReplacement of Po in POS with noi;
If ns has the optimal value for the target, updating ESS with ns and EO with no;
wherein OS is an optimization target set, ESS is a current elite solution set, EO is a target value associated with ESS, POS is a current pareto optimal solution, PO is a target value associated with POS, and LSN is a number of solutions generated by local search; in the process, when the ants finish a round of search, the ant is applied at the end of each iteration; the optimal goal of the invention is to reduce the average response time, maximum utilization and cost of the fabric application module; for different targets, different optimization strategies exist;
7) updating the global pheromone: hypothesis solution component<si,hj>Belonging to an elite solution, applying to each target k the pheromone global update rule the element τ of the pheromone vectork(i, j) is as follows:
τk(i,j)=(1-ρ)·τk(i,j)+ρ·Δτk (13)
wherein,is the kth target elite solution esiThe inverse of the target value; based on these definitions, the value of τ becomes higher as the algorithm evolves, as the target value of the elite solution becomes lower.
The deployment optimization method for the network-oriented application module based on the multi-objective ant colony algorithm further comprises the following steps: comparing the obtained MACO-DO algorithm with the existing P-ACO and NSGA-II algorithms, and evaluating the effectiveness of the MACO-DO algorithm:
1) setting a network application module entity S and related parameter functions TR, SR and IR, setting a hardware module host H and related parameter functions CP, AS and HC, and setting an average request arrival function RA, a target function and constraint; (ii) a
2) Comparing the performances of the MACO-DO algorithm and other algorithms according to the objective function value, namely comparing the average response time, the maximum utilization rate and the cost of the algorithms, wherein the shorter the average response time is, the smaller the maximum utilization rate is, the lower the cost is, and the better the performance is; in order to further analyze the convergence behavior of the algorithms, evolution curves of the algorithms are given;
3) and evaluating the performance of multi-objective optimization by adopting super-volume analysis, and measuring and calculating the maximum value, the minimum value and the average value of the super-volume of the solution set obtained by each algorithm, wherein the larger each value is, the better the performance of the multi-objective optimization is. Therefore, the temperature of the molten metal is controlled,
the invention has the following advantages: the designed Elite solution strategy and local search process are abandoned, the search efficiency of the algorithm is effectively improved, and compared with the existing algorithm, the MACO-DO algorithm can obtain a deployment scheme with lower maximum utilization rate, lower response time and lower cost.
Drawings
FIG. 1a is a plot of the target evolution of algorithm 1 over example 1.
FIG. 1b is the target evolution curve of algorithm 2 over example 1.
FIG. 1c is a plot of the target evolution of algorithm 3 over example 1.
Fig. 2a is a target evolution curve of algorithm 1 on example 2.
Fig. 2b is the target evolution curve of algorithm 2 on example 2.
Fig. 2c is a target evolution curve of algorithm 3 on example 2.
Fig. 3a is a target evolution curve of algorithm 1 on example 3.
Fig. 3b is the target evolution curve of algorithm 2 on example 3.
Fig. 3c is a target evolution curve of algorithm 3 on example 3.
FIG. 4 is a schematic flow diagram of the process of the present invention.
Detailed Description
To facilitate understanding and practice of the invention by those of ordinary skill in the art, the following detailed description is provided in conjunction with definitions/expressions and equations.
First, the principle of the method of the present invention will be described.
Description of a Web application deployment optimization problem
The invention aims to solve the problems of performance degradation and cost increase caused by environment change of the network application program by optimizing the deployment of the network application program, namely searching the optimal allocation of software entities meeting the performance and cost requirements to a hardware host according to the current running environment of the network application program. There are four factors to consider in this optimization problem: a web application, a deployment platform, a runtime environment, and a demand constraint. A web application includes a set of software entities denoted S ═ S1,s2,...,sSNThe deployment platform consists of a set of hardware hosts, which is denoted as H ═ H1,h2,...,hHNDescribing the operating environment by response time, utilization rate and cost, a feasible deployment scheme needs to meet some constraints.
Secondly, aiming at the description of the optimization problem, designing a deployment optimization method MACO-DO (machine-oriented optimization-data optimized) for the network-oriented application program based on the multi-objective ant colony optimization algorithm
In order to solve the deployment optimization problem of the web application program by using a multi-objective ant colony algorithm, the MACO-DO method respectively designs pheromones and heuristics for each optimization target, and guides ants to search for an optimal solution; forming a strategy for preventing the premature convergence of the algorithm by abandoning the elite solution; exploring a local search process speeds up the process of obtaining the optimal solution.
1. Design pheromone and heuristic
In the deployment optimization problem of the network application program, each scheme constructed by ants corresponds to one possible deployment, and the solution component corresponds to one distribution of a software entity to a hardware host. Ants construct a deployment by selecting corresponding solution components step by step. When all the relevant software entities are allocated to a hardware host, a deployment scenario is constructed. Tau isk(i, j) and ηk(i, j) is used to denote solution component < si,hj> (i.e., software entity s)iIs deployed on a hardware host hjUpper) pheromone and heuristic for the kth target.
2. Building deployment scenarios
In MACO-DO, ants construct a solution step by selecting solution components according to pheromones and heuristics. The constraints LC and CLC are used to prevent ants from building infeasible solutions. Selecting feasible solution components according to a pseudo-random proportion rule, namely firstly generating a solution uniformly distributed in [0,1 ]]And then a user-defined parameter q0And (6) comparing.
According to the above design, a deployment scenario construction process such as algorithm 1 is given.
3. Management pheromone
The management of pheromones in the MACO-DO algorithm mainly comprises two parts: local updates of pheromones and global updates of pheromones. The former is executed immediately after selecting a solution component, aiming at maintaining the diversity of the ant constructed scheme; the latter is applied at the end of each iteration (i.e., when all ants have completed a solution build), and is designed to direct ants to build solutions toward the optimal solution.
4. Abandoning elite solution
Although using the above-described elite strategy (i.e., increasing the pheromone values associated with the elite solution) will help ants search intensively for search areas close to the optimal solution, it can also lead to premature convergence of the algorithm to the optimal solution over long runs.
In order to solve the above problem, the present invention designs a strategy for discarding the elite solution, i.e. sets a maximum number sgmax of iterations during which the elite solution is allowed to be unchanged. When an elite solution exceeds its maximum number of iterations sgmax, it is updated with the pareto optimal solution produced by that iteration.
5. Local search process
Many existing research works have shown that the ACO algorithm performs better in combination with a local search process. To further improve the performance of the MACO-DO algorithm, a local search process is designed. In the process, when ants finish a round of search, the ant is applied at the end of each iteration, and the process of searching for the optimal solution is accelerated based on the pareto optimal solution and the target optimal strategy.
The optimal goal of the present invention is to reduce the average response time, maximum utilization, and cost of the web application. There are different optimization strategies for different objectives. The pareto code for the local search process is given by algorithm 2.
6. Complete description of MACO-DO
Algorithm 3 gives a complete description of the algorithm MACO-DO according to its detailed description of each part.
Thirdly, comparing the MACO-DO algorithm obtained in the second step with the P-ACO and NSGA-II algorithms, and evaluating the effectiveness of the MACO-DO algorithm
1. Setting parameters related to a software entity and parameters related to an ant colony algorithm;
2. comparing the performances of the MACO-DO algorithm and other algorithms according to the target values, and providing evolution curves of the algorithms as shown in the attached figures 1-3 in order to further analyze the convergence behavior of the algorithms;
3. and analyzing the processing time of each algorithm, and evaluating the performance of multi-objective optimization by adopting ultra-volume analysis.
(II) the following description will be given with reference to specific examples.
Description of a Web application deployment optimization problem
Four factors are considered in the optimization problem: a web application, a deployment platform, a runtime environment, and a demand constraint.
Assume that a web application includes a set of software entities denoted S ═ S1,s2,...,sSNWhere SN ∈ R, and a set of connectors, denoted C ═ C1,c2,...,cCNIn which CN ∈ R. The parameters of the software architecture are: a hardware host processes the time requirement requested by each entity with a unit of computing power, denoted by TR: S → R; the space requirement of an operational software entity, denoted by CR: S → R; the interaction of any two software entities is represented by IR S × S → { sequence, parallel, branch, null }.
Assume that the deployment platform consists of a set of hardware hosts, denoted H ═ H1,h2,...,hHN}. The parameters of the hardware architecture are: the computing power of each hardware host, denoted by CP H → R; the effective space of each hardware host is formed by AS H → R; the cost per hardware host, denoted by HC: H → R. For a runtime environment, the present invention considers the average request arrival rate for each software entity, represented by RA S → R.
There are many performance indicators. For the method of the present invention, two performance indicators are considered, namely response time and utilization. The former is defined as the average response time of a web application to a request, and the latter is defined as the maximum utilization among the hardware hosts used. The cost considered by the present invention is the total cost of the hardware host used by the application. Therefore, the deployment problem has been modeled as a multi-objective problem.
For simplicity, the following labels are used below: DS (d, h)j) Used for obtaining deployment scheme d deployed on hardware host hjAll software entities on; DH (d, s)i) For obtaining software entities s in a deployment scenario diA deployed hardware host;HS (d) is used to obtain all hardware hosts used by deployment scenario d.
Response time and utilization indicators should be calculated by queuing theory. In the invention, the modeling hardware host is an M/M/1/PS queue, and the hardware host h in the deployment scheme djUtilization ratio of U (d, h)j) And software entity siResponse time R (d, s)i) Can be calculated by equations (1) and (2), respectively:
based on the structure of the software entities defined by White J, et al, the average response time of the web application is calculated by aggregating the average response times of the software entities. Let us denote the aggregation function of the response times. Based on assumptions and analysis, metrics (i.e., average response time R of the web application)dMaximum utilization rate U in hardware host used by application programdAnd total cost C of hardware hosts usedd) The calculation is as follows:
the related documents are: white J, Dougherty B, Thompson C, et al.ScatterD Spatial depolyment optimization with hybrid surgery/evolution algorithms [ J ]. ACM Transactions on Automomous and Adaptive systems.2011,6(3): 123-.
A viable deployment scenario requires some constraints to be met. In which the memory constraints are apparentOne, the total memory requirement of the software entities deployed on the hardware host cannot exceed the available memory. In addition, there are also some requirements to be met for the evaluation index to be considered. The indicators considered in the present invention, which tend to reduce their value, each have an upper limit, denoted by Rmax,UmaxAnd CmaxRepresenting response time, utilization, and cost, respectively. For other constraints, the present invention considers only the location constraint and the configuration constraint, denoted by LC: S × H → {0,1} and CLC: S × S → {1,0, -1}, respectively. The location constraint limits the allocation of software entities to a particular type of hardware host. If software entity siCan be deployed on a hardware host hjAbove, then LC(s)i,hj) 1, otherwise, LC(s)i,hj) 0. Configuration constraints limit the allocation of any two software entities to two different hardware hosts. If software entity siAnd sjMust be deployed on the same hardware host, CLC(s)i,sj) 1, CLC(s) if it cannot be deployed on the same hardware hosti,sj) -1, CLC(s) if there are no such constraints on themi,sj) 0. Based on the above description, one feasible deployment scenario d should satisfy the constraint that represents:
LC(si,DH(d,si))=1
Rd≤Rmax
Ud≤Umax
Cd≤Cmax (4)
secondly, aiming at the description of the optimization problem, designing a deployment optimization method MACO-DO (machine-oriented optimization-data optimized) for the network-oriented application program based on the multi-objective ant colony optimization algorithm
1. Design pheromone and heuristic
At the start of the algorithm, each pheromone should be set to an initial valueThe location constraint LC defined in the problem model limits the allocation of one specific type of hardware host, which can be used to define the initial values of the pheromones to prevent ants from selecting some infeasible solution components. The initial pheromone value may be defined as
Wherein,based on the kth target definition. Since there is an upper bound for each target, defineIs the inverse of the upper limit of the kth target, expressed as
Heuristic etakThe definition of (i, j) is also based on this goal. If the kth target is the response time of the web application, the heuristic ηk(i, j) shall be defined as
Wherein, R' (h)j,si) Represents when siDistribution to hardware hosts hjSoftware entities (including s) already allocated to hardware hosts at time of uploadingi) The current aggregate response time.
If the kth target is the maximum utilization among all used hardware hosts, the software entity is assigned to the less-utilized hardware host. So the heuristic should be defined as
ηk(i,j)=1-U'(hj) (8)
Wherein, U' (h)j) Indicating hardware host hjThe current utilization. The heuristic may prevent software entities from being deployed to a heavily loaded host.
If the kth target is the total cost of the used hardware hosts, then the following heuristic is presented
Wherein HdIs a collection of occupied hardware hosts. This means that a software entity is more likely to be deployed on an occupied hardware host and then a cheaper unoccupied hardware host.
2. Building deployment scenarios
And selecting a feasible solution component according to a pseudo-random proportion rule. If q is<q0Solution component of choice<si,hj>Is that
Otherwise, the solution component is selected using a wheel selection method. Giving a solution component<si,hj>Probability p ofij
Where FC is a set of feasible solution components, pkIs the weight of the kth objective, and the optimization period is randomly generated by ants, as defined by Merkle D, etc. Alpha and beta are parameters that determine the relative impact of pheromones and heuristics. They have the following effect on the algorithm behavior: if α is>Beta, the selection of ants depends on pheromone and exceeds the dependency heuristic; if α is<Beta, ant selection dependent heuristic overrideDepends on the pheromone. The related documents are: merkle D, Middendorf M, Schmeck H.Ant Connectiontoptomization for resource-constrained project scheduling [ J].Evolutionary Computation,IEEE Transactions on,2002,6(4): 333-346。
The deployment scenario is constructed as algorithm 1.
3. Management pheromone
The management of pheromones in the MACO-DO algorithm mainly comprises two parts: local updates of pheromones and global updates of pheromones.
The pheromone local updating mainly maintains the diversity of the solution by reducing the pheromone value of the solution component selected by the ant, so that the following ants have more opportunities to select other components and construct different deployment schemes. Suppose an ant has selected a knowledge component<si,hj>Element τ of the pheromone vectorkThe number of pheromones on (i, j) is reduced for each target k. The pheromone local update rule for these elements can be expressed as follows:
where ρ is a parameter in the interval (0,1) and is called the evaporation rate.
Pheromone global updates direct ants to search for an elite solution by increasing the pheromone value associated with the elite solution. Generally, the elite solution is the best solution currently searched for each target. Hypothesis solution component<si,hj>Belonging to an elite solution, applying to each target k the pheromone global update rule the element τ of the pheromone vectork(i, j) is as follows:
τk(i,j)=(1-ρ)·τk(i,j)+ρ·Δτk (13)
wherein,is the kth target elite solution esiThe inverse of the target value. Based on these definitions, the value of τ becomes higher as the algorithm evolves, as the target value of the elite solution becomes lower. In other words, more pheromones will be added to the components of the elite solution, making them more attractive to ants in the next iteration.
4. Abandoning elite solution
According to equation (13), when the elite solution is stable for many iterations, the pheromone will be added to the same component belonging to the elite solution after each iteration. Using the above-described elite strategy may lead to premature convergence of the algorithm to an optimal solution over long runs.
To solve this problem, the present invention designs a strategy to discard the elite solution, i.e. to set a maximum number sgmax of iterations during which the elite solution is allowed to be unchanged. When an elite solution exceeds its maximum number of iterations sgmax, it is updated with the pareto optimal solution produced by that iteration. The update rule is implemented as follows: if there is one ant-generated solution in the iteration, it is controlled by the elite solution exceeding its maximum iteration, rather than by other elite solutions, and then the elite solution is replaced by this solution. Otherwise, the elite solution is removed from the elite solution set.
5. Local search process
The optimal goal of the present invention is to reduce the average response time, maximum utilization, and cost of the web application. For different targets, there are different optimization strategies:
(ii) a response time. In order to reduce the response time of a web application, one possible approach is to reduce the response time of the software entities it contains. With respect to the manner in which deployment is regulated, allocated resources are a major factor affecting the response time of a software entity. Thus, reducing the response time of a software entity can be achieved by allocating more resources to it, in two ways: (a) replacing the hardware host where the software entity is located with a hardware host with higher computing power; (b) the software entity is moved to a hardware host that has more spare computing resources.
And utilization rate. The utilization of a hardware host depends on its workload and is brought about by the software entities deployed thereon. Reducing the maximum utilization among all used hardware hosts by (a) moving entities from the host with the maximum utilization to the host with the minimum utilization; (b) moving some entities from the host with the highest utilization to a new host.
And thirdly, cost. The cost considered here is the total cost of the hardware host that has been used. The main factors affecting the cost are the number and price of the hardware hosts that have been used. Therefore, the strategy adopted to reduce the cost is: (a) replacing the higher priced host with a lower priced hardware host; (b) all software entities of one hardware host are migrated to other used hosts to release the host.
Although these optimization strategies for the application do not guarantee that the newly generated solution will certainly be better than current, the search towards the optimal solution can be directed to some extent, resulting in better search results than random searches.
Let OS be { OS1,os2,...,osKIs the set of optimal targets. ESS ═ es1,es2,...,esKIs a set of elite solutions. For simplicity, the optimal solution is designated as the elite solution es of the ith targeti。EO={eo1,eo2,...,eoKIs a set of target values associated with the ESS, where eoi={eoi,q,eoi,2,...,eoi,KIs and eleven solve esiCorresponding sets of target values, i.e. eoi,jIs elite elimination esiThe value of the jth target. POS ═ ps1,ps2,...,psPNIs the set of pareto optimal solutions, where PN ∈ R is the number of pareto optimal solutions. PO ═ PO1,po2,...,poPNIs a set of target values associated with the POS, where poi={poi,q,poi,2,...,poi,KIs and solve ps with eliteiA corresponding set of target values. The pareto code for the local search process is given by algorithm 2.
6. Complete description of MACO-DO
Thirdly, comparing the MACO-DO algorithm obtained in the second step with the P-ACO and NSGA-II algorithms, and evaluating the effectiveness of the MACO-DO algorithm
1. Experimental setup
To verify the effectiveness of the proposed algorithm, the MACO-DO algorithm will be tested on three scale, small to large, simulation examples and compared to the currently proposed P-ACO algorithm and NSGA-II algorithm. The number of software entities comprising these examples is 12, 25, 50, respectively, the number of active hardware hosts is 8, 18, 30, respectively, and the maximum active cost of the hardware hosts is $400, $900, and $2000, respectively. All hardware hosts have the same upper utilization limit, set to 0.8.
In this experiment, the software entity-related parameters were filled in by randomly generated data within a specified range, which are TR ∈ [1,20], SR ∈ [2,8], RA ∈ [200,400], CP ∈ [1,5], AS ∈ [10,30], HC ∈ [30,80 ]. The interaction relationships between software entities are randomly assigned. The present invention considers four interactions (i.e., sequential, parallel, branching, and null) for a software entity. The randomly generated interactions must ensure that each software entity interacts with the others. Some other parameter values need to be determined from the above parameters. For example, the maximum response time of a web application must be defined in terms of the response times of the software entities it relates to, as well as their average request arrival rates and interactions. Otherwise, there may not be a feasible deployment scenario that satisfies the response time constraint, or the response time constraint becomes meaningless.
Ant colony algorithms and genetic algorithms are approximation methods, and their performance is significantly affected by their parameter configuration. It is important to test different parameter configurations so that they find the most suitable parameter configuration. The present invention refers to some documents applying these algorithms, defines the variation range and step size of each parameter, and then obtains the optimal value for each algorithm through trial and error. Some parameter values may be determined directly from a reference. For example, the number of ants, AN, may be set to 10, the pheromone parameter α may be set to 1, the ant colony algorithm (i.e., MACO-DO/L, and P-ACO) may generate a number of solutions LSN to 10 from the local search, and a population size P to 100 for NSGA-ii. Other parameters were obtained experimentally. Their ranges of variation and step sizes are shown in table 1. From the experiment we set the parameters on the left as follows: the evaporation parameter rho of the pheromone is 0.1, the heuristic parameter beta is 2, and the pseudo-random proportion selection parameter of the algorithms MACO-DO and MACO-DO/L, P-ACO is q00.5, cross parameter p of NSGA-IIc0.9, variation parameter pm=0.1。
TABLE 1 variation Range and step Length of parameters
Furthermore, approximation algorithms are random search processes, which means that their results are unpredictable. The results are usually reported as the average of consecutive experiments in terms of their performance. Thus, all algorithms in this experiment were run independently 30 times for each example. During each run, the algorithm stops when a predefined termination condition is met.
2. Analysis of target values
The performance of the algorithm proposed by the present invention was compared with other algorithms based on the target values. Table 2 shows the standard deviation (STD) of all targets associated with the solution set obtained by running each algorithm 30 times independently on three simulation examples. In order to make the comparison more comprehensive, the results of the MACO-DO algorithm (denoted MACO-DO/L) without using the local search procedure described above are also reported.
TABLE 2 comparison of the Performance of the algorithms MACO-DO, MACO-DO/L, P-ACO and NSGA-II
From the results, it can be seen that the MACO-DO algorithm can produce better results on all targets, as seen in the three examples. The MACO-DO algorithm still performs well even without using a local search procedure. The STD values of all objects are related to the degree of concentration of the distribution of the corresponding solution sets. As can be seen from Table 2, the solution set for the MACO-DO algorithm has a relatively small STD value. This indicates that the solution set of the algorithm is more stable.
In order to further analyze the convergence behavior of the algorithms, evolution curves of these algorithms are given. The evolution curve gives the optimal results for all targets found by the algorithm (30 runs on average) as a quantitative evaluation function, as shown in figures 1-3.
As can be seen from FIGS. 1-3, the ant colony algorithm (i.e., MACO-DO/L, and P-ACO) generally finds a better solution at the beginning of the search than NSGA-II. This is because the ant colony algorithm uses helpful heuristics to guide the search towards a better direction. However, only MACO-DO and MACO-DO/L can retain this advantage until the end of the search process. This means that the P-ACO algorithm is more likely to stall on the locally optimal solution than NSGA-II and the proposed leave-elite strategy can effectively solve the problem. By combining the strategy of discarding the elite solution, MACO-DO and MACO-DO/L can prevent pheromones from gathering on the same solution component, so that more other solutions can be found.
Finally, comparing the evolution curves of MACO-DO and MACO-DO/L, it can be seen that MACO-DO always finds a better solution than MACO-DO/L from the beginning to the end of the search process. This indicates that the local search procedure employed by MACO-DO is efficient. It can help the algorithm speed up its convergence and find better solutions.
3. Processing time analysis
Table 3 shows the processing time for each algorithm in different experiments. They were run 30000 evaluations on example 1, 40000 on example 2, 50000 on example 3, respectively. The result is a standard deviation of processing time for each algorithm run independently 30 times on each instance.
TABLE 3 processing time for each algorithm
The data in table 3 indicates that the processing times for all algorithms are similar. This means that if all algorithms end up with the same evaluation, the algorithm that eventually gets a better solution has better performance. Based on the results of the objective analysis, the MACO-DO algorithm can eventually get a better solution, so it outperforms the other algorithms. In addition, as can be seen from the evolution curves of FIGS. 1-3, the MACO-DO algorithm converges faster than the other algorithms. So, if the algorithm ends at its convergence, the MACO-DO algorithm still wins with its shorter processing time.
Although the processing times for all algorithms were similar in this experiment, it can be seen that the MACO-DO algorithm has a minimum processing time. This is because the local search process proposed by the present invention only partially adjusts existing deployment scenarios. When evaluating the performance of the tuned deployment scenario, only the performance of the software entities affected by the tuning should be recalculated. This reduces the time to evaluate a new deployment scenario to some extent, and this advantage becomes more apparent with the increasing size of the application.
4. Ultra volume analysis
None of the above analyses showed a compromise in quality. For example, solutions with relatively small response times and relatively small costs are traded off, and solving a practical problem often employs practical rather than extreme solutions that are optimized in only a few objectives. Therefore, the present invention will evaluate the algorithm from another perspective.
The hyper-volume indicator is recommended by Zitzler et al as another indicator for evaluating the performance of multi-objective optimization. It measures the excess volume between the estimated pareto front and a reference point in the result space. In this experiment, the reference point for each dimension is zero. The algorithm was run 30 times independently on each instance to build the over-volume between (0.0,0.0,0.0) and the target value for the non-dominating set. The average, minimum and maximum values are listed in table 4. The related documents are: ziegler E, Thiele L, Laumannsm, et al.Performance assessment of Multi-objective optimizers an analysis and development [ J ]. evolution computing, IEEE Transactions on,2003,7(2): 117-132; aleti A, Grunske L, Meedeniya I, et al, let the quantity of purified oxygen source-an ACO based purified optimization strategy [ C ]// Proceedings of the 24th IEEE/ACM International Conference on Automated Software Engineering, 2009: 505-.
TABLE 4 hyper-volume per set of algorithmic solutions
As can be seen from the results, all the statistics obtained by MACO-DO were larger than those obtained by other algorithms in each case, and even MACO-DO/L gave better results than P-ACO and NSGA-II. Combining the above results analysis, it can be concluded that MACO-DO not only yields better target values but also a deployment scenario with good compromise on the metrics.
Claims (2)
1. A deployment optimization method for a network-oriented application module based on a multi-objective ant colony algorithm is characterized by comprising the following specific steps:
1) setting initialization parameters and completing the initialization process of the network application module: setting a framework application module entity S and related parameter functions TR, SR and IR, the parameter function TR specifying a reference processing time for each service for 1 request, i.e. the time required for each service to process 1 request when it is allocated to a resource with a unit of computing power; the parameter function SR is used for appointing the memory space required by each service operation; the parameter function IR is used to define the interaction relationship between arbitrary services; setting a hardware module host H and related parameter functions CP, AS and HC, wherein the parameter CP specifies the computing capacity of each hardware module host, the function AS specifies the available memory space of each hardware module host, and the function HC specifies the running cost of each hardware module host; setting an average request arrival function RA, an objective function and a constraint;
2) initialization pheromone tauk(i, j) and heuristic ηk(i, j): each pheromone should be set to an initial value τinitial k(i, j) is defined as
Wherein,based on the kth target definition; since there is an upper bound for each target, defineIs the inverse of the upper limit of the kth target, expressed as
Heuristic etak(i, j) is also based on this goal; if the kth target is the response time of the web application module, the heuristic ηk(i, j) shall be defined as
Wherein, R' (h)j,si) Represents when siDistribution to hardware hosts hjIs allocated whenIncluding s onto hardware hostiThe current aggregate response time of the software entity of (1);
if the kth target is the maximum utilization among all used hardware hosts, the software entity is inclined to be allocated to the hardware host with lower utilization; so the heuristic should be defined as
ηk(i,j)=1-U'(hj) (8)
Wherein, U' (h)j) Indicating hardware host hjCurrent utilization; the heuristic may prevent deployment of the software entity to a heavily loaded host;
if the kth target is the total cost of the used hardware hosts, then the following heuristic is presented
Wherein HdIs a set of occupied hardware hosts; this means that a software entity is more likely to be deployed on an occupied hardware host, followed by cheaper unoccupied hardware hosts;
3) constructing a deployment scheme: selecting a feasible solution component according to a pseudo-random proportion rule; if q is<q0Solution component of choice<si,hj>Is that
Otherwise, selecting a solution component by using a wheel disc selection method; giving a solution component<si,hj>Probability p ofij
Where FC is a set of feasible solution components, pkIs the weight of the kth target, and the optimization period is randomly generated by ants, such as the definition of Merkle D and the like; alpha and beta are parameters that determine the relative impact of pheromones and heuristics(ii) a They have the following effect on the algorithm behavior: if α is>Beta, the selection of ants depends on pheromone and exceeds the dependency heuristic; if α is<Beta, the selection of ants depends on a heuristic method to exceed the dependence of pheromones;
4) updating local pheromones: suppose an ant has selected a knowledge component<si,hj>Element τ of the pheromone vectork(i, j) the number of pheromones on each target k is reduced; the pheromone local update rule for these elements can be expressed as follows:
where ρ is a parameter in the interval (0,1), called the evaporation rate;
5) abandoning elite solution: setting a maximum number sgmax of iterations during which the elite solution is allowed to be unchanged; when an elite solution exceeds the maximum number sgmax of its iterations, updating with the pareto optimal solution produced by that iteration;
6) and (3) local search process: pareto codes for the local search process are as follows:
initializing z to 0 when z<At LSN, randomly selecting a plan ps from POSi;
To optimize psiRandom selection of a target OS from an OSj;
According to osjAt psiGenerating a new scheme ns by applying the optimization strategy;
evaluating ns and obtaining a target value no thereof;
if ns is stronger than psiReplacing ps in POS by nsiReplacement of Po in POS with noi;
If ns has the optimal value for the target, updating ESS with ns and EO with no;
wherein OS is an optimization target set, ESS is a current elite solution set, EO is a target value associated with ESS, POS is a current pareto optimal solution, PO is a target value associated with POS, and LSN is a number of solutions generated by local search; in the process, when the ants finish a round of search, the ant is applied at the end of each iteration; the optimal goal of the invention is to reduce the average response time, maximum utilization and cost of the fabric application module; for different targets, different optimization strategies exist;
7) updating the global pheromone: hypothesis solution component<si,hj>Belonging to an elite solution, applying to each target k the pheromone global update rule the element τ of the pheromone vectork(i, j) is as follows:
τk(i,j)=(1-ρ)·τk(i,j)+ρ·Δτk (13)
wherein,is the kth target elite solution esiThe inverse of the target value; based on these definitions, it is possible to,the value of (c) becomes higher as the algorithm evolves because the target value of the elite solution becomes lower.
2. The deployment optimization method for the network-oriented application module based on the multi-objective ant colony algorithm as claimed in claim 1, further comprising: comparing the obtained MACO-DO algorithm with the existing P-ACO and NSGA-II algorithms, and evaluating the effectiveness of the MACO-DO algorithm:
1) setting a network application module entity S and related parameter functions TR, SR and IR, setting a hardware module host H and related parameter functions CP, AS and HC, and setting an average request arrival function RA, a target function and constraint;
2) comparing the performances of the MACO-DO algorithm and other algorithms according to the objective function value, namely comparing the average response time, the maximum utilization rate and the cost of the algorithms, wherein the shorter the average response time is, the smaller the maximum utilization rate is, the lower the cost is, and the better the performance is; in order to further analyze the convergence behavior of the algorithms, evolution curves of the algorithms are given;
3) and evaluating the performance of multi-objective optimization by adopting super-volume analysis, and measuring and calculating the maximum value, the minimum value and the average value of the super-volume of the solution set obtained by each algorithm, wherein the larger each value is, the better the performance of the multi-objective optimization is.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910414369.XA CN110427191A (en) | 2019-05-17 | 2019-05-17 | A kind of disposition optimization method towards net structure application module based on multiple target ant group algorithm |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910414369.XA CN110427191A (en) | 2019-05-17 | 2019-05-17 | A kind of disposition optimization method towards net structure application module based on multiple target ant group algorithm |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110427191A true CN110427191A (en) | 2019-11-08 |
Family
ID=68407556
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910414369.XA Pending CN110427191A (en) | 2019-05-17 | 2019-05-17 | A kind of disposition optimization method towards net structure application module based on multiple target ant group algorithm |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110427191A (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103648139A (en) * | 2013-12-09 | 2014-03-19 | 天津工业大学 | Cultural ant colony algorithm-based wireless sensor network node deployment design method |
US20170017880A1 (en) * | 2014-06-23 | 2017-01-19 | International Business Machines Corporation | Solving vehicle routing problems using evolutionary computing techniques |
CN108108224A (en) * | 2017-12-05 | 2018-06-01 | 西南交通大学 | Virtual machine placement method in cloud data center based on ant colony optimization algorithm |
-
2019
- 2019-05-17 CN CN201910414369.XA patent/CN110427191A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103648139A (en) * | 2013-12-09 | 2014-03-19 | 天津工业大学 | Cultural ant colony algorithm-based wireless sensor network node deployment design method |
US20170017880A1 (en) * | 2014-06-23 | 2017-01-19 | International Business Machines Corporation | Solving vehicle routing problems using evolutionary computing techniques |
CN108108224A (en) * | 2017-12-05 | 2018-06-01 | 西南交通大学 | Virtual machine placement method in cloud data center based on ant colony optimization algorithm |
Non-Patent Citations (1)
Title |
---|
李琳等: "一种求解面向服务软件部署优化问题的多目标蚁群算法", 《中南大学学报(自然科学版)》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112286677B (en) | Resource-constrained edge cloud-oriented Internet of things application optimization deployment method | |
CN112346839B (en) | Associated task scheduling method based on evolutionary algorithm | |
CN113821318B (en) | Internet of things cross-domain subtask combination collaborative computing method and system | |
CN113822456A (en) | Service combination optimization deployment method based on deep reinforcement learning in cloud and mist mixed environment | |
CN110098964A (en) | A kind of disposition optimization method based on ant group algorithm | |
CN110119399B (en) | Business process optimization method based on machine learning | |
CN115480876A (en) | Cloud computing task scheduling method and system based on ant colony algorithm optimization | |
CN112632615B (en) | Scientific workflow data layout method based on hybrid cloud environment | |
CN112596910B (en) | Cloud computing resource scheduling method in multi-user MEC system | |
CN116302389A (en) | Task scheduling method based on improved ant colony algorithm | |
CN114741955A (en) | Multi-objective optimization task scheduling method based on security cloud | |
Wang et al. | Adaptive time, monetary cost aware query optimization on cloud database systems | |
Nanjappan et al. | Task scheduling based on cost and execution time using ameliorate grey wolf optimizer algorithm in cloud computing | |
CN110427191A (en) | A kind of disposition optimization method towards net structure application module based on multiple target ant group algorithm | |
Elkael et al. | Improved monte carlo tree search for virtual network embedding | |
CN114980216A (en) | Dependent task unloading system and method based on mobile edge calculation | |
CN116089083A (en) | Multi-target data center resource scheduling method | |
Yang et al. | MJOA-MU: End-to-edge collaborative computation for DNN inference based on model uploading | |
Liu et al. | Towards Efficient Task Offloading with Dependency Guarantees in Vehicular Edge Networks through Distributed Deep Reinforcement Learning | |
CN118467186B (en) | Multi-tenant server-free platform resource management method and system | |
CN112328364B (en) | Computing-intensive cloud workflow scheduling method based on farmland fertility algorithm | |
Daghayeghi et al. | Delay-Aware and Energy-Efficient Task Scheduling Using Strength Pareto Evolutionary Algorithm II in Fog-Cloud Computing Paradigm | |
CN117519941A (en) | Heterogeneous platform load balancing scheduling method and system based on improved ant colony | |
Yao et al. | Performance Optimization in Serverless Edge Computing Environment using DRL-Based Function Offloading | |
Wang et al. | A Deep Reinforcement Learning Scheduler with Back-filling for High Performance Computing |
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: 20191108 |
|
RJ01 | Rejection of invention patent application after publication |