solver  1.0
Classes | Typedefs | Enumerations
DataStructures.h File Reference

Various data structures used by the heuristic. More...

#include <vector>
#include <unordered_map>
#include "RoboticLine.h"
#include "Shared/Utils.h"
#include "Shared/Exceptions.h"
+ Include dependency graph for DataStructures.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Edge
 A graph edge in the distance graph. More...
 
struct  Graph
 A graph in which random alternatives will be searched for. More...
 
struct  HamiltonianCircuit< T >
 Closed path through locations or static activities including an order of operations, i.e. alternative. More...
 
struct  ShortestCircuit
 Hamiltonian circuit through static activities and the fixed locations. More...
 
struct  CircuitRecord
 Shortest closed path through locations. More...
 
struct  CircuitTuple
 A partially fixed problem, i.e. tuple. More...
 
struct  OptimalTiming
 Obtained timing for a partial problem. More...
 
struct  CollisionResolution
 The structure stores how to resolve one collision between robots. More...
 
struct  ModeSwitchInfo
 Records a potential energy impact if a power saving mode of a robot is switched to another one. More...
 
struct  ActivityModeInfo
 Structure encapsulates the time and energy properties of an activity with its selected mode (a movement or location). More...
 
class  TabuList
 A short-term memory, containing a list of forbidden moves, that mitigates the risk of cycling. More...
 
struct  TabuList::Element
 An element of the tabu list. More...
 
class  MovingAverage< T >
 The class encapsulating the calculation of the moving average. More...
 
struct  std::hash< ShortestCircuit >
 Template specialization of the hash for the ShortestCircuit data-structure. More...
 

Typedefs

using PrecalculatedCircuits = std::unordered_map< ShortestCircuit, HamiltonianCircuit< Location >>
 Mapping of ShortestCircuit to the related shortest closed path through locations.
 

Enumerations

enum  Algo { LP_INITIAL_PROBLEM = 0, POWER_MODE_HEURISTIC = 1, LOCATION_CHANGE_HEURISTIC = 2, PATH_CHANGE = 4 }
 Defining constants for different states of the heuristic.
 

Detailed Description

Various data structures used by the heuristic.

Author
Libor Bukata

Definition in file DataStructures.h.