掉头发的超难算法的解决(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 (41周岁)
程序设计,前端设计。

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

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

Blog存档 Archives

2021年06月(9)
2021年05月(17)
2021年04月(25)
2021年03月(6)
2021年02月(17)
2021年01月(30)
2020年12月(19)
2020年11月(18)
2020年10月(15)
2020年09月(14)
2020年08月(14)
2020年07月(14)
2020年06月(16)
2020年05月(13)
2020年04月(18)
2020年03月(14)
2020年02月(15)
2020年01月(16)
2019年12月(11)
2019年11月(26)
2019年10月(25)
2019年09月(30)
2019年08月(10)
2019年07月(29)
2019年06月(30)
2019年05月(26)
2019年04月(30)
2019年03月(30)
2019年02月(30)
2019年01月(30)
2018年12月(30)
2018年11月(30)
2018年10月(30)
2018年09月(17)
2016年-2017年(9)
2014年06月-09月(10)
2013年 +

2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

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