我有一个优化问题,我有5个变量:A,B1,B2,C1,C2.我试图优化这5个变量,以获得最小的根和平方值.我有一些工作正常的优化技术,但这个特别给我带来了一些麻烦.
我想探索更改变量的所有32个选项并选择最小的RSS值.我的意思是每个变量可以是+/-增量.每个选择导致2个选择,5个变量有32个选择.(2 ^ 5)
为了澄清,我没有添加我的变量:A,B1,B2等彼此,我正在递增/递减任意数量.A +/- X,B1 +/- X2等.我试图找出我的5个变量的增量/减量的哪个组合将返回最低的根和平方值.
A
+/ \-
B1 B1
+/\- +/\-
B2 B2 B2 B2
Run Code Online (Sandbox Code Playgroud)
等等,直到所有5个级别都完成.我不确定哪里开始尝试解决这个问题.什么样的数据结构最适合存储?它是迭代的还是递归的解决方案.我不需要问题的答案,而是需要寻找或在某个地方开始.再次感谢您抽出宝贵时间来看看这个.
为了澄清进一步的混淆,这是我的优化方法.我有5个变量和5个增量,每个增量匹配一个变量.(a,b,c,d,e,f)--->(incA,incB,incC,indD,incE,incF)
我想找到+/- incX到X的最佳组合(x是5个变量中的一个),即:解决方案可能类似于:a + incA,B-incB,c + incC,d + incD,e + incE,f-incF.有32种组合可能性,在阅读了下面的所有答案后,我已经确定了这种可能的算法.(请参阅下面的答案)根据需要进行编辑和提问.这不是一个完美的算法,它是为了澄清和易于理解,我知道它可以被浓缩.
//Settign all possible solutions to be iterated through later.
double[] levelA = new double[2];
double[] levelB = new double[2];
double[] levelC = new double[2];
double[] levelD = new double[2];
double[] levelE = new double[2];
levelA[0] = a + incA;
levelA[1] = a - incA;
levelB[0] = b + …Run Code Online (Sandbox Code Playgroud) 在我的工作中,整个工程部门刚刚进入一个新的座位安排,让声音比我们任何人都喜欢享受更多的旅行.我想尝试以一种很酷的工程方式来解决这个问题.是否可以使用以下方法创建自适应声音取消:
如果是这样,我想看哪些图书馆?我假设有一些FFT(快速傅里叶变换)麦克风输入和频率回放.有人能指出我有这些能力的好图书馆吗?(如果这是可能的话)