前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【Hierarchical RL】Options Framework(选项框架)

【Hierarchical RL】Options Framework(选项框架)

作者头像
不去幼儿园
发布于 2024-12-03 05:44:13
发布于 2024-12-03 05:44:13
13500
代码可运行
举报
文章被收录于专栏:强化学习专栏强化学习专栏
运行总次数:0
代码可运行

📢本篇文章是博主强化学习(RL)领域学习时,用于个人学习、研究或者欣赏使用,并基于博主对相关等领域的一些理解而记录的学习摘录和笔记,若有不当和侵权之处,指出后将会立即改正,还望谅解。文章分类在👉强化学习专栏: 【强化学习】(31)---《Options Framework(选项框架)》

Options Framework(选项框架)

Options Framework(选项框架)是分层强化学习中的一种经典方法,旨在通过将动作抽象化为**选项(Options)**来简化复杂任务的学习过程。基于 Sutton 等人提出的选项框架(Options Framework),其中选项是从一个子任务执行到完成的高层决策链。高层决策什么时候调用特定选项,低层负责具体执行选项的策略。

选项框架允许智能体在多个时间步内选择并执行较高级别的策略,而不仅仅是在每个时间步选择单个动作。通过这种方式,智能体可以更好地解决长时间跨度的任务,并且可以复用已学习的子任务。

上图是文献中所用的环境(和下面代码的环境不同),房间的例子是一个网格世界环境,具有随机的cell到cell的动作和房间到房间的走廊选项。


1. 选项框架的核心思想

选项框架的核心思想是将动作抽象为选项,每个选项可以在多个时间步内控制代理的行为。每个选项由以下三个元素定义:

  • 初始条件(Initiation Set, I):选项能够被执行的状态集合,即哪些状态可以启动该选项。
  • 策略(Policy,

:选项内部的策略,定义了当选项被激活时在每个时间步中执行的具体动作。

  • 终止条件(Termination Condition,

:一个概率函数,定义了选项在每个时间步结束时是否终止。

通过这种分层结构,选项可以看作是一个高层次的操作,它包含了在多个时间步内执行的动作序列。这为复杂任务的分解和任务复用提供了可能。


2. 选项的定义

在选项框架中,**选项(Option)**是一个包含了多个步骤的决策单位。具体来说,选项可以通过以下三元组来定义:

其中:

:表示初始条件,定义在哪些状态下可以激活该选项。

:是选项的内部策略,它决定了在执行选项时,代理在每个时间步采取的具体动作。

:终止条件,表示选项在某个状态下结束的概率,即该选项是否会继续执行。


3. 选项框架的工作机制

选项框架的工作机制包括选项的选择、执行以及终止:

  1. 选项选择:在每个时间步,代理可以选择执行一个选项。选项的选择策略可以基于高层策略(也称为元策略)。
  2. 选项执行:一旦选项被选择,代理将根据该选项的内部策略

选择并执行具体的动作,直到该选项被终止。

  1. 选项终止:选项根据其终止条件

确定是否在当前状态结束。如果选项结束,代理将返回到元策略,选择下一个选项。如果选项没有结束,代理继续使用选项的内部策略。


4. 选项框架中的策略

在选项框架中,强化学习的策略分为两个层次:

  • 元策略(Meta-Policy):负责在不同的状态下选择合适的选项。元策略的作用是高层次的决策,它将复杂任务分解为一系列的子任务(选项)。
  • 选项策略(Option Policy, (\pi_o)):在选项被激活时,选项策略负责在每个时间步内选择具体的动作,直到选项终止。

元策略和选项策略通常使用不同的学习算法。例如,元策略可以通过Q-learning学习,而选项策略可以通过Actor-Critic方法来优化。


5. 选项框架的关键公式

选项框架中的值函数可以通过拓展标准强化学习的值函数来定义。选项的 Q 值函数表示为:

其中:

(s)
(s)

是当前状态。

(o)
(o)

是选择的选项。

(r(s_t, a_t))
(r(s_t, a_t))

是在时间步

(t)
(t)

执行动作后的即时奖励。

(\gamma)
(\gamma)

是折扣因子。

选项框架中的Bellman方程为:

其中,

(\tau)
(\tau)

表示选项执行的时间步数,

(s')
(s')

是选项结束后的状态,

(o')
(o')

是下一个选项。


6. 选项框架的学习方法

选项框架的学习主要包括以下两部分:

  1. 学习元策略:元策略的学习通常通过 Q-learning 或其他强化学习算法来完成,目标是最大化长时间跨度内的累积奖励。元策略学习的是如何选择最优的选项。
  2. 学习选项策略:每个选项的内部策略通过子任务的奖励信号来学习。可以使用 Q-learning、Actor-Critic 或其他强化学习算法来更新每个选项的策略。

[Python] Options Framework实现

分层强化学习的 Options Framework 是一种增强型方法,通过将动作空间划分为“选项”(options),从而在强化学习过程中实现分层控制。下面是一个简单的 Options Framework 实现,应用于经典的 CartPole 环境。

实现步骤:
  1. 创建选项:我们将定义一组选项(例如:向左、向右等),每个选项包含自己的策略和终止条件。
  2. 管理器:高层策略选择器,用于在当前状态下选择一个选项。
  3. 执行选项:一旦选定选项,就在其策略指导下进行一段时间的控制,直到满足选项的终止条件或达到最大时间步。
  4. 强化学习算法:选项和管理器都可以通过 Q-learning 或 Actor-Critic 等强化学习算法进行训练。

🔥若是下面代码复现困难或者有问题,欢迎评论区留言;需要以整个项目形式的代码,请在评论区留下您的邮箱📌,以便于及时分享给您(私信难以及时回复)。

算法训练阶段

只进行训练逻辑,无动画显示。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"""《Options Framework实现项目》
    时间:2024.10
    环境:CartPole
    作者:不去幼儿园
"""
import gym
import numpy as np
import torch
import torch.nn as nn
import torch.optim as optim
import time

# 环境设置
env = gym.make('CartPole-v1')
state_dim = env.observation_space.shape[0]
action_dim = env.action_space.n

# 高层策略网络
class ManagerNet(nn.Module):
    def __init__(self, state_dim, option_dim):
        super(ManagerNet, self).__init__()
        self.fc = nn.Sequential(
            nn.Linear(state_dim, 128),
            nn.ReLU(),
            nn.Linear(128, option_dim)
        )

    def forward(self, state):
        return self.fc(state)

# 选项策略网络
class OptionNet(nn.Module):
    def __init__(self, state_dim, action_dim):
        super(OptionNet, self).__init__()
        self.fc = nn.Sequential(
            nn.Linear(state_dim, 128),
            nn.ReLU(),
            nn.Linear(128, action_dim)
        )

    def forward(self, state):
        return self.fc(state)

# 选项类定义
class Option:
    def __init__(self, policy_net, termination_net):
        self.policy_net = policy_net
        self.termination_net = termination_net

    def select_action(self, state):
        state = torch.FloatTensor(state).unsqueeze(0)
        action_probs = self.policy_net(state)
        action = torch.argmax(action_probs).item()
        return action

    def should_terminate(self, state):
        state = torch.FloatTensor(state).unsqueeze(0)
        termination_prob = self.termination_net(state)
        return termination_prob.item() > 0.5

# 初始化管理器和选项
option_dim = 2  # 两个选项,分别对应左右
options = [Option(OptionNet(state_dim, action_dim), OptionNet(state_dim, 1)) for _ in range(option_dim)]
manager_net = ManagerNet(state_dim, option_dim)
manager_optimizer = optim.Adam(manager_net.parameters(), lr=0.001)

# 训练
def train_options_framework(env, num_episodes=1000):
    for episode in range(num_episodes):
        state, _ = env.reset()
        total_reward = 0
        option = np.random.choice(len(options))  # 随机选择一个选项

        for t in range(200):  # 每个episode最多执行200步
            # 选择高层选项
            state_tensor = torch.FloatTensor(state).unsqueeze(0)
            option_probs = manager_net(state_tensor)
            option = torch.argmax(option_probs).item()

            # 执行选项的策略
            action = options[option].select_action(state)
            next_state, reward, done, _, _ = env.step(action)
            total_reward += reward

            # 检查选项终止条件
            if options[option].should_terminate(next_state) or done:
                option = np.random.choice(len(options))  # 重新选择选项

            state = next_state

            if done:
                break

        print(f'Episode {episode}: Total Reward: {total_reward}')


# 开始训练
print("Starting training...")
train_options_framework(env, num_episodes=100)
算法测试阶段

通过调用 env.render() 显示动画,并在测试时使用模型进行推理

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 测试函数(带动画显示)
def test_options_framework_with_render(env, num_episodes=5):
    for episode in range(num_episodes):
        state, _ = env.reset()
        total_reward = 0
        option = np.random.choice(len(options))  # 随机选择一个选项

        for t in range(200):  # 每个episode最多执行200步
            env.render()  # 显示动画

            # 选择高层选项
            state_tensor = torch.FloatTensor(state).unsqueeze(0)
            option_probs = manager_net(state_tensor)
            option = torch.argmax(option_probs).item()

            # 执行选项的策略
            action = options[option].select_action(state)
            next_state, reward, done, _, _ = env.step(action)
            total_reward += reward

            # 检查选项终止条件
            if options[option].should_terminate(next_state) or done:
                option = np.random.choice(len(options))  # 重新选择选项

            state = next_state

            if done:
                break

        print(f'Test Episode {episode}: Total Reward: {total_reward}')
        time.sleep(0.01)  # 控制动画播放速度

    env.close()  # 关闭环境


# 测试阶段(显示动画)
print("Starting testing with render...")
env = gym.make('CartPole-v1', render_mode="human")
test_options_framework_with_render(env, num_episodes=5)

[Notice] 代码说明:

  1. ManagerNet:高层策略网络,用于在当前状态下选择一个选项。
  2. OptionNet:每个选项的策略网络,用于选择动作。
  3. Option类:定义了选项的策略(select_action)和终止条件(should_terminate)。
  4. 训练逻辑:在每个episode中,管理器会选择一个选项,然后选项控制动作,直到它的终止条件触发或episode结束。

由于博文主要为了介绍相关算法的原理应用的方法,缺乏对于实际效果的关注,算法可能在上述环境中的效果不佳,一是算法不适配上述环境,二是算法未调参和优化,三是等等。上述代码用于了解和学习算法足够了,但若是想直接将上面代码应用于实际项目中,还需要进行修改。


7. 选项框架的优点与挑战

(1) 优点
  • 处理长时间跨度任务:选项允许代理跨多个时间步执行策略,使其特别适合处理需要长时间规划的任务。
  • 任务分解与复用:选项框架可以将复杂任务分解为可复用的子任务,减少了学习的难度,并提高了任务完成效率。
  • 灵活性:选项框架允许在分层结构中灵活地定义不同时间尺度的子任务,适用于多种任务场景。
(2) 挑战
  • 选项设计:如何设计有效的选项(包括初始条件、策略和终止条件)是一个关键问题。如果选项设计不合理,可能导致低效或无效的学习过程。
  • 选项的自动化发现:在一些复杂任务中,如何自动发现并学习有用的选项仍然是一个具有挑战性的问题。

8. 选项框架的应用场景

选项框架广泛应用于需要长时间规划和任务分解的场景,包括:

  • 机器人控制:例如,机器人导航和机械臂操作可以通过将任务分解为选项来解决复杂的操作问题。
  • 策略游戏:选项框架可以用于分解复杂的游戏策略,例如在棋类游戏或实时策略游戏中分解长期规划。
  • 多步骤规划任务:例如物流、资源分配、路径规划等任务,选项框架可以帮助代理通过分解和复用子任务来实现复杂目标。
相关文献:

Options Framework 是由 Richard S. Sutton 等人在以下论文中提出的:

Sutton, Richard S., Precup, Doina, and Singh, Satinder. "Between MDPs and semi-MDPs: A framework for temporal abstraction in reinforcement learning." Artificial Intelligence 112.1-2 (1999): 181-211.

🔥想了解更多分层强化学习的文章,请查看文章: 【RL Latest Tech】分层强化学习(Hierarchical RL)

文章若有不当和不正确之处,还望理解与指出。由于部分文字、图片等来源于互联网,无法核实真实出处,如涉及相关争议,请联系博主删除。如有错误、疑问和侵权,欢迎评论留言联系作者

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-12-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
【RL Latest Tech】分层强化学习:Option-Critic架构算法
分层强化学习(Hierarchical Reinforcement Learning, HRL)通过将复杂问题分解为更小的子问题,显著提高了强化学习算法在解决高维状态空间和长期目标任务中的效率。Option-Critic架构是分层强化学习中一种非常有影响力的方法,专门用于自动发现和优化子策略(称为“Option”)。它是在经典的Options框架基础上提出的,用来处理分层决策问题,特别是可以在没有明确的子目标定义的情况下自动学习子策略。
不去幼儿园
2024/12/03
2551
【RL Latest Tech】分层强化学习:Option-Critic架构算法
【Hierarchical RL】动态分层强化学习(DHRL)算法
动态分层强化学习,Dynamic Hierarchical Reinforcement Learning (DHRL) 是一种自适应分层强化学习算法,其目标是根据任务和环境的复杂性动态地构建、修改和利用分层策略。DHRL 不仅仅是预定义层次结构的简单执行,而是允许代理在学习过程中根据需要动态生成和调整分层策略,从而实现更好的任务分解和高效学习。
不去幼儿园
2024/12/03
1750
【Hierarchical RL】动态分层强化学习(DHRL)算法
【Hierarchical RL】分层演员-评论家(Hierarchical Actor-Critic )算法
分层演员-评论家,Hierarchical Actor-Critic (HAC) 算法是一种用于分层强化学习(Hierarchical Reinforcement Learning, HRL)的算法,由Levy等人在2019年提出。HAC的目的是通过分层结构,将复杂任务分解为不同的时间尺度的子任务,从而更高效地学习策略。该算法使用了两层的Actor-Critic架构来实现策略和值函数的学习,并通过子任务的分解来降低学习的难度。
不去幼儿园
2024/12/03
2260
【Hierarchical RL】分层演员-评论家(Hierarchical Actor-Critic )算法
【Hierarchical RL】离线策略修正分层强化学习(HIRO)算法
离线策略修正分层强化学习,Hierarchical Reinforcement Learning with Off-Policy Correction (HIRO) 是一种基于分层强化学习的算法,旨在解决长时间跨度和稀疏奖励问题。HIRO 特别引入了离策略(off-policy)校正机制,允许高层策略利用低层策略的经验,而不会因为低层策略的更新而产生偏差。
不去幼儿园
2024/12/03
1990
【Hierarchical RL】离线策略修正分层强化学习(HIRO)算法
【Hierarchical RL】隐空间分层强化学习(HRL-LS )算法
隐空间分层强化学习,Hierarchical Reinforcement Learning with Latent Space (HRL-LS) 是一种分层强化学习(Hierarchical Reinforcement Learning, HRL)算法,旨在通过在隐空间(Latent Space)中进行策略优化,来处理高维复杂任务中的长期依赖问题。该算法提出了一种新的框架,能够同时利用分层结构和潜在变量模型,来提高在复杂环境中的学习效率。
不去幼儿园
2024/12/03
1380
【Hierarchical RL】隐空间分层强化学习(HRL-LS )算法
【RL Latest Tech】分层强化学习(Hierarchical RL)
分层强化学习(Hierarchical Reinforcement Learning,HRL)是一类旨在通过引入多层次结构来提高强化学习算法效率的方法。其核心思想是将复杂的任务分解为若干子任务,通过解决这些子任务来最终完成整体目标。以下是关于分层强化学习的详细介绍:
不去幼儿园
2024/12/03
3100
【RL Latest Tech】分层强化学习(Hierarchical RL)
【RL Latest Tech】分层强化学习:FeUdal Networks算法
FeUdal Networks(FuN)是一种分层强化学习(Hierarchical Reinforcement Learning, HRL)算法,由Google DeepMind团队提出。该算法的灵感来源于层级控制结构,将任务分解为高层目标和低层执行细节,从而提高强化学习在复杂环境中的效率。与传统的强化学习算法不同,FeUdal Networks将学习过程分为不同的层次,每个层次的角色不同,但都为共同完成任务服务。
不去幼儿园
2024/12/03
1800
【RL Latest Tech】分层强化学习:FeUdal Networks算法
【Hierarchical RL】分层深度Q网络(Hierarchical-DQN)算法
Hierarchical-DQN (Hierarchical Deep Q-Network) 是一种分层强化学习算法,专门设计用于解决复杂的任务,通过将任务分解为层次化的子任务来学习。它结合了深度 Q 网络(DQN)和分层强化学习的思想,将复杂任务分解为多个具有不同时间尺度的子任务。Hierarchical-DQN 的设计思路和 FeUdal Networks 类似,都是通过层次结构来解决长时间跨度的任务,但 Hierarchical-DQN 的具体实现有所不同,尤其在策略的选择和值函数的更新方面。
不去幼儿园
2024/12/03
2600
【Hierarchical RL】分层深度Q网络(Hierarchical-DQN)算法
【SSL-RL】自监督强化学习:事后经验回放 (HER)算法
📢本篇文章是博主强化学习(RL)领域学习时,用于个人学习、研究或者欣赏使用,并基于博主对相关等领域的一些理解而记录的学习摘录和笔记,若有不当和侵权之处,指出后将会立即改正,还望谅解。文章分类在👉强化学习专栏: 【强化学习】(41)---《【RL】强化学习入门:从基础到应用》
不去幼儿园
2024/12/03
2631
【SSL-RL】自监督强化学习:事后经验回放 (HER)算法
【RL】基于迁移学习的强化学习(RL-TL)算法
基于迁移学习的强化学习(Reinforcement Learning with Transfer Learning,简称 RL-TL)是将迁移学习(Transfer Learning)的概念应用于强化学习(Reinforcement Learning,简称 RL)中的一种方法。其核心思想是在强化学习的环境中,利用已有的经验或在其他任务中学到的知识来提升学习效率和表现。这样可以减少从零开始学习的时间和样本需求,尤其在数据稀缺或任务复杂的场景中。
不去幼儿园
2024/12/03
1550
【RL】基于迁移学习的强化学习(RL-TL)算法
【SSL-RL】自监督强化学习:Plan2Explore算法
自监督强化学习(Self-Supervised Reinforcement Learning, SSRL)是一种结合了自监督学习(Self-Supervised Learning)和强化学习(Reinforcement Learning, RL)的新兴方法。强化学习通常依赖奖励信号,但这种方法在实际场景中常常面临奖励稀疏或任务探索难度高的问题。为了解决这一问题,自监督强化学习借助自监督学习来构建奖励信号或策略学习的指导信号。
不去幼儿园
2024/12/03
980
【SSL-RL】自监督强化学习:Plan2Explore算法
【RL Latest Tech】离线强化学习:保守Q学习 (CQL) 算法
Conservative Q-Learning (CQL) 是由Sergey Levine及其团队于2020年提出的一种针对离线强化学习的算法。CQL旨在解决离线强化学习中的两个主要问题:分布偏移(Distributional Shift) 和 过度乐观的值函数估计(Overestimation of Q-Values)。CQL通过对Q值的保守约束,确保学习到的策略更为稳健,避免过度依赖于离线数据中的稀有样本或未充分探索的区域。
不去幼儿园
2024/12/03
5990
【RL Latest Tech】离线强化学习:保守Q学习 (CQL) 算法
【SSL-RL】基于好奇心驱动的自监督探索机制(ICM算法)
Intrinsic Curiosity Module (ICM) 是一种用于强化学习的内在奖励机制,旨在解决传统强化学习中在稀疏奖励场景下,智能体难以学习有效策略的问题。该算法由 Deepak Pathak 等人在论文《Curiosity-driven Exploration by Self-supervised Prediction》中提出。ICM 是通过引入“好奇心”作为一种内在动机,帮助智能体在缺乏外部奖励的情况下探索环境并获取经验,从而提高强化学习的效率。
不去幼儿园
2024/12/03
1950
【SSL-RL】基于好奇心驱动的自监督探索机制(ICM算法)
【RL Latest Tech】元强化学习(Meta Reinforcement Learning)
元强化学习是一种提升智能体适应新任务能力的技术,它让智能体不仅能学习完成当前的任务,还能在面对新的任务或环境时更快地学会新的策略。与传统的强化学习不同,元强化学习关注如何学习得更快、更高效,即学习如何学习。它让智能体在多种任务之间迁移经验,以应对任务变化或环境变化。
不去幼儿园
2024/12/03
5700
【RL Latest Tech】元强化学习(Meta Reinforcement Learning)
【RL Latest Tech】离线强化学习:行为规范Actor Critic (BRAC) 算法
离线强化学习(Offline Reinforcement Learning)旨在从静态数据集中学习策略,而无须与环境进行交互。传统的强化学习方法依赖大量环境交互,这在某些情况下是不切实际或昂贵的。离线强化学习通过利用已有的数据,降低了这些需求。
不去幼儿园
2024/12/03
1590
【RL Latest Tech】离线强化学习:行为规范Actor Critic (BRAC) 算法
【SSL-RL】自监督强化学习:随机网络蒸馏(RND)方法
随机网络蒸馏(RND)是一种自监督学习方法,旨在提高强化学习中的探索效率。该算法由 Chesney et al. 在论文《Random Network Distillation as a Method for Intrinsic Motivation》提出,RND 利用随机神经网络的输出与环境状态的真实特征之间的差异来生成内在奖励,鼓励智能体探索未见过的状态。这种方法尤其适用于外部奖励稀疏的环境。
不去幼儿园
2024/12/03
2210
【SSL-RL】自监督强化学习:随机网络蒸馏(RND)方法
【SSL-RL】自监督强化学习: 好奇心驱动探索 (CDE)算法
好奇心驱动探索,Curiosity-driven Exploration (CDE)算法 是一种用于自监督强化学习的算法,旨在通过激发智能体的“好奇心”来引导其探索未知环境。好奇心驱动的探索机制主要基于智能体对环境的预测误差:当智能体遇到无法准确预测的情境时,会将其视为一个具有“新奇性”的事件,从而被激励去探索该区域。CDE适用于稀疏奖励或无奖励的环境,通过自监督的方式增强智能体的探索能力,使其能够自主地发现和学习新的环境结构和行为模式。
不去幼儿园
2024/12/03
1330
【SSL-RL】自监督强化学习: 好奇心驱动探索 (CDE)算法
【强化学习】Soft Actor-Critic (SAC) 算法
Soft Actor-Critic(SAC) 是一种最先进的强化学习算法,属于 Actor-Critic 方法的变体。它特别适合处理 连续动作空间,并通过引入最大熵(Maximum Entropy)强化学习的思想,解决了许多传统算法中的稳定性和探索问题。
不去幼儿园
2025/01/08
9300
【强化学习】Soft Actor-Critic (SAC) 算法
【SSL-RL】增强Curiosity-driven Exploration (CDE)算法的探索能力
为了进一步提升Curiosity-driven Exploration (CDE)算法在强化学习任务中的性能,可以考虑通过以下几个方面的改进来优化智能体的探索行为和效率:
不去幼儿园
2024/12/03
1290
【SSL-RL】增强Curiosity-driven Exploration (CDE)算法的探索能力
Hands on Reinforcement Learning Frontier Chapter
虽然强化学习不需要有监督学习中的标签数据,但它十分依赖奖励函数的设置。有时在奖励函数上做一些微小的改动,训练出来的策略就会有天差地别。在很多现实场景中,奖励函数并未给定,或者奖励信号极其稀疏,此时随机设计奖励函数将无法保证强化学习训练出来的策略满足实际需要。例如,对于无人驾驶车辆智能体的规控,其观测是当前的环境感知恢复的 3D 局部环境,动作是车辆接下来数秒的具体路径规划,那么奖励是什么?如果只是规定正常行驶而不发生碰撞的奖励为+1,发生碰撞为-100,那么智能体学习的结果则很可能是找个地方停滞不前。具体能帮助无人驾驶小车规控的奖励函数往往需要专家的精心设计和调试。
一只野生彩色铅笔
2023/04/27
6970
Hands on Reinforcement Learning Frontier Chapter
推荐阅读
相关推荐
【RL Latest Tech】分层强化学习:Option-Critic架构算法
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验