​什么是算法

什么是算法

什么是算法

IT人成长之路 丨 作者:朱有鹏

这是<朱老师it充电站>公众号的第91篇原创

搞软件的,经常提到算法这个词。而且大家都对算法推崇备至,今天简单聊一下算法究竟是干嘛的?解决什么问题?

首先从宏观上了解下,这个最好理解。我从几个案例来分析下,目的是让你知道为什么搞软件需要用到算法。

思考下面案例时,大家不妨把自己代入去替代CPU,或者说替代算法程序,去思考下如果是用你的脑子来思考决策,你会怎么做?实际上你的思考和决策的过程就是你大脑里的算法在运行。

案例1 路径规划问题。

已知一张地图,然后我们在A点,要去B点,应该走哪一条路?

大家都用过高德或者百度地图,对这种场景很熟悉的,这就是个典型的算法问题。这个问题的复杂之处就在于实际要考虑很多因素,譬如各路段的拥堵情况,譬如是否走高速,譬如我开车还是步行,这些条件都会作为算法要考虑的参数。

如果你要做一个导航产品,你能不研究路径规划算法吗?不搞定这块,你的产品怎么智能化起来?

案例2 手机手表计步功能问题。

现在智能手机和手表都带了计步器功能,准确度其实挺高的了,但是前几年刚出来时实际上精确度参差不齐。

实际上计步器就是通过各种传感器的数据,来综合处理判断这个人究竟有没有走步。可以使用到的传感器主要是陀螺仪和加速度传感器。大家可以理解为就是个MPU6050,玩过四轴的同学都熟悉。

陀螺仪能告诉你姿态变化,加速度传感器能告诉你加速度变化,这两个值本身对你的运动都很敏感,传感器本身零度也很高。

但是问题是你怎么从这两个值能得到人到底走没走?走了几步?这就需要算法。你的算法效果越好则测到的步数越准,不会遗漏,也不会多算。而且还要考虑算法本身的复杂度,计算所需要的运算量,功耗等。

最好的算法的标准就是,消耗更少的输入数据和功耗,运算量,运算时间,得到最精准高效的结果。然而现实中不可能有各方面都最好的算法,总是要做一些取舍。

案例3 电动汽车电机控制器

电动汽车用电机驱动,这个和传统的燃油车完全不同。大家如果开过两种车,做个对比就会发现“手感”是不同的。

传统燃油车的核心技术是发动机和变速箱,这个大家都听过。那为什么是这两个?难在哪里?你想想,汽车那么重,路况又复杂,燃油发动机产生的燃烧动能在变速箱和一系列加减速齿轮的作用下,要输出平稳的动力,让汽车能正常运行,这多难啊,这其实就是一套“机械实现的运动控制算法”。

而电动车呢?也需要这一套算法,甚至需要考虑“动能回收”等更复杂的功能。难不难?在计算机领域算挺难的,但是和燃油发动机相比其实难度大大降低,这也是为什么汽车电动化有助于国产汽车崛起的一大原因。

电机控制的应用场景很多,譬如吹风筒,各种机器设备等场景和具体要求完全不同,所以需要应对的问题和算法策略也不同,这就是为什么需要很多开发电机控制算法的人。

还有很多案例,譬如电动车的电池充电问题,手机的自动锁屏自动检测人脸验证开锁问题,汽车的空气悬架问题,甚至喷水马桶怎么洗干净屁股的问题,等等都是算法问题。

所以做算法有很大需求,可以说智能化的本质,就是玩转传感器和算法。

欢迎大家关注微信公众号《朱老师IT充电站》。

每天了解一些新技术,每天辩一些真道理!

同类推荐

​特别好听的笑话(关于暗恋的搞笑段子)

特别好听的笑话(关于暗恋的搞笑段子) 一天,小兔走在路上,突然,狗熊出现了,一巴掌甩在了兔子的脸上。 兔子一脸懵逼,问到 :“你为什么打我?” 狗熊答: “...

​一个人孤独的诗词

​一个人孤独的诗词

一个人孤独的诗词 1、黄河远上白云间,一片孤城万仞山。 2、若教眼底无离恨,不信人间有白头。 3、众芳摇落独暄妍,占尽风情向小园。 4、众鸟高飞尽,孤云独...

​染发剂的危害(染发剂究竟有何危害)

​染发剂的危害(染发剂究竟有何危害)

染发剂的危害(染发剂究竟有何危害) 说到染发剂,大家肯定都不陌生。染发剂的消费群体,除去小孩子,可谓是涵盖各个年龄段。到目前为止,市面上能买到的...

热门排行

随机推荐