110 likes | 273 Vues
Population-based metaheuristics. Nature-inspired Initialize a population A new population of solutions is generated Integrate the new population into the current one using one these methods – by replacement which is a selection process from the new and current solutions
E N D
Population-based metaheuristics • Nature-inspired • Initialize a population • A new population of solutions is generated • Integrate the new population into the current one using one these methods – by replacement which is a selection process from the new and current solutions • Evolutionary Algorithms – genetic algorithm • Estimation of distribution algorithm (EDA) • Scatter search • Evolutionary programming- genetic programming • Swarm Intelligence • Ant colony • Particle swarm optimization (PSO) • Bee colony • Artificial Immune system AIS • Continue until a stopping criteria is reached • The generation and replacement process could be memoryless or some search memory is used
Bee Colony Optimization • Job shop scheduling • Lowering makespan is equivalent to the profitability of a food source in terms of distance and sweetness of nectar • Maintain a colony of bees (N solutions) where a bee will traverse a potential disjunctive arc (machine schedule) • The foragers (n out of N) must visit every node once from the start to the sink • Once a feasible solution is found they will return to perform the waggle dance to advertise their finds (evaluate the objective function and rank the best to the worst) • The elite solutions are kept which are then followed by other bees • The mating process maintains healthy numbers of the reproductive queen, male drones, (to generate new bees- solutions), non reproductive female workers (unemployed foragers -scouts and onlookers, and the employed foragers) and, the new born broods.
Artificial Immune system • Mimics biological immune system • Immune system is adaptive, parallel, self-organized • Representations: components antigens, antibodies, cells, and molecules • Affinity: interactions between system components and with the environment. Represented as a similarity or dissimilarity index by using the distance measure • Adaptation: Procedures that govern the system • Population based AIS – clonal and natural selection theory • Immune system stimulated by antigens • Network based – immune network and danger theory • Immune system stimulated by antigens and by other parts of the network
AIS – Clonal theory • Antibody Solution • Affinity Objfnc • Antigen Optimization problem • Cloning Reproduction of solutions • Somatic mutation multiple mutation of the solution • Affinity maturation Mutation and selection of best solution • Receptor editing Diversification
Clonal Selection theory • For Immune system response to infection • Based on the concept of cloning and affinity maturation • B and T lymphocytes are selected to destroy the antigens invading the body • When an antigen enters the body, the B cells that best bind with the antigens proliferate by cloning. The B cells clone a specific type of antibody • The strength of binding is dependent on how well (closely) the paratope on the antibody bind with the epitope of the antigen. This property is called affinity • A high rate of somatic mutation is applied to the cloned cell to promote genetic diversity • The selection pressure ensures that only cells with higher affinity will survive
Clonal Selection theory in Optimization • Antibody and antigens are represented by a string of attributes and are binary, integer or real valued • Their matching is performed based on distance metric Euclidean, Manhattan or Hamming • Generate a population of N antibodies randomly. Select n from N based on a selection criteria and clone and mutate to construct new candidate population of antibodies • The number of clones Ncgenerated is proportional to their affinities • The mutation rate is inversely proportional to their affinities • Receptor editing leads to extreme mutation, which results in diversification • Evaluate the cloned antibodies • Replace the worst members of the n with the best from the above process
Timetabling Summary • Timetabling with resource constraints • Each job uses only one type of tool • No precedence constraints • R identical units of the tool are available • Rj units needed by each job j • pj = 1 for all j • Timetabling with tooling constraints • Different types of tools but only 1 unit (quantity) of each type of tool • pj = 1 for all j • Problem equivalent to graph coloring heuristic • No cost involved • No precedence relationship • With minimizing timetabling costs • pj = 1 for all j • No precedence relationship • Everything same as above but pj is different – more in workforce scheduling • Timetabling with both tooling and resource constraints • Different types of tools, multiple quantities, pj is different, and there is a precedence constraint • Project scheduling
Project-Scheduling with Resource Constraints • Chapter 4 • Each job requires a given amount of resource • If jobs overlap then at any time the demand for a given resource should not exceed the total amount available • Objfnc: Minimize makespan • Let N be the number of different type of resources • Wlj denote the amount job j needs of resource l • Let Wl be the total amount of resource available • Upper bound on makespan H =
Project-Scheduling with Resource Constraints • The integer program is NP Hard when the number of jobs, and resources grow in size • Hence, a combination of heuristics are needed for different processing times • Both FF and FFD can be adapted to solve this problem if pj = 1 for all j • Also considering preemptions can improve the solution • Job interruptions
Project-Scheduling with Resource Constraints • Precedence constraints • Machine sequences for each job • Tooling constraints • Resource constraints – workforce • Objfnc: minimize makespan • One possible solution • Start with shifting bottleneck and use only those sequences for lateness calculation in which the precedence constraint is satisfied on each machine. • For each interval [t-1, t] check feasibility using the tooling constraint and resource constraint. • Resequence and check feasibility again. • If pj = 1 for all j then use FFD to create an initial set of bins [t-1,t] and identify the jobs in those bins • Check for tooling conflicts • Shift jobs between bins to avoid tool conflicts. • Assign the jobs to the machines in each bin while checking for precedence constraints
Timetabling in Sports • Chapter 10