0
点赞
收藏
分享

微信扫一扫

视觉机器学习20讲-MATLAB源码示例(10)-增强学习算法

视觉机器学习20讲-MATLAB源码示例(10)-增强学习算法)

1. 增强学习算法

增强学习(Reinforcement Learning)要解决的是这样的问题:一个能感知环境的自治agent,怎样通过学习选择能达到其目标的最优动作。
 
增强学习目的是构造一个控制策略,使得Agent行为性能达到最大。Agent从复杂的环境中感知信息,对信息进行处理。Agent通过学习改进自身的性能并选择行为,从而产生群体行为的选择,个体行为选择和群体行为选择使得Agent作出决策选择某一动作,进而影响环境。

增强学习是指从动物学习、随机逼近和优化控制等理论发展而来,是一种无导师在线学习技术,从环境状态到动作映射学习,使得Agent根据最大奖励值采取最优的策略;Agent感知环境中的状态信息,搜索策略(哪种策略可以产生最有效的学习)选择最优的动作,从而引起状态的改变并得到一个延迟回报值,更新评估函数,完成一次学习过程后,进入下一轮的学习训练,重复循环迭代,直到满足整个学习的条件,终止学习。

2. Matlab仿真

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%功能:演示增强学习算法在计算机视觉中的应用
%基于增强学习实现目标分类;
%环境:Win7,Matlab2018a
%Modi: C.S
%时间:2022-4-5
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
global NO_REPLICATIONS ITERMAX NA NS SMALL TPM TRM LAMBDA

global3 % global parameters initialized 

stat=struct('Q',zeros(NS,NA),'iter',0,'old_action',1,'old_state',1,'current_state',1,'rimm',0,'total_reward',0);
done=0; % Pnemonic for simulation, 1 stands for end
        % 0 stands for continue 
while 0==done
    [stat,done]=jump_learn(stat);
end
   policy=pol_finder(stat);

3. 仿真结果

>> main

policy =

     2     1


value_function =

   55.2019   49.6852


state =

     1


action =

     1


ans =

   44.3862


state =

     1


action =

     2


ans =

   55.2019


state =

     2


action =

     1


ans =

   49.6852


state =

     2


action =

     2


ans =

   46.1931

4. 小结

增强学习算法发展在现在比较有名的就是AlphaGo的核心:深度增强学习算法,有兴趣的推荐去仔细查看全文《机器学习20讲》中第十讲内容,源码在分享的资源中已打包好,欢迎取用。

举报

相关推荐

机器视觉10

0 条评论