IAtari
Genetic algorithm generating AI capable to play Atari2600 games.
genetic_operators Namespace Reference

Handle genetic operations performed on agents. More...

Functions

static agent::instruction random_instruction (const agent &a)
 Generate a random instruction. More...
 
void initialize (agent &a)
 Initialize an agent with random instructions. More...
 
void mutate (agent &a)
 Mutate an agent, i.e. modify some instructions. More...
 
void crossover (agent &a1, agent &a2)
 Swap instructions between two agents. More...
 

Detailed Description

Handle genetic operations performed on agents.

Function Documentation

◆ crossover()

void genetic_operators::crossover ( agent a1,
agent a2 
)

Swap instructions between two agents.

Parameters
[in,out]a1The first agent involved in crossover
[in,out]a2The second agent involved in crossover

◆ initialize()

void genetic_operators::initialize ( agent a)

Initialize an agent with random instructions.

Parameters
[in,out]aThe agent to be initialized

◆ mutate()

void genetic_operators::mutate ( agent a)

Mutate an agent, i.e. modify some instructions.

Parameters
[in,out]aThe agent to be affected by mutation

◆ random_instruction()

static agent::instruction genetic_operators::random_instruction ( const agent a)
static

Generate a random instruction.

Parameters
[in]aAgent in which the instruction will be inserted
Returns
The generated instruction