人的智能可以遗传获得也可以通过后天学习;学习有两种,模仿前人的经验是一种学习;如果没有前人的经验可以学习,就需要和环境进行交互,得到反馈来学习。
人工智能可以像人一样的模仿,就像监督学习,从给定的训练集中学习出一个函数,当新的数据到来时就可以利用这个函数预测结果。人工智能也可以像人一样自学,就像强化学习。如果环境是已知可以直接进行规划,如果环境是未知,就需要不断地探索与试错。
课程基础
资料推荐
智能体观察环境,然后对环境做出动作,收到来自环境的反馈。然后通过反馈和改变之后的环境状态做出下一次的动作,循环往复以上情况。

Gym:仿真平台、python开源库、RL测试平台
官网:https://gym.openai.com/
离散控制场景:一般使用atari环境评估
连续控制场景:一般使用mujoco环境游戏来评估
gym 的核心接口是 environment。提供以下几个核心方法
( 1 ) reset():重置环境的状态,回到初始环境,方便开始下一次训练。
( 2 ) step(action):推进一个时间步长,返回四个值:
① observation (object):对环境的一次观察;
② reward (float):奖励:
③done (boolean):代表是否需要重置环境;
④ info (dict):用于调试的诊段信息。
( 3 ) render():重绘环境的一帧图像。
import gym
env = gym.make("CliffWalking-v0")
obs = env.reset()
while True:
action = np.random.randint(0,4) # 0-4 代表上下左右共四个动作,随机选一个
obs,reward,done,info = env.setp(action)
env.render()
if done:
break

>>>import gym
>>>from gridworld import CliffWalkingWapper
>>>env = gym.make("CliffWalking-v0")
>>>env = CliffWalkingWapper(env) #创建悬崖环境
>>>env.reset()
36
>>>env.render()
>>>env.step(0) #向上走
(24, -1, False, {'prob': 1.0}) #第一个值为状态值,第二个值为reward,第三个值为一轮游戏有没有玩完,第四个字段是info,额外信息
>>>env.step(1) #向右走
>>>env.render()
>>>env.step(2) #向下走
>>>env.render() ##直到终点
import gym
import numpy as np
env = gym.make("CliffWalking-v0")
obs = env.reset()
while True:
action = np.random.randint(0,4)
obs,reward,done,info = env.step(action)
env.render()
if done:
break

pip install paddlepaddle==1.6.3 # -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install parl==1.3.1
pip install gym
git clone -depth=1 https://github.com/PaddlePaddle/PARL.git
cd PARL/examples/QuickStart
python train.py
Tips1: Pip库安装常见问题:网络超时
解决办法1:使用清华源 -i https://pypi.tuna.tsinghua.edu.cn/simple
解决办法2:https//pypi.org/ 下载whl包或者源码包安装
Tipsz: Pip安装中断:某个依赖包安装失败,重新安装即可
Tips3:独立的Python环境:Conda //能够将不同的python环境隔离开来