掉头发的超难算法的解决(2)

王志勇 发表于 2020年06月17日 17:37

程序设计约90%以上都是数学问题。这个难题是,刚需应用中,例如有42节不同内阻的锂电池,内阻为19mΩ~22mΩ,每3节并联,组成14串,要求并联后的这14串的内阻相近,越相近越好。

理论上,如果能把所有的排列方法都罗列出来,并自动计算并联后的电阻,14串的电阻和,与42节单节的总电阻÷3,这2者的差最小,就是一致性最好的组合,一般可以达到0.03mΩ~0.10mΩ以内。但是,罗列出这个排列的组合,是一个很复杂的循环程序公式,42个数字、每3个为1组的组合方式,可能会达到几百亿种以上。更何况84个、102个、136个数字,排列的组合,会达到几百亿种×N倍×N倍×N倍×N倍……,是一个天文数字。

所以,像这种计算量过大的程序,无法罗列出全部的组合,就用“随机跑包法”。即每次循环100万次~1000万次,自动罗列出100万个~1000万个的组合(耗时约3~15秒),然后自动记录出一致性最好的一组。

前一篇提到的“首尾相接”的算法,会简单很多,几乎没有什么计算量,只是把内阻从小到大排列,然后分成3组。实践中,锂电池组装后,一致性非常好,内阻为19mΩ~22mΩ的42节电池,每组之间的差距在0.03mΩ~0.15mΩ,或者有时每组之间的差距都在0.05mΩ以内,这个结果已经相当让人满意。

用随机跑包法,可以让电脑开机一天来跑包,内阻为19mΩ~22mΩ的电池,或者要组装的电池的内阻相差3mΩ~5mΩ以内,通常可以让配对并联后的每组之间的差距都在0.03mΩ~0.10mΩ以内

因为我们买来的电池,即使卖家声称一致性好,但其实内阻会相差2mΩ~5mΩ左右。这是正常现象,否则就只能买价格更高一点的电池,一致性会更好一些。

很多人买来锂电池先量电压,而不量内阻。以为电压一致,就是电池一致性好。(电池只要并联一段时间,电压就会一致。)

判断锂电池一致性的重要参数,主要是内阻。如果是同一型号的锂电池,不看容量、电压,只看内阻。因为内阻会涉及到大功率环境中,分压、电池发热的问题。

如果“随机跑包法”没有跑出比“首尾相接”更好的结果,则程序会自动让最好的结果为首尾相接法,自动记录最好的结果。

0条评论:

发表评论:
名字: (*必填)
博客: (可省)

正文:

  记住信息?

王志勇:1980-09-26 (44周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2022年07月
2022年06月(15)
2022年05月(20)
2022年04月(16)
2022年03月(9)
2022年02月(9)
2022年01月(10)
2021年 +

2020年 +
2019年 +
2018年 +
2016年-2017年(9)
2014年06月-09月(10)
2013年 +
2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2024 auiou.com All rights reserved.
此Blog程序由王志勇编写