-
前言 因为一些原因,这道原本设计了“激光探图”元素的决赛题没能在正式的决赛中与大家见面,即便在比赛结束之后赛题组依然觉得万分惋惜,故我们花了几天对赛题机制做了一个重新设计。在这个设计中,我们保留了新的红蓝工作台机制,重新引入了“激光探图” 、“战争迷雾”这些原本有趣而富有挑战的设计元素,并基于新的机制完整的实现了一版SimpleDemo供大家参考,作为一个彩蛋送给所有参赛选手当做礼物,以此感谢所有选手的参与。 在这个彩蛋当中,没有对手,有的只是你不断的超越自己;也没有比赛奖励,有的只是你在攻克了一道道技术难题之后所收获的兴奋与成长。希望所有的参赛选手,能够喜欢赛题组精心准备的这份礼物。(PS:彩蛋中包含了大家心心念念的SimpleDemo源码,并且当前版本的SimpleDemo可以同时运行于初赛、复赛、决赛、彩蛋题)彩蛋赛题简介在真实的机器人业务场景中,并不是一开始就拥有地图数据,机器人需要基于激光雷达自行完成地形的探测以构建地图数据。如何实现多机器人协同探图是一个业界算法难题,故我们在彩蛋题中引入了这一业务难题。彩蛋核心变化点:初始化时不再提供地图数据,“简单的”去掉地图数据输入“即可”让决赛代码跑起来图形界面加上了战争迷雾来显示双方探索区域。判题器运行界面:附件下载1. 赛题文档.rar:===下方帖子附件===包含:彩蛋任务书、判题器使用说明、编译运行环境说明2. WindowsRelease.zip :===下载链接===包含:Windows版本的判题器、播放器、数据集3. LinuxRelease.zip :===下载链接===包含:Linux版本的判题器、播放器、数据集4. MacOSRelease.zip :===下载链接===包含:MacOS版本的判题器、播放器、数据集,该版本可同时支持x86和M1芯片。
-
请“点击下载”附件获取内容,包含:PK赛队伍ID表、PK赛地图、PK赛所有对决replay。对局信息如下图所示:
-
请下载附件获取地图数据。决赛注意事项:● 总决赛正式赛提交时间为9:00-12:00,12:00截止提交。● 请所有队伍在10:00前至少提交一版代码参与天梯,否则视为弃权。● 现场天梯赛排行榜刷新时间为9:00-11:30,每15分钟刷新一次,11:30关闭排行榜。● 现场天梯赛采用ELO积分制排名,这意味着优势劣势是从比赛一开始就进行累积的,前期劣势积累越大后期越难翻盘,故请尽早提交自己的最好代码。● 现场天梯赛排名成绩将用于PK淘汰赛的分组。● 最大提交次数为50次,取现场天梯赛期间最后编译通过的代码进行PK淘汰赛。● 队伍之间请独立完成比赛,严禁抄袭。现场赛结束后将进行代码审查,如有抄袭行为将同时取消抄袭与被抄袭队伍的成绩。● 禁止以任何黑客手段攻击判题器或比赛平台的漏洞,任何非正常手段获得的成绩均属无效,如发现漏洞请及时联系组委会。
-
考虑到现场赛只有三小时,时间比较紧张,为了避免出现临场时间不够调试而导致的意外情况,也为了减少比赛结果的随机性,赛题组提供了另外两种情况的练习地图供大家参考,大家可以下载附件地图用于本地测试。(线上练习赛环境不变)。
-
基于提升比赛体验的考虑,赛题组决定划定正式比赛的地图设计范围,以给大家一些优化方向的指引,避免选手去考虑无穷无尽的地图可能性以节约时间。 正式比赛(现场天梯赛/PK淘汰赛)将包含以下四种地图设计类型: 相对开阔的地形,各自的资源点都比较丰富,双方运输路径存在交错。(参考练习赛图1,但地形更开阔,资源点更丰富) 解读:完全无避让的话会存在相互冲撞,这意味着双方在行进过程中需要根据持物状态来决定是否避让。 相对开阔的地形,各自的资源点都比较丰富,地图被分割为两个不连通区域,其中一个区域为红色基地,只有红色工作台,机器人初始为3红1蓝,另一个区域为蓝色基地,只有蓝色工作台,机器人初始为3蓝1红。 解读:这意味着双方各自有一个机器人完全不需要考虑运输物品,只需要作为对方的移动障碍。 相对狭窄的地形,双方有各自独立基地,基地之间存在多条路径连通,并且基地外部存在一些分散的红蓝工作台可使用。(参考练习赛图2) 解读:双方可选择各自发展,或者干扰对方移动,或者占领一些关键点位。 极为开阔的地形,整张地图完全没有蓝色工作台,只有红色工作台,且红色工作台点比较丰富。 解读: 这意味着蓝方完全不需要考虑运输,只需要作为红方的移动障碍。 近期选手提问较多的关于地图的问题解答: 1. 正式赛地图是否会出现一些关键点,只要占领后就可以导致对方完全无法生产销售? A:基于参赛体验的考虑,一方完全被卡住无法生产会让比赛变得攻守不平衡,故正式赛地图会尽力避免完全卡住对方的情况,但是在保证生产方总能继续运作的前提下允许部分卡住的情况(例如可能存在一些点占领后会导致对方绕远路或者转向其他工作台)。 2. 现场天梯赛和PK淘汰赛的地图数量和分布类型是怎样的? A:现场天梯赛采用2张地图,地图公开,且只会选择上述开阔类型的地图公开(类型1、2、4中的2个)。 PK淘汰赛由2张图提升至4张地图,地图不公开,上述四种类型的地图将各有一张,提升到4张图是考虑到在地图不公开的情况下可以让PK赛淘汰赛的结果更具有确定性。 每场对决均取双方总分决胜负。
-
经过组委会综合考虑,决定基于现场天梯赛排名来进行PK赛分组,分组信息如下图所示,如选手有任何疑问,请在公示期间(2023-04-16 00:00之前)发送邮件至:codecraft2023@huawei.com 进行反馈。
-
赛题组对练习赛地图2做出了优化,缩短了红蓝双方基地的路径长度,并且提高了地图连通性,以增强这张地图的对抗性,请下载附件中的地图文件来更新。更新前后对比如下(左边为更新前,右边为更新后):
-
1、证书编码为20位字母和数字的组合码,示例如下:"HWCPT XXXX XXXX XXXXXXX"2、点击cid:link_0/注册、登录华为云账户3、点击首页“注册证书查询”楼层4、输入竞赛电子证书编号,点击查询5、查看并下载电子证书,保存本地即可
-
Q:运行时间为什么调整为4分钟?A:因为天梯赛的运行是每个周期运行一轮,其要求运行结果必须在周期内给出。综合考虑最坏的运行耗时,以及需要给平台预留一定的处理时间,故调整判题器运行时间为4分钟。Q:为什么决赛去掉了随机种子?A:因为引入了对手这一超级不确定因素,已经不再需要依靠随机种子来防止提交序列的情况,因此去掉随机种子来提高结果的确定性。Q:去掉随机种子后是否意味着相同的双方代码会跑出一致的结果?A:如果没有跳帧,并且选手没有自己添加随机因子,那么大概率是一致的结果。但仍有一定的概率出现不一致的结果,这是因为决赛判题器需要每一帧接收双方程序的指令,这个指令到达判题器的顺序有先后,并且可能发生浮动。如果同一帧内双方均有出现购买或出售指令(该指令会导致机器人半径变化),那么不同的指令到达顺序可能会导致不同的物理模拟结果。 Q:正式比赛时是否会变更赛题?A:总的来说赛题机制和逻辑均不会变化。但考虑到升级为对抗赛之后其平衡性很难在一开始就做到完美,因此如果在练习赛过程中有出现影响平衡性的情况,赛题组将会对相关数值做出一定的调整以确保正式比赛有一个更完美的体验。如果赛题组决定调整数值,将至少在正式比赛开始前三天告知大家,以确保大家有时间做出数值调整。
-
【赛题说明】在真实的业务场景中,场地上除了静态障碍之外还会存在不可预知的移动障碍(例如行人),机器人需要通过激光雷达来扫描周围的移动物体以做出不同反应。决赛将引入这一业务难题,并升级为双人对抗赛,由你和对手来相互扮演对方的移动障碍,同时为机器人引入激光雷达来模拟真实业务中的物体探测。决赛核心变化点:决赛升级为对抗赛,双方有各自的工作台,分红蓝表示。蓝方机器人在重量/力量/碰撞上占优势,而红方在速度上占优势。引入激光雷达用于物体探测运行时间由5分钟调整为至4分钟去除随机种子设定,不再有万分之一的随机误差机器人之间以及与墙壁之间的摩擦系数降低运行异常时,异常方0分,对手方100万分附件下载1. 赛题文档.zip:===下载链接===包含:决赛任务书、判题器使用说明、编译运行环境说明2. WindowsRelease.zip :===下载链接===包含:Windows版本的判题器、播放器、数据集3. LinuxRelease.zip :===下载链接===包含:Linux版本的判题器、播放器、数据集4. MacOSRelease.zip :===下载链接===包含:MacOS版本的判题器、播放器、数据集,该版本可同时支持x86和M1芯片。
-
请问今天4.10号会发初赛及复赛获奖证书吗(为了提交夏令营材料用),谢谢!
-
=======参考附件======
-
赛题组对4张图做了难度分层设计,设计难度从易到难依次为1-3-4-2,我们选择将最简单和最难的两张图(图1、图2)公开来提高参赛体验,而将难度居中的两张图(图3、图4)隐藏来考验解法通用性,请通过附件下载图1和图2。(注:该难度指设计难度,仅供参考,运行在不同选手的代码下可能会产生不同的实际难度效果)。4张图地形概述:图1:相对简单的地图,空旷的地图中存在零星的障碍点,初赛代码稍微改改也能得分,但由于只有一个机器人能动,上限也较低。图2:一张新的迷宫图,地形复杂且狭窄,机器人之间容易冲突,比较考验选手的避让算法。考虑到该图的难度,所以赛题组提高了该图的资源率和密集度,以提高该图的分数上限。图3:由横线与竖线划分房间的图,房间之间存在不同宽度的门,整体地形开阔,机器人之间不太容易卡住,有点类似练习赛的图2。图4:存在弯曲、狭窄的通道,需要有一点避让能力。SimpleDemo 提交分数参考(仅供参考,不具备代表性):分数浮动请关注避让算法:浮动通常是由图2和图4产生,如果选手的避让算法没做好,那么可能会在某个随机时刻产生拥堵从而造成分数浮动,这需要选手通过优化避让算法来解决。为什么选择公开图1和图2?公开这两张图有如下考虑:图1设计上最简单,公开该图是为了让大家都能获得一个基础分值。图2设计上最困难,选手对定位问题的需求最强烈。
-
C++使用Vector导致判题器崩溃问题描述只需要在main.cpp中加入如下代码,即会出现判题器崩溃。#include <vector> class Crash{ std::vector<int> a; }; Crash crash;运行环境及报错使用的编译指令如下为 g++ main.cpp -o main.exe使用的执行指令为 Robot_gui.exe -f SDK/c++/main.exe -m maps\1.txt使用的编译器为 MinGW64报错信息如下[INFO]D:\Project\CodeCraft2023\Robot\Game.cpp:53|Game::Init|frame[1]|Loaded workbench : 37 ReadFileEx err. 管道已结束。 [ERR]D:\Project\CodeCraft2023\Robot\Player.cpp:214|Player::HandleIOError|frame[1]|Handle IO Error [ERR]D:\Project\CodeCraft2023\Robot\Player.cpp:72|Player::PlayerCrash|frame[1]|Player crashed. [ERR]D:\Project\CodeCraft2023\Robot\Game.cpp:285|Game::Run|frame[1]|WaitForPlayerReady err. [INFO]D:\Project\CodeCraft2023\Robot\Game.cpp:528|Game::GameOver|frame[1]|player skipped frames:0 {"status":"Runtime error.","score":0}PS:由于该问题在编译过程中不会有任何报错和警告,也未查询到可能的报错原因,只有运行判题器的时候会崩溃。因此恳请主办方帮忙调查一下原因。附录附上完整的main.cpp内容。#include <iostream> using namespace std; #include <vector> class Crash{ std::vector<int> a; }; Crash crash; bool readUntilOK() { char line[1024]; while (fgets(line, sizeof line, stdin)) { if (line[0] == 'O' && line[1] == 'K') { return true; } //do something } return false; } int main() { readUntilOK(); puts("OK"); fflush(stdout); int frameID; while (scanf("%d", &frameID) != EOF) { readUntilOK(); printf("Ó55616c3-2de7-4283-8218-d1e008d73ce2n", frameID); int lineSpeed = 3; double angleSpeed = 1.5; for(int robotId = 0; robotId < 4; robotId++){ printf("forward %d Ó55616c3-2de7-4283-8218-d1e008d73ce2n", robotId, lineSpeed); printf("rotate %d ó55616c3-2de7-4283-8218-d1e008d73ce2n", robotId, angleSpeed); } printf("OK\n", frameID); fflush(stdout); } return 0; }
-
进入区域复赛32强,得到的机考绿卡有效期多久啊,研一的参加研二找工作的时候能用吗?
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签