资源简介
Q学习的matlab代码。自己写的并且配了详细注释,很好理解。
代码片段和文件信息
% Q学习例程
addpath(‘modules‘);
%% %%%%%%%%%%%%%%%%%%%%%%%%% Q学习初始设置 %%%%%%%%%%%%%%%%%%%%%%%%%
% 设置学习率参数γ
gamma=0.80;
% 设置奖励矩阵R
R=[-inf-inf-inf-inf 0 -inf;
-inf-inf-inf 0-inf 100;
-inf-inf-inf 0-inf -inf;
-inf 0 0-inf 0 -inf;
0-inf-inf 0-inf 100;
-inf 0-inf-inf 0 100];
% 初始化知识矩阵Q
Q=zeros(size(R));
% 设置目标
Target=6;
% 收敛判断符
count=0;
Q_last=ones(size(R))*inf;
%% %%%%%%%%%%%%%%%%%%%%%%%%%%% 强化学习 %%%%%%%%%%%%%%%%%%%%%%%%%%%
% 定义最大学习次数
episode_max=50000;
% 迭代学习
for episode=0:episode_max
%% 选择随机初始状态
% 读取状态总数
state_num=size(R1);
% 选择随机初始状态
state=randperm(state_num1);
%% 随机搜索直到到达目标
while 1
%% 根据当前状态随机选择一个可执行的行为
% 找出可执行的行为
choices=find( R(state:)>=0 );
% 随机选择一个可执行行为
action=act_rand_select( choices );
%% 根据下一个状态更新Q表
% 根据所选行为到达下一个状态
ne
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2618 2018-03-17 18:14 Q_learning\Q_learning.m
目录 0 2018-03-16 16:52 Q_learning\modules\
文件 369 2018-03-16 16:00 Q_learning\modules\act_rand_select.m
文件 504 2018-03-16 17:20 Q_learning\modules\conver_check.m
目录 0 2018-03-16 22:52 Q_learning\
相关资源
- 《卡尔曼滤波原理及应用-MATLAB仿真》
- 贝叶斯抠图算法matlab实现
- 基于BP神经网络的验证码识别matlab
- 杜勇-数字通信同步技术的MATLAB与FPG
- 数值分析及其Matlab实现
- DSP程序开发:MATLAB调试及直接目标代
- MATLAB优化算法案例分析与应用进阶篇
- DPM算法实现:voc-release5(Win7+matlab20
- 基于稀疏表示和正则化的图像超分辨
- 0积分 系统辨识与自适应控制MATLAB仿真
- 图像处理matlab道路小车跟踪
- 全面详解LTE MATLAB建模、仿真与实现
- adaboost 的matlab代码
- 《信号与系统》MATLAB教程.pdf
- 卷积神经网络完成程序matlab.zip
- matlab图像检索
- 卷积神经网络经典代码
- 现代通信系统第二版MATLAB版) 包括全
- 卡尔曼滤波 Matlab程序
- 稀疏编码matlab 教程
- 系统辨识资料大全(matlab系统辨识工
- 化学计量学方法及MATLAB实现
- MATLAB Neural Network Toolbox官方教程
- Inverse Synthetic Aperture Radar Imaging with
- matlab GUI设计
- 雷达压制干扰matlab程序
- 系统辨识,使用者的理论
- MATLAB仿真林飞、杜欣编著.pdf
- 基于HMM的语音识别MATLAB代码
- 关于均衡的MATLAB程序合集
评论
共有 条评论