Algorithm 如何选择显示值的单位?

Algorithm 如何选择显示值的单位?,algorithm,theory,heuristics,units-of-measurement,Algorithm,Theory,Heuristics,Units Of Measurement,我有一个值,我知道它的单位是 流量计MN/md*kgkn/kd*ssn/sd*KKn/kd*AAn/Ad 注:指数为有理数,m0.5为有效单位 问题是如何选择如何将单元分解为更紧凑的单元 例如如果 md=kd=sd=Kd=Ad=1 mn=Kn=An=0 kn=1 sn=-1 我可以用N/m 我怀疑这是离散优化问题的一个子集。将复杂性定义为符号总数:1的幂的单位具有复杂性1,任何其他整数幂为2,分数幂为3。尝试几个例子,看看感觉如何。也许你必须使用除1、2、3以外的其他数字来表示复杂性 尝试使用

我有一个值,我知道它的单位是

流量计MN/md*kgkn/kd*ssn/sd*KKn/kd*AAn/Ad

注:指数为有理数,m0.5为有效单位

问题是如何选择如何将单元分解为更紧凑的单元

例如如果

md=kd=sd=Kd=Ad=1
mn=Kn=An=0
kn=1
sn=-1
我可以用N/m


我怀疑这是离散优化问题的一个子集。

将复杂性定义为符号总数:1的幂的单位具有复杂性1,任何其他整数幂为2,分数幂为3。尝试几个例子,看看感觉如何。也许你必须使用除1、2、3以外的其他数字来表示复杂性


尝试使用贪婪算法进行优化:在每次迭代中,将尽可能简化(使目标函数尽可能小)的复合单元(可能为分数或负幂)分解出来。我有一种预感,贪婪会起作用,因为单位的设计是这样的,如果两个单位的乘积/比率比每一个单位都简单,那么它将是一个自己的单位。

你可能是指米(mn md)*千克(kn kd)*秒(sn sd)*K^(kn kd)*a^(Ad)相应地更新了答案