- Hands-On Q-Learning with Python
- Nazia Habib
- 385字
- 2021-06-24 15:13:15
MDPs and state-action diagrams
Note that in the Markov chain examples we discussed, there is only one event that can happen in each state to cause the system to move to the next state. There is no list of actions and no decisions to make about what action to take. In a random walk, we flip the same fair coin each time, and each time we flip the coin, we have a new pair of states that we can potentially enter.
An MDP adds to a Markov chain the presence of a decision-making agent that has a choice of what action to take and rewards to receive, and provides feedback to the agent, affecting its behavior. Recall that an MDP doesn't require any knowledge of any previous states to make a decision on what action to take from the current state.
Let's go back to the state diagram that we discussed in the last chapter. Notice that a state diagram for an MDP is necessarily more complex than a diagram for a Markov chain. It needs to represent the available action and rewards, and the different states that the system can be in:

As we discussed, we have three states and two actions in this environment. Either action can be taken from any state, and the probability of each outcome as a result of taking each action is labeled on the diagram. For example, when we are in state S0 and take action a0, we might end up in S2 or back in S0, each with a 50% probability.
By extension, an MDP that only allows one action from each state and has the same reward for each action (that is, effectively, no rewards at all) will simplify to a Markov chain.
The main takeaway from this discussion of MDPs is that when we assume the role of an agent navigating a stochastic environment, we need to be able to learn lessons and make decisions that can be applied consistently amid the occurrence of random events. We don't always know what the individual outcome of an action will be, but we need to be able to make decisions that will maximize our overall outcome at each step of the process. This is what the algorithms that we develop will work toward achieving.
- 玩轉(zhuǎn)智能機(jī)器人程小奔
- Natural Language Processing Fundamentals
- Getting Started with Oracle SOA B2B Integration:A Hands-On Tutorial
- 反饋系統(tǒng):多學(xué)科視角(原書第2版)
- Hands-On Cybersecurity with Blockchain
- Ceph:Designing and Implementing Scalable Storage Systems
- 傳感器與新聞
- Visual FoxPro數(shù)據(jù)庫基礎(chǔ)及應(yīng)用
- 氣動(dòng)系統(tǒng)裝調(diào)與PLC控制
- SAP Business Intelligence Quick Start Guide
- Statistics for Data Science
- 零起點(diǎn)學(xué)西門子S7-200 PLC
- Hands-On Data Warehousing with Azure Data Factory
- Visual Studio 2010 (C#) Windows數(shù)據(jù)庫項(xiàng)目開發(fā)
- Linux系統(tǒng)管理員工具集