Matlab Code Assistance for Multistart or GA

조회 수: 3 (최근 30일)
Temesgen
Temesgen 2023년 4월 5일
댓글: Alan Weiss 2023년 4월 20일
I want to apply MultiStart global optimization technique for curve fitting and parameter estimation from data set and system of ordinary differential equation. I am new for that concept. I have Number of infected cases for time serious data and want to fit with my model. I am wondering if you could assist me how to estimate using that technique? I will be very happy if you send me any prototype matlabcode!
Any help is appreciated!

답변 (2개)

Nihal Reddy
Nihal Reddy 2023년 4월 13일
I understand you require resources and reference examples for implementing MultiStart optimization technique in MATLAB.
Please refer to the following MATLAB documentation for more information and examples-
Hope this helps!
  댓글 수: 1
Temesgen
Temesgen 2023년 4월 15일
Dear Nihal Readdy, I will refer these marials. Thank you very much!!

댓글을 달려면 로그인하십시오.


Alan Weiss
Alan Weiss 2023년 4월 14일
  댓글 수: 11
Temesgen
Temesgen 2023년 4월 20일
편집: Temesgen 2023년 4월 20일
Dear Alan, really I appreciate your effort, thank you so much. here are some thing I want to say.
  1. I want to estimate the following (13) model parameters. Keep in mind, there are 8 fixed model paraeters in addition to another 10 state variables. I gave these initial values for simulation purpose.
x(1) = 0.000548 ; % x(1)=Lambdaa
x(2) = 0.004626; % x(2)= phia
x(3) = 0.00227; % x(3)=gammah
x(4) = 0.295; % x(4)=gammaa
x(5) = 0.0002857; % x(5)=mua
x(6) = 0.0014; % x(6)= deltaa
x(7) = 0.001; % x(7)=q
x(8) =0.003189 ; % x(8)=betah
x(9) = 0.000178; % x(9)=betaaa
x(10) = 0.09; % x(10)=betahe
x(11) = 0.0009; % x(11)=betaah
x(12) = 0.175;% x(12)=alphah
x(13) = 0.285; % x(13)=alphaa
2. the estimated values as indicated in ''yout'' shows for the ten state variables (y(1), y(2), ......y(10)). Am I right? But, the program should use those initial values and estimate those 13 parameters and since most of the values will be in between 0 and 1 since ther are rates except some parametes like x(1).
3. The lower and upper bounds should be for these 13 parameters not for the 10 state variables.
you can use these bounds for those parameters
%[Lama betah betaah betahe betaaa gammah gammaa alphah alphaa mua deltaa q phia];
lb=[1 0.14 0.01 0.01 0.01 0 0.01 0.01 0 0.5 0.5 0.01 0.1];
ub=[1000 0.428 0.95 0.95 0.95 0.95 0.75 0.95 0.5 0.85 0.85 0.75 0.9];
Dear, I am very greatful and I can't wait to see the result after you consider and incorporate these ideas into the program.
Alan Weiss
Alan Weiss 2023년 4월 20일
OK, I clearly misunderstood what are the parameters to vary in your problem. And I am not sure that I understood correctly what you are trying to match, meaning which data are you trying to fit and which output of the ODE you want to match.
Once more I ask you to perform the following.
  1. Give a function F(x) that is the ODE solver, taking your parameters x to a solution y(t). Obviously, I am not sure what that function is in the code that you gave me.
  2. After that we can try to identify the data that you want F(x) to fit. We will call an optimizer and minimize the sum of squares of some parts of y(t) minus some data d(t).
So I am asking you to give F(x). Not to optimize it, just give clear, unambiguous, working code that takes an input set of parameters x and returns an ODE solution y(t).
Alan Weiss
MATLAB mathematical toolbox documentation

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Global or Multiple Starting Point Search에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by