Levenberg-Marquardt Algorithm for more than one function

  • Context: Graduate 
  • Thread starter Thread starter Shauheen
  • Start date Start date
  • Tags Tags
    Algorithm Function
Click For Summary

Discussion Overview

The discussion revolves around the application of the Levenberg-Marquardt algorithm (LMA) for minimizing errors in two functions simultaneously. Participants explore the formulation of the Jacobian matrix and the error function when dealing with multiple dependent measurements in a lab setting, specifically focusing on height change and mass over time.

Discussion Character

  • Exploratory
  • Technical explanation
  • Mathematical reasoning

Main Points Raised

  • One participant describes their experience with LMA for minimizing a single error function and seeks guidance on extending this to two functions, specifically how to calculate the Jacobian matrix in this context.
  • Another participant suggests combining the two measurement vectors into one to simplify the problem, proposing a new vector that includes both measurements and their corresponding models.
  • There is a discussion about whether it is appropriate to combine different physical values (height and mass) into a single matrix for analysis, with a focus on how to formulate the error function accordingly.
  • Participants discuss the mathematical representation of the error function when combining the two sets of measurements, maintaining the structure of the original error functions.

Areas of Agreement / Disagreement

Participants generally agree on the approach of combining measurement vectors but express uncertainty about the implications of combining different physical values and how to represent the error function accurately. The discussion remains unresolved regarding the best method to formulate the Jacobian matrix for the combined functions.

Contextual Notes

Participants note that the number of data points for the two measurements differs, which may affect the significance of each measurement in the combined error function. There is also mention of the need to ensure that both measurements are treated equally in the analysis.

Who May Find This Useful

This discussion may be useful for researchers or practitioners working on inverse problems in experimental physics, particularly those interested in applying optimization algorithms to multiple dependent measurements.

Shauheen
Messages
2
Reaction score
0
I have been looking how to use the Levenberg Marqurdt algorithm for minimizing the errors of two functions at the same time. I looked up this topic in the internet and the only useful thing I found was a thread between "I like Serena" and "thomas430" in summer 2011.

https://www.physicsforums.com/showthread.php?t=521670

I read "I like Serena"'s notes, but still have problem in finding out how I have to calculate the Jacobian matrix.

I am measuring two values over time in the lab. Then, a numerical forward model has been developed which models the physics and now, I need to solve the inverse problem to find the unknown parameters. I have solved this problem previously several times when only one error function needed to be minimized. Based on what I have learned about LMA (from Inverse Heat Transfer by Necati Ozicik), the gradient of the error (from one function) will result in multiplication of the Jacobian matrix by the difference between the experimental and model results. This gradient needs to become zero:

∇S(P)=2[-∂T(P)/∂P][Y-T(P)]=0

In which P is the vector of the unknown parameters, T is the model value vector and Y is the experimental value.
This problem, minimizes S(P)=Ʃ[Yi-Ti(P)]^2

Now, I have to find let say 3 parameters from the minimization of two errors from my experiments. In my experiment, I measure two values vs. time, let say Y and M. These two values are dependent. The number of the collected data are not the same for these two and I think they are both equally important. I could check on the typical range of errors to make them equally significant.
My question is how to minimize the error of the combination of these two and find my unknowns?

Let say if the error is like:
E(P)=Ʃ[Yi-Ti(P)]^2+Ʃ[Mi-Ui(P)]^2

Ui and Ti are the values from my model.
What would be the Jacobian matrix in this case? for one function, it would be like:
P(k+1)=P(k)+[(J(k)T.J(k)+μ(k)Ω(k)]^-1 (J(k))T[Y-T(P(k))]
in which k is the kth iteration.

How would be the formulation once two functions are involved?

I would really appreciate if anyone could help.
 
Physics news on Phys.org
Hello and welcome to PF, Shauheen! :smile:

I'm not sure if I understand everything in your problem yet, but as I understand it now, you have a measured vector Y and a model T(P) for it, and you also have a measured vector M and a model U(P) for it.

You can turn these 2 measurement vectors into one but putting them on top of each other.
Let's say we let N=(Y1, ..., Yn, M1, ..., Mm), and let V(P)=(T1(P), ..., Tn(P),U1(P), ..., Um(P)).
Then that reduces your problem back to where you have one measurement vector and one model vector function.
The new Jacobian matrix is basically a combination of the 2 separate Jacobian matrices.
 
I like Serena said:
Hello and welcome to PF, Shauheen! :smile:

I'm not sure if I understand everything in your problem yet, but as I understand it now, you have a measured vector Y and a model T(P) for it, and you also have a measured vector M and a model U(P) for it.

You can turn these 2 measurement vectors into one but putting them on top of each other.
Let's say we let N=(Y1, ..., Yn, M1, ..., Mm), and let V(P)=(T1(P), ..., Tn(P),U1(P), ..., Um(P)).
Then that reduces your problem back to where you have one measurement vector and one model vector function.
The new Jacobian matrix is basically a combination of the 2 separate Jacobian matrices.


Thanks a lot I Like Serena for your kind welcome and reply to my question :)
Y and M are two different physical values. One is height change (I am tracking the height) and the other is mass. I start collecting each of these two data sets from time zero to t(final). Would that still be possible to put the two different physical value on top of each other in a matrix?
What would be my error then?

Physically in my mind, it is like plotting both curves vs. time and trying to match the two model to these curves with the same parameters, right?

I have attached for you a handwritten description about my problem and have attached it to this reply.

Thanks again for devoting your time.
 

Attachments

  • My Problem.jpg
    My Problem.jpg
    31.5 KB · Views: 523
Shauheen said:
Thanks a lot I Like Serena for your kind welcome and reply to my question :)
Y and M are two different physical values. One is height change (I am tracking the height) and the other is mass. I start collecting each of these two data sets from time zero to t(final). Would that still be possible to put the two different physical value on top of each other in a matrix?
What would be my error then?

Physically in my mind, it is like plotting both curves vs. time and trying to match the two model to these curves with the same parameters, right?

I have attached for you a handwritten description about my problem and have attached it to this reply.

Thanks again for devoting your time.

You can put the 2 vectors on top of each other.
The result is not so much a matrix, but just another vector.

The error function can be the same to what you already have:
$$E(P)=\sum_{i=1}^{n+m}[N_i-V_i(P)]^2=\sum_{i=1}^{n}[Y_i-T_i(P)]^2+\sum_{i=1}^{m}[M_i-U_i(P)]^2$$
where n is the number of Y measurements and m is the number of M measurements.When you have solved the system, useful properties will be:
$$s_Y = \sqrt{\frac{\sum[Y_i-T_i(P)]^2}{n-1}}$$
$$s_M = \sqrt{\frac{\sum[M_i-U_i(P)]^2}{m-1}}$$
where ##s_Y## is the standard deviation of the error in the Y measurements and ##s_M## is the standard deviation of the error in the M measurements.
 

Similar threads

  • · Replies 17 ·
Replies
17
Views
7K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 8 ·
Replies
8
Views
2K
  • · Replies 15 ·
Replies
15
Views
3K
Replies
31
Views
4K
  • · Replies 11 ·
Replies
11
Views
3K
  • · Replies 4 ·
Replies
4
Views
4K
  • · Replies 12 ·
Replies
12
Views
4K
  • · Replies 1 ·
Replies
1
Views
1K