GEGELATI
|
Abstract Class in charge of managing maps to give a unique ID for vertex and a program of a TPGGraph. More...
#include <tpgAbstractEngine.h>
Public Member Functions | |
bool | findProgramID (const Program::Program &prog, uint64_t &id) |
Method for finding the unique identifier associated to a given Program. More... | |
uint64_t | findVertexID (const TPG::TPGVertex &vertex) |
Method for finding the unique identifier associated to a given TPGVertex. More... | |
Protected Member Functions | |
TPGAbstractEngine (const TPG::TPGGraph &tpg) | |
Constructor for the abstract engine. More... | |
Protected Attributes | |
const TPG::TPGGraph & | tpg |
Reference to the TPGGraph whose content will be used to fill the maps. | |
std::map< const Program::Program *, uint64_t > | programID |
Map associating pointers to Program to an integer ID. More... | |
uint64_t | nbPrograms = 0 |
Integer number used to associate a unique integer identifier to each new Program. More... | |
std::map< const TPG::TPGVertex *, uint64_t > | vertexID |
Map associating pointers to TPGVertex to an integer ID. More... | |
uint64_t | nbVertex = 0 |
Integer number used during export to associate a unique integer identifier to each new TPGTeam. More... | |
uint64_t | nbActions |
Integer number used during export to associate a unique integer identifier to each TPGAction. More... | |
Abstract Class in charge of managing maps to give a unique ID for vertex and a program of a TPGGraph.
|
inlineprotected |
Constructor for the abstract engine.
[in] | tpg | const reference to the graph whose content will be used to fill the maps of IDs (vertex and program). |
bool TPG::TPGAbstractEngine::findProgramID | ( | const Program::Program & | prog, |
uint64_t & | id | ||
) |
Method for finding the unique identifier associated to a given Program.
Using the programID map, this method retrieves the integer identifier associated to the given Program. If no identifier exists for this Program, a new one is created automatically and saved into the map.
[in] | prog | a const reference to the Program whose integer identifier is retrieved. |
[out] | id | a pointer to an integer number, used to return the found identifier. |
Copyright or © or Copr. IETR/INSA - Rennes (2021) :
Thomas Bourgoin tbour.nosp@m.goi@.nosp@m.insa-.nosp@m.renn.nosp@m.es.fr (2021)
GEGELATI is an open-source reinforcement learning framework for training artificial intelligence based on Tangled Program Graphs (TPGs).
This software is governed by the CeCILL-C license under French law and abiding by the rules of distribution of free software. You can use, modify and/ or redistribute the software under the terms of the CeCILL-C license as circulated by CEA, CNRS and INRIA at the following URL "http://www.cecill.info".
As a counterpart to the access to the source code and rights to copy, modify and redistribute granted by the license, users are provided only with a limited warranty and the software's author, the holder of the economic rights, and the successive licensors have only limited liability.
In this respect, the user's attention is drawn to the risks associated with loading, using, modifying and/or developing or reproducing the software by the user in light of its specific status of free software, that may mean that it is complicated to manipulate, and that also therefore means that it is reserved for developers and experienced professionals having in-depth computer knowledge. Users are therefore encouraged to load and test the software's suitability as regards their requirements in conditions enabling the security of their systems and/or data to be ensured and, more generally, to use and operate it in the same conditions as regards security.
The fact that you are presently reading this means that you have had knowledge of the CeCILL-C license and that you accept its terms.
uint64_t TPG::TPGAbstractEngine::findVertexID | ( | const TPG::TPGVertex & | vertex | ) |
Method for finding the unique identifier associated to a given TPGVertex.
Using the vertexID map, this method returns the integer identifier associated to the given TPGVertex. If not identifier exists for this TPGVertex, a new one is created automatically and saved into the map.
[in] | vertex | a const reference to the TPGVertex whose integer identifier is retrieved. |
|
protected |
|
protected |
Integer number used to associate a unique integer identifier to each new Program.
In case the TPGAbstractEngine is used to export multiple TPGGraph, a Program that was already printed in previous export will keep its ID.
|
protected |
|
protected |
Map associating pointers to Program to an integer ID.
In case the TPGAbstractEngine is used to export multiple TPGGraph, this map is used to ensure that a given Program will always be associated to the same integer identifier in all exported files.
|
protected |
Map associating pointers to TPGVertex to an integer ID.
In case the TPGAbstractEngine is used to export multiple TPGGraph, this map is used to ensure that a given TPGVertex will always be associated to the same integer identifier in all exported files.