• [常见FAQ] 决赛正式赛关于地图的说明与问题解答
     基于提升比赛体验的考虑,赛题组决定划定正式比赛的地图设计范围,以给大家一些优化方向的指引,避免选手去考虑无穷无尽的地图可能性以节约时间。 正式比赛(现场天梯赛/PK淘汰赛)将包含以下四种地图设计类型:  相对开阔的地形,各自的资源点都比较丰富,双方运输路径存在交错。(参考练习赛图1,但地形更开阔,资源点更丰富) 解读:完全无避让的话会存在相互冲撞,这意味着双方在行进过程中需要根据持物状态来决定是否避让。  相对开阔的地形,各自的资源点都比较丰富,地图被分割为两个不连通区域,其中一个区域为红色基地,只有红色工作台,机器人初始为3红1蓝,另一个区域为蓝色基地,只有蓝色工作台,机器人初始为3蓝1红。 解读:这意味着双方各自有一个机器人完全不需要考虑运输物品,只需要作为对方的移动障碍。  相对狭窄的地形,双方有各自独立基地,基地之间存在多条路径连通,并且基地外部存在一些分散的红蓝工作台可使用。(参考练习赛图2) 解读:双方可选择各自发展,或者干扰对方移动,或者占领一些关键点位。  极为开阔的地形,整张地图完全没有蓝色工作台,只有红色工作台,且红色工作台点比较丰富。  解读: 这意味着蓝方完全不需要考虑运输,只需要作为红方的移动障碍。  近期选手提问较多的关于地图的问题解答:  1. 正式赛地图是否会出现一些关键点,只要占领后就可以导致对方完全无法生产销售? A:基于参赛体验的考虑,一方完全被卡住无法生产会让比赛变得攻守不平衡,故正式赛地图会尽力避免完全卡住对方的情况,但是在保证生产方总能继续运作的前提下允许部分卡住的情况(例如可能存在一些点占领后会导致对方绕远路或者转向其他工作台)。  2. 现场天梯赛和PK淘汰赛的地图数量和分布类型是怎样的? A:现场天梯赛采用2张地图,地图公开,且只会选择上述开阔类型的地图公开(类型1、2、4中的2个)。 PK淘汰赛由2张图提升至4张地图,地图不公开,上述四种类型的地图将各有一张,提升到4张图是考虑到在地图不公开的情况下可以让PK赛淘汰赛的结果更具有确定性。 每场对决均取双方总分决胜负。 
  • [大赛资讯] 2023华为软挑赛决赛PK赛分组制度公示
    经过组委会综合考虑,决定基于现场天梯赛排名来进行PK赛分组,分组信息如下图所示,如选手有任何疑问,请在公示期间(2023-04-16 00:00之前)发送邮件至:codecraft2023@huawei.com 进行反馈。
  • [大赛资讯] 公告:决赛练习赛地图2更新
    赛题组对练习赛地图2做出了优化,缩短了红蓝双方基地的路径长度,并且提高了地图连通性,以增强这张地图的对抗性,请下载附件中的地图文件来更新。更新前后对比如下(左边为更新前,右边为更新后):
  • [常见FAQ] 竞赛电子证书查询指导
    1、证书编码为20位字母和数字的组合码,示例如下:"HWCPT XXXX XXXX XXXXXXX"2、点击cid:link_0/注册、登录华为云账户3、点击首页“注册证书查询”楼层4、输入竞赛电子证书编号,点击查询5、查看并下载电子证书,保存本地即可
  • [常见FAQ] 决赛常见问题FAQ
    Q:运行时间为什么调整为4分钟?A:因为天梯赛的运行是每个周期运行一轮,其要求运行结果必须在周期内给出。综合考虑最坏的运行耗时,以及需要给平台预留一定的处理时间,故调整判题器运行时间为4分钟。Q:为什么决赛去掉了随机种子?A:因为引入了对手这一超级不确定因素,已经不再需要依靠随机种子来防止提交序列的情况,因此去掉随机种子来提高结果的确定性。Q:去掉随机种子后是否意味着相同的双方代码会跑出一致的结果?A:如果没有跳帧,并且选手没有自己添加随机因子,那么大概率是一致的结果。但仍有一定的概率出现不一致的结果,这是因为决赛判题器需要每一帧接收双方程序的指令,这个指令到达判题器的顺序有先后,并且可能发生浮动。如果同一帧内双方均有出现购买或出售指令(该指令会导致机器人半径变化),那么不同的指令到达顺序可能会导致不同的物理模拟结果。  Q:正式比赛时是否会变更赛题?A:总的来说赛题机制和逻辑均不会变化。但考虑到升级为对抗赛之后其平衡性很难在一开始就做到完美,因此如果在练习赛过程中有出现影响平衡性的情况,赛题组将会对相关数值做出一定的调整以确保正式比赛有一个更完美的体验。如果赛题组决定调整数值,将至少在正式比赛开始前三天告知大家,以确保大家有时间做出数值调整。
  • [常见FAQ] 2023华为软件精英挑战赛决赛练习赛题及相关材料发布
    【赛题说明】在真实的业务场景中,场地上除了静态障碍之外还会存在不可预知的移动障碍(例如行人),机器人需要通过激光雷达来扫描周围的移动物体以做出不同反应。决赛将引入这一业务难题,并升级为双人对抗赛,由你和对手来相互扮演对方的移动障碍,同时为机器人引入激光雷达来模拟真实业务中的物体探测。决赛核心变化点:决赛升级为对抗赛,双方有各自的工作台,分红蓝表示。蓝方机器人在重量/力量/碰撞上占优势,而红方在速度上占优势。引入激光雷达用于物体探测运行时间由5分钟调整为至4分钟去除随机种子设定,不再有万分之一的随机误差机器人之间以及与墙壁之间的摩擦系数降低运行异常时,异常方0分,对手方100万分附件下载1. 赛题文档.zip:===下载链接===包含:决赛任务书、判题器使用说明、编译运行环境说明2. WindowsRelease.zip :===下载链接===包含:Windows版本的判题器、播放器、数据集3. LinuxRelease.zip :===下载链接===包含:Linux版本的判题器、播放器、数据集4. MacOSRelease.zip :===下载链接===包含:MacOS版本的判题器、播放器、数据集,该版本可同时支持x86和M1芯片。
  • [常见FAQ] 请问今天4.10号会发初赛及复赛获奖证书吗(为了提交夏令营材料用)
    请问今天4.10号会发初赛及复赛获奖证书吗(为了提交夏令营材料用),谢谢!
  • [大赛资讯] 复赛正式赛全地图公布
    =======参考附件======
  • [大赛资讯] 2023华为软件精英挑战赛复赛正式赛赛题及相关材料发布
    赛题组对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导致判题器崩溃问题
    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强,得到的机考绿卡有效期多久啊,研一的参加研二找工作的时候能用吗?
  • [常见FAQ] 请问华为软件精英挑战赛初赛证书什么时候下发,以什么形式下发,谢谢
    请问华为软件精英挑战赛初赛证书什么时候下发,以什么形式下发,谢谢
  • [区域复赛赛题问题] 晋级复赛但是无法到达现场怎么办
    你好 我们队伍晋级复赛了但是因为学校考试原因可能4.9无法到达现场怎么办
  • [常见FAQ] 2023华为软件精英挑战赛复赛赛题FAQs[2023-03-31更新]
    Q:复赛正式赛是否还有题目变更点?A:正式赛题目不变,但地图会换。Q:复赛正式赛是否公开地图?A:经赛题组慎重考虑,综合了正式赛比赛时长、比赛结果的确定性(减少随机性)、选手参赛体验、解法通用性等多方因素考虑,决定正式赛采用2张公开图+2张不公开图的形式进行。Q:不公开地图能看线上回放吗?A:显然不能,因为那等同于公开。故如果选手遇到不公开地图的运行错误、无法得分等情况,将变得难以定位,请选手提前应对好不同的情况,避免在正式赛时出现此类状况,这亦是对选手设计算法通用性的一个考量。Q:比赛结束后公开地图吗?A:比赛结束后公开地图Q:请问公开的两张地图会有回放吗?A:有Q:请问比赛的三小时内提交的次数和相邻两次提交间隔时间有要求吗?A:和练习赛保持一致Q:正式赛的两张不公开图是否会出现很极端的地形?A:首先,赛题组并不打算在正式赛上用很极端的地形去卡大家(尤其是不公开地图),这是因为:1. 过于极端的地图会使得选手需要考虑无穷多的复杂场景,但大多数考虑可能用不上,万一漏了又不行,导致非常低的优化效率浪费大家的时间。2. 正式赛只有三小时,过于极端的地形会导致大量选手没有成绩,造成很糟糕的参赛体验。3. 这会导致比赛结果充满随机性和不确定性,与大赛选拔人才的目标不符。基于以上考虑,赛题组将采取如下策略:1. 提前把一些比较复杂的地形考察点通过练习赛的方式公开给大家,而不是正式赛来个突然袭击。故所有练习赛中已经公开的情况均不属于极端情况定义,是需要大家考虑的。2. 尽可能的让正式赛地图有关复杂地形的考察点与练习赛差不太多,但由于毕竟是不同地图,故无法做出绝对保证,只能做一个大致上的保证,请大家理解这一点。Q:复赛为什么会把随机种子改为每次随机?A:这是考虑到:1.即便随机种子固定,选手依然会在自己的代码中加入不同的随机参数提交,然后最终记录下每张图的最高参数,合成一张总参数表提交。这个过程其实很无趣,并且没有实际上的代码优化,但是当所有人都这么做的时候,你不得不这么做,很浪费时间。2.复赛计算量增大,这意味着java,python语言的跳帧概率增大 ,而一旦出现跳帧意味着无法复现结果,也就无法做到第一点,那么会产生语言之间的不公平,为了提升java和python的语言友好性,就要降低跳帧的影响。综上考虑,赛题组决定随机种子不再固定Q:如何确保正式赛时,随机种子不会带来过大的随机性影响?A:如果只比单次提交,随机种子确实会带来队伍之间的一些成绩浮动,但是比赛允许多次提交并取最好成绩,故可以认为在多次提交的情况下,所有选手都是以一个接近自身上限的分数出现在排行榜上,从而降低随机性的影响。其他注意事项1. 大赛的代码查重非常严肃,一经发现一律取消成绩,请各团队严格遵守。2. 如有使用github作为团队内协作工具,请一定记得将项目设为私有。3. 根据大赛规定,不允许引入包含开源代码在内的第三方代码,初赛已经有几个队伍因为引入相同第三方代码被查重处理取消成绩的,请大家一定注意此事。
  • [大赛资讯] 2023华为软件精英挑战赛复赛练习赛赛题及相关材料发布
    赛题简介本次大赛的赛题需要选手通过代码操控4个机器人完成物资递送任务,以实现收益最大化。赛题模拟了真实机器人的操作接口并通过物理引擎来模拟真实世界的物理法则,如惯性、摩擦、碰撞等。         比赛所使用的判题器和数据集完全开放给大家下载,并且我们给判题器做了图形化界面设计+键盘操作机器人的能力,让大家可以低门槛的上手本次赛题。判题器运行界面如下图所示:         为了照顾到使用不同平台的选手,本次大赛特地对判题器做了跨平台设计,可以支持Windows、Linux、MacOS三个平台,选手可以根据自身习惯选择其中一款判题器下载。         每次运行判题器,都会产生一个回放文件置于replay目录中,可以用判题器自带的播放器进行播放,以分析过往比赛的表现。复赛核心变化点:在真实的业务场景中,机器人往往需要在不同的房间之间穿行,并且需要躲避各种障碍物,故在复赛中引入这一业务难题,新增障碍物来模拟真实业务场景。1. 复赛新增障碍物,在地图元素中通过字符'#'来表示2. 运行时间由3分钟提升至5分钟3. 线上运行随机种子不再固定,改为每次随机附件下载1. 赛题文档.zip:===下载链接===包含:复赛任务书、判题器使用说明、编译运行环境说明2. WindowsRelease.zip :===下载链接===包含:Windows版本的判题器、播放器、数据集、SDK3. LinuxRelease.zip :===下载链接===包含:Linux版本的判题器、播放器、数据集、SDK4. MacOSRelease.zip :===下载链接===包含:MacOS版本的判题器、播放器、数据集、SDK,该版本可同时支持x86和M1芯片。
总条数:1810 到第
上滑加载中