CSE 473 Markov Decision Processes

Slides:



Advertisements
Similar presentations
Lirong Xia Reinforcement Learning (1) Tue, March 18, 2014.
Advertisements

Markov Decision Process
Announcements  Homework 3: Games  Due tonight at 11:59pm.  Project 2: Multi-Agent Pacman  Has been released, due Friday 2/21 at 5:00pm.  Optional.
Markov Decision Process (MDP)  S : A set of states  A : A set of actions  P r(s’|s,a): transition model (aka M a s,s’ )  C (s,a,s’): cost model  G.
Decision Theoretic Planning
CS 188: Artificial Intelligence
Markov Decision Processes
Planning under Uncertainty
Announcements Homework 3: Games Project 2: Multi-Agent Pacman
91.420/543: Artificial Intelligence UMass Lowell CS – Fall 2010
CS 188: Artificial Intelligence Fall 2009 Lecture 10: MDPs 9/29/2009 Dan Klein – UC Berkeley Many slides over the course adapted from either Stuart Russell.
CS Reinforcement Learning1 Reinforcement Learning Variation on Supervised Learning Exact target outputs are not given Some variation of reward is.
Utility Theory & MDPs Tamara Berg CS Artificial Intelligence Many slides throughout the course adapted from Svetlana Lazebnik, Dan Klein, Stuart.
MAKING COMPLEX DEClSlONS
Expectimax Evaluation
Reinforcement Learning  Basic idea:  Receive feedback in the form of rewards  Agent’s utility is defined by the reward function  Must learn to act.
CSE 473Markov Decision Processes Dan Weld Many slides from Chris Bishop, Mausam, Dan Klein, Stuart Russell, Andrew Moore & Luke Zettlemoyer.
Quiz 4 : Minimax Minimax is a paranoid algorithm. True
Quiz 6: Utility Theory  Simulated Annealing only applies to continuous f(). False  Simulated Annealing only applies to differentiable f(). False  The.
MDPs (cont) & Reinforcement Learning
CS 188: Artificial Intelligence Spring 2007 Lecture 23: Reinforcement Learning: III 4/17/2007 Srini Narayanan – ICSI and UC Berkeley.
Announcements  Upcoming due dates  Wednesday 11/4, 11:59pm Homework 8  Friday 10/30, 5pm Project 3  Watch out for Daylight Savings and UTC.
CSE 473Markov Decision Processes Dan Weld Many slides from Chris Bishop, Mausam, Dan Klein, Stuart Russell, Andrew Moore & Luke Zettlemoyer.
Markov Decision Processes Chapter 17 Mausam. Planning Agent What action next? PerceptsActions Environment Static vs. Dynamic Fully vs. Partially Observable.
QUIZ!!  T/F: Optimal policies can be defined from an optimal Value function. TRUE  T/F: “Pick the MEU action first, then follow optimal policy” is optimal.
CS 188: Artificial Intelligence Spring 2007 Lecture 21:Reinforcement Learning: II MDP 4/12/2007 Srini Narayanan – ICSI and UC Berkeley.
Announcements  Homework 3: Games  Due tonight at 11:59pm.  Project 2: Multi-Agent Pacman  Has been released, due Friday 2/19 at 5:00pm.  Optional.
Def gradientDescent(x, y, theta, alpha, m, numIterations): xTrans = x.transpose() replaceMe =.0001 for i in range(0, numIterations): hypothesis = np.dot(x,
Reinforcement Learning  Basic idea:  Receive feedback in the form of rewards  Agent’s utility is defined by the reward function  Must learn to act.
CS 541: Artificial Intelligence Lecture X: Markov Decision Process Slides Credit: Peter Norvig and Sebastian Thrun.
CS 5751 Machine Learning Chapter 13 Reinforcement Learning1 Reinforcement Learning Control learning Control polices that choose optimal actions Q learning.
1 Passive Reinforcement Learning Ruti Glick Bar-Ilan university.
CS 188: Artificial Intelligence Fall 2008 Lecture 8: MEU / Utilities 9/23/2008 Dan Klein – UC Berkeley Many slides over the course adapted from either.
Markov Decision Process (MDP)
Announcements Grader office hours posted on course website
Markov Decision Processes II
Making complex decisions
Reinforcement Learning (1)
Markov Decision Processes
CS 4/527: Artificial Intelligence
CSE 473: Artificial Intelligence
Markov Decision Processes
Markov Decision Processes
CS 188: Artificial Intelligence
CAP 5636 – Advanced Artificial Intelligence
Instructors: Fei Fang (This Lecture) and Dave Touretzky
Quiz 6: Utility Theory Simulated Annealing only applies to continuous f(). False Simulated Annealing only applies to differentiable f(). False The 4 other.
CS 188: Artificial Intelligence Fall 2007
CS 188: Artificial Intelligence Fall 2008
CS 188: Artificial Intelligence Fall 2008
Reinforcement Learning in MDPs by Lease-Square Policy Iteration
13. Acting under Uncertainty Wolfram Burgard and Bernhard Nebel
CSE 473: Artificial Intelligence Autumn 2011
CS 188: Artificial Intelligence Fall 2007
Chapter 17 – Making Complex Decisions
CS 188: Artificial Intelligence Spring 2006
CMSC 471 – Fall 2011 Class #25 – Tuesday, November 29
Hidden Markov Models (cont.) Markov Decision Processes
CS 188: Artificial Intelligence Spring 2006
CS 188: Artificial Intelligence Fall 2007
CS 416 Artificial Intelligence
Announcements Homework 2 Project 2 Mini-contest 1 (optional)
Warm-up as You Walk In Given Set actions (persistent/static)
CS 416 Artificial Intelligence
Reinforcement Learning (2)
Markov Decision Processes
Markov Decision Processes
Reinforcement Learning (2)
Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 3
Presentation transcript:

CSE 473 Markov Decision Processes Dan Weld Many slides from Chris Bishop, Mausam, Dan Klein, Stuart Russell, Andrew Moore & Luke Zettlemoyer

Overview Introduction & Agents Search, Heuristics & CSPs Adversarial Search Logical Knowledge Representation Planning & MDPs Reinforcement Learning Uncertainty & Bayesian Networks Machine Learning NLP & Special Topics

MDPs Markov Decision Processes Planning Under Uncertainty Mathematical Framework Bellman Equations Value Iteration Real-Time Dynamic Programming Policy Iteration Reinforcement Learning Andrey Markov  (1856-1922)

Planning Agent Environment Percepts Actions What action next? Static vs. Dynamic Environment Fully vs. Partially Observable What action next? Deterministic vs. Stochastic Perfect vs. Noisy Instantaneous vs. Durative Percepts Actions

Review: Expectimax What if we don’t know what the result of an action will be? E.g., In solitaire, next card is unknown In pacman, the ghosts act randomly max Can do expectimax search Max nodes as in minimax search Chance nodes, like min nodes, except the outcome is uncertain - take average (expectation) of children Calculate expected utilities chance 10 4 5 7 Today, we formalize as an Markov Decision Process Handle intermediate rewards & infinite plans More efficient processing

Grid World Walls block the agent’s path Agent’s actions may go astray: 80% of the time, North action takes the agent North (assuming no wall) 10% - actually go West 10% - actually go East If there is a wall in the chosen direction, the agent stays put Small “living” reward each step Big rewards come at the end Goal: maximize sum of rewards

Markov Decision Processes An MDP is defined by: A set of states s  S A set of actions a  A A transition function T(s,a,s’) Prob that a from s leads to s’ i.e., P(s’ | s,a) Also called “the model” A reward function R(s, a, s’) Sometimes just R(s) or R(s’) A start state (or distribution) Maybe a terminal state MDPs: non-deterministic search Reinforcement learning: MDPs where we don’t know the transition or reward functions

Axioms of Probability Theory All probabilities between 0 and 1 Probability of truth and falsity P(true) = 1 P(false) = 0. The probability of disjunction is: A  B A B

Terminology Marginal Probability Conditional Probability Joint Probability X value is given

Conditional Probability P(A | B) is the probability of A given B Assumes: B is all and only information known. Defined by: A  B A B 10 10

Independence A and B are independent iff: Therefore, if A and B are independent: These constraints logically equivalent

Independence P(AB) = P(A)P(B) A A  B B True © Daniel S. Weld 13

Conditional Independence A&B not independent, since P(A|B) < P(A) A A  B B True © Daniel S. Weld 14

Conditional Independence But: A&B are made independent by C A A  B AC P(A|C) = P(A|B,C) B True C B  C © Daniel S. Weld 15

What is Markov about MDPs? Andrey Markov (1856-1922) “Markov” generally means that conditioned on the present state, the future is independent of the past For Markov decision processes, “Markov” means:

Solving MDPs In deterministic single-agent search problems, want an optimal plan, or sequence of actions, from start to a goal In an MDP, we want an optimal policy *: S → A A policy  gives an action for each state An optimal policy maximizes expected utility if followed Defines a reflex agent Optimal policy when R(s, a, s’) = -0.03 for all non-terminals s

Example Optimal Policies R(s) = -0.01 R(s) = -0.03 R(s) = -0.4 R(s) = -2.0

3 4 2 2 Example: High-Low Three card types: 2, 3, 4 Infinite deck, twice as many 2’s Start with 3 showing After each card, you say “high” or “low” New card is flipped If you’re right, you win the points shown on the new card Ties are no-ops (no reward)-0 If you’re wrong, game ends 3 4 2 2 Differences from expectimax problems: #1: get rewards as you go #2: you might play forever!

3 4 2 2 High-Low as an MDP States: Actions: Model: T(s, a, s’): 2, 3, 4, done Actions: High, Low Model: T(s, a, s’): P(s’=4 | 4, Low) = P(s’=3 | 4, Low) = P(s’=2 | 4, Low) = P(s’=done | 4, Low) = 0 P(s’=4 | 4, High) = 1/4 P(s’=3 | 4, High) = 0 P(s’=2 | 4, High) = 0 P(s’=done | 4, High) = 3/4 … Rewards: R(s, a, s’): Number shown on s’ if s’<s  a=“high” … 0 otherwise Start: 3 3 4 1/4 2 1/4 1/2 2

Search Tree: High-Low 3 3 2 3 4 Low High , Low , High T = 0.5, R = 2

MDP Search Trees Each MDP state gives an expectimax-like search tree s is a state s a (s, a) is a q-state s, a (s,a,s’) called a transition T(s,a,s’) = P(s’|s,a) R(s,a,s’) s,a,s’ s’

Utilities of Sequences In order to formalize optimality of a policy, need to understand utilities of sequences of rewards Typically consider stationary preferences: Theorem: only two ways to define stationary utilities Additive utility: Discounted utility:

Infinite Utilities?! Problem: infinite state sequences have infinite rewards Solutions: Finite horizon: Terminate episodes after a fixed T steps (e.g. life) Gives nonstationary policies ( depends on time left) Absorbing state: guarantee that for every policy, a terminal state will eventually be reached (like “done” for High-Low) Discounting: for 0 <  < 1 Smaller  means smaller “horizon” – shorter term focus

Discounting Typically discount rewards by  < 1 each time step Sooner rewards have higher utility than later rewards Also helps the algorithms converge

Recap: Defining MDPs Markov decision processes: MDP quantities so far: States S Start state s0 Actions A Transitions P(s’|s, a) aka T(s,a,s’) Rewards R(s,a,s’) (and discount ) MDP quantities so far: Policy,  = Function that chooses an action for each state Utility (aka “return”) = sum of discounted rewards a s s, a s,a,s’ s’

Optimal Utilities s a s, a s,a,s’ s’ Define the value of a state s: V*(s) = expected utility starting in s and acting optimally Define the value of a q-state (s,a): Q*(s,a) = expected utility starting in s, taking action a and thereafter acting optimally Define the optimal policy: *(s) = optimal action from state s a s s, a s,a,s’ s’

The Bellman Equations (1920-1984) Definition of “optimal utility” leads to a simple one-step look-ahead relationship between optimal utility values: a s s, a s,a,s’ s’

Why Not Search Trees? Why not solve with expectimax? Problems: This tree is usually infinite (why?) Same states appear over and over (why?) We would search once per state (why?) Idea: Value iteration Compute optimal values for all states all at once using successive approximations Will be a bottom-up dynamic program similar in cost to memoization Do all planning offline, no replanning needed!

Value Estimates Calculate estimates Vk*(s) The optimal value considering only next k time steps (k rewards) As k ∞, Vk approaches the optimal value Why: If discounting, distant rewards become negligible If terminal states reachable from everywhere, fraction of episodes not ending becomes negligible Otherwise, can get infinite expected utility and then this approach actually won’t work

Value Iteration Idea: Theorem: will converge to unique optimal values Start with V0*(s) = 0, which we know is right (why?) Given Vi*, calculate the values for all states for depth i+1: This is called a value update or Bellman update Repeat until convergence Theorem: will converge to unique optimal values Basic idea: approximations get refined towards optimal values Policy may converge long before values do

Example: Bellman Updates Example: γ=0.9, living reward=0, noise=0.2 Example: Bellman Updates ? ? first point: why all zeros and one ? (because you can find actions that guarentee you wont get the -1 and you are taking a max!)

Example: Value Iteration Information propagates outward from terminal states and eventually all states have correct value estimates

Example: Value Iteration

Practice: Computing Actions Which action should we chose from state s: Given optimal values Q? Given optimal values V? Lesson: actions are easier to select from Q’s!

Convergence Define the max-norm: Theorem: For any two approximations U and V I.e. any distinct approximations must get closer to each other, so, in particular, any approximation must get closer to the true U and value iteration converges to a unique, stable, optimal solution Theorem: I.e. once the change in our approximation is small, it must also be close to correct

Value Iteration Complexity Problem size: |A| actions and |S| states Each Iteration Computation: O(|A|⋅|S|2) Space: O(|S|) Num of iterations Can be exponential in the discount factor γ

Bellman Equations for MDP2 <S, A, Pr, R, s0, > Define V*(s) {optimal value} as the maximum expected discounted reward from this state. V* should satisfy the following equation:

Bellman Backup (MDP2) Given an estimate of V* function (say Vn) Backup Vn function at state s calculate a new estimate (Vn+1) : Qn+1(s,a) : value/cost of the strategy: execute action a in s, execute n subsequently n = argmaxa∈Ap(s)Qn(s,a) V  R V ax

Bellman Backup Q1(s,a1) = 2 +  0 ~ 2 Q1(s,a2) = 5 +  0.9£ 1 +  0.1£ 2 ~ 6.1 Q1(s,a3) = 4.5 +  2 ~ 6.5 max agreedy = a3 s1 a1 V0= 0 2 V1= 6.5 (~1) s0 5 a2 4.5 s2 0.9 V0= 1 a3 0.1 s3 V0= 2

Value iteration [Bellman’57] assign an arbitrary assignment of V0 to each state. repeat for all states s compute Vn+1(s) by Bellman backup at s. until maxs |Vn+1(s) – Vn(s)| <  Iteration n+1 Residual(s)

Policy Computation Optimal policy is stationary and time-independent. for infinite/indefinite horizon problems ax ax V  R

Asynchronous Value Iteration States may be backed up in any order instead of an iteration by iteration As long as all states backed up infinitely often Asynchronous Value Iteration converges to optimal

Asynch VI: Prioritized Sweeping Why backup a state if values of successors same? Prefer backing a state whose successors had most change Priority Queue of (state, expected change in value) Backup in the order of priority After backing a state update priority queue for all predecessors

Asynch VI: Real Time Dynamic Programming [Barto, Bradtke, Singh’95] Trial: simulate greedy policy starting from start state; perform Bellman backup on visited states RTDP: repeat Trials until value function converges

RTDP Trial Vn Qn+1(s0,a) agreedy = a2 Min Vn ? a1 Vn a2 s0 ? Vn+1(s0) Goal a2 s0 ? Vn+1(s0) Vn a3 ? Vn Vn Vn

Comments Properties Advantages Disadvantages if all states are visited infinitely often then Vn → V* Advantages Anytime: more probable states explored quickly Disadvantages complete convergence can be slow!

Review: Expectimax ma x chanc e 10 4 5 7 What if we don’t know what the result of an action will be? E.g., In solitaire, next card is unknown In minesweeper, mine locations In pacman, the ghosts act randomly ma x Can do expectimax search Chance nodes, like min nodes, except the outcome is uncertain Calculate expected utilities Max nodes as in minimax search Chance nodes take average (expectation) of value of children chanc e 10 4 5 7 Today, we’ll learn how to formalize the underlying problem as a Markov Decision Process

Grid World The agent lives in a grid Walls block the agent’s path The agent’s actions do not always go as planned: 80% of the time, the action North takes the agent North (if there is no wall there) 10% of the time, North takes the agent West; 10% East If there is a wall in the direction the agent would have been taken, the agent stays put Small “living” reward each step Big rewards come at the end Goal: maximize sum of rewards

Markov Decision Processes An MDP is defined by: A set of states s ∈ S A set of actions a ∈ A A transition function T(s,a,s’) Prob that a from s leads to s’ i.e., P(s’ | s,a) Also called the model A reward function R(s, a, s’) Sometimes just R(s) or R(s’) A start state (or distribution) Maybe a terminal state MDPs: non-deterministic search problems Reinforcement learning: MDPs where we don’t know the transition or reward functions

What is Markov about MDPs? Andrey Markov (1856-1922) “Markov” generally means that given the present state, the future and the past are independent For Markov decision processes, “Markov” means:

Solving MDPs In deterministic single-agent search problems, want an optimal plan, or sequence of actions, from start to a goal In an MDP, we want an optimal policy π*: S → A A policy π gives an action for each state An optimal policy maximizes expected utility if followed Defines a reflex agent Optimal policy when R(s, a, s’) = -0.03 for all non- terminals s

Example Optimal Policies R(s) = - 0.01 R(s) = -0.03 R(s) = - 0.4 R(s) = - 2.0

3 4 2 2 Example: High-Low Three card types: 2, 3, 4 Infinite deck, twice as many 2’s Start with 3 showing After each card, you say “high” or “low” New card is flipped If you’re right, you win the points shown on the new card Ties are no-ops If you’re wrong, game ends 3 4 2 2 Differences from expectimax problems: #1: get rewards as you go #2: you might play forever!

3 4 2 2 High-Low as an MDP States: 2, 3, 4, done Actions: High, Low Model: T(s, a, s’): P(s’=4 | 4, Low) = 1/4 P(s’=3 | 4, Low) = 1/4 P(s’=2 | 4, Low) = 1/2 P(s’=done | 4, Low) = 0 P(s’=4 | 4, High) = 1/4 P(s’=3 | 4, High) = 0 P(s’=2 | 4, High) = 0 P(s’=done | 4, High) = 3/4 … Rewards: R(s, a, s’): Number shown on s’ if s ≠ s’ 0 otherwise Start: 3 3 4 2 2

Search Tree: High-Low 3 3 2 3 4 Low High , Low , High T = 0.5, R = 2

MDP Search Trees Each MDP state gives an expectimax-like search tree s is a state s a (s, a) is a q-state s, a (s,a,s’) called a transition T(s,a,s’) = P(s’|s,a) R(s,a,s’) s,a,s’ s’

Utilities of Sequences In order to formalize optimality of a policy, need to understand utilities of sequences of rewards Typically consider stationary preferences: Theorem: only two ways to define stationary utilities Additive utility: Discounted utility:

Infinite Utilities?! Problem: infinite state sequences have infinite rewards Solutions: Finite horizon: Terminate episodes after a fixed T steps (e.g. life) Gives nonstationary policies (π depends on time left) Absorbing state: guarantee that for every policy, a terminal state will eventually be reached (like “done” for High-Low) Discounting: for 0 < γ < 1 Smaller γ means smaller “horizon” – shorter term focus

Discounting Typically discount rewards by γ < 1 each time step Sooner rewards have higher utility than later rewards Also helps the algorithms converge

Recap: Defining MDPs Markov decision processes: MDP quantities so far: States S Start state s0 Actions A Transitions P(s’|s,a) (or T(s,a,s’)) Rewards R(s,a,s’) (and discount γ) MDP quantities so far: Policy = Choice of action for each state Utility (or return) = sum of discounted rewards a s s, a s,a,s’ s’

Optimal Utilities s a s, a s,a,s’ s’ Define the value of a state s: V*(s) = expected utility starting in s and acting optimally Define the value of a q-state (s,a): Q*(s,a) = expected utility starting in s, taking action a and thereafter acting optimally Define the optimal policy: π*(s) = optimal action from state s a s s, a s,a,s’ s’

The Bellman Equations Definition of “optimal utility” leads to a simple one-step lookahead relationship amongst optimal utility values: Formally: a s s, a s,a,s’ s’

Why Not Search Trees? Why not solve with expectimax? Problems: This tree is usually infinite (why?) Same states appear over and over (why?) We would search once per state (why?) Idea: Value iteration Compute optimal values for all states all at once using successive approximations Will be a bottom-up dynamic program similar in cost to memoization Do all planning offline, no replanning needed!

Value Estimates Calculate estimates Vk*(s) The optimal value considering only next k time steps (k rewards) As k → ∞, it approaches the optimal value Why: If discounting, distant rewards become negligible If terminal states reachable from everywhere, fraction of episodes not ending becomes negligible Otherwise, can get infinite expected utility and then this approach actually won’t work

Value Iteration Idea: Theorem: will converge to unique optimal values Start with V0*(s) = 0, which we know is right (why?) Given Vi*, calculate the values for all states for depth i+1: This is called a value update or Bellman update Repeat until convergence Theorem: will converge to unique optimal values Basic idea: approximations get refined towards optimal values Policy may converge long before values do

Example: Bellman Updates Example: γ=0.9, living reward=0, noise=0.2 Example: Bellman Updates ? ? first point: why all zeros and one ? (because you can find actions that guarentee you wont get the -1 and you are taking a max!)

Example: Value Iteration Information propagates outward from terminal states and eventually all states have correct value estimates

Example: Value Iteration

Practice: Computing Actions Which action should we chose from state s: Given optimal values Q? Given optimal values V? Lesson: actions are easier to select from Q’s!

Convergence Define the max-norm: Theorem: For any two approximations U and V I.e. any distinct approximations must get closer to each other, so, in particular, any approximation must get closer to the true U and value iteration converges to a unique, stable, optimal solution Theorem: I.e. once the change in our approximation is small, it must also be close to correct

Value Iteration Complexity Problem size: |A| actions and |S| states Each Iteration Computation: O(|A|⋅|S|2) Space: O(|S|) Num of iterations Can be exponential in the discount factor γ

Utilities for Fixed Policies Another basic operation: compute the utility of a state s under a fix (general non-optimal) policy Define the utility of a state s, under a fixed policy π: Vπ(s) = expected total discounted rewards (return) starting in s and following π Recursive relation (one-step look-ahead / Bellman equation): π(s) s s, π(s) s, π(s),s’ s’

Policy Evaluation How do we calculate the V’s for a fixed policy? Idea one: modify Bellman updates Idea two: it’s just a linear system, solve with Matlab (or whatever)

Policy Iteration Problem with value iteration: Considering all actions each iteration is slow: takes |A| times longer than policy evaluation But policy doesn’t change each iteration, time wasted Alternative to value iteration: Step 1: Policy evaluation: calculate utilities for a fixed policy (not optimal utilities!) until convergence (fast) Step 2: Policy improvement: update policy using one-step lookahead with resulting converged (but not optimal!) utilities (slow but infrequent) Repeat steps until policy converges This is policy iteration It’s still optimal! Can converge faster under some conditions

Policy Iteration Policy evaluation: with fixed current policy π, find values with simplified Bellman updates: Iterate until values converge Policy improvement: with fixed utilities, find the best action according to one-step look-ahead

Policy Iteration Complexity Problem size: |A| actions and |S| states Each Iteration Computation: O(|S|3 + |A|⋅|S|2) Space: O(|S|) Num of iterations Unknown, but can be faster in practice Convergence is guaranteed

Comparison In value iteration: In policy iteration: Every pass (or “backup”) updates both utilities (explicitly, based on current utilities) and policy (possibly implicitly, based on current policy) In policy iteration: Several passes to update utilities with frozen policy Occasional passes to update policies Hybrid approaches (asynchronous policy iteration): Any sequences of partial updates to either policy entries or utilities will converge if every state is visited infinitely often