GEGELATI

Loading...
Searching...
No Matches
Public Attributes | Static Public Attributes | List of all members
Mutator::TPGParameters Struct Reference

Structure holding all parameters affecting mutations of TPGGraph. More...

`#include <mutationParameters.h>`

## Public Attributes
size_t | nbRoots = 100
| Number of root TPGTeams to maintain when populating the TPGGraph.
double | ratioTeamsOverActions = 1.0
size_t | maxInitOutgoingEdges = 3
double | pChangeActionClass = 0.1
double | pActionEdgeDeletion = 0.7
| Probability of deleting an outgoing TPGEdge of a TPGTeam.
double | pActionEdgeAddition = 0.7
| Probability of adding an outgoing TPGEdge to a TPGTeam.
double | pMutateActionProgram = 0.1
| Probablity of mutation the program on the action edge.
double | pSwapActionProgram = 0.1
size_t | nbActionEdgeInit = 1
| Init each team with one edge per action.
size_t | maxOutgoingEdges = 5
| Maximum number of outgoing edge during TPGGraph mutations.
double | pEdgeDeletion = 0.7
| Probability of deleting an outgoing TPGEdge of a TPGTeam.
double | pEdgeAddition = 0.7
| Probability of adding an outgoing TPGEdge to a TPGTeam.
double | pProgramMutation = 0.2
| Probability of mutating the Program of an outgoing TPGEdge.
double | probaContextOverActionProgram = 0.5
bool | forceProgramBehaviorChangeOnMutation = false
double | pEdgeDestinationChange = 0.1
| Probability of changing the destination of a TPGEdge.
double | pEdgeDestinationIsAction = 0.5
| Probability of the new destination of a TPGEdge to be a TPGAction.
double | pCrossAgents = 0.0
double | pCrossPrograms = 0.0
bool | useActionProgram = false
bool | useMultiActionProgram = false
bool | teamAccessAllActions = true

## Static Public Attributes
static const std::string | nbRootsComment
| JSon comment.
static const std::string | ratioTeamsOverActionsComment
| JSon comment.
static const std::string | maxInitOutgoingEdgesComment
| JSon comment.
static const std::string | pChangeActionClassComment
| JSon comment.
static const std::string | pActionEdgeDeletionComment
| JSon comment.
static const std::string | pActionEdgeAdditionComment
| JSon comment.
static const std::string | pMutateActionProgramComment
| JSon comment.
static const std::string | pSwapActionProgramComment
| JSon comment.
static const std::string | nbActionEdgeInitComment
| JSon comment.
static const std::string | maxOutgoingEdgesComment
| JSon comment.
static const std::string | pEdgeDeletionComment
| JSon comment.
static const std::string | pEdgeAdditionComment
| JSon comment.
static const std::string | pProgramMutationComment
| JSon comment.
static const std::string | probaContextOverActionProgramComment
| JSon comment.
static const std::string | forceProgramBehaviorChangeOnMutationComment
| JSon comment.
static const std::string | pEdgeDestinationChangeComment
| JSon comment.
static const std::string | pEdgeDestinationIsActionComment
| JSon comment.
static const std::string | pCrossAgentsComment
| JSon comment.
static const std::string | pCrossProgramsComment
| JSon comment.
static const std::string | useActionProgramComment
| JSon comment.
static const std::string | useMultiActionProgramComment
| JSon comment.
static const std::string | teamAccessAllActionsComment
| JSon comment.

## Detailed Description

Structure holding all parameters affecting mutations of TPGGraph.

## Member Data Documentation

## ◆ forceProgramBehaviorChangeOnMutation

bool Mutator::TPGParameters::forceProgramBehaviorChangeOnMutation = false

When a Program is mutated, makes sure its behavior is no longer the same. (This possibility does not exists in Kelly's work, where only the archive is used for this purpose, which is far from 100% accurate.)

## ◆ forceProgramBehaviorChangeOnMutationComment

const std::string Mutator::TPGParameters::forceProgramBehaviorChangeOnMutationComment
| inlinestatic

Initial value:
=
"// When a Program is mutated, makes sure its behavior is no "
"longer the same.\n"
"// \"forceProgramBehaviorChangeOnMutation\" : false, // "
"Default value"

JSon comment.

## ◆ maxInitOutgoingEdges

size_t Mutator::TPGParameters::maxInitOutgoingEdges = 3

Maximum number of TPGEdge connected to each TPGTeam of the TPGGraph when initialized.

## ◆ maxInitOutgoingEdgesComment

const std::string Mutator::TPGParameters::maxInitOutgoingEdgesComment
| inlinestatic

Initial value:
=
"// Maximum number of TPGEdge connected to each TPGTeam of the "
"TPGGraph when\n"
"// initialized.\n"
"// \"maxInitOutgoingEdges\" : 3, // Default value"

JSon comment.

## ◆ maxOutgoingEdgesComment

const std::string Mutator::TPGParameters::maxOutgoingEdgesComment
| inlinestatic

Initial value:
=
"// Maximum number of outgoing edge during TPGGraph mutations.\n"
"// \"maxOutgoingEdges\" : 5, // Default value"

JSon comment.

## ◆ nbActionEdgeInitComment

const std::string Mutator::TPGParameters::nbActionEdgeInitComment
| inlinestatic

Initial value:
=
"// Number of edge per action vertex at initialisation\n"
"// \"nbActionEdgeInit\" : 1, // Default value"

JSon comment.

## ◆ nbRootsComment

const std::string Mutator::TPGParameters::nbRootsComment
| inlinestatic

Initial value:
=
"// Number of root TPGTeams to maintain when populating the "
"TPGGraph\n"
"// \"nbRoots\" : 100, // Default value"

JSon comment.

## ◆ pActionEdgeAdditionComment

const std::string Mutator::TPGParameters::pActionEdgeAdditionComment
| inlinestatic

Initial value:
=
"// Probability of adding an outgoing Action Edge to a Action.\n"
"// \"pActionEdgeAddition\" : 0.7, // Default value"

JSon comment.

## ◆ pActionEdgeDeletionComment

const std::string Mutator::TPGParameters::pActionEdgeDeletionComment
| inlinestatic

Initial value:
=
"// Probability of deleting an outgoing ActionEdge of a Action.\n"
"// \"pActionEdgeDeletion\" : 0.7, // Default value"

JSon comment.

## ◆ pChangeActionClass

double Mutator::TPGParameters::pChangeActionClass = 0.1

Probablity of changing the action edge by any other action edge in the graph

## ◆ pChangeActionClassComment

const std::string Mutator::TPGParameters::pChangeActionClassComment
| inlinestatic

Initial value:
=
"// Probablity of changing the action edge by any other action "
"edge in the graph\n"
"// \"pChangeActionClass\" : 0.1, // Default value"

JSon comment.

## ◆ pCrossAgents

double Mutator::TPGParameters::pCrossAgents = 0.0

Probability of doing a crossover with two MAPLE agents (edge crossover by default).

## ◆ pCrossAgentsComment

const std::string Mutator::TPGParameters::pCrossAgentsComment
| inlinestatic

Initial value:
=
"// Probability of doing a crossover with two MAPLE agents (edge "
"crossover by default).\n"
"// \"pCrossAgents\" : 0.0, // Default value"

JSon comment.

## ◆ pCrossPrograms

double Mutator::TPGParameters::pCrossPrograms = 0.0

When doing a crossover with two MAPLE agents, probability to do a program crossover instead of an edge crossover.

## ◆ pCrossProgramsComment

const std::string Mutator::TPGParameters::pCrossProgramsComment
| inlinestatic

Initial value:
=
"// When doing a crossover with two MAPLE agents, probability to "
"do a program crossover instead of an edge crossover.\n"
"// \"pCrossPrograms\" : 0.0, // Default value"

JSon comment.

## ◆ pEdgeAdditionComment

const std::string Mutator::TPGParameters::pEdgeAdditionComment
| inlinestatic

Initial value:
=
"// Probability of adding an outgoing Edge to a Team.\n"
"// \"pEdgeAddition\" : 0.7, // Default value"

JSon comment.

## ◆ pEdgeDeletionComment

const std::string Mutator::TPGParameters::pEdgeDeletionComment
| inlinestatic

Initial value:
=
"// Probability of deleting an outgoing Edge of a Team.\n"
"// \"pEdgeDeletion\" : 0.7, // Default value"

JSon comment.

## ◆ pEdgeDestinationChangeComment

const std::string Mutator::TPGParameters::pEdgeDestinationChangeComment
| inlinestatic

Initial value:
=
"// Probability of changing the destination of an Edge.\n"
"// \"pEdgeDestinationChange\" : 0.1, // Default value"

JSon comment.

## ◆ pEdgeDestinationIsActionComment

const std::string Mutator::TPGParameters::pEdgeDestinationIsActionComment
| inlinestatic

Initial value:
=
"// Probability of the new destination of an Edge to be an "
"Action.\n"
"// \"pEdgeDestinationIsAction\" : 0.5, // Default value"

JSon comment.

## ◆ pMutateActionProgramComment

const std::string Mutator::TPGParameters::pMutateActionProgramComment
| inlinestatic

Initial value:
=
"// Probablity of mutation the program on the action edge\n"
"// \"pMutateActionProgram\" : 0.1, // Default value"

JSon comment.

## ◆ pProgramMutationComment

const std::string Mutator::TPGParameters::pProgramMutationComment
| inlinestatic

Initial value:
=
"// Probability of mutating the Program of an outgoing Edge.\n"
"// \"pProgramMutation\" : 0.2, // Default value"

JSon comment.

## ◆ probaContextOverActionProgram

double Mutator::TPGParameters::probaContextOverActionProgram = 0.5

When an edge is mutate, the choice between action and context program is based on this

## ◆ probaContextOverActionProgramComment

const std::string Mutator::TPGParameters::probaContextOverActionProgramComment
| inlinestatic

Initial value:
=
"// When an edge is mutate, the choice between action and context "
"program is based on this\n"
"// \"probaContextOverActionProgram\" : 0.5, // Default value"

JSon comment.

## ◆ pSwapActionProgram

double Mutator::TPGParameters::pSwapActionProgram = 0.1

Probablity of swapping two action edge within the same action vertex

## ◆ pSwapActionProgramComment

const std::string Mutator::TPGParameters::pSwapActionProgramComment
| inlinestatic

Initial value:
=
"// Probablity of swapping two action edge within the same action "
"vertex\n"
"// \"pSwapActionProgram\" : 0.1, // Default value"

JSon comment.

## ◆ ratioTeamsOverActions

double Mutator::TPGParameters::ratioTeamsOverActions = 1.0

Ratio of teams roots over the number of actions roots. If set to 1, there will be no action roots, if set to 0, there will be no team root.

## ◆ ratioTeamsOverActionsComment

const std::string Mutator::TPGParameters::ratioTeamsOverActionsComment
| inlinestatic

Initial value:
=
"// Ratio of teams roots over the number of actions roots.\n"
"// If set to 1, there will be no action roots, if set to 0, there "
"will be no team root.\n"
"// \"ratioTeamsOverActions\" : 1.0, // Default value"

JSon comment.

## ◆ teamAccessAllActions

bool Mutator::TPGParameters::teamAccessAllActions = true

During mutation of a team, setting this parameter to true allow a team to change destination toward any other actions. If set to false, it can only change destination toward a root action.

## ◆ teamAccessAllActionsComment

const std::string Mutator::TPGParameters::teamAccessAllActionsComment
| inlinestatic

Initial value:
=
"// During mutation of a team, setting this parameter to true "
"allow a team\n"
"//to change destination toward any other actions. If set to "
"false, it can only\n"
"//change destination toward a root action.\n"
"// \"teamAccessAllActions\" : true, // Default value"

JSon comment.

## ◆ useActionProgram

bool Mutator::TPGParameters::useActionProgram = false

Create action program, instead of using context program to select continuous action(s)

## ◆ useActionProgramComment

const std::string Mutator::TPGParameters::useActionProgramComment
| inlinestatic

Initial value:
=
"// Create action program, instead of using context program to "
"select continuous action(s)"
".\n"
"// \"useActionProgram\" : false, // Default value"

JSon comment.

## ◆ useMultiActionProgram

bool Mutator::TPGParameters::useMultiActionProgram = false

Create multiple action program, instead of one outputting multiple action in a single program

## ◆ useMultiActionProgramComment

const std::string Mutator::TPGParameters::useMultiActionProgramComment
| inlinestatic

Initial value:
=
"// Create multiple action program, instead of one outputting "
"multiple action in a single program"
".\n"
"// \"useMultiActionProgram\" : false, // Default value"

JSon comment.

The documentation for this struct was generated from the following file:

- D:/a/gegelati/gegelati/gegelatilib/include/mutator/mutationParameters.h