Optimization Eniyileme
Optimization
In mathematics, statistics, empirical sciences computer science, or management science Mathematical optimization (alternatively optimization or mathematical programming) is the selection of a best element (with regard to some criteria) from some set of available alternatives. (wiki)
Uygun alternatifler içerisinde en iyiyi seçme işlemi.
Minimum ve Maksimum
optimization includes finding "best available" values of some objective function. Genelde, bir fonksiyonun alabileceği en küçük veya en büyük değer araştırılır. min (x2+1), x ∈ R için 1’dir. arg min x2+1, x ∈ (-∞,-1], amaç fonksiyonu x2+1’i, x girdisinin, -∞ ile -1 aralığında max yapan değer: x= -1. Fonksiyonun ürettiği en küçük değer değil.
Heuristics Sezgi
In computer science, artificial intelligence, and mathematical optimization, a heuristic is a technique designed for solving a problem more quickly when classic methods are too slow, or for finding an approximate solution when classic methods fail to find any exact solution. (wiki)
Approximation Yaklaşım
An approximation is a representation of something that is not exact, but still close enough to be useful. (wiki)
TSP Exact Algorithms – Kesin Algoritmalar • The most direct solution would be to try all permutations (ordered combinations)
and see which one is cheapest (using brute force search). the factorial of the number of cities, so this solution becomes impractical even for only 20 cities.
(http://en.wikipedia.org/wiki/Travelling_salesman_problem)
• Various branch-and-bound algorithms, which can be used to process TSPs containing 40–60 cities. (wiki)
• Progressive improvement algorithms which use techniques reminiscent of linear programming. Works well for up to 200 cities. (wiki)
• Implementations of branch-and-bound and problem-specific cut generation (branch-and-cut); this is the method of choice for solving large instances. This approach holds the current record, solving an instance with 85,900 cities, see Applegate et al. (2006). (wiki) http://en.wikipedia.org/wiki/Concorde_TSP_Solver
Solving TSP Heuristics and Approximation Algorithms
Heuristics : Nearest Neighbor, Christofides algorithm, K-opt, Lin-Kernighan Randomized Improvement: Genetic Algorithms Ant Colony Optimization (ACO) GA + 2-opt, …
Metaheuristic Metasezgi
In computer science, metaheuristic designates a computational method that optimizes a problem by iteratively trying to improve a candidate solution with regard to a given measure of quality. Many metaheuristics implement some form of stochastic optimization. (wiki) Metaheuristics are used for combinatorial optimization in which an optimal solution is sought over a discrete search-space. An example problem is the travelling salesman problem where the search-space of candidate solutions grows more than exponentially as the size of the problem increases, which makes an exhaustive search for the optimal solution infeasible. (wiki)
Metasezgilerin Sınıflandırması wiki
Önemli Metasezgiler
• Simulated Annealing
• Genetic Algorithms
• Ant Colony Optimization
• Tabu Search
Katkılar – I wiki
1952: Robbins and Monro work on stochastic optimization methods. 1970: Kernighan and Lin propose a graph partitioning method, related to variable-depth search and prohibition-based (tabu) search. 1975: Holland proposes the genetic algorithm 1980: Smith describes genetic programming 1983: Kirkpatrick et al. propose simulated annealing 1986: Glover proposes tabu search, first mention of the term metaheuristic.
Katkılar – II wiki
1986: Farmer et al. work on the artificial immune system 1988: Koza registers his first patent on genetic programming 1992: Dorigo proposes the ant colony algorithm 1995: Kennedy and Eberhart propose particle swarm optimization 2004: Nakrani and Tovey propose bees optimization 2005: Karaboga proposes Artificial Bee Colony Algorithm (ABC) 2005: Duc-Truong Pham et al. proposed Bees Algorithms (BA)
2008: Yang introduces firefly algorithm