waqas haider bangyal 1. evolutionary computing algorithms are very common and used by many...

50
Data Mining Waqas Haider Bangyal 1

Upload: octavia-phillips

Post on 29-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Heap Sort Example

Data Mining

Waqas Haider Bangyal1

Evolutionary computing algorithms are very common and used by many researchers in their research to solve the optimization problems. Steps in Any Evolutionary AlgorithmTentative Solution Representation Random Solution Initialization

Fitness Estimation

Operators

Termination Condition

Solution RepresentationThe representation of an individual is the method to construct and evaluate the solution for a desired problem. This can also be termed as the data structure used to define an individual.4Solution InitializationInitialization plays an important role in success of an evolutionary algorithm.

A poor initial population can cause any good algorithm to prematurely converge to a suboptimal solution.

On the other hand a good initialization leads to genetic diversity in the initial population making most of the algorithms work sufficiently well5Solution FitnessFitness is the performance of an individual corresponding to the problem it is aimed to solve.

It is compliance of the structure to the task it is required to solve based on a user specified criteria.

It tells which elements or the regions of the search space are good. 6Solution Fitness (Contd)The fitness measure steers the evolutionary process towards better approximate solutions to the problem.

Fitness of individuals in a population can be measured in many ways.

For example, it can be a measure of error between the original and desired output of a solution or accuracy in case of classification

7OperatorsThe evolutionary Computing algorithm have the different operators that are applied on individuals selected for that operation

The most common operators used for evolution of GA are crossover, mutation and reproduction

The most common operators used in PSO are position and velocity8Termination ConditionThe termination condition determines when this iterative process needs to be stopped.

A pre-determined number of generations or time has elapsedA satisfactory solution has been achievedNo improvement in solution quality has taken place for a pre-determined number of generations

9Termination Condition1-Time:in seconds, in minutes and may be in hours according to the problem that you have it.2-Number of generations: in hundreds, in thousands may be in millions according to the problem you have it.3-convergence: when 95% of populations have the same fitness value we can say the convergence started to appear and the user can stop its genetic program to take the result.

10

Genetic AlgorithmClasses of Search TechniquesSearch TechniqesCalculus Base TechniqesGuided random search techniqesEnumerative TechniquesBFSDFSDynamic ProgrammingTabu SearchHill ClimbingSimulated AnealingEvolutionary AlgorithmsGenetic ProgrammingGenetic AlgorithmsFibonacciSortGenetic AlgorithmGenetic Algorithms (GA) apply an evolutionary approach to inductive learning.

GA has been successfully applied to problems that are difficult to solve using conventional techniques such as scheduling problems, traveling salesperson problem, network routing problems and financial marketing.Genetic AlgorithmsAn algorithm is a set of instructions that is repeated to solve a problem.A genetic algorithm conceptually follows steps inspired by the biological processes of evolution.Genetic Algorithms follow the idea of SURVIVAL OF THE FITTEST- Better and better solutions evolve from previous generations until a near optimal solution is obtained.Genetic AlgorithmsA genetic algorithm is an iterative procedure that represents its candidate solutions as strings of genes called chromosomes. Genetic Algorithms are often used to improve the performance of other AI methods such as expert systems or neural networks.The method learns by producing offspring that are better and better as measured by a fitness function, which is a measure of the objective to be obtained (maximum or minimum).

What is GAGenetic algorithms are implemented as a computer simulation in which a population of abstract representations (called chromosomes or the genotype or the genome) of candidate solutions (called individuals, creatures, or phenotypes) to an optimization problem evolves toward better solutions.

Traditionally, solutions are represented in binary as strings of 0s and 1s, but other encodings are also possible. 16Simple GA{ initialize population; evaluate population; while Termination Criteria Not Satisfied {select parents for reproduction;perform crossover and mutation;repair(); evaluate population; }}

Every loop called generationAlgorithmBEGIN Generate initial population; Compute fitness of each individual; REPEAT /* New generation /* FOR population_size / 2 DO Select two parents from old generation; /* biased to the fitter ones */ Recombine parents for two offspring; Compute fitness of offspring; Insert offspring in new generation END FOR UNTIL population has convergedENDGenetic learning algorithmStep 1:Initialize a population P of n elements as a potential solution.

Step 2:Until a specified termination condition is satisfied:2a:Use a fitness function to evaluate each element of the current solution. If an element passes the fitness criteria, it remains in P.2b:The population now contains m elements (m