same time optimizing a cost function, such as the sum of the path lengths of all agents. It is a generalization of pathfinding. Many multi-agent pathfinding algorithms are generalized from A*, or based on reduction to other well studied problems such as integer linear programming. However, such algorithms are typically incomplete; in other words, not proven to produce a solution within polynomial time. A different category of algorithms sacrifice optimality for performance by either making use of known navigation patterns (such as traffic flow) or the topology of the problem space. See also Motion planning Any-angle path planning References External links https://melikpehlivanov.github.io/AlgorithmVisualizer http://sourceforge.net/projects/argorha StraightEdge Open Source Java 2D path finding (using A*) and lighting project. Includes applet demos. python-pathfinding Open Source Python 2D path finding (using Dijkstra's Algorithm) and lighting project. Daedalus Lib Open Source. Daedalus Lib manages fully dynamic triangulated 2D environment modeling and pathfinding through A* and funnel algorithms. Game artificial intelligence Routing algorithms Edsger W. Dijkstra Scoutcraft