当前位置: > 财经>正文

运筹优化算法工程师的从业情况和能力要求 期货操作员招聘要求高吗知乎

2023-07-28 15:12:28 互联网 未知 财经

运筹优化算法工程师的从业情况和能力要求

运筹优化算法工程师的从业人员远远少于其他方向的算法工程师,比如机器学习,CV,NLP,推荐系统等。这主要是因为,运筹岗对数学建模的能力要求比较高,而业界普遍存在,会编程的不太懂运筹建模,懂运筹建模的人又不太会编程的情况。相应的,运筹岗的入门门槛就显得相对高一些,学习曲线更陡峭一些。

下面结合我本人的理解,以及业内大厂的招聘要求和面试经验,谈一谈运筹优化算法工程师,具体需要具备哪些能力。

运筹优化的应用场景,涉及供应链,交通,物流,生产调度,电力等。以物流与供应链领域为例,仓库选址,库存控制,货位规划,路径规划,人员排班,车辆调度,以及动态定价,库存控制等,都需要运筹优化算法工程师去建模,并设计算法求解。

求解优化模型的算法,大致可以分为两类,启发式算法和精确解算法。启发式算法侧重于计算机编程能力,精确解算法侧重于数学建模和模型分解能力。

大体上看,启发式算法主要分两类,一类以邻域搜索为中心,比如模拟退火,禁忌搜索,迭代局部搜索,变邻域搜索,自适应大邻域搜索等算法。另一类是群智能算法,比如遗传算法,蚁群算法,粒子群算法等。启发式算法,说白了就是有方向的穷举法,在计算资源有限的情况下,算法工程师需要根据问题场景和模型特点,选择合理的邻域结构或操作机制,在全局搜索能力和局部搜索能力之间做权衡。

精确解算法,通常用于求解混合整数规划模型。从最简单的分支定界,割平面,到列生成,benders分解,拉格朗日松弛,到最难的分支定价。除了分支定界和割平面有比较通用的算法框架外,其他高阶一些的精确解算法,完全需要根据问题特点来构建模型分解模型,与其说是算法,不如说是建模技巧更合适。人们通常说精确解算法比启发式算法要难,这种难不是难在编程,而是难在建模和数学推导。大厂招聘运筹优化算法工程师,一般把启发式算法当做基础能力,精确解算法作为加分项。

此外,运筹优化的算法工程师,也需要懂些基础的机器学习算法。因为在构建优化模型时,常常会涉及数据清洗,预测,算例仿真与分析等环节,这就涉及到分类,回归,降维,聚类等常见的机器学习应用场景。类似支持向量机,决策树,朴素贝叶斯,BP神经网路,以及稍微复杂一些的随机森林,GBDT,XGboost等算法,最好能够有一定程度的理解和应用。

最后说一下编程语言方面的要求。建议运筹优化算法工程师,懂一门常见的编译性语言(比如C++/Java),还有一门脚本语言(一般要求使用python)。C++/Java运行速度比较快,适合用来编写启发式算法,而Python可以用来调用cplex,gurobi等求解器实现精确解算法,或者是调用sklearn,tensorflow等机器学习包,实现相关功能。

以上就是我关于运筹优化算法工程师分享的内容,欢迎大家留言补充~

版权声明: 本站仅提供信息存储空间服务,旨在传递更多信息,不拥有所有权,不承担相关法律责任,不代表本网赞同其观点和对其真实性负责。如因作品内容、版权和其它问题需要同本网联系的,请发送邮件至 举报,一经查实,本站将立刻删除。