Thread Subject: Large System Parameters Estimation

Subject: Large System Parameters Estimation

From: Nguyen The Hoach

Date: 8 Dec, 2008 11:18:02

Message: 1 of 5

I'm doing research with parameter estimation. I tried to do in Fortran with Genetic Algorithm. The result seems good at small scale but when the scale of system becomes larger, the probabilty to find out optimum reduce.

My system likes this: xi'(t) = ai II(xj^gij)- bi II(xj^hij) (II denotes the product)

My system has 14 parameters (ai, bi, gij, hij) in total but for 14 demension space, GA likely can't find out the optimum. Any one, who have experiences could give me some ideas?
Thank You very much!

Subject: Large System Parameters Estimation

From: Matt

Date: 8 Dec, 2008 13:10:32

Message: 2 of 5

"Nguyen The Hoach" <thehoach103@gmail.com> wrote in message <ghivpa$e85$1@fred.mathworks.com>...
> I'm doing research with parameter estimation. I tried to do in Fortran with Genetic Algorithm. The result seems good at small scale but when the scale of system becomes larger, the probabilty to find out optimum reduce.
>
> My system likes this: xi'(t) = ai II(xj^gij)- bi II(xj^hij) (II denotes the product)
>
> My system has 14 parameters (ai, bi, gij, hij) in total but for 14 demension space, GA likely can't find out the optimum. Any one, who have experiences could give me some ideas?
> Thank You very much!

Your post is lacking a number of important details:

1. What is the objective function that you're trying to minimize/maximize?
2. You say GA isn't likely to find the optimum, but what did you do to verify this?
3. What are the constraints on your parameters. Are they all positive?

Subject: Large System Parameters Estimation

From: Nguyen The Hoach

Date: 9 Dec, 2008 02:39:02

Message: 3 of 5

"Matt" <mjacobson.removethis@xorantech.com> wrote in message <ghj6c8$h7$1@fred.mathworks.com>...
> "Nguyen The Hoach" <thehoach103@gmail.com> wrote in message <ghivpa$e85$1@fred.mathworks.com>...
> > I'm doing research with parameter estimation. I tried to do in Fortran with Genetic Algorithm. The result seems good at small scale but when the scale of system becomes larger, the probabilty to find out optimum reduce.
> >
> > My system likes this: xi'(t) = ai II(xj^gij)- bi II(xj^hij) (II denotes the product)
> >
> > My system has 14 parameters (ai, bi, gij, hij) in total but for 14 demension space, GA likely can't find out the optimum. Any one, who have experiences could give me some ideas?
> > Thank You very much!
>
> Your post is lacking a number of important details:
>
> 1. What is the objective function that you're trying to minimize/maximize?
> 2. You say GA isn't likely to find the optimum, but what did you do to verify this?
> 3. What are the constraints on your parameters. Are they all positive?

Ah, Lucky for me!
1. I have a data file, they are time_courses of Xi(t) (measured data). The objective function I choose here is the least square: sum ((Xi(t) - Xei(t))^2) (Xi(t) is the time course I got from the solution of ODE systems with 1 set of parameters (ai, bi, gij, hij))

2. I've tried GA program but It took much time to solve ODE. I tested GA by creating a true-data file from given parameters using ODE45. With small scale, GA can find out the given parameters from true-data with given iterations, population size. But when I test with larger system (naturally time iterations and populations size must be increase respectively) but GA can't find out the given true parameters (in theory, GA can find out but when the searching space's dimensions increase from 4 to 14, the iterations and populations size required should increase enormously). I also try to improve GA from simple form by using descent or migration (increase mutation factor when GA converge at undesired local minimum). But all it failed! How can I improve the GA? or try another optimization algorithm? OR another ideas for this problems?

3. Constraints of this are only ai, bi (positive), gij, hij in a given range ([-1 1] for example)

After many thanks!

Subject: Large System Parameters Estimation

From: Marcus M. Edvall

Date: 9 Dec, 2008 02:51:52

Message: 4 of 5

You can solve this with PROPT and reach a global optimum quite easily:

http://tomdyn.com/parameter_estimation_dynamic_systems.html

An optimization problem with 1st and 2nd order derivatives is
automatically generated - this you can solve with for example multiMin
and compare to local solvers such as KNITRO and SNOPT.

Best wishes, Marcus
Tomlab Optimization Inc.
http://tomsym.com/
http://tomopt.com/

Subject: Large System Parameters Estimation

From: Stefan

Date: 9 Dec, 2008 07:34:03

Message: 5 of 5

I guess, with this objective function you can utilize quadratic programming for solving. Just some transformations are neccessary.

Just a hint,
Stefan


"Marcus M. Edvall" <edvall@gmail.com> wrote in message <42d5ed6e-dbf6-4828-94a7-4a462707351b@v4g2000vbb.googlegroups.com>...
> You can solve this with PROPT and reach a global optimum quite easily:
>
> http://tomdyn.com/parameter_estimation_dynamic_systems.html
>
> An optimization problem with 1st and 2nd order derivatives is
> automatically generated - this you can solve with for example multiMin
> and compare to local solvers such as KNITRO and SNOPT.
>
> Best wishes, Marcus
> Tomlab Optimization Inc.
> http://tomsym.com/
> http://tomopt.com/

Tags for this Thread

Add a New Tag:

Separated by commas
Ex.: root locus, bode

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

rssFeed for this Thread

Contact us at files@mathworks.com