background preloader

Travelling salesman problem

Travelling salesman problem
The travelling salesman problem (TSP) asks the following question: Given a list of cities and the distances between each pair of cities, what is the shortest possible route that visits each city exactly once and returns to the origin city? It is an NP-hard problem in combinatorial optimization, important in operations research and theoretical computer science. Solution of a travelling salesman problem TSP is a special case of the travelling purchaser problem. In the theory of computational complexity, the decision version of the TSP (where, given a length L, the task is to decide whether the graph has any tour shorter than L) belongs to the class of NP-complete problems. The problem was first formulated in 1930 and is one of the most intensively studied problems in optimization. The TSP has several applications even in its purest formulation, such as planning, logistics, and the manufacture of microchips. History[edit] The origins of the travelling salesman problem are unclear. Richard M.

Knapsack problem Example of a one-dimensional (constraint) knapsack problem: which boxes should be chosen to maximize the amount of money while still keeping the overall weight under or equal to 15 kg? A multiple constrained problem could consider both the weight and volume of the boxes. (Answer: if any number of each box is available, then three yellow boxes and three grey boxes; if only the shown boxes are available, then all but the green box.) The knapsack problem or rucksack problem is a problem in combinatorial optimization: Given a set of items, each with a mass and a value, determine the number of each item to include in a collection so that the total weight is less than or equal to a given limit and the total value is as large as possible. The problem often arises in resource allocation where there are financial constraints and is studied in fields such as combinatorics, computer science, complexity theory, cryptography and applied mathematics. Applications[edit] Definition[edit] Let there be to .

Minimum spanning tree The only minimum spanning tree of a planar graph. Each edge is labeled with its weight, which here is roughly proportional to its length. One example would be a telecommunications company laying cable to a new neighborhood. If it is constrained to bury the cable only along certain paths, then there would be a graph representing which points are connected by those paths. Some of those paths might be more expensive, because they are longer, or require the cable to be buried deeper; these paths would be represented by edges with larger weights. Properties[edit] Possible multiplicity[edit] This figure shows there may be more than one minimum spanning tree in a graph. There may be several minimum spanning trees of the same weight having a minimum number of edges; in particular, if all the edge weights of a given graph are the same, then every spanning tree of that graph is minimum. Uniqueness[edit] If each edge has a distinct weight then there will be only one, unique minimum spanning tree.

Knapsack ants.svg - Wikipedia, the free encyclopedia Summary[edit] Knapsack problem resolved using ants. Ants discover a small drop of honey, they prefer to concentrate their resources on this drop instead of moving to sugar water, in larger quantity but less interesting for the colony. Author : DakeSoftware : Inkscape Licensing[edit] Click on a date/time to view the file as it appeared at that time. Reinforcement learning Reinforcement learning is an area of machine learning inspired by behaviorist psychology, concerned with how software agents ought to take actions in an environment so as to maximize some notion of cumulative reward. The problem, due to its generality, is studied in many other disciplines, such as game theory, control theory, operations research, information theory, simulation-based optimization, statistics, and genetic algorithms. In the operations research and control literature, the field where reinforcement learning methods are studied is called approximate dynamic programming. The problem has been studied in the theory of optimal control, though most studies there are concerned with existence of optimal solutions and their characterization, and not with the learning or approximation aspects. In economics and game theory, reinforcement learning may be used to explain how equilibrium may arise under bounded rationality. Introduction[edit] The rules are often stochastic. . to policy .

Artificial immune system In computer science, artificial immune systems (AIS) are a class of computationally intelligent systems inspired by the principles and processes of the vertebrate immune system. The algorithms typically exploit the immune system's characteristics of learning and memory to solve a problem. Definition[edit] The field of Artificial Immune Systems (AIS) is concerned with abstracting the structure and function of the immune system to computational systems, and investigating the application of these systems towards solving computational problems from mathematics, engineering, and information technology. AIS is a sub-field of Biologically-inspired computing, and Natural computation, with interests in Machine Learning and belonging to the broader field of Artificial Intelligence. Artificial Immune Systems (AIS) are adaptive systems, inspired by theoretical immunology and observed immune functions, principles and models, which are applied to problem solving.[1] History[edit] Techniques[edit] J.D.

Combinatorial optimization In applied mathematics and theoretical computer science, combinatorial optimization is a topic that consists of finding an optimal object from a finite set of objects.[1] In many such problems, exhaustive search is not feasible. It operates on the domain of those optimization problems, in which the set of feasible solutions is discrete or can be reduced to discrete, and in which the goal is to find the best solution. Some common problems involving combinatorial optimization are the traveling salesman problem ("TSP") and the minimum spanning tree problem ("MST"). Combinatorial optimization is a subset of mathematical optimization that is related to operations research, algorithm theory, and computational complexity theory. Applications[edit] Applications for combinatorial optimization include, but are not limited to: Methods[edit] For NP-complete discrete optimization problems, current research literature includes the following topics: Specific problems[edit] Further reading[edit] Source code

Aco branches.svg - Wikipedia, the free encyclopedia From Wikimedia Commons, the free media repository Français :Choix du plus court chemin par une colonie de fourmi Auteur : Johann Dréo (User:Nojhan) Date : 27 mai 2006 Notes : 1) la première fourmi trouve la source de nourriture (F), via un chemin quelconque (a), puis revient au nid (N) en laissant derrière elle une piste de phéromone (b). 2) les fourmis empruntent indifféremment les 4 chemins possibles, mais le renforcement de la piste rend plus attractif le chemin le plus court. 3) les fourmis empruntent le chemin le plus court, les portions longues des autres chemins voient la piste de phéromones s'évaporer. English:Shortest path find by an ant colony Author: Johann Dréo (User:Nojhan) Date: 27 may 2006 Русский:Поиск кратчайшего пути муравьиной колонией Автор: Johann Dréo (User:Nojhan) Дата: 27 мая 2006 Licensing[edit] File history Click on a date/time to view the file as it appeared at that time. You cannot overwrite this file. There are no pages that link to this file. File usage on other wikis

Dynamic programming In mathematics, computer science, economics, and bioinformatics, dynamic programming is a method for solving complex problems by breaking them down into simpler subproblems. It is applicable to problems exhibiting the properties of overlapping subproblems[1] and optimal substructure (described below). When applicable, the method takes far less time than naive methods that don't take advantage of the subproblem overlap (like depth-first search). The idea behind dynamic programming is quite simple. In general, to solve a given problem, we need to solve different parts of the problem (subproblems), then combine the solutions of the subproblems to reach an overall solution. Dynamic programming algorithms are used for optimization (for example, finding the shortest path between two points, or the fastest way to multiply many matrices). For example, let's say that you have to get from point A to point B as fast as possible, in a given city, during rush hour. History[edit] Overview[edit] Let . .

Firefly algorithm The firefly algorithm (FA) is a metaheuristic algorithm, inspired by the flashing behaviour of fireflies. The primary purpose for a firefly's flash is to act as a signal system to attract other fireflies. Xin-She Yang formulated this firefly algorithm by assuming:[1] All fireflies are unisexual, so that one firefly will be attracted to all other fireflies;Attractiveness is proportional to their brightness, and for any two fireflies, the less bright one will be attracted by (and thus move to) the brighter one; however, the brightness can decrease as their distance increases;If there are no fireflies brighter than a given firefly, it will move randomly. The brightness should be associated with the objective function. Algorithm description[edit] The pseudo code can be summarized as: Begin 1) Objective function: ; 2) Generate an initial population of fireflies ;. 3) Formulate light intensity so that it is associated with (for example, for maximization problems, or simply and is where The . See also[edit]

Automated planning and scheduling Automated planning and scheduling is a branch of artificial intelligence that concerns the realization of strategies or action sequences, typically for execution by intelligent agents, autonomous robots and unmanned vehicles. Unlike classical control and classification problems, the solutions are complex and must be discovered and optimized in multidimensional space. Planning is also related to decision theory. In known environments with available models, planning can be done offline. Solutions can be found and evaluated prior to execution. In dynamically unknown environments, the strategy often needs to be revised online. Overview[edit] Given a description of the possible initial states of the world, a description of the desired goals, and a description of a set of possible actions, the planning problem is to find a plan that is guaranteed (from any of the initial states) to generate a sequence of actions that leads to one of the goal states. Planning languages[edit] See also[edit] Lists

MASSIVE (software) MASSIVE (Multiple Agent Simulation System in Virtual Environment) is a high-end computer animation and artificial intelligence software package used for generating crowd-related visual effects for film and television. Massive is a software package developed by Stephen Regelous for the visual effects industry. Its flagship feature is the ability to quickly and easily create thousands (or up to millions with current advances in computer processing power) of agents that all act as individuals as opposed to content creators individually animating or programming the agents by hand. Through the use of fuzzy logic, the software enables every agent to respond individually to its surroundings, including other agents. These reactions affect the agent's behaviour, changing how they act by controlling pre-recorded animation clips, for example by blending between such clips, to create characters that move, act, and react realistically. Some significant examples include:

Nonlin Planning System The Nonlin hierarchical partial-order AI planning system, developed by Austin Tate at the University of Edinburgh, is available in a browsable and downloadable form here: or thanks to Aaron Sloman at the University of Birmingham for encouraging Austin to make it it run as it used to in a much earlier version of Poplog, so that it works in both Windows Poplog and Linux/Unix Poplog. Get a copy of the freely distributable version of Poplog at [PC/Windows version 15.5 is available locally here - note this version is only for a 32 bit Windows OS]. Unpack the files to a temporary location and run "SETUP.EXE". It may be best to allow the installer to place the files in the default sugegsted position to avoid any problems with spaces in directory names. You can then run Poplog POP-11 in a Window via the "Pop-11" shortcut created. Documentation UM Nonlin

Ant colony optimization algorithms Ant behavior was the inspiration for the metaheuristic optimization technique This algorithm is a member of the ant colony algorithms family, in swarm intelligence methods, and it constitutes some metaheuristic optimizations. Initially proposed by Marco Dorigo in 1992 in his PhD thesis,[1][2] the first algorithm was aiming to search for an optimal path in a graph, based on the behavior of ants seeking a path between their colony and a source of food. The original idea has since diversified to solve a wider class of numerical problems, and as a result, several problems have emerged, drawing on various aspects of the behavior of ants. Overview[edit] Summary[edit] In the natural world, ants (initially) wander randomly, and upon finding food return to their colony while laying down pheromone trails. Over time, however, the pheromone trail starts to evaporate, thus reducing its attractive strength. Common extensions[edit] Here are some of most popular variations of ACO Algorithms. to state where to

Related: