ray.rllib-入门实践-14:自定义多智能体强化学习-模型加载与评估

博客 ray.rllib-入门实践-13:自定义多智能体强化学习 中, 没有对预训练的模型加载进行介绍, 这里进行补充。

环境配置:

        torch==2.5.1

        ray==2.10.0

        ray[rllib]==2.10.0

        ray[tune]==2.10.0

        ray[serve]==2.10.0

        numpy==1.23.0

        python==3.9.18

方式1:alorithm(config=config).from_checkpoint()

给模型配置好环境和多智能体的配置细节后,加载checkpoint

为了保证单文件的可执行性, 把自定义的多智能体环境 My_Multi_Agent_Env 拷贝了过来。相关checkpoint使用了  ray.rllib-入门实践-12:自定义多智能体强化学习  训练得到的智能体, 读者也可以使用本文代码自己生成 checkpoint.

import ray 
from ray import tune 
from ray.rllib.algorithms.ppo import PPO, PPOConfig 
from ray.tune.registry import register_env
from ray.rllib.env.multi_agent_env import MultiAgentEnv 
from gymnasium import spaces
import numpy as np 

## 1. 定义多智能体环境
class My_Multi_Agent_Env(MultiAgentEnv):
    def __init__(self,env_config):
        ## 初始化智能体ID列表
        self.agents = env_config["agents"]
        ## 定义每个智能体的动作空间, 这里默认多个智能体的动作空间一样
        self.action_space = spaces.Box(low=-1,high=1,shape=(3,))
        ## 定义每个智能体的观测空间, 这里默认多个智能体的观测空间一样
        self.observation_space = spaces.Box(low=-1,high=1,shape=(5,))
        self.step_count = 0

    def reset(self, *, seed=None, options=None):
        self.step_count = 0
        obs,info = {}, {}
        for agent_name in self.agents:
            obs[agent_name] = self.observation_space.sample()
            info[agent_name] = {}
        return obs,info
    
    def step(self,action):
        self.step_count += 1

        obs,reward,terminated,tr
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值