做控制算法工程师是怎样一种体验?

文摘   2024-10-26 21:12   德国  

曾经觉得算法是灵魂,世界是美好的,算法可以解决一切。现在,遇事不决,全靠PID。

整个体验有以下几点吧,

  1. 算法只是整个机器人控制系统的一小部分。简单来说,算法可能就是几个函数而已。很多时候你发现都是在和硬件打交道,电机参数没整定好,力传感器据有问题,AD数据有偏差,数据滤波做好,通信没调好,数据没法交互。这些东西都是是实实在在影响你的算法性能,因为算法的很多输入量,反馈量都是这些传感信息,源头不准,何谈算法优劣。

  2. 算法人是“万能”。你要会调试电机,会焊接,会懂基本的机构原理(你要算运动学和动力学),会参数辨识,会接线,工具(络铁,扳手,万用表,示波器)等都会用,会做线,还要熟悉各种通信协议,会画控制框图,算法流程图,会抓包数据,会上下位联调,甚至你要有力气搬东西,移动你的机器人设备。更有甚者,你还要自己当模特,测试机器人设备(主要是康复类设备)。

  3. 会看文章,要学习。你要连接最前沿的东西,最新的算法,还要会进行仿真调试,然后你兜了一圈发现,我们的设备用不了这个算法,要加各个传感器,要改结构,要。。。。。

  4. 调参:调参可以说是整个算法最为玄妙的工程,很多时候参数都是来源于你的随机凑,你理论分析很多,计算了很多,估算了很多,得到了一个大概范围,然后发现设备运行效果极差,你就自我怀疑了,然后就随缘吧。

  5. 心累。公司其他部门认为算法很重要,很关键,然后很热情的和你一块讨论,然后问了很多问题,什么是稳定呀,怎么判断系统稳定呀,超调是啥,然后你就心累,看书呀,你咋不看书呢。然后可能你的BOSS有点想法,你可以这样做,然后这样,再这样,就可以了。然后就没有然后了。还会有各种新想法,别人就是用这个呀,你看个视频,能不能做到。

总之算法工程师感觉还是很累的。但是针对机器人算法而言,还是有几点感触。

  1. 个人认为不管任何的创新的算法,本质上都是位置,速度,电流控制。工程中应用很多新颖的算法其实难度很多,模型不准确,工况影响大等,而实际还是PID在工程中应用最多,很多人觉得PID很简单,但事实还是有很多值得深挖的东西,如微分项引入低通滤波器,wind-up思路等等。值得继续研究,吃透。

  2. 算法量化指标,很多时候我们也在向如何定量的评估算法的好坏,除了所谓的调节时间,响应速度,稳态误差,超调量,幅值裕度,相位裕度带宽等,但是并不具有实际工程应用中的价值体现。如何设计量化评价指标,如交互力大小,柔顺度,鲁棒性,抗干扰能力等等指标,当然这和具体场景有关,但是确实值得我们去思考研究。因为很多人都会问到,你的算法改进了什么,提升了什么,怎么证明。

  3. 学习和团队。算法确实是一个不断在学习的过程,各种学科,各种方法,各种文章,各种公式,尤其是数学。关系推导,模型仿真,参数验证,都是需要大量的时间。算法研究靠单个人的力量肯定是不行,需要团队协作,发挥每个人的优势。

整体来说,算法工程师是苦中作乐,当自己调试的设备能够满足自己的设计需求,性能得到提升,那还是很快乐,也许快乐就是这么简单。

以上仅是个人理解,如有错误,请大家指导!

知乎原文链接:

https://www.zhihu.com/question/46824735/answer/1883363339


运筹Offer
运筹OR帷幄社区旗下的求职和留学资讯平台,聚焦运筹学、大数据、AI等领域,内容涵盖企业招聘、实习内推、职场经历分享以及运筹学海外硕博申请咨询
 最新文章