Merge remote-tracking branch 'origin/develop' into feature/setup

# Conflicts:
#	README.md
This commit is contained in:
Sven Czarnian
2021-09-03 23:39:42 +02:00
5 changed files with 141 additions and 0 deletions

View File

@@ -19,6 +19,46 @@ This component provides the server backend with the planning and optimization sy
It is designed as a python framework that can run on a webserver.
ZMQ based encryption and authentication methods are used to authenticate controllers.
## RHC-ACS-ASS Algorithm
Step 1: Initialization. Set up parameters for
the RHC, and set the current receding horizon k = 1.
Step 2: Find out all the M aircraft whose PLTs belong to
the kth receding horizon.
Step 3: Schedule the M aircraft in the kth receding horizon
by using an ACS.
Step 4: Assign the aircraft whose ALTs belong to kth scheduled window ω(k) to land on
the runway.
Step 5: Modify the PLT for those aircraft whose PLT belongs to ω(k) but the ALT does not belong to ω(k). The modification is to set their PLT to kTTI, making them belong to Ω(k + 1), such that they can be scheduled in the next receding horizon.
Step 6: Termination check. When all the aircraft have been assigned to land at the runway, the algorithm terminates. Otherwise, set k = k + 1 and go to Step 2 for the next receding horizon optimization.
In the preceding steps, Step 3 is the major process of the
algorithm. The flowchart is illustrated on the right side of Fig. 3,
and the details are given below.
Step 3.1: Schedule the M aircraft by the FCFS approach and
calculate the fitness value through (3). Calculate
the initial pheromone τ0 and set the pheromone for
each aircraft pair as τ0.
Step 3.2: For each ant, do the following.
a) Determine the first landing aircraft s and construct the whole landing sequence using the state transition rule as (5) and (6).
b) Perform the local pheromone updating as (9).
Step 3.3: Calculate the fitness of each ant and determine
the best solution. Moreover, the current best solution is compared with the historically best solution
to determine the historically best solution.
Step 3.4: Perform the global pheromone updating as (10).
# Additional libraries
* [ZeroMQ](https://github.com/zeromq) - GNU GPLv3