疫情当前远程协作,攻坚克难贡献开源


时间:2020-02-20

疫情当前远程协作,攻坚克难贡献开源

| 669号队员 刘鹏宇

ns3-ai模块的开发源于一次坚持不懈的探索。2019年暑假,我在协助团队第595号老队员阴浩和郭潇俊同学发表论文的过程中,为实现NS-3网络仿真器与Python的机器学习代码间的数据交互,使用共享内存实现了一个简单接口。在论文工作结束后,经过大家的一致评估,认为这个接口具有一定实用性,如果能够加以完善作为开源模块发布在NS-3APP Store中,将会是一个不小的成果。

说干就干,Intel组成立了ns3-ai子项目组进行模块完善和测试,我负责模块的编写,团队研究生韩营营负责对ns3-ai模块测试,并进行与对标模块ns3-gym的对比实验。我在一周内完成了ns3-ai模块的核心代码,之后也投入测试实验中,搭建了TCP拥塞控制仿真场景与LTE信道预测仿真场景用于对比。

上学期结束前,项目的实验尚未全部完成,本计划提前返校继续实验的我们由于疫情影响,迟迟不能回到实验室工作。但现实并没有浇灭项目组同学的工作热情,疫情当前,同学们都宅居在家,正是项目攻坚克难的好时候,我们保持线上联系,继续完成实验。韩营营完成了ns3-ai模块与ns3-gym模块在TCP拥塞控制仿真场景下,数据在NS-3仿真器与Python间数据交互时间的对比实验。我搭建了基于两个模块需要进行大量数据交互的场景,并进行程序运行时间对比。阴浩进行论文撰写。

2月11日时,全部实验已经完成,论文已经投出,早上起来突然看到阴浩学长凌晨发来的消息:我们的论文收到了反馈,需要补充一些证据。我立即与阴浩学长联系,讨论如何处理。由于已有的实验数据交互量小,实验效果可能不明显,最终我决定设计一个全新的基于两个模块需要进行大量数据交互的场景的实验。我立即打开电脑,开始编写仿真脚本,并进行对比实验。从上午九点半到中午十二点,17KB的代码,10组对比实验。最初实验结果并不令人满意,我尽量消除两组实验间的无关变量,实验结果最终符合预期。

现在,我们开发的模块ns3-ai已经上线NS-3官网的APP Store。比起这样的喜悦,疫情之下的负面情绪一下子都变得微不足道了。坚守自己的信念,坚守自己的工作,与所有团队同学共勉!