public class ant
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private double |
alpha |
private java.util.List<flight> |
antFlights |
private int |
antID |
private double |
beta |
private double |
exTh |
private double |
exThRandom |
private java.lang.Boolean |
finished |
private java.util.List<flight> |
flights |
private double[][] |
heuristic |
private int[] |
nodesFlights |
private java.util.List<java.util.List<flight>> |
pairings |
private double[][] |
trail |
Constructor and Description |
---|
ant(int ID,
double alpha,
double beta,
double exTh,
java.util.List<flight> flights,
double[][] trail,
double[][] heuristic)
Constructor
|
Modifier and Type | Method and Description |
---|---|
double |
calculatePairingCost(java.util.List<flight> pairing)
Function to calculate pairing cost
|
java.lang.Boolean |
checkVisitedNodes()
Function that checks whether all flights have been selected for the problem
|
private int |
computeTotalProbability(int presentFlightID,
java.util.List<flight> remainingFlights)
* Choose a flight based on its computated probability.
|
int |
getAntID()
Getter to return the ID of the agent
|
private java.util.List<flight> |
getConstrainedFlights(flight presentFlight,
java.util.List<flight> remainingFlights,
java.util.List<flight> actualPairing)
Return a list that contains all the remaining flights to choose that comply with all
problem constrains.
|
int |
getEarliestFlight(java.util.List<flight> flights)
Getter to return the ID of the earliest flight to depart
|
java.util.List<java.util.List<flight>> |
getPairings()
Getter to return the pairings constructed by the agent
|
java.util.List<flight> |
getPendingFlights()
Getter to return flights that have not been selected yet for the problem
|
void |
init()
Init function for the agent
|
java.lang.Boolean |
isFinished()
Function to check whether an agent has finished its work
|
void |
reboot(double[][] newTrail)
Restart the ant solution containers
|
private int |
transitionState(int presentFlightID,
java.util.List<flight> remainingFlights)
Choose a flight based on the pheromone trail between the present flight
and the next one.
|
private int antID
private double alpha
private double beta
private double exTh
private double exThRandom
private java.util.List<flight> flights
private int[] nodesFlights
private java.util.List<flight> antFlights
private double[][] trail
private double[][] heuristic
private java.util.List<java.util.List<flight>> pairings
private java.lang.Boolean finished
public ant(int ID, double alpha, double beta, double exTh, java.util.List<flight> flights, double[][] trail, double[][] heuristic)
ID:
- Agent IDalpha:
- Pheromone modifierbeta:
- Heuristic modifierexTh:
- Transition State function control parameterflights:
- Number of flightstrail:
- Pheromone trails for arcs in the problemheuristic:
- Heuristic values for arcs in the problempublic void init()
public void reboot(double[][] newTrail)
newTrail:
- Matrix containing updated pheromone valuesprivate int transitionState(int presentFlightID, java.util.List<flight> remainingFlights)
presentFlightID:
- Present flight IDremainingFlights:
- List containing all the remaining flightsprivate int computeTotalProbability(int presentFlightID, java.util.List<flight> remainingFlights)
presentFlightID:
- Represents the node on which the ant isremainingFlights:
- List containing all the remaining flightsprivate java.util.List<flight> getConstrainedFlights(flight presentFlight, java.util.List<flight> remainingFlights, java.util.List<flight> actualPairing)
presentFlight:
- Present selected FlightremainingFlights:
- A list containing all the remaining flight to chooseactualPairing:
- Pairing being constructedpublic java.util.List<java.util.List<flight>> getPairings()
public java.lang.Boolean checkVisitedNodes()
public int getEarliestFlight(java.util.List<flight> flights)
flights:
- List of fligthspublic double calculatePairingCost(java.util.List<flight> pairing)
pairing:
- The pairing that will be analyzedpublic java.util.List<flight> getPendingFlights()
public java.lang.Boolean isFinished()
public int getAntID()