| 5 | 1/1 | 返回列表 |
| 查看: 2195 | 回復: 4 | ||||
[求助]
請教matlab非線性擬合結果不唯一的問題 已有2人參與
|
|
我用matlab擬合一組實驗數據,函數是y=a*(b+x)^c+d*(1-f*exp(-g*x)),現在的問題是發(fā)現只要改一次初值就會得到不同的擬合結果,或者改一下上下限,也會得到不同的擬合結果,這么一來,我覺得就不可能找到最優(yōu)解,雖然上下限可以取得很大,認為是無界,但是初值怎么?因為我不可能嘗試所有的參數初值,因為我要擬合多組實驗數據,獲得公式中參數a(1)~a(6)的變化規(guī)律,如果參數結果不唯一,我怎么確定哪個參數才是最優(yōu)的參數呢?事實上,如果從物理意義來限定參數取值也可以,但是那樣得到的參數并不是最優(yōu)解,而最優(yōu)解的參數又不一定符合物理意義。 我該怎么處理呢?哪位能幫忙看一下,非常感謝! 實驗數據和代碼如下: 主程序 clc xdata=load('78028-ta.txt'); %read section1 size1=size(xdata); %section1 行、列數 sizen(1)=size1(1); %section1數據量 for i=1:size1; xd(i)=xdata(i,1); yd(i)=xdata(i,2); end set(gca,'Fontsize',15); plot(xd,yd,'ro'); xlabel('True Strain'); ylabel('True Stress/MPa'); hold on lb=[-100000, 0, 0, -10000, -10000, -10000]; ub=[ 100000, 0.02, 1, 10000, 10000, 10000]; a1=1898;a2=0.00002;a3=0.136;a4=542;a5=0.784;a6=62.4; a0=[a1,a2,a3,a4,a5,a6]; options = optimset('TolFun',1e-6,'LargeScale','on','TolCon',1.0e-6,'MaxFunEvals',2.e10,'MaxIter',2000000,'TolX',1e-6); exitflag=0; while (exitflag<=0) %反復迭代 [a,resnorm,residual,exitflag]=lsqnonlin(@SV,a0,lb,ub,options); %nonlinear fitting, solve coefficient a a0=a; end R2=1-resnorm/sum((yd-mean(yd)).^2); standard=sqrt(resnorm/size(residual,2)); stp=1; out(stp,1)=R2; out(stp,2)=standard; out(stp,3)=a(1); out(stp,4)=a(2); out(stp,5)=a(3); out(stp,6)=a(4); out(stp,7)=a(5); out(stp,8)=a(6); hold on fid=fopen('SV-fit-78028-ta.txt','wt'); for i=1:size1; G(i)=a(1)*(a(2)+xd(i))^a(3)+a(4)*(1-a(5)*exp(-a(6)*xd(i))); fprintf(fid,'%8.6f %10.6f\n',xd(i),G(i)); end fprintf(fid,' R2 standard s1 s2 s3 V1 V2 V3\n'); fprintf(fid,'%10.6f %10.6f %10.6f %10.6f %10.6f %10.6f %10.6f %10.6f\n',out(i,1),out(i,2),out(i,3),out(i,4),out(i,5),out(i,6),out(i,7),out(i,8)); fclose(fid); plot(xd,G,'b','LineWidth',2) hold on legend('EXP','SV'); hold off clear 函數 function F=SV(a) xdata=load('78028-ta.txt'); size1=size(xdata); sizen(1)=size1(1); for i=1:sizen(1); xd(i)=xdata(i,1); yd(i)=xdata(i,2); end for i=1:sizen(1); F(i)=a(1)*(a(2)+xd(i))^a(3)+a(4)*(1-a(5)*exp(-a(6)*xd(i))); F(i)=F(i)-yd(i); end 實驗數據 78028-ta.txt 0 223.634 0.0005 261.9 0.001 373.358 0.0015 425.658 0.002 462.61 0.0025 492.699 0.003 513.549 0.0035 524.142 0.004 538.681 0.0045 546.22 0.005 554.575 0.0055 563.233437 0.006 570.27162 0.0065 577.07317 0.007 583.656651 0.0075 590.037892 0.008 596.230537 0.0085 602.246461 0.009 608.09609 0.0095 613.788651 0.01 619.332371 0.0105 624.734633 0.011 630.002102 0.0115 635.14083 0.012 640.156342 0.0125 645.053702 0.013 649.837576 0.0135 654.512279 0.014 659.081814 0.0145 663.549911 0.015 667.920058 0.0155 672.19552 0.016 676.379368 0.0165 680.474496 0.017 684.483635 0.0175 688.409373 0.018 692.254165 0.0185 696.020341 0.019 699.710123 0.0195 703.325629 0.02 706.4514911 0.025 735.7217232 0.03 758.4120509 0.035 778.3482998 0.04 794.7567166 0.045 809.6868333 0.05 822.8422861 0.055 834.8128986 0.06 846.1687589 0.065 856.1567004 0.07 866.0042315 0.075 874.4658077 0.08 882.1951827 0.085 890.0445724 0.09 897.0900675 0.095 903.7413962 0.1 910.0615411 0.105 915.8285085 0.11 921.8803708 0.115 927.2834332 0.12 932.4186891 0.125 937.3558307 0.315 1073.901289 |
Matlab |
鐵桿木蟲 (職業(yè)作家)
新蟲 (正式寫手)
|
Matlab尋優(yōu)過程得到的是局部最優(yōu)解,如果這個解能夠滿足實際需求,就可以使用,不用太過顧慮全局最優(yōu)解。當模型復雜時,全局最優(yōu)解釋很難得到的。 發(fā)自小木蟲Android客戶端 |

| 5 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 材料學碩301分求調劑 +7 | Liyouyumairs 2026-03-21 | 7/350 |
|
|---|---|---|---|---|
|
[考研] 材料求調劑 +5 | @taotao 2026-03-21 | 5/250 |
|
|
[考研] 26考研一志愿中國石油大學(華東)305分求調劑 +6 | 嘉年新程 2026-03-15 | 6/300 |
|
|
[考研] 南昌大學材料專碩311分求調劑 +6 | 77chaselx 2026-03-20 | 6/300 |
|
|
[考研] 材料工程(專)一志愿985 初試335求調劑 +3 | hiloiy 2026-03-17 | 4/200 |
|
|
[考研] 299求調劑 +6 | △小透明* 2026-03-17 | 6/300 |
|
|
[考研] 華東師范大學-071000生物學-293分-求調劑 +3 | 研究生何瑤明 2026-03-18 | 3/150 |
|
|
[考研] 材料專業(yè)求調劑 +6 | hanamiko 2026-03-18 | 6/300 |
|
|
[考研] 308求調劑 +3 | 阿姐阿姐家啊 2026-03-18 | 3/150 |
|
|
[考研] 321求調劑 +9 | 何潤采123 2026-03-18 | 11/550 |
|
|
[考研] 289求調劑 +6 | 懷瑾握瑜l 2026-03-20 | 6/300 |
|
|
[考研] 材料學求調劑 +4 | Stella_Yao 2026-03-20 | 4/200 |
|
|
[考研] 環(huán)境工程調劑 +9 | 大可digkids 2026-03-16 | 9/450 |
|
|
[考研]
|
不想起名字112 2026-03-19 | 3/150 |
|
|
[考博] 申博26年 +3 | 八6八68 2026-03-19 | 3/150 |
|
|
[考研] 288求調劑,一志愿華南理工大學071005 +5 | ioodiiij 2026-03-17 | 5/250 |
|
|
[考研] 312求調劑 +8 | 陌宸希 2026-03-16 | 9/450 |
|
|
[考研] 301求調劑 +4 | A_JiXing 2026-03-16 | 4/200 |
|
|
[考研] 一志愿蘇州大學材料工程(085601)專碩有科研經歷三項國獎兩個實用型專利一項省級立項 +6 | 大火山小火山 2026-03-16 | 8/400 |
|
|
[考研] 東南大學364求調劑 +5 | JasonYuiui 2026-03-15 | 5/250 |
|