夜晚是黑暗的,充满了恐怖。两支球队必须与黑暗进行战斗,收集资源并在各个年龄段中前进。白天发现迫切需要收集和建立可以带您度过即将到来的夜晚的资源。计划和仔细扩展 - 任何未能产生足够光线的城市都将被黑暗所消耗。
欢迎来到Lux AI挑战赛第1季!

Lux AI挑战赛是一场竞争,竞争对手设计代理商在1V1场景中针对其他竞争对手解决了多变量优化,资源收集和分配问题。除了优化外,成功的代理商还必须能够分析对手并制定适当的政策以获得优势。
要开始,请转到我们的入门部分。比赛将持续到2021年12月6日,提交时间为UTC,在比赛页面上的UTC下午11:59:https://www.kaggle.com/c/lux-ai-2021
多亏了我们的赞助商Quartco,J Ventures和Qaimera,我们今年还有10,000美元的奖金以及许多其他非货币奖品!有关更多信息,请参见https://www.lux-ai.org/sponsors-2021
确保在https://discord.gg/awjt3uacgn上加入我们的社区不和谐,与其他竞争对手一起聊天,策略和学习!我们将在Kaggle论坛和Discord上发布公告。
这是由Lux AI挑战团队使用Dimensions软件包构建的。
第1季的规格可以在此处找到:https://lux-ai.org/specs-2021。这些详细说明了游戏的工作原理以及您的代理商必须遵守什么规则。
您将需要Node.js版本12或更高版本。请参阅此处的安装说明,您只需下载推荐版本即可。
下一个部分详细介绍了推荐的设置,以开发和竞争您的机器人。对于希望使用Python和Jupyter笔记本 / Kaggle交互式笔记本的用户,请随时跳过本节并关注教程笔记本
打开命令行,并使用
npm install -g @lux-ai/2021-challenge@latest
您可能会忽略任何出现的警告,这些警告是无害的。要从命令行(CLI)运行匹配项,只需运行
lux-ai-2021 path/to/botfile path/to/otherbotfile
比赛将使用一些记录和存储错误日志以及新的errorlogs文件夹中的重播并replays夹进行运行。存储在错误记录中的日志将包括所有错误输出以及您的代理商打印到标准错误的所有内容。您可以使用我们的可视化器观看重播文件夹中存储的重播。要查看本地重播,请在此处遵循说明https://github.com/lux-ai-challenge/luxviewer2021/
有关CLI的命令的完整列表,请运行
lux-ai-2021 --help
或转到下一节以查看有关如何使用命令行工具的更多说明,包括生成状态重播和运行本地排行榜进行评估。您也可以使用此存储库中的cli.sh文件在Docker中运行所有这些,请参见此处的说明。
每种编程语言都有一个入门套件,您可以在此处找到一般API文档:https://github.com/lux-ai-challenge/lux-design-2021/tree/master/master/kits
此存储库中的套件文件夹可容纳您可以使用的所有可用入门套件,以开始竞争和构建AI代理,并向您展示如何使用您的选择的语言开始并与该机器人进行匹配。我们强烈建议您在下面的链接中仔细阅读您首选语言的文档
还有许多社区提供的工具来帮助人们建造更好的机器人,随时检查这些工具并使用适合您需求的任何东西
想使用另一种语言,但不支持吗?随意向我们的问题建议使用该语言,甚至更好,为社区创建一个入门套件,以便使用该储存库。有关此信息的更多信息,请参见我们的贡献。
要及时了解竞争和引擎的更改和更新,请注意论坛或不和谐的公告。请参阅https://github.com/lux-ai-challenge/lux-design-2021/blob/master/changelog.md,以获取完整的更改日志。
CLI工具有几个选项。例如,一个选项是种子,设置100种子,简单地运行
lux-ai-2021 --seed=100 path/to/botfile path/to/otherbotfile
它将使用种子100进行比赛。
您可以告诉CLI工具是存储代理日志还是通过--storeLogs, --storeReplay进行匹配。将这些布尔选项设置为这样
# to set to true
lux-ai-2021 --statefulReplay
# to set to false
lux-ai-2021 --storeLogs=false
默认情况下,该工具将生成最小的,基于操作的重型,大小较小且可在可视化器中工作,但它没有状态信息,例如在每个回合中地图上的资源。要生成状态重播,请将--statefulReplay选项设置为true。要将基于动作的重播转换为状态重录,请将--convertToStateful选项设置为TRUE,然后将文件传递到转换。
选择通过设置--out=path/to/file.json存储重播文件的位置
您还可以通过设置数字--loglevel=x从0到4更改记录级别。默认值为2,它将打印为终端所有游戏警告和错误。
您可以运行自己的本地排行榜 /锦标赛以一次评估多个机器人
lux-ai-2021 --rankSystem="trueskill" --tournament path/to/agent1 path/to/agent2 path/to/agent3 path/to/agent4 ...
这将运行由Trueskill排名的排行榜,并将结果打印为您的控制台的表。代理商与具有相似评分的对手匹配。建议添加--storeReplay=false --storeLogs=false因为让此运行很长时间会产生大量的重播和日志文件。
有关更多选择,请参见lux-ai-2021 --help 。
该工具与lux-ai-2021完全匹配,但在Ubuntu 18.04上运行,这是竞争服务器使用的目标系统。确保首先安装Docker
然后,要使用Lux-ai-2021 CLI工具,只需致电bash cli.sh ,它将接受相同的参数。在第一次运行中,它将构建Docker映像并在后台运行一个容器。未来的运行将会更快。此外,这使用绑定安装座,因此您可以在计算机上本地编辑文件,它们将反映在Docker容器中,反之亦然。
该工具的唯一警告是,它无法访问当前工作目录( pwd命令的输出)之上的目录中的文件。
此外,此工具将不会在您的计算机上继承同一安装的Python软件包。要添加软件包,请从此存储库中将Dockerfile下载到与cli.sh文件相同的目录中,然后将安装命令添加到文件的底部
RUN pip3 install <package_name>
更改Dockerfile后,运行bash cli.sh clean以清洁旧的Docker东西,然后像往常一样使用cli.sh
这是我们社区建立的所有社区工具的列表!
请参阅有关贡献的指南
第1季的原始设计由Bovard和Stone构想
ISA的UI/UX设计
在大卫的平衡测试帮助下
我们要感谢今年的3个赞助商,Quontco,J Ventures和Qaimera,允许我们为竞争对手提供奖金和激动人心的机会!有关它们的更多信息,请在此处查看:https://www.lux-ai.org/sponsors-2021
如果您在工作中使用Lux AI第1季环境,请引用此存储库
@software{Lux_AI_Challenge_S1,
author = {Doerschuk-Tiberi, Bovard and Tao, Stone},
month = {7},
title = {{Lux AI Challenge Season 1}},
url = {https://github.com/Lux-AI-Challenge/Lux-Design-2021},
version = {1.0.0},
year = {2021}
}