如何在MATLAB中获取靠近另一个数组的数组元素?

时间:2016-10-03 04:49:10

标签: arrays matlab optimization least-squares

必须有一种更简单的方法来做到这一点,也欢迎优化方法。我有一个数组'Y'和许多参数必须调整,使得Y接近于MWE中给出的零(='X')。是否有更好的程序来最小化这种差异?这只是一个示例等式,可以有6个系数进行优化。

x = zeros(10,1)
y = rand(10,1)
for a=1:0.1:4
    for b=2:0.1:5
        for c = 3:0.1:6
            z = (a * y .^ 3 + b * y + c) - x
            if -1<= range(z) <= 1
                a, b, c
                break
            end
        end

    end
end

1 个答案:

答案 0 :(得分:1)

我相信

 p = polyfit(y,x,2);

正是您要找的。 其中p将是[a,b,c]系数的数组。