Options for Q-learning agent
For more information on Q-learning agents, see Q-Learning Agents.
For more information on the different types of reinforcement learning agents, see Reinforcement Learning Agents.
opt = rlQAgentOptions
rlQAgentOptions object for use as an argument when creating a
Q-learning agent using all default settings. You can modify the object properties using
option properties using
name-value pairs. For example,
opt = rlQAgentOptions(
creates an option set with a discount factor of
0.95. You can specify
multiple name-value pairs. Enclose each property name in quotes.
EpsilonGreedyExploration— Options for epsilon greedy exploration
Options for epsilon greedy exploration, specified as an
EpsilonGreedyExploration object with the following numeric value
|Probability threshold to either randomly select an action or select the
action that maximizes the state-action value function. A larger value of
|Minimum value of |
Epsilon is updated using the following formula when it is greater
Epsilon = Epsilon*(1-EpsilonDecay)
To specify exploration options, use dot notation after creating the
rlQAgentOptions object. For example, set the probability
opt = rlQAgentOptions; opt.EpsilonGreedyExploration.Epsilon = 0.9;
SampleTime— Sample time of agent
1(default) | positive scalar
Sample time of agent, specified as a positive scalar.
Within a Simulink environment, the agent gets executed every
SampleTime seconds of simulation time.
Within a MATLAB environment, the agent gets executed every time the environment
SampleTime is the time interval between
consecutive elements in the output experience returned by
DiscountFactor— Discount factor
0.99(default) | positive scalar less than or equal to 1
Discount factor applied to future rewards during training, specified as a positive scalar less than or equal to 1.
|Q-learning reinforcement learning agent|
This example shows how to create an options object for a Q-Learning agent.
rlQAgentOptions object that specifies the agent sample time.
opt = rlQAgentOptions('SampleTime',0.5)
opt = rlQAgentOptions with properties: EpsilonGreedyExploration: [1x1 rl.option.EpsilonGreedyExploration] SampleTime: 0.5000 DiscountFactor: 0.9900
You can modify options using dot notation. For example, set the agent discount factor to
opt.DiscountFactor = 0.95;