当前位置: 首页 > news >正文

(1)bark-ml

github开源bark-ml:https://github.com/bark-simulator/bark-ml/

bark官网:https://bark-simulator.github.io/

bark-ml指导手册:https://bark-simulator.github.io/tutorials/bark_ml_getting_started/

Youtube视频:https://www.youtube.com/user/fortissTV/search?query=BARK

相关论文:

  • Graph Neural Networks and Reinforcement Learning for Behavior Generation in Semantic Environments (IV 2020)
  • BARK: Open Behavior Benchmarking in Multi-Agent Environments (IROS 2020)
  • Counterfactual Policy Evaluation for Decision-Making in Autonomous Driving (IROS 2020, PLC Workshop)

一、项目下载

# 新建一个Anaconda环境
conda create -n bark-ml python=3.7
# 如果想删除环境采用以下操作
# conda remove -n your_env_name(虚拟环境名称) --all
# 进入环境
conda activate bark-ml
pip install virtualenv==16.7.8
pip install bark-ml
git clone https://github.com/bark-simulator/bark-ml
cd bark-ml

二、配置环境

1、修改install.sh

which python  # 查看自己的python路径:/home/myx/anaconda3/envs/bark-ml/bin/python
sudo vim utils/install.sh  # 修改install.sh文件

python3.7替换为刚刚得到的自己的python路径/home/myx/anaconda3/envs/bark-ml/bin/python

image-20220720193857906

bash utils/install.sh
# 可能需要自己运行一下
# pip install torch==1.9.0+cpu torchvision -f https://download.pytorch.org/whl/torch_stable.html
# 进入虚拟环境
source utils/dev_into.sh

2、修改WORKSPACE

sudo gedit WORKSPACE

将原句

python_configure(name = “local_config_python”)

改为

python_configure(name = “local_config_python”, python_version = “3”)

image-20220720201814346

三、测试

# source utils/dev_into.sh
# deactivate
bazel test //...
bazel test //bark_ml:unit_tests
bazel run //examples:continuous_env
bazel run //examples:blueprint_config
bazel run //examples:tfa
bazel run //examples:tfa_gnn -- --mode=train
bazel run //examples:tfa_counterfactual -- --mode=train
# 如果想训练
# bazel run //examples:tfa -- --mode=train
  • 新建自己的参数文件夹 myx_params
/home/myx/Project/bark-ml/examples/myx_checkpoints/
/home/myx/Project/bark-ml/bark_ml/environments/blueprints/merging/merging.py
# 机器人行为和一大堆参数

/home/myx/anaconda3/envs/bark-ml/lib/python3.7/site-packages/tf_agents/drivers/dynamic_episode_driver.py
# 跑循环神经网络训练_loop_body_fn

/home/myx/Project/bark-ml/bark_ml/environments/blueprints/merging/merging.py
# evaluator 设置

/home/myx/Project/bark-ml/bark_ml/environments/single_agent_runtime.py
# reward, done, info = self._evaluator.Evaluate(

/home/myx/Project/bark-ml/bark_ml/evaluators/general_evaluator.py
  def Evaluate(self, observed_world, action):
    """Returns information about the current world state."""
    eval_results = observed_world.Evaluate()
    reward = 0.
    scheduleTerminate = False

    for _, eval_fn in self._bark_ml_eval_fns.items():
      t, r, i = eval_fn(observed_world, action, eval_results)
      eval_results = {**eval_results, **i} # merge info
      reward += r # accumulate reward
      if t: # if any of the t are True -> terminal
        scheduleTerminate = True

    return reward, scheduleTerminate, eval_results


/home/myx/anaconda3/envs/bark-ml/lib/python3.7/site-packages/tf_agents/agents/ppo/ppo_agent.py
# ppo 训练代码

相关文章:

  • 【CSS技巧系列】解决子容器滚动引发父容器滚动问题
  • 如何设置和解除PDF文件保护?
  • 树莓派i2c通讯 设置 和 查看 i2c通信地址方法
  • 【数据挖掘】Pandas介绍
  • 语音转文字软件哪个好?快来看看这几个软件
  • 想转行数字IC验证,需要提前了解哪些内容?
  • SignalR+FluentValidation实现mvc
  • 阿里大牛解析淘宝与Twitter 分布式系统案例与其架构设计原来源码
  • 融资租赁和经营租赁
  • 【JetPack Compose】列表和动画
  • 计基于安卓 Android 微信小程序的孕妇产后康复系统app
  • 钉钉扫码登陆第三方网站
  • Python 自动化测试(三): pytest 参数化测试用例构建
  • Java通过Zxing生成和解析二维码
  • 如何在手机浏览器中打开安卓APP
  • [nginx文档翻译系列] 控制nginx
  • [数据结构]链表的实现在PHP中
  • 【划重点】MySQL技术内幕:InnoDB存储引擎
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • gcc介绍及安装
  • JavaScript DOM 10 - 滚动
  • Java读取Properties文件的六种方法
  • leetcode-27. Remove Element
  • Spring框架之我见(三)——IOC、AOP
  • vue2.0项目引入element-ui
  • 包装类对象
  • 小程序、APP Store 需要的 SSL 证书是个什么东西?
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • #Lua:Lua调用C++生成的DLL库
  • #ubuntu# #git# repository git config --global --add safe.directory
  • (14)Hive调优——合并小文件
  • (4)Elastix图像配准:3D图像
  • (C语言版)链表(三)——实现双向链表创建、删除、插入、释放内存等简单操作...
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (力扣记录)235. 二叉搜索树的最近公共祖先
  • (五)c52学习之旅-静态数码管
  • ./configure、make、make install 命令
  • .equals()到底是什么意思?
  • .L0CK3D来袭:如何保护您的数据免受致命攻击
  • .net core 依赖注入的基本用发
  • .NET core 自定义过滤器 Filter 实现webapi RestFul 统一接口数据返回格式
  • .net framework 4.0中如何 输出 form 的name属性。
  • .net MVC中使用angularJs刷新页面数据列表
  • .NET/C# 如何获取当前进程的 CPU 和内存占用?如何获取全局 CPU 和内存占用?
  • .NET/C# 使用反射注册事件
  • .net安装_还在用第三方安装.NET?Win10自带.NET3.5安装
  • .Net下使用 Geb.Video.FFMPEG 操作视频文件
  • .Net中的集合
  • .net中应用SQL缓存(实例使用)
  • @ComponentScan比较
  • @html.ActionLink的几种参数格式
  • [1181]linux两台服务器之间传输文件和文件夹
  • [AutoSar]BSW_Com02 PDU详解