Giter Site home page Giter Site logo

computerwala / travelling-salesman-problem-using-bee-colony-optimization Goto Github PK

View Code? Open in Web Editor NEW
0.0 3.0 0.0 914 KB

Artificial Bee Colony (ABCO) algorithm is a nature inspired algorithm that was introduced by Karaboga for multi- model and multi-dimensional numeric problems. ABC algorithm gives good results for continuous optimization problems.

Jupyter Notebook 94.45% Python 5.55%

travelling-salesman-problem-using-bee-colony-optimization's Introduction

Bee Colony Optimization (BCO):

Artificial Bee Colony (ABCO) algorithm is a nature inspired algorithm that was introduced by Karaboga for multi- model and multi-dimensional numeric problems. ABC algorithm gives good results for continuous optimization problems. A set of honey bees, called swarm, can successfully accomplish tasks through social cooperation. In the ABC algorithm, there are three types of bees: employed bees, onlooker bees, and scout bees. The employed bees search food around the food source in their memory; meanwhile they share the information of these food sources to the onlooker bees. The onlooker bees tend to select good food sources from those found by the employed bees. The food source that has higher quality (fitness) will have a large chance to be selected by the onlooker bees than the one of lower quality. The scout bees are translated from a few employed bees, which abandon their food sources and search new ones.

Travelling Salesman Problem (TSP):

The Travelling Salesman Problem describes a salesman who must travel between N cities. The order in which he does so is something he does not care about, as long as he visits each once during his trip, and finishes where he was at first. Each city is connected to other close by cities, or nodes, by airplanes, or by road or railway. Each of those links between the cities has one or more weights (or the cost) attached. The cost describes how "difficult" it is to traverse this edge on the graph, and may be given, for example, by the cost of an airplane ticket or train ticket, or perhaps by the length of the edge, or time required to complete the traversal. The salesman wants to keep both the travel costs, as well as the distance he travels as low as possible. The Traveling Salesman Problem is typical of a large class of "hard" optimization problems that have intrigued mathematicians and computer scientists for years. Most important, it has applications in science and engineering. For example, in the manufacture of a circuit board, it is important to determine the best order in which a laser will drill thousands of holes. An efficient solution to this problem reduces production costs for the manufacturer. Various techniques have been used to solve TSP. In general, these techniques are classified into two broad categories: exact and approximation algorithms. Exact algorithms are methods which utilize mathematical models whereas approximation algorithms make use of certain heuristics and iterative improvements as the problem-solving process. Some instances in the exact methods category are Branch and Bound, Lagrangian Relaxation, Integer Linear Programming etc. The approximation algorithms can be further classified into two groups: constructive heuristics and improvement heuristics. Instances in constructive heuristics include Nearest Neighbourhood, Greedy Heuristics, Insertion Heuristics, Christofides Heuristics etc. Instances in improvement heuristic include k-opt, Lin-Kernighan Heuristics, Simulated Annealing, Tabu Search, Evolutionary Algorithms, Ant Colony Optimization, Bee System etc

BCO Model for TSP:

Various bee models have been attempted in different domains ranging from dynamic server allocation for internet hosting center, numerical function optimization, hex game playing program, job shop scheduling, to TSP. In Lucic and Teodorovic proposed a Bee System in tackling TSP. In their model, bees are expected to construct partial tours in every iteration. The position of hive will be reallocated to a new city after every iteration. Interaction among bees in their model is implemented in two ways: memory and waggle dance. Bees are able to memorize how many bees visited certain links in the past and are able to advertise partial tours to other hive mates. Upon initiating a new iteration, the solution is improved by 2-opt, 3-opt and modified 3-opt heuristics

travelling-salesman-problem-using-bee-colony-optimization's People

Contributors

computerwala avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.