Psychometric curve fitting using Levenberg–Marquardt algorithm

5 views (last 30 days)
i'm trying to make (and understand) a psychometric curve fitting (that is used in a scientific paper) using a cumulative gaussian function between two vectors R_objective_distances and X_reel_distances :
$g(m,n,RObjectiveDistances)=\frac{1}{\sqrt{2*\pi}}\int_{m+nR}^{+\propto
}e^{-t^2/2} dt$
to do this, i used the toolbox Curve Fit of Matalab, and specified the library model 'Gaussians'. However, this Gaussian model is not as the one i want to perform. How can i use the model i want in Matlab? (i'm not familiarized with the Curve Fitting)
  9 Comments
Walter Roberson
Walter Roberson on 21 Dec 2015
It looks to me that that is an infinity that is partly cut off.
What is the original paper being used?
Anass
Anass on 21 Dec 2015
Edited: Walter Roberson on 21 Dec 2015
this is the original paper that use this equation : http://www.gipsa-lab.grenoble-inp.fr/~kai.wang/papers/CG12.pdf (see section 4.1-Test and Comparisons)
(thanks for helping me)

Sign in to comment.

Answers (1)

Walter Roberson
Walter Roberson on 21 Dec 2015
If you zoom in to the equation the propto is an infinity.
The right hand side resolves to
1/2 * erfc(sqrt(1/2)*(m+n*R))
I think it unlikely that the Gaussian model happens to match exactly that, but you could try creating a custom model.
But you are looking for a curve fitting, presumably with parameters m, n, and R, and you have the difficulty that any combination of m+n*R that come out the same would match. But if you let R be a known parameter then you can solve for n in terms of m. If you let E0 be such that erfc(E0) = 0, then E0 = 9.150795341104318, and then
n = (sqrt(2)*E0-m)/R
Possibly you have a number of values to fit.
  1 Comment
Anass
Anass on 21 Dec 2015
Edited: Anass on 21 Dec 2015
I tried to understand, but it's a little bit difficult for me. In the paper, they said that m and n are approximated with a least-square. I have read the documentation about the Gaussian model in the fitting tool of Matlab, and i saw how they approximate the 2 parameter of the model (in our case m and n). But here, i didn't understand how you can approximate them. You are no using a least square ?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!