开源
Project Malmö:建立在 Minecraft 之上的人工智能实验和研究平台
来源:元经纪     阅读:471
网站管理员
发布于 2023-03-01 07:05
查看主页

概述

Project Malmö 是一个建立在 Minecraft 之上的人工智能实验和研究平台。我们的目标是激发新一代研究,以解决这个独特环境带来的具有挑战性的新问题。

MalmoEnv环境

MalmoEnv 在 Python 中实现了一个类似于 Open AI“健身房”的环境,无需任何本机代码(直接与 Java Minecraft 通信)。如果您只需要此功能,请参阅MalmoEnv。这很可能是未来开发 Malmo Minecraft 的首选方式。

如果您希望使用“原生”Malmo 实现,请安装“Malmo 原生 Python wheel”(如果适用于您的平台)或预构建的二进制版本(更多信息见下文)。从源代码自己构建马尔默始终是一个选择!

优点:

  1. 没有本地代码——您不必构建或安装平台相关代码。
    1. 单个网络连接用于运行任务。没有动态端口意味着它对虚拟化更友好。
    2. 一个更简单的多代理协调协议。一个 Minecraft 客户端实例,一个端口用于启动任务。
    3. 减少与健身房 api 的阻抗失配。

    缺点:

    1. 不支持现有的 Malmo 示例(因为使用的 API 不同)。Marlo envs 应该使用这个端口
    2. API 更受限制(例如选择视频选项)- 可以直接编辑任务 xml。

    Malmo 作为原生 Python 轮

    [hidecontent type="logged" desc="隐藏内容:登录后可查看"]

    在常见的 Windows、MacOSX 和 Linux 变体上,可以使用pip3 install malmo本地代码包将 Malmo 安装为 python:Pip install for Malmo。安装后,malmo Python 模块可用于下载源代码和示例,并使用 Malmo 游戏模组启动 Minecraft。

    或者,可以按如下方式安装预构建版本的 Malmo:

    1. 下载适用于 Windows、Linux 或 MacOSX 的最新预构建版本。 注意:这与从 Github 下载源代码的 zip 不同除非您计划自己构建源代码(这是一个较长的过程),否则这样做是行不通的。如果您遇到类似“ ImportError: No module named MalmoPython”的错误,那可能是因为您犯了这个错误。

    2. 为您的操作系统安装依赖项:WindowsLinuxMacOSX

    3. 在安装了我们的 Mod 的情况下启动 Minecraft。下面的说明。

    4. 启动我们的示例代理之一,如 Python、C#、C++ 或 Java。下面的说明。

    5. 按照教程

    6. 浏览文档。这也可以在发布 zip 中的 readme.html 中找到。

    7. 阅读博客了解更多信息。

    如果您想从源代码构建,请参阅适用于您的操作系统的构建说明:WindowsLinuxMacOSX

    问题:

    我们正在为经常遇到的情况建立wiki 的故障排除页面。如果这不起作用,请在我们的聊天页面上提问或打开一个新问题

    使用我们的 Mod 启动 Minecraft:

    Minecraft 需要创建窗口并使用 OpenGL 渲染它们,因此执行此操作的机器必须具有桌面环境。

    转到解压缩版本的文件夹,然后:

    cd Minecraft launchClient(在 Windows 上) ./launchClient.sh(在 Linux 或 MacOSX 上)

    或者,例如launchClient -port 10001在特定端口上启动 Minecraft。

    在 Linux 或 MacOSX 上:./launchClient.sh -port 10001

    注意:如果您从终端运行它,底线会显示类似“Building 95%”的字样——忽略它——不要等待 100%!只要 Minecraft 游戏窗口打开并显示主菜单,您就可以开始了。

    默认情况下,Mod 选择端口 10000(如果可用),如果不可用,将向上搜索空闲端口,最多 11000。所选端口显示在 Mod 配置页面中。

    要在 Mod 运行时更改端口,请使用portOverrideMod 配置页面中的设置。

    Mod 和代理在内部使用其他端口,并且会在 10000-11000 范围内找到空闲端口,因此如果管理一台机器用于网络使用,这些 TCP 端口应该打开。


    启动代理:

    运行 Python 代理:

    cd Python_Examples
    python3 run_mission.py
    

    运行 C++ 代理:

    cd Cpp_Examples

    要运行预构建示例:

    run_mission(在 Windows 上) ./run_mission(在 Linux 或 MacOSX 上)

    要自己构建示例:

    cmake . cmake --build . ./run_mission(在 Linux 或 MacOSX 上) Debug\run_mission.exe(在 Windows 上)

    运行 C# 代理:

    要运行预构建示例(在 Windows 上):

    cd CSharp_Examples CSharpExamples_RunMission.exe

    要自己构建示例,请在 Visual Studio 中打开 CSharp_Examples/RunMission.csproj。

    或者从命令行:

    cd CSharp_Examples

    然后,在 Windows 上:

    msbuild RunMission.csproj /p:Platform=x64
    bin\x64\Debug\CSharpExamples_RunMission.exe
    

    运行 Java 代理:

    cd Java_Examples java -cp MalmoJavaJar.jar:JavaExamples_run_mission.jar -Djava.library.path=. JavaExamples_run_mission(在 Linux 或 MacOSX 上) java -cp MalmoJavaJar.jar;JavaExamples_run_mission.jar -Djava.library.path=. JavaExamples_run_mission(在 Windows 上)

    运行 Atari 代理:(仅限 Linux)

    cd Python_Examples
    python3 ALE_HAC.py

    [/hidecontent]

免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 开源
荣耀200pro降价速度堪比陨石坠落,价格让人爱不释手
网易《破碎之地》开启计费删档测试,支持安卓iOS、PC互通
从爆火的游戏“黑神话”说起 钱塘文化众嘉宾热烈探讨“未来教育”
大模型已成人工智能巅峰对决的战场 欧洲科学院院士建议成都主打大模型垂直领域应用
抓难点拓出路,互联数智破解企业数字化转型困局

首页

分类

定制方案

消息

我的