Class

QLAgent

QLAgent(env, confignullable, randomSeednullable)

Agent that represents the Q-Learning Algorithm

Constructor

# new QLAgent(env, confignullable, randomSeednullable)

Parameters:
Name Type Attributes Description
env Environment

the environment

config QLAgentSettings <nullable>

the configuration

randomSeed number <nullable>

The randomSeed

View Source core/src/Agents/QLAgent/QLAgent.ts, line 13

Extends

Members

QLAgentSettings | undefined

# config

Get the configuration

Overrides:

View Source core/src/Agents/QLAgent/QLAgent.ts, line 29

Methods

# config() → {QLAgentSettings|undefined}

Get the configuration

Overrides:

View Source core/src/Agents/QLAgent/QLAgent.ts, line 197

QLAgentSettings | undefined

# decayEpsilon() → {void}

Decay the epsilon value

View Source core/src/Agents/QLAgent/QLAgent.ts, line 221

void

# abstract evalStep(state) → {string}

Method to select an action for prediction

Parameters:
Name Type Description
state object

The current game state

Overrides:

View Source core/src/RLInterface/Agent.ts, line 76

  • The action to select next
string

# abstract feed(prevState, takenAction, newState, payoff, contextInfo) → {Promise.<void>}

this method feed the new game state and reward back for the agent to update their algorithm

Parameters:
Name Type Description
prevState object

The previous game state

takenAction string

The action that was taken.

newState object

The new game state

payoff number

The gained payoff for the agent

contextInfo object

Through this object, additional information can be provided.

Overrides:

View Source core/src/RLInterface/Agent.ts, line 51

Promise.<void>

# abstract init() → {void}

initialize the agent

Overrides:

View Source core/src/RLInterface/Agent.ts, line 31

void

# async load(fileStrategy, options) → {Promise.<void>}

load q-table from file

Parameters:
Name Type Description
fileStrategy

the file strategy for loading

options

the options for the file strategy

Overrides:

View Source core/src/Agents/QLAgent/QLAgent.ts, line 249

Promise.<void>

# abstract loadConfig(fileManager, optionsnullable) → {Promise.<void>}

load the config

Parameters:
Name Type Attributes Description
fileManager FileStrategy

FileManager Strategy

options object <nullable>

the options zo use for loading

Overrides:

View Source core/src/RLInterface/PersistableAgent.ts, line 35

Promise.<void>

# abstract log() → {void}

Interface method for loggin while training

Overrides:

View Source core/src/RLInterface/Agent.ts, line 83

void

# printQTable() → {void}

Print the q table

View Source core/src/Agents/QLAgent/QLAgent.ts, line 229

void

# qTable() → {Tensor}

Get the q-table

View Source core/src/Agents/QLAgent/QLAgent.ts, line 214

Tensor

# abstract reset() → {void}

Reset the agent

Overrides:

View Source core/src/RLInterface/Agent.ts, line 90

void

# async save(fileStrategy, options) → {Promise.<void>}

Save the q-table to file

Parameters:
Name Type Description
fileStrategy

the file strategy for saving

options

the options for the file strategy

Overrides:

View Source core/src/Agents/QLAgent/QLAgent.ts, line 239

Promise.<void>

# abstract saveConfig(fileManager, optionsnullable) → {Promise.<void>}

Save the Config

Parameters:
Name Type Attributes Description
fileManager FileStrategy

FileManager Strategy

options object <nullable>

the options to use for saving the agent

Overrides:

View Source core/src/RLInterface/PersistableAgent.ts, line 53

Promise.<void>

# setConfig(confignullable, randomSeednullable) → {void}

Set the configuration

Parameters:
Name Type Attributes Description
config QLAgentSettings <nullable>

set the configuration

randomSeed number <nullable>

Set the random seed

Overrides:

View Source core/src/Agents/QLAgent/QLAgent.ts, line 206

void

# setRandomSeed(randomSeed)

Set the random Seed for the agent

Parameters:
Name Type Description
randomSeed

the random seed

View Source core/src/Agents/QLAgent/QLAgent.ts, line 148

# abstract step(state) → {string}

Method for selecting a new action for training

Parameters:
Name Type Description
state object

The current game state

Overrides:

View Source core/src/RLInterface/Agent.ts, line 39

  • The action to select next
string

# abstract trainingInitialized() → {boolean}

Get whether the agent was correctly initialized for training.

Overrides:

View Source core/src/RLInterface/Agent.ts, line 24

boolean