GithubHelp home page GithubHelp logo

addejans / aco-jssp Goto Github PK

View Code? Open in Web Editor NEW
33.0 2.0 13.0 602 KB

Job Shop Scheduling Problem via Ant Colony Optimization

Python 100.00%
job-shop-scheduling-problem ant-colony-optimization heuristics optimization optimization-algorithms python

aco-jssp's Introduction

ACO-JSSP

Job Shop Scheduling Problem via Ant Colony Optimization

Introduction to Ant Colony Optimization

Combinatorial optimization problems naturally arise in the industrial world all the time. Often, having sufficient solutions to these problems can save companies millions of dollars. We know of many examples in which optimization problems arise; for example: bus scheduling, telecommunication network design, travelling, and vehicle routing problems. Perhaps the most famous combinatorial optimization problem is the travelling salesman problem (TSP). The TSP can be simply thought of as the problem of figuring out a tour of cities a salesman must travel (visiting each city exactly once) so that the total distance travelled is minimized.

With the evergrowing arise of combinatorial optimization problems and their intrinsic link to industrial problem, many researchers, mathematicians and computer scientists, have developed a plethora of algorithms to solve these problems. We now distinguish the two types of algorithms; complete and approximate. Complete algorithms are able to solve these problems in such a way that in the end, the optimal solution is given. However, since many of these problems are N P-hard the optimal solution may take a long time to obtain. This is the reason why there are approximate algorithms. Approximate algorithms are designed, as expected, to give approximately the optimal solution. The great thing about using an approximate algorithm is that they can obtain good results in a relatively short amount of time.

Ant colony optimization (ACO) algorithms are some of the most recent class of algorithms designed to approximate combinatorial optimization problems. The algorithm behaves similar to real ants and their biological abilities to find the nearest food source and bring it back to their nest. The main source of communication between ants is the depositing of chemically produced pheromone onto their paths. It is with this key idea that Marco Dorigo and colleagues were inspired to create this new class of algorithms.

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.