2017华为算法大赛总结
题目介绍
给定一个网络图,两个网络节点之间存在带宽限制和费用租赁信息。任一网路节点可以当做服务器或者消费节点。给定一部分网络节点为消费节点,消费节点有流量需求。消费节点的流量来自服务器,服务器可以位于任一网络节点。 部署服务器有成本,满足流量也需要成本。求在满足消费节点需求的前提下,成本最小的服务器部署方案。
算法基础
Dijstra算法
一种贪心算法,求一个节点到其他节点的最短路径问题。
使用两个数组进行分别维护前置节点,最短路径。
初始化时,把前置节点都置为-1,最短路径为该节点到其他节点距离。
再使用一个flag数组,标记节点是否已找到最短路径。
每一次寻找到一个flag为flase的数组,对其临近节点进行最短距离更改。
直至所有的节点都为true,则算法结束。
SPFA算法
使用一个优先队列,对节点进行入队。入队时,对节点标记为已访问,出队时,标记为未访问。然后依次对列队中的节点进行出队操作,对每个节点相连接的节点进行松弛操作,如果被松弛节点不在队列中,则进行入队。如果已经在队列中,则更改这个节点数值距离。
优势
SPFA比较适合与稀疏图,速度较快!稠密图使用Dijstra
多源多汇费用流
新建一个超级消费节点,一个超级服务器。每次寻找一条从超级消费节点到超级服务之间的最短路径,即单位流量费用最小的一条路,在这条路上分配流量。分配完成之后,更改各个线路上的流量限制,使用新的网络节点图再次进行最短路径计算,直至消费节点的流量需求全部满足。此时,则求出在满足消费节点需求的前提下的最小费用。
寻找服务器位置与个数
- 首先对服务器位置与个数进行初始化。根据题目计算最小成本可得,当某个消费节点需求量较大时,直接把服务器部署在该消费节点,可以省去大量的流量租赁费用。因此,使用贪心算法,对消费节点按流量需求进行从小到大排序。初始化时,把所有消费节点都部署服务器,然后依次减去服务器,当成本减小时,则去掉部署在该位置服务器,如果没有减小成本,则保留在该消费节点的服务器。
- 完成初始化后,设计遗传算法进行迭代寻找最佳部署方案,即最小成本。
初始种群个数为10个,第一步初始化的部署方案作为一个个体放在初始种群中。其余个体进行随机初始化。交叉操作采用单点交叉,交叉概率设为0.8。变异时,随机选取一个部署有服务器的节点,向相邻节点移动。变异概率为0.2。 采用精英保留策略,每次保留2个最优子个体到下一代中。
2017华为算法大赛总结相关推荐
- 2017年中兴算法大赛 迪杰特斯拉派
总结:本人2017年参加的比赛,对于初次参加算法大赛的作者来说,异常激动又有点小窃喜,最后在赛区拿到24名的名次,名次不算高,但是对于一步步解决问题过来的我,经验与经历更为重要,再次做一个小小的总结, ...
- 华为2019算法大赛CTR预估数据探索
华为2019算法大赛CTR预估数据探索 训练集 时间信息 siteId(媒体Id) slotId(广告位Id) netType(网络连接类型) id类信息 测试集 媒体id 网络型号 测试集与训练集分 ...
- 华为digix算法大赛2020机器学习赛道-ctr预估初赛/决赛rank1
华为digix算法大赛2020机器学习赛道-ctr预估初赛/决赛rank1 写在前面 1.比赛成绩 2.基础方案 2.1.赛题理解 2.2.特征工程 2.3.算法实现 3.冷启动探索 3.1.数据分析 ...
- 华为codecraft算法大赛---寻路
华为codecraft算法大赛-寻路 前言 最近实验室的师兄师姐们在热火朝天的笔试(都说难难难),我也要了些题来感受了一下,已然被虐的体无完肤.选择题考的内容涉及范围广,算法编程题对于没有刷题经验的我 ...
- AI一分钟 | 特朗普以国家安全为由否决博通收购高通;阿里发起时尚AI算法大赛
整理 | 阿司匹林 一分钟AI 3月12日,美国总统特朗普以国家安全为由,否决了博通对高通公司总额高达1170亿美元的收购案. 百度地图近日做出大调整,地图事业部从百度搜索公司转入 AI 技术平台体系 ...
- 智源人工智能算法大赛开锣,百万奖金激励 AI 算法创新
智源人工智能算法大赛现已正式启动!本次比赛由北京智源人工智能研究院主办,清华大学.北京大学.中科院计算所.旷视.知乎等协办,总奖金超过 100 万元,旨在以全球领先的科研数据集与算法竞赛为平台,选拔培 ...
- 报名 | 搜狐×清华:第三届内容识别算法大赛,比武招新两不误!
2019年4月8日,第三届搜狐校园算法大赛正式开赛,同期面向参赛选手开放竞赛结果提交.本次比赛联合了清华大学等机构共同组织,面向全球范围内的全日制学生. [组织方]搜狐.清华大学 [奖金]¥75000 ...
- 备战2020腾讯广告算法大赛:(2017-2019比赛开源和数据等)
期待与各位在2020腾讯社交广告算法大赛中相遇!!! 写在前面 最近突然之间讨论腾讯广告赛的人多了不少,也有很多人加我微信讨论19年腾讯赛的方案和代码.虽然2020腾讯赛还未开始,不过大家已经提前进入 ...
- 第三届“达观杯”文本智能算法大赛参赛指南
比赛介绍 2019 年 6 月 28 日,第三届"达观杯"文本智能信息抽取挑战赛正式开赛,同期面向参赛选手开放竞赛结果提交.本届比赛由中国人工智能学会吴文俊人工智能科学技术奖办公室 ...
最新文章
- Linq to SQL 中实现模糊查询
- CISCO SCE 第三部分 SCE平台的升级
- 初识Mysql(part7)--我需要知道的5个关于正则的小知识
- ROS(Robot Operating System)笔记 : 2.创建并配置package
- windows 创建不可见账户
- css3仿天气风车旋转
- Python学生成绩处理专业版
- redis scan命令详解
- 移动应用图标生成工具,一键生成所有尺寸的应用图标
- 解决两个WINDOWS10的卡死问题
- 在IIS6 配置使用php5.4的fastcgi模式
- 替代 NetMeeting 的多人屏幕共享工具 InletexEMC 国外出品,永久免费
- 淘宝API接口(item_history_price-获取商品历史价格信息)
- 读书笔记: 《亿级流量网站架构核心技术》(开涛的那本)
- 酷狗音乐PC端怎么使用听歌识曲功能?
- 路由器接交换机再接无线路由器,应该怎么设置
- WebStrom代码中出现浅黄色背景
- 常用的IDEA插件,个个都是精品
- 黑窗口方式,使用命令行导入导出Oracle
- N-BEATS NEURAL BASIS EXPANSION ANALYSIS FOR INTERPRETABLE TIME SERIES FORECASTING