0% found this document useful (0 votes)
10 views62 pages

Introduction To Reinforcement Learning

Uploaded by

salahalj2002
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views62 pages

Introduction To Reinforcement Learning

Uploaded by

salahalj2002
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 62

Introduction to Reinforcement Learning

Outline
• What is Reinforcement Learning
• RL Formalism
1. Reward
2. The agent
3. The environment
4. Actions
5. Observations
• Markov Decision Process
1. Markov Process
2. Markov reward process
3. Markov Decision process
• Learning Optimal Policies
What is Reinforcement Learning ?
Describe this:
• Mouse
• A maze with walls, food and
electricity
• Mouse can move left, right, up
and down
• Mouse wants the cheese but not
electric shocks
• Mouse can observe the
environment

Lapan, Maxim. Deep Reinforcement Learning Hands-


On
What is Reinforcement Learning ?
Describe this:
• Mouse => Agent
• A maze with walls, food and
electricity => Environment
• Mouse can move left, right, up
and down => Actions
• Mouse wants the cheese but not
electric shocks => Rewards
• Mouse can observe the
environment => Observations

Lapan, Maxim. Deep Reinforcement Learning Hands-


On
What is Reinforcement Learning ?

Learning to make sequential decisions in an environment


so as to maximize some notion of overall rewards
acquired along the way.
In simple terms:
The mouse is trying to find as much
food as possible, while avoiding an
electric shock whenever possible.

The mouse could be brave and get an


electric shock to get to the place with
plenty of food—this is better result than
just standing still and gaining nothing.
What is Reinforcement Learning ?

• Learning to make sequential decisions in an


environment so as to maximize some notion of
overall rewards acquired along the way.
• Simple Machine Learning problems have a hidden
time dimension, which is often overlooked, but it is
important become in a production system.
• Reinforcement Learning incorporates time (or an
extra dimension) into learning, which puts it much
close to the human perception of artificial
intelligence.
What we don’t want the mouse to do?

• We do not want to have best actions to take in every specific


situation. Too much and not flexible.

• Find some magic set of methods that will allow our mouse to
learn on its own how to avoid electricity and gather as much
food as possible.

Reinforcement Learning is exactly this magic toolbox


Challenges of RL

A. Observations depends on agent’s actions. If agent


decides to do stupid things, then the observations will
tell nothing about how to improve the outcome (only
negative feedback).
B. Agents need to not only exploit the policy they have
learned, but to actively explore the environment. In
other words maybe by doing things differently we can
significantly improve the outcome. This
exploration/exploitation dilemma is one of the open
fundamental questions in RL (and in my life).
C. Reward can be delayed from actions. Ex: In cases of
chess, it can be one single strong move in the middle
of the game that has shifted the balance.
RL formalisms and relations

• Agent
• Environment

Communication
channels:
• Actions,
• Reward, and
• Observations:

Lapan, Maxim. Deep Reinforcement Learning Hands-


On
Reward
Reward

• A scalar value obtained from the environment


• It can be positive or negative, large or small
• The purpose of reward is to tell our agent how well they
have behaved.

reinforcement = reward or reinforced the behavior


Examples:
– Cheese or electric shock
– Grades: Grades are a reward system to give you feedback
about you are paying attention to me.
Reward (cont)

All goals can be described by the maximization of some


expected cumulative reward
The agent
The agent

An agent is somebody or something who/which interacts with


the environment by executing certain actions, taking
observations, and receiving eventual rewards for this.

In most practical RL scenarios, it's our piece of software that


is supposed to solve some problem in a more-or-less efficient
way.

Example:
You
The environment

Everything outside of an agent.

The universe!

The environment is external to an agent, and


communications to and from the agent are limited to
rewards, observations and actions.
Actions

Things an agent can do in the environment.


Can be:
• moves allowed by the rules of play (if it's
some game),
• or it can be doing homework (in the case of
school).

They can be simple such as move pawn one space


forward, or complicated such as fill the tax form in for
tomorrow morning.
Could be discrete or continuous
Observations

Second information channel for an agent, with the first


being a reward.

Why?
Convenience
RL within the ML Spectrum
What makes RL different from
other ML paradigms ?

● No supervision, just a reward


signal from the environment
● Feedback is sometimes
delayed (Example: Time
taken for drugs to take effect)
● Time matters - sequential
data
● Feedback - Agent’s action
affects the subsequent data it
receives ( not i.i.d.)
Many Faces of Reinforcement Learning
● Defeat a World Champion in
Chess, Go, BackGammon
● Manage an investment
portfolio
● Control a power station
● Control the dynamics of a
humanoid robot locomotion
● Treat patients in the ICU
● Automatic fly stunt
manoeuvres in helicopters
Outline
What is Reinforcement Learning
RL Formalism
1. Reward
2. The agent
3. The environment
4. Actions
5. Observations
Markov Decision Process
6. Markov Process
7. Markov reward process
8. Markov Decision process
Learning Optimal Policies
MDP + Formal Definitions
Markov Decision Process

More terminology we need to


learn
• state
• episode
• history
• value
• policy
Markov Process

Example:
System: Weather in Boston.
States: We can observe the current day as sunny or rainy
History: . A sequence of observations over time forms a chain
of states, such as

[sunny, sunny, rainy, sunny, …],


Markov Process

• For a given system we observe states

• The system changes between states according to some


dynamics.

• We do not influence the system just observe

• There are only finite number of states (could be very large)

• Observe a sequence of states or a chain => Markov chain


Markov Process (cont)

A system is a Markov Process, if it fulfils the Markov


property.

The future system dynamics from any state have to


depend on this state only.

• Every observable state is self-contained to describe the


future of the system.
• Only one state is required to model the future dynamics
of the system, not the whole history or, say, the last N
states.
Markov Process (cont)

Weather example:
The probability of sunny day followed by rainy day is
independent of the amount of sunny days we've seen in
the past.

Notes:
This example is really naïve, but it's important to understand the
limitations.
We can for example extend the state space to include other
factors.
Markov Process (cont)
Transition probabilities is expressed as a transition matrix,
which is a square matrix of the size N×N, where N is the number
of states in our model.
sunny rainy
sunny 0.8 0.2
rainy 0.1 0.9
Markov Reward Process

Extend Markov process to include rewards.

going from state i to state j.


Add another square matrix which tells us the reward

Often (but not always the case) the reward only


depends on the landing state so we only need a
number:

Note: Reward is just a number, positive, negative,


small, large
Markov Reward Process (cont)

For every time point, we define return as a sum of


subsequent rewards

But more distant rewards should not count as much so


we multiply by the discount factor raised to the power
of the number of steps we are away from the starting
point at time t.
Markov Reward Process (cont)

The return quantity is not very useful in practice, as it


was defined for every specific chain. But since there are
probabilities to reach other states this can vary a lot
depending which path we take.

Take the expectation of return for any state we get the


quantity called a value of state:
Markov Decision Process

How to extend our Markov Return Process to include


actions?

We must add a set of actions (A), which has to be finite.


This is our agent's action space.

Condition our transition matrix with action, which


means the transition matrix needs an extra action
dimension => turns it into a cube.
Markov Decision Process (cont)

Lapan, Maxim. Deep Reinforcement Learning Hands-


On
Markov Decision Process (cont)

By choosing an action, the agent can affect the probabilities of


target states, which is GREAT to have.

Finally, to turn our MRP into an MDP, we need to add actions to


our reward matrix in the same way we did with the transition
matrix: our reward matrix will depend not only on state but also
on action.

In other words, it means that the reward the agent obtains now
depends not only on the state it ends up in but also on the action
that leads to this state. It's similar as when putting effort into
something, you're usually gaining skills and knowledge, even if
the result of your efforts wasn't too successful.
Markov Decision Process

More terminology we need to


learn
• state ✓
• episode ✓
• history ✓
• value ✓
• policy
Policy

We are finally ready to introduce the most important


central thing for MDPs and Reinforcement Learning:

policy
The intuitive definition of policy is that it is some set of
rules that controls the agent's behavior.
Policy (cont)

Even for fairly simple environments, we can have a


variety of policies.

• Always move forward


• Try to go around obstacles by checking whether that
previous forward action failed
• Choose an action randomly
Policy (cont)

Remember: The main objective of the agent in RL is to


gather as much return (which was defined as discounted
cumulative reward) as possible.

Different policies can give us different return, which makes


it important to find a good policy. This is why the notion of
policy is important, and it's the central thing we're looking
for.
Policy (cont)

Formally, policy is defined as the probability distribution over


actions for every possible state:

An optimal policy 𝛑* is one that maximizes the expected value


function :

𝛑* = argmax𝛑 V𝛑(s)
Markov Decision Process

More terminology we need to


learn
• state ✓
• episode ✓
• history ✓
• value ✓
• policy ✓
🙌
Learning Optimal Policies

Dynamic Programming Methods (Value and Policy


Iteration)
Bellman equation (deterministic)

Lets start with state S0, and


take the action ai, then the
value will be

So, to choose the best possible


action, the agent needs to
calculate the the resulting
values for every action and
choose the maximum possible
outcome. (not totally greedy)
Bellman equation (stochastic)

Bellman optimality equation for the


general case:
Value of Action Q(s,a)

● The total reward of the one-step rewards for taking action a


in state s and can be defined via .
● Provides a convenient form for policy-optimization and
learning policies Q-learning.

Notes:
A. The first action is taken not from the optimal policy.
B. The expectation is because given action this is
stochastic.
Dynamic Programming

● Remember that value functions are recursive.

● Dynamic Programming - Breaking down a big problem into smaller


sub-problems and solving the smaller sub-problems, store its
values and backtrack towards bigger problems.

WORKING BACKWARDS :

(T is terminal state)
Model Based and Model Free Methods

Model Based:
Knowing the transition matrix.

Model Free:
Not knowing the transition matrix.
Model-Based Methods

Value Iteration, Policy Iteration


Value Iteration

1. Start with some arbitrary value assignments (S)


2. Update Policy and repeat until

(s, a)

INTUITION : Iteratively improve your value estimates using Q, V


relations.
Example: -1

S0 S1 S2
-1 +3

-1

Actions: a1: R (right) a2: L (left)

Step 0: V(S0)=V(S1)=V(S2) = 0
Step 1:
Q(S0, a1) = R(S0, a1) +V(S1) = -1 + 0 = -1

Q(S0, a2) = R(S0, a2) +V(S0) = -1 + 0 = -1

Q(S1, a1) = R(S1, a1) +V(S2) = 3 +0 = 3

Q(S1, a2) = R(S1, a2) +V(S0) = -1 + 0 = -1


Example: -1

S0 S1 S2
-1 +3

-1

Step2:
V(S0) = max(Q(S0,a)) = -1

V(S1) = max(Q(S1,a)) = 3

p(S0) = R

p(S1) = R
Policy Iteration

1. Start with some policy


2. Compute the value of the states V(s) using current policy.
(Policy Evaluation)
3. (Policy Improvement) Update Policy and repeat until
Transition from si to sj

INTUITION : At each step, you are modifying your policy by


picking that action which gives you the highest Q-value.
Example: -1

S0 S1 S2
-1 +3

-1

Actions: a1: R (right) a2: L (left)

Policy: p(S0) = R p(S1) = L g=0.5


Step 0:
V(S0; p) = R(S0, a1) + g V(S1)

V(S1; p) = R(S1, a1) + g V(S0)

V(S0) = -6/5

V(S1) = -8/5
Example: -1

S0 S1 S2
-1 +3

-1

Step 1:
Q(S0; a1) = -1 + ½(-8/5)

Q(S0; a2) = -1 + ½(-6/5)

Q(S1; a1) =

Q(S1; a2) =
Update Policy:
Example: -1

S0 S1 S2
-1 +3

-1

Update:
V(S0) = max(Q(S0,a)) = -1

V(S1) = max(Q(S1,a)) = 3

p(S0) = R

p(S1) = R
Model-Free Methods

Q-Learning and SARSA


Why Model-Free Methods ?

● Learning or providing a transition model can be hard in


several scenarios.
○ Autonomous Driving, ICU Treatments, Stock
Trading etc.

What do you have then ?

An ability to obtain a set of simulations/trajectories with each


transition in the episodes of the form (s,a,r,s’)

E.g. Using sensors to understand robot’s new position when it


does an action, Recording new patient vitals when given a drug
from a state etc.
On-Policy vs Off-Policy Learning

● On-Policy Learning

○ Evaluate policy 𝛑 when sampling experiences from 𝛑.


○ Learn on the job.

● Off-Policy Learning

○ Evaluate policy 𝛑 (target policy) while following a


○ Look over someone’s shoulder.

different policy Ѱ (behavior policy) in the environment.

Some domains prohibit on-policy learning. For instance, treating


a patient in ICUs you cannot learn about random actions by
testing them out.
Q-Learning

● Start with a random Q-table (S x A). For all transitions collected


according to any behavior policy, perform this TD Update

OVER-OPTIMISTIC : Assumes the best things would happen from


the next state onwards - Greedy (Hence the max operation over
future Q-values)
● OFF-POLICY : Q directly approximates the optimal action value
function independently of the policy being followed (max over
all actions)
SARSA

● Start with a random Q-table (S X A). For all transitions (collected by


acting according to 𝛑 that maximizes Q) perform this TD Update

𝛑 - Data collection policy

● ON-Policy Learning : While learning the optimal policy it uses the


current estimate of the optimal policy to generate the behaviour
Q-Learning and SARSA Algorithm

1. Start with a random Q-table (S X A).

2. Choose one among the two actions

a. (𝜀-greedy) With probability 𝜀, choose a random action


(EXPLORATION)

b. With probability 1-𝜀, an action that maximizes Q-value


from a state.(EXPLOITATION)

3. Perform an action and collect transition (s,a,r,s’)

4. Update Q-table using the corresponding TD updates.

5. Repeat steps 2-5 till convergence of Q-values across all


states.
Q-Learning vs SARSA

Demo :
https://studywolf.wordpress.com/2013/07/01/reinforcement-learning-sarsa-vs-q
-learning/

● Q-Learning converges faster since Q values directly try to approximate the


optimal value.
● Q-Learning is more risky since it is over-optimistic of what happens in the
future. Could be risky for real-life tasks such as robot navigation over
Parametric Q-Learning

● Often hard to learn Q-values in tabular form. E.g. Huge number of


states, Continuous state spaces etc.
● Parametrize Q(s,a) using any function approximator f - linear model,
neural networks etc. and do usual Q-learning.
Q(s,a) = f(s,a;𝜭) 𝜭- model params

Example : Image Frames in a game - Use ConvNets to parametrize Q(s,a)

You might also like