PIT

ML-Agents(五)GridWorld

▼魔方 西西 提交于 2020-04-06 11:20:46
目录 ML-Agents(五)GridWorld Visual Observations Masking Discrete Actions 环境与训练参数 场景基本结构 代码分析 环境初始化代码 Agent脚本 初始化与重置 动作遮罩 Agent动作反馈 FixedUpdate() 手动操作代码 关于GridSetting 关于其他 训练模型 泛化参数配置 开始训练 总结 ML-Agents(五)GridWorld GridWorld这个例子比较有意思,它还是运用了Reinforcement Learning来进行学习的,不同的是它运用了视觉观察值(Visual Observations)来训练agent。 如上图所示,Agent就是蓝色的方块,每次它可以移动一格(上、下、左、右),要求不能碰到红叉,最终到达绿色加号目标。 Visual Observations 先来了解一下视觉观察值是怎么回事。在ml-agents里主要通过 CameraSensor 或 RenderTextureSensor 两种方式来向Agent提供视觉观察。通过这两个组件收集的图像信息输入到agent policy的CNN(卷积神经网络)中,这使得agent可以从观察图像的图像规律中学习。Agent可以同时使用视觉观察值( Visual Observations)和矢量观察值( Vector

Matplotlib

我是研究僧i 提交于 2020-02-26 16:29:56
Matplotlib 概览 Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。 它也可以和图形工具包一起使用,如 PyQt 和 wxPython。 面向对象绘图 一般 绘图步骤都是首先创建 Figure 对象,它类似于一张画布,可以在这张画布上绘制其 他对象。 plt . figure( num=None, figsize=None , dpi=None, facecolor=Non e, edgecolor= None, frameon= True, FigureClass=<>, **kw gs) fig = plt.figure() x = np.linspace(0, 2*np.pi, 100) plt.plot(x, np.sin(x)) plt.show() 设置坐标系 坐标网格 plt.grid () axis 默认 axis=' both’, 还可以设置为x 或者y ,分别表示表格线是垂直于x 轴还是垂直于y color 设置表格线的颜色 linestyle 设置表格线的线形,例如 linestyle =’_' linewidth '表格线的宽度,例如 linewidth =2 import numpy as np from matplotlib import pyplot as plt

C++ 重载 new 和 delete

我怕爱的太早我们不能终老 提交于 2019-12-13 14:43:02
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 通过重载 new 和 delete, 从而控制内存分配的过程. 执行 new 的过程: 编译器调用名为operator new(或operator new[])的标准库函数, 非配一块足够大, 原始, 未命名的内存空间. 编译器运行相应构造函数, 并未其传入初始值. 返回一个指向该对象的指针. 执行 delete 的过程: 先执行相应的析构函数. 编译器调用名为operator delete(或operator delete[])的标准库函数释放内存空间. 编译器查找 new 和 delete 的顺序: 若操作对象是类类型, 则编译器首先在类或基类的作用域中查找. 若类中含 operator new (或 operator delete) 成员, 则调用这些成员. 编译器在全局作用域中查找匹配的函数, 若有自定义版本, 则使用. 若没找到, 则使用标准库定义的版本. 可以使用::(作用域运算符)忽略定义在类中的 new 或 delete 函数. eg: ::new只在全局作用域中查找. new 和 new[]. 使用以下示例说明: new int 编译器解释为 new(sizeof(int)). new int[10] 编译器解释为 new(sizeof(int) * 10). new 和 operator