基于应用值迭代的马尔可夫决策过程(MDP)的策略的机器人研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

****🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️**座右铭:**行百里者,半于九十。

📋📋📋++本文目录如下:++🎁🎁🎁

目录

[💥1 概述](#💥1 概述)

[📚2 运行结果](#📚2 运行结果)

[🎉3 参考文献](#🎉3 参考文献)

[🌈4 Matlab代码实现](#🌈4 Matlab代码实现)


💥1 概述

  • MDP(Markov Decision Process)是一种用于建模决策问题的数学框架,而机器人网格是一种常见的环境模型,用于描述机器人在离散的网格世界中移动和执行动作的问题。

    在机器人网格中,通常将环境表示为一个二维网格,每个网格单元可以是机器人可以到达的位置。机器人可以根据当前所处的网格位置和执行的动作来决定下一步的移动方向。常见的动作包括向上、向下、向左、向右等。

    MDP可以用来描述机器人在网格世界中的决策问题。具体来说,MDP包括以下要素:

    1. 状态(State):在机器人网格中,状态可以表示机器人所处的网格位置。

    2. 动作(Action):机器人可以执行的动作,如向上、向下、向左、向右等。

    3. 转移概率(Transition Probability):给定当前状态和执行的动作,机器人转移到下一个状态的概率。

    4. 奖励(Reward):在每个状态执行每个动作时,机器人可以获得的奖励。

    5. 值函数(Value Function):用于评估每个状态的价值,表示从该状态开始,机器人能够获得的期望累积奖励。

    6. 策略(Policy):决定机器人在每个状态下选择哪个动作的策略。

    通过建立MDP模型,可以使用强化学习算法(如值迭代、策略迭代、Q-learning等)来求解最优策略,使机器人在网格世界中能够做出最优的决策。

应用值迭代来学习马尔可夫决策过程 (MDP) 的策略 -- 网格世界中的机器人。

世界是自由空间(0)或障碍物(1)。每转一圈,机器人可以向8个方向移动,或保持在原地。奖励函数为一个自由空间,即目标位置提供高奖励。所有其他自由空间都有很小的惩罚,障碍物有很大的负奖励。值迭代用于学习最佳"策略",该函数将

控制输入分配给每个可能的位置。本文将始终完美执行运动的确定性机器人与随机机器人进行比较,后者与命令移动的概率很小+/-45度。随机机器人的最佳策略是避开狭窄的通道并尝试移动到走廊的中心。

📚 2 运行结果

部分代码:

% DRAW THE WORLD, REWARD, ANIMATE VALUE ITERATION, DISPLAY POLICY

subplot(2,2,1)

imagesc(~World);

set(gca,'Xtick',[], 'Ytick',[])

axis equal

axis tight

text(25,-1,'World','HorizontalAlignment','center','FontSize',18)

drawnow

if pauseOn; pause(); end %#ok<*UNRCH>

subplot(2,2,2)

imagesc(R);

axis equal

axis tight

set(gca, 'Xtick',[], 'Ytick',[])

text(25,-1,'Reward function','HorizontalAlignment','center','FontSize',18)

drawnow

if pauseOn; pause(); end

V_hat = MDP_discrete_value_iteration(R,World,false);

if pauseOn; pause(); end

DrawPolicy(V_hat,World,false);

if pauseOn; pause(); end

figure(f1)

V_hat_prob = MDP_discrete_value_iteration(R,World,true);

if pauseOn; pause(); end

DrawPolicy(V_hat_prob,World,true);

if pauseOn; pause(); end

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

1\]Sutton, R. S., \& Barto, A. G. (2018). Reinforcement Learning: An Introduction. MIT Press. \[2\]Chapter 14 in 'Probabilistic Robotics', ISBN-13: 978-0262201629, ## [🌈](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=Mzk0MDMzNzYwOA==&action=getalbum&album_id=2591810113208958977#wechat_redirect "🌈")****4 Matlab代码实现****

相关推荐
864记忆1 分钟前
opencv图像预处理函数的功能与作用
人工智能·opencv·计算机视觉
陈苏同学17 分钟前
笔记1.4:机器人学的语言——三维空间位姿描述 (旋转矩阵 - 齐次变换矩阵 - 欧拉角 - 四元数高效表示旋转)
笔记·线性代数·算法·机器人
神仙别闹30 分钟前
基于C#实现(WinForm)数值分析(图像扭曲变形)
人工智能
光影少年40 分钟前
AIGG人工智能生态及学习路线和应用领域
人工智能·学习
俊男无期42 分钟前
【AI入门】什么是训练和推理
人工智能
递归不收敛42 分钟前
多模态学习大纲笔记(未完成)
人工智能·笔记·学习·自然语言处理
碧海银沙音频科技研究院43 分钟前
DiVE长尾识别的虚拟实例蒸馏方法
arm开发·人工智能·深度学习·算法·音视频
彩云回1 小时前
堆叠泛化(Stacking)
人工智能·机器学习·1024程序员节
AI浩1 小时前
FMC-DETR:面向航拍视角目标检测的频域解耦多域协同方法
人工智能·目标检测·计算机视觉