2018年华为软件精英挑战赛-初赛赛题

1、比赛问题定义:

背景:云平台为了满足不同租户的需求,提供了一种可随时自助获取、可弹性伸缩的云服务器,即弹性云服务器(Elastic CloudServerECS)。为容纳更多的租户请求、并尽可能提高资源利用率、降低成本,自动化、智能化的资源调度管理系统非常关键。

本次赛题基本描述

由于租户对ECS实例(虚拟机,VM)请求的行为具有一定规律,可以通过对历史ECS实例请求的分析,预测到未来一段时间的ECS实例请求,然后对预测的请求分配资源(如图1所示),这样可以找到一个接近最优的分配策略,实现资源最大化利用,同时也能参考预测的结果制定云数据中心的建设计划。

yi:表示第i种虚拟机规格的实际数量;

yi’:表示预测出来的第i种虚拟机规格数量;

N:表示虚拟机规格的集合;

rv:表示预测到的第v个虚拟机所要预测的资源大小;

Rh:表示所放置的第h个物理主机相应的资源容量;

V:表示预测出来的虚拟机集合;

H:表示所需要的物理主机集合。

(备注:预测部分精度计算使用了希尔不等式TIC,希尔系数是评价预测模型常用的评价指标,它总是介于01之间,数值越小表明拟合值和真实值之间的差异越小,预测精度越高。当等于0时,表示100%拟合。单个用例满分为100分。)

4、最终得分和排名机制

比赛平台会使用多个训练数据集,每个训练数据集又构造出多个测试用例判题,测试用例分为初级、中级、高级三个等级,每个等级的难度主要根据预测的时间长短以及预测的虚拟机规格数量两个指标来区分。每个等级各3个用例,共9个用例。参赛者对于每个测试用例都会得到一个百分制分数,使用加权总分(初级权重为0.2,中级权重为0.3,高级权重为0.5)作为该参赛者的最终得分。

最终排名机制如下:

Step1:最终得分为所有测试用例得分的加权,根据得分高低进行排名;

Step2:最终得分相同的情况,比较所有测试用例的总运行时间,运行时间越短,排名越靠前;

Step3如以上均相同的情况,则根据提交的先后顺序区分排名。

特别说明:在比赛初期(练习阶段),比赛平台只放出初级、中级的测试用例各2个,故加权后满分为100分(初级权重为0.2,中级权重为0.3,高级权重为0.5;下同);在正式比赛阶段,才会放出高级测试用例(具体发放时间会在 站公告通知),初、中、高级用例各3个,加权后满分为300分。练习阶段每支参赛队伍每天最多只能提交100次,正式比赛阶段每支参赛队伍每天最多只能提交5次。

特别注意:最终成绩以最后一次提交的答案为准。请各位参赛者务必注意。

运行环境

开发语言支持:C/C++Java 7/8Python 2.7
CPU
Intel(R) Xeon(R) CPU E5-2680 V4 @ 2.40GHz
内存:2G
CPU
核数:单核
编译器:gcc 4.8.4java 1.8python 2.7
操作系统:Ubuntu 14.04.4 LTS 64位,内核版本 Linux version4.4.0-31-generic
SDK
:为方便选手做题,分别提供c++(兼容c)、JavaPythonSDK包供参考(见DevCloud项目),详细描述信息请见SDK目录下的readme.txt

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年3月13日
下一篇 2018年3月14日

相关推荐