首页 文章

Excel解算器曲线拟合失败 - MatLab重铸

提问于
浏览
0

我对excel的求解器有一些奇怪的问题 . 基本上我要做的是曲线拟合我的数据 . 我有两条不同的线,一条是我的校准线,另一条是我试图匹配校准线的派生线 . 我的行取决于19个不同的变量参数(也许这个太多了?我没有结果就尝试过更少)我正在使用求解器调整这些参数以使两条线尽可能接近 .

例如:

QP列包含我想要更改的变量,更改这些变量将使我更接近或远离校准曲线 . QP的每个后续值必须大于第一个值 .

Col=B   Col=C

Power  .QP_'

1   .....    57000  
2    .....   65000  
3   .....    70000   
4   .....    80000  
5   .....    80000

因此我的excel求解器参数如下所示: C1:C19>=0,C1:C19<=100000C2>=C1, C3>=C2,C4>=C3 ...我还尝试在每个值之间创建另一列差异,然后说这些必须是 diff>=0 .

为了将其与我的校准曲线进行比较,我获取了校准曲线数据,并从 QP 中减去了我的数据,然后将其平方以创建平方误差的总和 . 例如:

(Calibration-DerivedQP)^2=SS(x) <- where x represents the row number

Sum(SS(x))=SSE

SSE 是我设置的求解器最小化 . 更改 QP 后,所有内容都会自动更新 . 没有使用if语句,也没有使用数据透视表 .

如果我删除类似于 C2>=C1 的参数,一切都很完美,除了派生值不可行 . 但是当使用这些参数运行求解器时,没有任何改变,无论我用哪个猜测作为起始值(这样我就可以确保我没有平稳(我不认为)我过去和现在这样做了似乎有些东西被打破 . 任何想法都表示赞赏!非常感谢!如果我遗漏了任何重要信息,请抱歉 . 如果这些语言有更好的方法,我也熟悉matlab和R.

1 回答

  • 1

    我找到了解决问题的方法 . 我不知道这对其他人是否有帮助,因为我的问题模糊而且非常具体 . 话虽这么说,我的问题是在约束 . 我更改了我的Excel工作表上的一些数据,以减少约束 . 示例可能如下所示:

    猜猜..........平方......添加.................. Q
    -12 ..............( - 12)^ 2 ....... 0
    -16 ..............( - 16)^ 2 ....... =( - 16)^ 2 0 ............. 256
    7 .................(7)^ 2 .......... =(7)^ 2(-16)^ 2 0 .... 305

    现在我允许求解器猜测任何受限制最小的数字 . 从本质上讲,现在正在发生的事情是excel表允许求解器使其起作用的任何猜测 . 通过对数字求平方,它给出了正值,并且添加的列确保每个连续值等于或大于第一个值 . 这意味着限制很少 . 我还将解算器选项从evolutionary改为GRG Nonlinear .

    让求解器工作的提示:尝试并使用电子表格来设置约束(除了边界,边界似乎很好),我在解算器中设置的约束越多,我的解决方案就越不可能工作 .

    希望有所帮助,对不起,如果我提供了任何不正确的信息 .

相关问题