https://github.com/xoolive/ant-conflict
ACO for aircraft conflict resolution
https://github.com/xoolive/ant-conflict
Last synced: over 1 year ago
JSON representation
ACO for aircraft conflict resolution
- Host: GitHub
- URL: https://github.com/xoolive/ant-conflict
- Owner: xoolive
- License: mit
- Created: 2014-01-03T00:47:07.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2018-05-20T21:55:38.000Z (about 8 years ago)
- Last Synced: 2025-01-22T00:49:34.762Z (over 1 year ago)
- Language: OCaml
- Homepage:
- Size: 8.79 KB
- Stars: 0
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: license.txt
Awesome Lists containing this project
README
ant-conflict
------------
This project is a quick proof of concept: ant colony optimisation is a valid
method for solving aircraft conflicts.
### The problem
The problem that is to be solved consists of several aircraft placed on a circle
and heading towards the centre of this circle. They are all going to conflict
before reaching the centre: they will become too close to each other.
Air traffic controllers are in charge of avoiding this kind of situations; they
can be assisted by software to reroute aircraft on a safe flight configuration.
Aircraft conflict solving problem is a difficult problem, and it can be very
hard to explore all possible combinations, find a non-conflicting route for each
aircraft, and minimise the flight delay. Metaheuristics are methods inspired by
nature which, under certain conditions, converge towards an optimum.
Genetic algorithms are commonly used for this problem; however, ant colony
optimisation is a possible alternative.
You can read more about Ant colony optimisation
[here](http://en.wikipedia.org/wiki/Ant_colony_optimization_algorithms) and
about Aircraft conflict resolution on many references pointed by your favourite
search engine.
### History
I wrote the code in OCaml as part of my Master's thesis graduation requirements.
I wrote it under a modern Unix environment with OCaml and relied on the popular
Unix tool ```gnuplot``` for plotting the trajectories as they are computed.
That was 2006.
Today, I did some cleaning in the code in order to publish it. The code
is published as is, with no guarantee whatsoever.
Feel free to copy all that may be of any use to you.