+ All Categories
Home > Documents > CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR...

CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR...

Date post: 08-Jul-2018
Category:
Upload: vuongkhuong
View: 222 times
Download: 0 times
Share this document with a friend
30
36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR TASK SCHEDULING Traditional methods used in optimization are deterministic, fast, and give exact answers but often tends to get stuck on local optima. Complexity class of the task scheduling problem belongs to NP-complete involving extremely large search space with correspondingly large number of potential solutions and takes much longer time to find the optimal solution. There is no readymade and well defined methodology to solve the problems under such circumstances. However in cloud, it is sufficient to find near optimal solution, preferably in a short period of time. In this context IT practioners are focusing on heuristic methods. This chapter presents classification of various schedulers [98] shown in figure 3.1 used in Cloud environment. Main focus is on metaheuristic methods such Genetic Algorithms (GA), Ant Colony Optimization (ACO) and Particle Swarm Optimization (PSO). 3.1 Economic schedulers Economic schedulers have gained very much importance in resolving resource management process various computing paradigms, such as distributed databases, parallel systems, cluster, Peer-to-Peer, grid and cloud computing [45]. Here we are introducing economic schedulers in such a way that they can be applied by using existing middleware which is not just limited to cloud platforms. In practice we can able to examine both the applicability and suitability of above mentioned economic schedulers for supporting cloud resource allocation. This provides us a chance in identifying the possible strengths of these middleware which may add an advantage for cloud environment. Cloudbus [46] is a type of toolkit which provides market-based resource management strategies. They are intended to provide mediate access to virtual and distributed physical resources. A broker which is said to be “Third party cloud broker” is built on an architecture which has capability of providing framework for other cloud environments. A quite good number of economic models with tendering, auction and commodity strategies were made available for computational risk management and customer driven service management.
Transcript
Page 1: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

36

CHAPTER 3

LITERATURE SURVEY: METAHEURISTIC METHODS FOR

TASK SCHEDULING

Traditional methods used in optimization are deterministic, fast, and give exact

answers but often tends to get stuck on local optima. Complexity class of the task scheduling

problem belongs to NP-complete involving extremely large search space with

correspondingly large number of potential solutions and takes much longer time to find the

optimal solution. There is no readymade and well defined methodology to solve the problems

under such circumstances. However in cloud, it is sufficient to find near optimal solution,

preferably in a short period of time. In this context IT practioners are focusing on heuristic

methods. This chapter presents classification of various schedulers [98] shown in figure 3.1

used in Cloud environment. Main focus is on metaheuristic methods such Genetic Algorithms

(GA), Ant Colony Optimization (ACO) and Particle Swarm Optimization (PSO).

3.1 Economic schedulers

Economic schedulers have gained very much importance in resolving resource

management process various computing paradigms, such as distributed databases, parallel

systems, cluster, Peer-to-Peer, grid and cloud computing [45]. Here we are introducing

economic schedulers in such a way that they can be applied by using existing middleware

which is not just limited to cloud platforms. In practice we can able to examine both the

applicability and suitability of above mentioned economic schedulers for supporting cloud

resource allocation. This provides us a chance in identifying the possible strengths of these

middleware which may add an advantage for cloud environment.

Cloudbus [46] is a type of toolkit which provides market-based resource management

strategies. They are intended to provide mediate access to virtual and distributed physical

resources. A broker which is said to be “Third party cloud broker” is built on an architecture

which has capability of providing framework for other cloud environments. A quite good

number of economic models with tendering, auction and commodity strategies were made

available for computational risk management and customer driven service management.

Page 2: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

37

Scheduling Models

Priority scheduling

Hadoop Other

Economic schedulers Heuristic models

MCT OLB MET Min-Min Min-Max GA SA Tabu ACO PSO

Static strategies mation Algorithm

Dynamic Priority Static Priority Dynamic strategies

FIFO scheduler Fair scheduler Capacity scheduler Delay scheduler

Batch mode Min-min Max-min Sufferage

On-line mode OLB MET MCT SA KPB

RM EDF LLF

OpenPEX EERM Cloudbus

Figure 3.1: Schematic View of Task schedulers

Page 3: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

38

This third party cloud broker supports various kinds of application models such as parallel,

workflow, parameter sweep and bag of tasks. This broker has plug-in support for being

integrated with other middleware technologies such as Aneka, Unicore, and Globus etc.

OpenPEX [47] is a type of resource provisioning system which uses an advanced reservation

approach to assign virtual resources. Here in this system the user was given a chance of

reserving any quite good number of instances of virtual machine which are to be started at a

specific time point and need to last for a specific duration limit. A protocol called bilateral

negotiation protocol is included in OpenPEX which allows users and providers to exchange

their counter-offers and offers, so that double auction or sophisticated bartering models try to

improve revenue of the cloud users.

EERM [48] is a type of resource broker which enables a bidirectional communication

between resource and business layers in order to advocate a proper decision-making in

resource management. This resource broker contains sub-components for performing

accounting, billing, pricing, monitoring, dispatching and job scheduling. It uses different

kinds of market-based mechanisms to allocate network resources for tasks.

In order to increase the revenue, we use overbooking strategy to reduce the effects of no-

shows and cancellations.

Scheduler Economic model

Cloudbus auction/tendering/commodity in cloud environment

OpenPEX double auction/battering in cloud environment

EERM bartering/tendering/commodity/posted price in cloud environment

Table 3.1: Summary of Economic mode schedules

3.2 Heuristic models for Task-Execution Scheduling

We can find a typical data centre which consists of commodity machines connected

through high speed links in Cloud computing. We use this environment to compute diverse

and large group of tasks. We cannot able to distinguish the tasks of one user from the other.

Hence Scheduling problem over here is going to be matching multiple tasks to multi

machines. As we have mentioned earlier the optimal matching is an optimization problem

Page 4: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

39

which possesses NP-complete complexity. We generally apply Heuristic mode as a

suboptimal algorithm in order to obtain good solutions.

Here in this section we research on two types of strategies which are called static and

dynamic heuristics. We use static heuristic when the complete set of tasks is known prior to

execution, and we use dynamic heuristic when a particular task arrives. Before going to

further explanation, we just define several preliminary terms.

3.2.1 Static strategies

We just prefer and perform static strategies under two assumptions. We first assume

that tasks are going to arrive simultaneously ci = 0. Secondly we assume that machine

available time aj is going to be updated when each task complete its scheduling process.

OLB (Opportunistic Load Balancing): In this strategy, we schedule each task in an arbitrary

order to the successive available machine. Since it does not need extra calculation its

implementation is quite easy. The main aim of OLB is to maintain all machines busy.

MET (Minimum Execution Time): In this strategy, we can schedule each task in a random

order to the machine for maintain the minimum execution time to complete the task. MET is

a simple which just gives the best machine to every task but it never takes in to consideration

about the availability of machines. This strategy has the capacity to jeopardize the load

balance across various machines.

MCT (Minimum Completion Time): In this strategy, we schedule every task in an arbitrary

order to the machine which possesses the minimum completion time to complete this task

However, in this strategy, it is not possible to give the minimum execution time to all the

tasks.

Min-min strategy contains a set of all unscheduled set of tasks T. Then we will calculate the

matrix for minimum completion time of every task which is present in set T. Task which

possesses the overall minimum completion time gets scheduled to its particular

corresponding machine. Then we remove that particular scheduled task. We just repeat this

process till all the tasks get scheduled.

Page 5: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

40

Min-max strategy looks similarly like Min-min heuristic. It also has set T of all unscheduled

tasks and we calculate the same matrix for minimum completion time for every task which

present in set T. But here we will select a task with overall maximum completion time and it

gets scheduled to its particular corresponding machine and then we remove that scheduled

task from T. We just repeat this process till all the tasks get scheduled.

GA (Genetic Algorithm) strategy is one of the heuristic strategies. By using it we search to

get a near-optimal solution in many large solution spaces [49]. At first we randomly initialize

a population of chromosomes which we generally consider as possible scheduling for a given

particular task. We can get a fitness value (make span) which is acquired from the scheduling

of tasks to particular machines within that chromosome. After getting the initial population,

we will evaluate all the chromosomes in the population based on their respective fitness value

and we consider the smaller make span as a better mapping. We perform Selection scheme

which duplicates some chromosomes probabilistically and deletes others and at the same time

we can find that better mappings have more probability of being duplicated in successive

generation and we will find that population size remains constant in all the generations. Next

we perform a crossover operation which select a random pair of chromosomes of a task and

picks a random point in first chromosome. This operation also exchanges machine

assignments between particular corresponding tasks. Next we perform mutation operation

after crossover which randomly selects a chromosome and then selects a task randomly

within the chromosome and finally reassigns randomly it to a new machine. We start another

iteration of Genetic Algorithm after evaluating the new population and there after we perform

all the above mentioned operations like selection, crossover, mutation and evaluation. We

just stop the iteration when the stopping criteria are met.

SA is also called as Simulated Annealing [96]. This strategy uses a procedure which allows

us to seek and accept poorer solutions probabilistically in order to have a better search of

solution space. The probability which we gain above is based on the system temperature that

decline for each iteration, which indicate us that poorer solution is not accepted. The starting

system temperature is the makespan of initial scheduling which gets mutated in the similar

manner as the Genetic Algorithm. The new makespan which we get is judged at the end of

every iteration and the worse makespan may be agreed based on a probability. Hence we can

say that Simulated Annealing finds poorer solutions than Genetic Algorithm and Min-Min.

Page 6: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

41

Tabu heuristic search keeps track of some areas of the solution space which we have

searched already so as not to search them again and again. The scheduling solution which we

use here follows the same representation of the chromosome which we used in the Genetic

Algorithm approach. We need to perform a short hop to change the present solution and to

step towards the solution space and the instinctive purpose of this hop is to know about the

nearest local minimum solution inside the solution space. The final scheduling in the local

solution space search is appended to the tabu list when short hop procedure ends and then a

new random scheduling is created so that you can perform a long hop to enter a new region

which was not yet searched in the solution space. We will repeat the short hop procedure

after every successful long hop. We select the best scheduling from the tabu list when the

stopping criteria get satisfied.

All these heuristics are judged by simulation in article [49]. For consistent machines,

we observe that GA performs the best for consistent machines while the MET performs the

worst. We also observe that GA give the best solution for inconsistent machines, and OLB

gives the worst. Generally, Min-Min and GA can be utilised as a promising heuristic search

strategies with short average make span.

3.2.2 Dynamic strategies

Now we see about Dynamic heuristics. We perform these strategies when machine set

or task set is not at all fixed. For example, we can see some tasks arriving asynchronously or

some machines which go offline at certain intervals. We can use dynamic heuristics in two

ways, on-line mode and batch mode. In online mode, we schedule each task to a particular

machine as soon as it comes. In the batch mode, we just collect all the tasks into a set and we

perform its scheduling at prescheduled times.

On-line mode: Coming to on-line heuristics you schedule each task only once and it is

impossible to change the result of that particular scheduling. Moreover, this dynamic

heuristic search is possible and suitable to a case which has less arrival rate [50].

OLB is a type of dynamic heuristic which just allots a task to a particular machine

which is ready next without considering the execution time of a particular task on that

machine.

MET is a type of dynamic heuristic strategy which allots every task to a particular

machine that has the capability of performing the computation of the task in the smallest

amount of execution time without taking into consideration the machine available time.

Page 7: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

42

MCT is a type of dynamic heuristic strategy which allots every task to a particular

machine which is going to complete the task in earliest completion time. This heuristic can be

used as a reference point for the on-line mode [51].

SA (Switching Algorithm) is type of dynamic heuristic strategy in on-line mode. It is

going to use both the MET and MCT heuristics in a cyclic manner based on the distribution

of load across the machines. MET chooses the best machine but it allots a lot many tasks to it.

The MCT heuristic balances the load and at the same time it will not allot the task to the

machine which has minimum execution time. For example, if the tasks arrive randomly, we

can use MET to carry on the load balance up to a value of given threshold and then we can

use the MCT to make level the load across the machines.

KPB (K-Percent Best) is a type of heuristic strategy .While scheduling the task it

considers only a subset of machines. You can get this subset by just taking the k best

machines depending on the execution times of the task. We perform scheduling based on

value of k and if it is good value we schedule the task to machine which is taken from the

subset of computationally superior machines. The main purpose here is to avoid keeping the

present task onto a machine which may be required for some other tasks leading to a shorter

make span when compared to the MCT heuristic strategy. When compared to all the on-line

mode heuristics, KPB is going to perform better when compared to others in most scenarios

[51]. We can get good results from MCT but it is slightly worse than KPB since it lacks

prediction for task heterogeneity.

Batch mode: Coming to batch mode, here tasks are scheduled only at some prescheduled

moments. This strategy helps the batch mode to be aware of the actual execution times of

more number of tasks.

Min-min is a type of heuristic which generally go on updating the set of available

machines and set of arrival tasks by just performing the calculation of expected completion

time for all available tasks. After that we remove the task that is scheduled from the set which

has the minimum earliest completion. We update the machine available time and we continue

this procedure till all the tasks were scheduled.

Max-min is a type of heuristic which is completely different from the Min-min

heuristic. This heuristic allots the task to corresponding machine which has maximum earliest

completion time. This performs better when compared to Min-min heuristic if the number of

shorter tasks is more than that of number of longer tasks.

Page 8: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

43

Sufferage is a type of heuristic which allots a task to machine such task that would

never suffer by being assigned to it. We will calculate the sufferage value which is nothing

but the “difference between the first and the second earliest completion time”. For a

particular task tk, if there is a best machine mj which has earliest completion time, then we

will assign tk to mj. Otherwise, this particular heuristic is going to compare the sufferage

value of present taken task tk with sufferage value of task (ti) already assigned to mj. If we

found the sufferage value of tk is higher, we just unassign ti and we add it back to the task set.

We consider every task which is present in the set only once. Sufferage gives the least

makespan among batch mode heuristics [51]. We can observe that batch mode performs

better when compared to the on-line mode by just possessing high task arrival rate.

3.2.3 Hadoop

This Hadoop MapReduce is a most important computation framework. It just

processes large amount of data in mainstream public and private clouds. It is very much

necessary for cloud implementation. This Hadoop is the most widespread and prominent

MapReduce implementation which is used for production or educational uses. It is capable of

making many applications to work with petabytes of data and thousands of nodes

A multi-node Hadoop cluster consists of two layers. In the bottom layer we have

Hadoop Distributed File System (HDFS), which has the capability to provide information

regarding data location awareness to perform effective scheduling of work. The above layer

has MapReduce engine which has several task trackers and one job tracker and every tracker

can inhabit a single node. Map Reduce jobs will be submitted to job tracker by the clients and

then the job tracker pushes out the work to present Task Tracker nodes which are present in

the cluster [52].

Hadoop is mainly designed for bigger batch jobs and the default scheduler over here

mainly uses a FIFO heuristic in order to schedule the jobs from a work queue. We can have

other alternative job schedulers like capacity scheduler, fair scheduler and delay scheduler.

FIFO scheduler [52] is a type of heuristic scheduler which applies first in first out

heuristic. The scheduler keeps a new job in queue based on the arrival time whenever a job is

submitted. We first execute the first or earlier job on the waiting list. Because of this

scheduler overhead is minimal and implementation is quite easy but its throughput is since

the machines can be seized by the tasks with long execution time.

Fair scheduler [53] is a type of heuristic scheduler which allots equal share of the

available resources to all jobs. Whenever a new job is submitted we share a slot that was free

Page 9: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

44

so that every job gets the same amount of CPU time roughly. In order to know about the

fraction of entire compute time is uses job priorities as weights. It provides a cluster which is

shared among users and each user was given a pool so that every user can get same share of

cluster ignoring how many jobs were submitted. We perform fair sharing to share the

capacity between the running jobs in each pool and also guaranteed minimum share is

allowed in the pool. Pool can get its minimum share when it has some jobs but the excess of

full guaranteed share can be split among other when it does not need full guaranteed share.

Capacity scheduler [54] is a type of heuristic scheduler which allots certain amount

of cluster capacity to multiple queues present such that each queue has certain fraction of

capacity. When each job is given to the queue they can able to access the entire capacity

allotted to the queue. No user can monopolize the resource since there is enforcement of

limits on the percentage of resources given to user. The Queues have the capability to support

job priorities optionally such that jobs which have high priority can have access to resources

mainly. Moreover, the queue will not pre-empt for job which has highest priority when a job

is running in it.

Delay scheduler [55] is a type of heuristic scheduler which addresses the dispute

between data locality and scheduling fairness. This scheduler is capable of relaxing the

fairness in order to improve locality. It performs the above task by asking some nodes to wait

for scheduling process on a node which consists of local data. It waits for short span of time

when we do not launch a job which has to be scheduled next and then it try to launch the next

job. We will launch non-local tasks by the job if it was skipped for a long time to avoid

starvation. This scheduler shows its efficiency when there are many slots for each node and

when the tasks are small compared to jobs.

3.3 Priority scheduling for cloud computing

There is a set of applications that can take advantage from increasing timing

guarantee of cloud services. In this case critical applications typically include deadline

requirements, and whole deployment fails due to any delay. For example, traffic control

centers are collects the information about recent state of roads by using sensor devices and

stored in database. If any user enquires about state of roads to the control center, a real-time

decision can give to the user based on the appropriate control information. But the current

cloud service agreements not giving real-time control to cloud users over the timing behavior

Page 10: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

45

of the applications, so some more transparent, flexible, and trust-worthy service agreement

between users and cloud providers is needed in future.

In task scheduling priorities applied to the periodic tasks with deadlines. In priority

scheduling, each task is given a priority through some procedure, so that task scheduler

assigns resources to tasks based on their priorities. In real-time scheduling, the priorities

assigned to tasks based on some policy, is classified as fixed priority and dynamic priority

strategy.

3.3.1 Fixed priority strategies

Consider a real-time task τi which possesses a series of instances in it. In Fixed

priority scheduling all the instances in the particular task was given same priority. The most

powerful algorithm for priority task is Rate Monotonic (RM) algorithm which was proposed

by Liu [56]. Here in this algorithm we can see that the priority of a particular task depends on

its releasing rate. If the rate is higher, the priority is higher. If we consider two times Ti and

Ci- Ti is the time length between two successive occasions where as computation time Ci is

the time taken to compute the instances.

3.3.2 Dynamic priority strategies

This is second type of Real-time scheduling. Dynamic priority strategy is more

efficient when compared to fixed manner because this strategy can utilise the entire processor

for most processing of tasks. Here we can observe that priorities continuously vary with time

and from one request to another request or during the same request. The algorithms which we

use here are “Earliest Deadline First (EDF) and Least Laxity First (LLF)” [57]. Earliest

Deadline First algorithm allots the priorities to tasks in inversely proportional manner to the

absolute or complete deadlines of active jobs. Liu [56] proved that we use EDF algorithm to

schedule periodic tasks which are of “n” number if and only if P Ci Ti ≤ 1.

Least laxity First algorithm allots the processor to the active task which possess

smallest laxity and due to these laxity changes which happens at run time LLF contains more

number of context switches. In real-time research EDF is more popular and important when

compared to LLF because it has smaller overhead.

Page 11: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

46

3.3.3 Other schedulers

We say that a particular scheduler is dynamic if it can select one task out of many

tasks which are ready and it can take scheduling decisions during run time. A scheduler is

said to be static (pre-run-time) if it has the capability to take scheduling decisions during

compile time. For run-time dispatcher off-line, this static scheduler can create a dispatching

table. We can find real-time schedulers in corresponding kernels which have their own

scheduling approaches.

Hard real-time systems were targeted by MARS kernel [58] for the purpose of peak

load conditions and we use a approach called Fixed scheduling. We will calculate the

schedule offline and we will give it to the nodes to carry out system initialization. We will

keep all the resource requests and inter process communications inside the schedule. We

observe that simultaneously nodes may change a schedule to another pre-calculated schedule.

Arts kernel [59] is a type of kernel which aims at giving a analyzable, reliable and predictable

distributed computing system. This Arts kernel utilizes the EDF/LLF/RM algorithms to

examine and to provide guarantee to the hard real-time processes which were offline.

Execution time which is reserved by deferrable server can schedule hard real-time processes,

while we use value function scheme to schedule all other processes.

3.4 Genetic Algorithm (GA) Paradigm

In this section, we will present comprehensive presentation on the paradigm of GA.

John H Holland [60] is the introducer of the Genetic Algorithms. He was inspired by the

evolution process in nature and observed the following features regarding evolution.

Evolution is a process on chromosomes (encoded structures). By natural selection,

chromosomes with better performance, participate more often in reproduction. Reproduction

is the point where evolution takes places. Biological evolution has no memory i.e. one macro-

level process in evolution is limited to the population of one generation. Biological organisms

are observed to adapt well for different environment condition by this process of evolution.

Motivated by these features of evolution in nature, Holland process of these are appropriately

incorporated in a computer algorithm, it can become a technique for solving difficult

problems based on evolution such algorithm is called as Genetic Algorithm (GA). To explain

the process of adaption in the evolutionary method of GA, a framework is given by Holland

in his book ‘Adaptation in natural and artificial systems’ [60]. According to him this

Page 12: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

47

framework centers around the environment E of the system undergoing adaption, the

adaptation(reproductive) plan r according to which the solution structures are modified in

response to the environment, and a performance measure µ (cost function value) of different

solution structures. The later researches [61, 62] employed the same framework and used the

same terminology which is presented in the following section.

3.4.1 Terminology

Since the Genetic Algorithm is an artificial adaptation process, the terminology can be

better explained by giving the corresponding analogy with the natural adaption process.

Chromosomes in biological system: These correspond to solution strings in artificial

systems.

Genotype: The total genetic package is called genotype. This is analogous to the total

package of solution strings in artificial systems. This is defined as structure by Holland.

The interaction of total genetic package with environment results in the formation of

phenotype.

Phenotype in a natural system: This corresponds to the decoded output of solution

representation in artificial systems. This may correspond to a parameter set, or solution space.

Genes: The chromosomes are formed by genes which correspond to the smallest functional

blocks in the solution representation in artificial systems.

The locus of gene: It corresponds to the position of genes in solution representation. The

alleles in natural systems correspond to the values taken by the genes in artificial system. The

set of alleles correspond to the set of values that genes can have. For conventional genetic

algorithms this is the set {0, 1}.

Epistasis in natural systems: A combination of genes with specific allele values gives a

certain property to the corresponding biological organisms. This nonlinear property is

referred to as epistasis in natural systems. This corresponds to the encoding feature of the

solution by the genetic structure.

Page 13: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

48

In the remaining description of terminology we confine to the artificial system only.

To simulate the adaptation process we need a set of solutions referred to as the Initial

population .The candidate solutions in the population are generally represented by a suitable

data structure. The data structure is a string of small blocks known as genes. The values

taken by these genes correspond to a finite set denoted by ∑ and for conventional Genetic

Algorithms ∑ = {0, 1}. Given the genetic structure of a solution string, the “Goodness” of the

solution is expressed by the objective function value associated with the solution. Generally,

the fitness of the solution reflects this and it is expressed as a relative parameter with

reference to a population of solutions. In other words, the best fit solution and worst fit

solution in a population of solutions are decided by the objective function values of these

solutions. The variations in the genetic structure of solutions of a population are obtained by

the simulated processes of reproduction, crossover and mutation. The reproduction takes

place according to a simulated reproductive plan. The efficiency of the adaptation by GA

depends on the parameters of GA. The number of generations, crossover rate, mutation rate,

and population size constitute these parameters. Employing this terminology, Genetic

algorithm is presented in the following section.

3.4.2 Genetic Algorithm Components

In order to solve a hard optimization problem using the paradigm of GA, Davis [62]

pointed out that, the following GA components are necessary.

a) Solution to the problem can be represents as chromosome.

b) A method to create some random initial population of solutions,

c) An evaluation function that plays the role of environment, rating the solution in terms of

their “Fitness”,

d) Genetic operators that alter the genetic structure of the solutions, and

e) Values for the GA parameters namely population size, number of generations, cross over

rate and mutation rate.

Before taking up an elaborate discussion on GA components, it is necessary to

understand the GA philosophy clearly which is presented in the next section.

Page 14: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

49

3.4.3 Solution representation

Any specific optimization problem requires the expression of its solution in a closed

form. In most of the cases, it is not difficult to encode this closed form solution using a

simple string of bits. The conventional GA s employed such bit string representation for

solutions, depending on the problem; the encoding procedure to get a bit string solution

differs. Correspondingly the decoding procedure is employed, while evaluating the objective

function for a solution representation in the GA formulation for a specific optimization

problem. In this context, we present the various design criteria to choose a data structure for

solution representation.

Criterion 1: The solution representation should necessarily be in the form of a string of

genes. However, the allele value of the genes need not confine only to the binary alphabet

{0,1} only. In the Literature we come across integer strings, character strings, etc. as

solutions. GA formulations with representations using data structures other than bit strings

are known as hybrid GAs. Whatever in the data structure employed for solution

representation, the basic philosophy of GA is to bring in structural search space. In general,

these change result in the allele values of the genes in the off springs to be different from

those in the parent strings. Since the allele value of each gene corresponding to a certain

attribute of the total solution, the combination of the total genes in the offspring correspond to

a new solution which is evaluated eventually by the GA.

Criterion 2: This criterion is based on the diversity in the initial population with which GA

starts. In case of conventional GAs every genes in a n-bit solution string can have allele value

from the set {0,1}. Thus it is easy to identify the total search space with conventional GAs as

2n search points. A choice of large sized alphabet set of allele value would increases the

possible search space. However, one can bring in reduction in the possible search space by

identifying valid and invalid solutions. For example, in case of a permutation problem, the

solution is represented by integer strings, and this has the set ∑ = {1,2,….n} Where n is the

number of genes. In this case, it may be seen that the search space is the n! valid

permutations. The strings with any two genes having same allele value are invalid solutions.

This search space decided by the alphabet set ∑ is explained by GA in its simulated evolution

process.

Page 15: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

50

As important question then is, how the initial population is to be chosen for an

effective search by GA? From the experiments on the GA for Minimal Deceptive Problem

[61] it is known that the initial population should contain a good proportion of better fit

solutions. For an arbitrary GA formulation, if GA search is started with a population that has

large diversity, it would be more effective. This requires the quantification of the team

“Diversity”. One way to quantify diversity is to do it in terms of the objective function value.

All the solutions in the population are evaluated for their objective function value. The

difference between the minimum and maximum values is a measure of diversity in the

population. A near uniform distribution in the population would correspond to good diversity

in the population. Thus, any data structure chosen for solution representation is required to

provide good diversity in a randomly generated initial population of suitably chosen size.

Criterion 3: This criterion is based on the evaluation of the solution. It may be observed that,

in the process of GA search every solution for its objective function value. Moreover, this

evaluation is always a complete evaluation, unlike incremental evaluation that would suffice

in case of the search by simulated annealing. It is also possible that same solution is evaluated

a number of times, because GAs do not have any memory in their evolution process i.e. the

knowledge about candidate solutions involves a decoding process of the solution given by a

certain representation. This requires a number of micro level operations on the structural

elements of the solution. These operations thus determine the total evaluation time required

for objective function value. In general, a large percentage of the total time required for

processing one generation is spent in the objective function evaluations only. In this context,

choice of a complex data structures for solution representation may result in large evaluation

time for the solution. Hence the third criterion may be stated as “The data structure chosen

for solution representation is expected to permit easy computation of the objective function in

a reasonably small time”.

3.4.4 Initial population generation

The quality of the final solution obtained by GA search is often dependent on the

initial population. The time efficiency of GA is also influenced by the initial population. In

general, the required initial population is obtained randomly. The generation of such initial

population requires standard techniques such as random initialization, random permutation

methods, random shuffling methods, usage seed values etc.

Page 16: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

51

An important observation made by Davis regarding GAs is improvement in the

quality of final solution by forcing elitism [62]. This refers to a condition that the current best

solutions are permitted to survive in the next generation always. In other words, GA would be

more effective if better fit building blocks are present in the population.

The recombination process by GA becomes more efficient under such conditions, and

results in better time efficiency. This concept of elitism can be extended to the initial

population also. This requires forcing one or a few more of the initial solutions to be some

approximate solutions obtained by some greedy method.

3.4.5 Objective function and fitness evaluation

In general, minimization or maximization of some objective function g(s) is

attempted, where s is a closed form solution expressed by the gene string. The evaluation of

g(s) would require some other problem specific inputs along with the solutions. Consider a

population of solutions ordered 1 to N. It is required to obtain a non-negative fitness value for

each solution in this population to implement the process of natural selection. If the problem

is maximization, and the objective function is always positive, then fitness computation is

easy and straight forward. However, for minimization problems and negative objective

function values, we require some transformation to obtain fitness of the solutions. Goldberg

[61] has summarized the required transformations on objective functions to compute fitness.

These are briefly given below.

Case 1: Minimization problems. In general, cost minimization corresponds to profit

maximization. A standard method is to multiply the cost value with -1 to transform

minimization to maximization. Since the fitness is a non-negative value, this method is not

suitable for GA formulation. The suggested transformation that relates fitness f(s) and

objective function g(s) is as follows.

f(s) = Cmax – g(s) when g(s) < Cmax (3.1)

0 Otherwise

The constant Cmax may be chosen as the largest g observed.

Case 2: Maximization problem with possible negative objective function values. The

suggested transformation is as follows.

Page 17: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

52

f(S) = Cmin + g(s) when g(s) + Cmin > 0 (3.2)

0 Otherwise

The Cmin is a constant chosen as the worst value of the objective function g(s) .

Another important computational technique regarding fitness is to employ some

scaling method. Essentially, scaling is employed to regulate the level of competition among

the candidate solutions in a population .In a simple linear scaling method the raw fitness f(s)

and scaled fitness fs(x) are related by the equation fs(s)=a* f (s) + b

Here a and b are some constants. These constants are chosen based on the minimum

and maximum of the raw fitness.

3.4.6 Crossover and mutation operations

Important genetic operations are crossover and mutation. Even though a number of

low level genetic operators such as inversion, dominance, and intra chromosomal duplication,

translocation, and segregation have been considered [61], GA formulations for real world

problems generally crossover and mutation only. In most of the optimization problems these

two operations would suffice.

In case of conventional GAs with bit string representations, the single point crossover

operation is generally employed. In single point crossover, crossover point is randomly

selected within a chromosome, and then interchanges the two parent chromosomes at this

point to produce two new offspring. Random multiple cut points have been attempted by

researchers as an alternative. But, these attempts could not lead to any improved GA

performance. Attempts have been then made with solution representations by some data

structures other than bit strings. These are referred to as hybrid GAs. In these cases, the

design of crossover operation needs attention. The design should help exploration of the

search space. This can be achieved by making the offspring inherit the better fit building

blocks of both parent strings. Since the solution is no more represented by bit strings, the

building blocks of the solution have to be eventually constructed by the designed crossover.

In case of such hybrid GA formulations, crossover design is problem dependent.

An important decision to be taken, is regarding any eventual invalid solution

generated as offspring. Conventional GAs would conveniently bias the objective function for

these invalid solutions. In cases of some hybrid GAs, we may have to confine the GA search

to valid solutions only. With such a requirement, the design of a crossover operation must

ensure only valid offspring solution generation. Below we present some example crossover

operations on integer strings that permit only valid offspring generation.

Page 18: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

53

3.4.7 Crossover operations for integer string solutions

When integer string solutions are used in GA, there are two possible conditions. The

genes in the string may have any permissible allele value from an integer set. Alternatively,

no two genes in the string may have same allele value of an integer set, resulting in a

permutation. In case of a permutation solution, three different types of crossover operations

have been reported [61], which permits a valid offspring permutation generation. These are

order, partially mapped, and cycle crossover operations.

Mutation: In genetic algorithms, mutation is a genetic operator used to maintain genetic

diversity from one generation of a population of algorithm chromosomes to the next.

The classic example of a mutation operator involves a probability that an arbitrary bit in a

genetic sequence will be changed from its original state. A common method of implementing

the mutation operator involves generating a random variable for each bit in a sequence. This

random variable tells whether or not a particular bit will be modified. This mutation

procedure, based on the biological point mutation, is called single point mutation. Other types

are inversion and floating point mutation. When the gene encoding is restrictive as in

permutation problems, mutations are swaps, inversions and scrambles.

The purpose of mutation in GAs is preserving and introducing diversity. Mutation

should allow the algorithm to avoid local minima by preventing the population of

chromosomes from becoming too similar to each other, thus slowing or even stopping

evolution. This reasoning also explains the fact that most GA systems avoid only taking the

fittest of the population in generating the next but rather a random (or semi-random) selection

with a weighting toward those that are fitter.

3.4.8 GA Parameters

The influence of the genetic parameters namely the population size, the number of

generations, the crossover rate and crossover probability, the mutation rate and mutation

probability on GA performance has been extensively studied by Grfenstette [63]. He

formulated a meta-chromosome of these parameter values and employed mete-genetic

algorithm to obtain optimal set of parameters. In this formulation the main GA used only bit

string solutions. However, the choice of these parameters is not very critical in case of many

GA formulations. A few trial runs would suffice to determine a near optimal parameter set

that ensures good performance by GA.

Page 19: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

54

Stopping criterion: Since GA is an iterative method, a decision needs to be taken regarding

the stopping criterion. In general, the GA is stopping after processing a fixed number of

generations. Alternatively, the quality of the best solution may be monitored in every

generation and the GA may be stopped after a required improvement is observed. In case

there is no way to judge the required improvement, a stooping criterion needs to be designed.

Reproductive plans: The performance of GA is dependent not only on the GA components,

but also on the reproductive plan employed. The parent selection policy, the next generation

population selection policy etc. constitute the reproductive plan. We present details regarding

some reproductive plans that are employed by many researchers. We conclude this selection

with our proposal of a reproductive plan with some modifications which bring in

performance improvement.

The most prominent commercial software packages that help genetic algorithm

implementation are the GENESIS by Grefenstette and OOGA by Davis. These packages

describe some reproductive plans. A pioneering work in the field of genetic algorithms by De

Jong [64] includes a study on a number of reproductive plans. De Jong considered function

optimization problems with six different reproductive plans. He employed only bit string

solutions of different function optimizations. The functions chosen have characteristic

variations in continuity, convex nature, unimodal / multimodal, dimensionality, and

deterministic/stochastic natures. The reproductive plan with a roulette wheel parent selection,

simple crossover and mutation operations, and off springs replacing the parents as next

generation population selection policy, is defined as R1 by De Jong.

The roulette wheel parent selection procedure is described by Goldberg [61] which

implements the natural selection based on fitness. The improvements on the plan R1 brought

by incorporating some technique resulted in plans R1 to R6. Plan R2 includes an elitist

candidate solution (the current best solution) in the next generation population if it is likely to

be lost by plan R1. In plan R3 expected number of off springs of each solution as per the

fitness are computed. This count is decremented whenever a string participates in

reproduction. In plan R4 the elitist model of plan R2 and expected value model of R3 are

combined. The newly generated off springs replace similar older adults in plan R5 which

essentially maintains diversity in the population. To implement this, a new parameter called

crowding factor is defined, and whenever an offspring is generated, the adult that dies to

accommodate the offspring, is selected from the crowding factor members randomly. In plan

R6 multiple point crossovers are employed.

Page 20: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

55

The implementation factors of these plans that offer performance improvements may

be summarized as Elitism and Diversity in the population. Elitism always ensures the

presence of a reasonably good solution always in the population. Diversity in the population

needs to be carefully maintained. These factors when exploited by the parent selection and

next generation population selection policies offer an effective reproductive plan. We

consider these factors and propose our modified reproductive plan as follows.

3.5 Ant Colony Optimization

3.5.1 Introduction

Ant Colony Optimization (ACO) [65] is a type of meta-heuristic which carries out the

work based on the indirect communication. This type of communication can be seen among

the real ants that use a substance called pheromone in order to communicate. Some artificial

ants while conveying about their particular experience regarding solving a problem they act

as special agents try to use numerical information which is also called as artificial pheromone

information. All these fundamentals are going to provide a basic framework to several

combinational problems of optimization (observe [66] for an overview) in applications of ant

algorithms. Hence we call the algorithms as ACO algorithms if they were acquired from

ACO meta-heuristic.

In order to design Meta heuristic algorithms we mainly consider Ant Colony

Optimization (ACO) since they can solve many combinational optimization problems. The

first or earliest algorithm which we categorized in this framework was presented in 1991 [66]

and, since then several modifications regarding the principles were documented in the

literature. The combination of both priori and posterior information is the main characteristic

of ACO algorithms. We can have the basic structure or design of promising or best solution

in priori information while we can have the design or structure of earlier obtained good

solutions in posterior information. Algorithms like Meta heuristic algorithms work up on

some basic heuristic with the main intention to get rid of local optima. The basic heuristic

may be constructive heuristic which starts from null solution and finally get a complete

solution by adding elements or it can be a local heuristic where you have a complete solution

and finally you acquire a better solution by iteratively modifying some elements in it. But the

Meta heuristic part allows the low level heuristic to attain good solutions since you cannot get

them from the heuristic when it is iterated .We can have control over these heuristics either

Page 21: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

56

by randomizing or constraining or you can control by mixing the elements which you derived

from various different solutions( as in case of genetic[67].

Here a single ant gives solutions to several combinational optimization problems

based on based on complete candidate solutions which is acquired from adding the solution

components iteratively. We can observe that ants use pheromone information which can be

acquired from experience attained by previous ants and sometimes heuristic information

which is nothing but problem dependent information which can be used to determine about

the solution component that needs to present partial solution by using stochastic construction

policy. Iteration is nothing but a step where all the ants arrive at a feasible solution in ACO

algorithm. For every iteration every ant is going to provide solution definitely. Hence, we

refer to the solution that a particular ant is going to provide when we speak about ant. We can

have feedback from the ants regarding the solutions which have been developed by

depositing pheromone on components of solution used in solution by the ants.

The updating of pheromone strategy mainly focuses on deciding which ants are to be

selected for updating process and what they need to do once they are selected. The

components of solution which are used by several ants and which occupy some portion of

better solution can have huge amount of pheromone and hence, there is a possibility of its

usage in iterations of the algorithm. In order to stop the endless accumulation of the

pheromone trail, we decrease the trails of pheromone by a factor which has the capacity to

model evaporation of trails before updating the pheromone information and these trails which

are associated with solutions of component exponentially start decreasing if they don’t

receive pheromone at all. We can forget the bad choices in algorithm by using evaporation

technique and sometimes all the solutions which are been constructed can become better by

using local search (LS) methods.

We now that we use algorithms like ACO algorithms to any combinational

optimization problems by describing some components of solution which are used to build

candidate solutions in iterative manner by ants and we deposit pheromone on components of

solution. ACO algorithms discussed in current work follow the natural algorithmic scheme

prescribed in Figure 3.1. Here we initialize the pheromone information and parameters in first

step. Next we try to repeat a loop until condition which we use to terminate is met. That

particular condition may be a limit value on the given computation time or number of given

solution constructs. In the above loop ants add solutions components to build solutions which

are feasible and these we improve the solutions by local search method and then we

determine the best solution. We try to update the pheromone information by using best-so-far

Page 22: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

57

solution. We use the evaporation technique and decrease the trails of pheromone by a factor

before updating the information of pheromone. We can get and return the best solution that

we found since the start of algorithm at the end of main loop. We can observe that ACO

meta-heuristic is more general when compared to this particular algorithmic scheme.

Ants build a solution to the problem incrementally by moving through a policy called

stochastic local decision policy. This policy mainly contains two parameters, called trails and

attractiveness. During construction phase or when an ant completes building a solution, the

ant judges the solution and changes the trail value on the solution components used here.

Future ants make use of this information of pheromone in order to carry out search process.

An ACO algorithm contains two mechanisms like trail evaporation and daemon

actions (optional method). In trail evaporation we can observe that all trail values were

decreased in order to prevent endless trail accumulation on some component. Daemon actions

are utilised to carry out centralized actions which cannot be done by individual ants. We have

actions like invoking local optimization procedure or updating the global information which

is required to know whether we need to support search process from a non-local perspective

[68].

3.5.2 The ACO metheuristic

This ACO metaheuristic mechanism can be explained as the interplay among the

below given procedures:

Ant activities: This is a type of ACO metheuristic procedure where you can find artificial

ants construct the trail solutions incrementally to the problem which has to be solved.

Artificial ant starts moving on a construction graph G(C, L) and while moving it add

components to sequence which was started at empty sequence x = 0. To do that ant which

stays at component ci at present chooses which component it has to go next i.e. the

component which has to be added to sequence from the set C by using random proportional

rule. Generally we consider that probability of an ant travelling from the present position ci to

some other next component in sequence cj is directly proportional to both heuristic

information regarding move and trail intensity of the pheromone. The concentration of the

pheromone which is present on the arc connecting the two sequences ci and cj speak about the

experience acquired by the ant about that particular connection depending on the solution of

the trails generated previously in the present optimization search. We consider the visibility

or heuristic in order to know the quality of that arc which mainly includes the knowledge of

Page 23: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

58

user regarding the problem and we can acquire the solution of trail to the problem when the

sequence length matches with total or entire number of variables D. Then, we calculate an

objective cost function ‘F(s)’ which is connected with the trial solution.

Pheromone updating: In this pheromone updating procedure we have two different

mechanisms like

1) Pheromone deposition

2) Pheromone evaporation.

In pheromone deposition we mainly try to reward or accolade the arcs which are used

for connecting the trail solution components depending on the solution’s objective function

cost. Coming to pheromone evaporation, it is nothing but a process where trail intensities of

pheromone are decreased by a factor which are present in problem search space and thereby

decreasing the difference in intensities of the pheromone among arcs. By using this

procedure, the arcs which are travelled repeatedly are prevented and we allow the unvisited

arcs to visit.

Daemon actions: In ACO metaheuristic, we use this as a optional procedure. We perform

centralized actions in case of daemon actions which cannot be accomplished by individual

ants. Daemon actions can be performed in two ways like

a) A local search procedure, where you will search in the solutions neighborhood given

by ACO to get local minima.

b) Global information which is utilized to support the optimization search. For example,

an extra amount of pheromone was rewarded to best solution components that we

found from the start.

On the whole, we use ACO metaheuristic as an optimization process where we get

solutions of trail by performing exploitation of information by artificial ants which is

distributed in search space and by changing the environment iteratively of the work space to

show the search experience of artificial ants. Hence, we can say that this search is going too

biased towards the best areas of search space.

3.5.3 Prerequisites of ACO implementation

We use the ACO metaheuristic which is a bigger level algorithmic framework to

solve and clear the specific optimisation problem. “ACO formulation for problem P” is

nothing but alterations we perform to assign the ACO metaheuristic to a problem P. Here, we

Page 24: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

59

discuss about the issues which are required to be answered as part of ACO formulation in the

following manner:

Construction of a trial solution: We try to build and judge many ‘candidate solutions’ by

using metaheuristic during the optimization process before getting one best solution in the

process of searching for optimal solution(s) to a particular problem. We call these candidate

solutions as ‘trial solutions’, while we call the latter as ‘lowest-cost solution(s)’.

Definition of pheromone trails: Artificial ants uses the information regarding problem’s

decision variable space2 which we can get through the trails of pheromone as a part of

optimisation process using ACO metaheuristic and at the same time they try to change the

trails of pheromone to show about their search experience. Generally distribution of trails of

pheromone in problem decision space is the main thing behind the search process carried out

by the ants. Hence we require the definition of trail of pheromone which is normally

considered as problem-specific. Some studies reveal that bad choice of pheromone trail

definition lead to bad outcome of optimisation process. They performed these studies

examining the effectiveness in contrast manner regarding different definitions of pheromone

trails. Here two types of definitions of pheromone trails for TSP. They are: (i) a trail of

pheromone tij can be defined as the desire to visit a particular city j after visiting the city i

and (ii) tij can also be defined as the desire to visit the city i during the salesman’s tour. But

the relative order of visiting the particular city is more important in solving the TSP, we

consider the first definition of pheromone trail as more effective.

Heuristic formulation: We use this heuristic information to include the earlier knowledge

regarding the problem in ACO formulation which is mainly considered while building the

trail solutions. This heuristic information plays dominant role during the starting stages of

particular ant’s search in decision path selection before making the trails of pheromone

distinct and it also provides the good optimisation search in the regions of search space that

are predicted before to get the promising or best solutions . The initial or starting search is

going to be random till the paths that are dominant are established during the next stages of

search if we do not use heuristic information. Moreover, if this heuristic information is given

more priority, we can expect the behavior of ACO to go along with greedy algorithm. Since

we represent heuristic information in problem specific mathematic format, it is more

important to convert it in to formulation which is used in ACO algorithm. A heuristic value

Page 25: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

60

can be in two formats like static or dynamic which we try to give to solution component. The

heuristic value remains same throughout the ACO run and it is described as posterior one in

static case whereas the same heuristic value can be calculated depending on the present

partially constructed trail solution in dynamic case.

Local search (optional): We use local search as an optional mechanism which is used on the

behalf of daemon action in ACO metaheuristic. We found vast number of results and

improvements in case of local search when it is combined with ACO to carry out more

number of ACO applications and very few results in other cases. Generally both ACO and

local search is speculated to complement each other in below mentioned way: We identify the

best regions in search space of problem in case of ACO metaheuristic which is popularly

said to be global-search based metaheuristic whereas we perform a clear search in those best

regions to get optimum solution(s) for the problem and to increase the capacity of the above

ACO metaheuristic in solving a particular optimisation problem when we don’t have heuristic

information regarding the problem with us.

3.5.4 Ant System

One can see the greatness of original Ant System (AS) [69] in being the prototype to

much number of algorithms of ant which are collectively to used to carry on ACO paradigm.

The Ant System follows the entire plan which is used above we are just left with specification

of its elements. The probabilities pijk which can be clearly defined to equal to value 0 by

using the move probability distribution in case of infeasible moves (list of tabu of ant k

contains moves which are infeasible for k ants starting from i state), or the value is going to

be calculated by using formula (3.3) where there are two parameters like a and b.

Construction of trial solutions: In Ant System, we can see that m ants by using the random

proportional rule (Eq. 3.1) try to build trial solutions in parallel manner and they store the

constructed partial solutions in their memory. Suppose if there is a partial solution sequence

x = ...,ci ,we can say that the probability that an k ant adds next component cj in x given by:

푝 (푡) = [휏 (푡)] . [푛 ]

∑ [휏 (푡)] . [푛 ]푖푓푗휖푁 (3.3)

Page 26: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

61

Where 휏 (t) gives the information regarding the pheromone in present iteration, α and 훽 are

two parameters which describe about the importance in relative manner between both

heuristic information and pheromone information and finally 푛 describes QAP specific

heuristic information.

Pheromone updating: In Ant System, we can observe that evaporation of pheromone

process decreases the trails of pheromone by a factor which is given below.

τ ← (1 - τ foralli, j

is the rate of pheromone evaporation.

After the completion of evaporation of pheromone process, we see that all ants keep the

pheromone on the arcs which are followed by them and their value is given by:

ant and its value is given by:

Where OFCk is nothing but the “objective function cost of the trial solution” which is built by

ant k, sk. We can see that pheromone which is deposited on the trail solution arcs is found to

be higher if the trail solution’s OFC (objective function cost) is lower.

3.5.5 Max-Min Ant System (MMAS)

Max-Min Ant System (MMAS) (Stutzle et al., 1997; Stutzle et al., 2000) brought a

great change in Ant System. It is mainly used to increase both the exploration or inquiry and

exploitation features of Ant System. We can find two main features in MMAS which are

responsible for the robustness of the algorithm. They are:

Updating the iteration-best (sib) or best-so-far (sbsf) trial solution: In order to attain the

good search experience of artificial ant, we keep pheromone on the arcs which belongs to

either the best trial solution of the present iteration (sib) or best-so far trial solution (sbsf).We

can see the corresponding equation of pheromone deposition as:

1 OFC⁄ , if arc (i,j) belongs to sk (3.5)

0 , otherwise

Δτij =

Page 27: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

62

τ ← τ + Δτ (3.6)

Where

where OFCbsf is nothing but “Objective function cost of the best-so-far trial solution( sbsf)”

and OFCib is the “Objective function cost of the iteration-best trial solution(sib)”.

Trails of pheromone that is bounded by an interval [t min, t max ]: We can observe

convergence or merging to a particular solution during starting stages of the optimisation

search when we accolade the pheromone to sbsf or sib .This is kind of thing is not which we

generally desire to have since it makes the space of search to be left unexplored. Hence we

try to bind the trails of pheromone in a problem by using upper and lower trail limits (tmax and

tmin) and we can have their values in the following way:

휏 (푡 + 1) =훒. .

( ) (3.8)

휏 (푡 + 1) = ( )( )

( ) (3.9)

where t is an “Iteration index”, Q is the “Reward factor”, 0 < r < 1 is the “Rate of

pheromone evaporation”, n describes about the number of decisions which are to be taken by

ant , OFCbest = OFCbsf and OFCbest = OFCib(t) is used to describe about “Updation of the

best-so-far and iteration t’s best trial solutions”, respectively and we can have pbest as the

probability of constructing the sbest trial solution during the convergence of algorithm when

Max-Min Ant System was converged.

Max-Min Ant System is a most studied ACO algorithm which is used to create new

type of ACO algorithms and to compare the benchmark for the remaining ACO algorithms).

3.5.6 Ant Colony System (ACS)

This Ant Colony System (ACS) was suggested by Dorigo et al. (1997a; 1997b)

depending on the algorithm called Ant-Q algorithm (Gambardella et al., 1995).This Ant

τ = Δτ = 1 OFC⁄ if only best-so-far solution (sbsf) is updated (3.7)

Δτ = 1 OFC⁄ if only the iteration-best solution (sib) is updated

Δτij =

Page 28: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

63

Colony System (ACS) is entirely different the previous described Ant System based on some

aspects like:

1. We use random proportional rule (Equation 3.1) in Ant System in order to construct the

solution of trails but it is changed in Ant Colony System so that we can achieve better

search experience of the ant. The algorithm uses A new type of pseudorandom

proportional rule is utilised by the algorithm and it selects best path which contains good

a [tij ] b [hij] values with the probability of q0. We can anticipate that we can have good

exploitation if we possess the higher q0-value since we always select with higher

probability the best present option. Hence we can say that we can adjust the value of q0

based on our desired level of exploitation.

2. In Ant Colony System we use both pheromone deposition and evaporation in case of best-

so-far trial solution ( sbsf). The arcs which are pertained to the sbsf contain the pheromone

which is decreased or reduced by factor called pheromone evaporation coefficient(r).This

leads to formation of new trails of pheromone which are nothing but the weighted average

of amount of deposited pheromone and the old pheromone value.

3. We apply local pheromone updating rule in such a way that the trail of pheromone of

particular arc is going to be decreased by the factor when the ant try to move on that

particular arc. This kind of mechanism always decreases the importance of a travelled arc

to subsequent ants. A good observation was pointed out that in order to change the

searching level and exploitation level of particular algorithm both Max-Min Ant System

and Ant Colony System has to carry on upper and lower limits in case of trails of

pheromone. But this limits specification is implicit in case of ACS and explicit in case of

MMAS. Before implementing Ant Colony System we need to explain many extra

parameters which are not involved in Ant System before. This phenomenon is surely a

big drawback to this algorithm.

State Transition Rule: This particular rule is used by the ant to know and to decide to which

state it has to move in next step in order to build a new solution. We use a new type of state

transition rule which is said to be pseudo-random-proportional in Ant Colony System and we

use this rule which is used as a compromise between the action rule which is called as

random-proportional which found its usage in Ant System and the choice rule which is called

as pseudo-random state choice rule which found its usage in Q-learning. By using pseudo-

random rule we can able to select the chosen state with probability q0 (exploitation) which is

said to be the best while we selected a random state with a probability of 1-q0 (exploration).

Page 29: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

64

Pareto selection: We generally store a particular set of non-dominated solutions in an

archive and we mainly update this set which mainly represents Pareto front while performing

the optimization search. We try to compare the solutions which we acquired now with the

non-dominated solutions present in Pareto archive for every iteration and we finally add the

non dominated ones to the set archive while we remove the dominated ones .Sometimes in

order to keep the size of the particular set archive in reasonable amount we try to delete non

dominated solutions. We try to delete the solutions which are pertained to vast populated

areas in order to maintain the set diversity which is the prerequisite of objective genetic

algorithms.

ACO

algorithms

Features

AS This is the first ACO algorithm

All the solutions of the trail belonging to this apply updation to

pheromone.

MMAS

Here only the best-so-far or iteration-best solutions of trail were

accolade.

We can apply here minimum and maximum trails of pheromone.

ACS

We try to build solutions of trail by using pseudorandom proportional

rule.

Best-so -far solutions of trail possess both pheromone evaporation and

reward.

Here we apply an updating rule called local pheromone updating rule.

Table 3.2: Different characteristics of the ACO algorithms

3.6 Particle Swarm Optimization Algorithms

Particle Swarm Optimization (PSO) is a powerful optimization algorithm, introduced

by Kennedy and Eberhart in 1995 [70]. PSO searches the optimum of a task, termed fitness

task, following rules impressed by the behavior of flocks of birds searching for food. As a

population based mostly meta-heuristic, PSO has recently gained a lot of and a lot of

popularity attributable to its robustness, effectiveness, and ease. Regardless of the decisions

Page 30: CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS FOR ...shodhganga.inflibnet.ac.in/bitstream/10603/8273/24/13_chapter 3.pdf · 36 CHAPTER 3 LITERATURE SURVEY: METAHEURISTIC METHODS

65

of the algorithm structure, parameters, etc., and despite sensible convergence properties, PSO

is still an iterative stochastic search process, which, depending on problem hardness, may

require a large number of particle updates and fitness evaluations. The detail of the PSO is

exploited further in chapter 7.

3.7 Chapter Summary

In this chapter we presented overview of various schedulers, metaheuristic methods such as

GA, ACO, and PSO. Next chapter presents a detailed design of a genetic algorithm for task

scheduling problem in cloud computing environment.


Recommended