coach运行流程梳理

env::::

env_instance = create_environment(tuning_parameters)
agent = eval(tuning_parameters.agent.type + '(env_instance, tuning_parameters)')
def create_environment(tuning_parameters):
    env_type_name, env_type = EnvTypes().verify(tuning_parameters.env.type)
    env = eval(env_type)(tuning_parameters)
    return env
class GymEnvironmentWrapper(EnvironmentWrapper):
    def __init__(self, tuning_parameters):
        EnvironmentWrapper.__init__(self, tuning_parameters)

        # env parameters
class EnvironmentWrapper(object):
    def __init__(self, tuning_parameters):
        """
        :param tuning_parameters:
        :type tuning_parameters: Preset
        """
        # env initialization
        self.game = []
        self.actions = {}
        self.state = []
        self.reward = 0
        self.done = False
        self.default_action = 0
        self.last_action_idx = 0
        self.episode_idx = 0
        self.last_episode_time = time.time()
        self.info = []
        self.action_space_low = 0
        self.action_space_high = 0
        self.action_space_abs_range = 0
        self.actions_description = {}
        self.discrete_controls = True
        self.action_space_size = 0
        self.key_to_action = {}
        self.width = 1
        self.height = 1
        self.is_state_type_image = True
        self.measurements_size = 0
        self.phase = RunPhase.TRAIN
        self.tp = tuning_parameters
        self.record_video_every = self.tp.visualization.record_video_every
        self.env_id = self.tp.env.level
        self.video_path = self.tp.visualization.video_path
        self.is_rendered = self.tp.visualization.render
        self.seed = self.tp.seed
        self.frame_skip = self.tp.env.frame_skip
        self.human_control = self.tp.env.human_control
        self.wait_for_explicit_human_action = False
        self.is_rendered = self.is_rendered or self.human_control
        self.game_is_open = True
        self.renderer = Renderer()

    @property
    def measurements(self):
        assert False

    @measurements.setter
    def measurements(self, value):
        assert False

    @property
    def observation(self):
        assert False

    @observation.setter
    def observation(self, value):
        assert False

    def _idx_to_action(self, action_idx):
        """
class EnvRegistry(object):
    """Register an env by ID. IDs remain stable over time and are

797个env

agent:::

!!!

if 'action_intrinsic_reward' in action_info.keys():

下面是3个类的继承及函数重载。

class PolicyOptimizationAgent(Agent):

下面就是agent初始化完毕开始循环跑起来

agent = eval(tuning_parameters.agent.type + '(env_instance, tuning_parameters)')
# Start the training or evaluation
if tuning_parameters.evaluate:
    agent.evaluate(sys.maxsize, keep_networks_synced=True)  # evaluate forever
else:
    agent.improve()

基本流程大致如此。后面继续细化。

原文发布于微信公众号 - CreateAMind(createamind)

原文发表时间:2018-03-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏desperate633

深入理解SortSet类型的使用及应用Redis 有序集合(sorted set)SortSet的应用场景SortSet的常用命令

Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。

3382
来自专栏潇涧技术专栏

Python Basics

1.使用glob模块可以用通配符的方式搜索某个目录下的特定文件,返回结果是一个list

962
来自专栏web前端教室

重学javascript 红皮高程(3)

继续啊,继续JS基础知识补全之路。 昨天说到JS的几种数据类型,像我这种脑子不太好使,记不清JS共有几种对象的人,可以这么记,JS这东西根本不支持自定义类型,所...

2259
来自专栏专注 Java 基础分享

虚拟机字节码执行引擎

所谓的「虚拟机字节码执行引擎」其实就是 JVM 根据 Class 文件中给出的字节码指令,基于栈解释器的一种执行机制。通俗点来说,也就是 JVM 解析字节码指令...

4258
来自专栏yang0range

Java的面试基础题(二)

1)特点:存储对象;长度可变;存储对象的类型可不同 2)Collection (1)List:有序的;元素可重复,有索引 (add(index, elem...

1822
来自专栏Petrichor的专栏

python: TODO 助记符

TODO 在 python 中作为一种 助记符 (Mnemonics),用来解释 将要做什么 。

1482
来自专栏从零开始学 Web 前端

请编写一个C函数,将一个字符串逆序

目前有两种思路,一个是申请一片辅助空间,然后将原字符串逆向拷贝到辅助空间,然后输出;另一种是原地逆序,不需要额外的辅助空间,方法就是字符串首尾交换。

1352
来自专栏专注 Java 基础分享

虚拟机字节码执行引擎

所谓的「虚拟机字节码执行引擎」其实就是 JVM 根据 Class 文件中给出的字节码指令,基于栈解释器的一种执行机制。通俗点来说,也就是 JVM 解析字节码指令...

2634
来自专栏Golang语言社区

Golang语言之异常处理

在编写Go语言代码的时候,我们应该习惯使用error类型值来表明非正常的状态。作为惯用法,在Go语言标准库代码包中的很多函数和方法也会以返回error类型值来表...

35313
来自专栏xingoo, 一个梦想做发明家的程序员

套接口编程

1 struct in_addr{ 2 in_addr_t s_addr; 3 }; 4 struct sockaddr_in{ 5 ...

2068

扫码关注云+社区

领取腾讯云代金券