commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gilles (JIRA)" <j...@apache.org>
Subject [jira] Commented: (MATH-519) GaussianFitter Unexpectedly Throws NotStrictlyPositiveException
Date Mon, 21 Feb 2011 02:26:38 GMT

    [ https://issues.apache.org/jira/browse/MATH-519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12997260#comment-12997260
] 

Gilles commented on MATH-519:
-----------------------------

{quote}
[...] pass parameters that are not necessarily valid [...]
{quote}

What would that mean?
To direct its search, the optimizer needs feedback from the objective function; in case of
invalid parameters, the objective function cannot provide feedback (i.e. compute the theoretical
curve)!

The only issue is how to "tell" the optimizer that it should discard invalid parameters (i.e.
make it consider that they are far away from a solution).


> GaussianFitter Unexpectedly Throws NotStrictlyPositiveException
> ---------------------------------------------------------------
>
>                 Key: MATH-519
>                 URL: https://issues.apache.org/jira/browse/MATH-519
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 3.0
>            Reporter: Ole Ersoy
>             Fix For: 3.0
>
>         Attachments: GaussianFitter.java, GaussianFitter2Test.java
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> Running the following:
>     	double[] observations = 
>     	{ 
>     			1.1143831578403364E-29, 
>     			 4.95281403484594E-28, 
>     			 1.1171347211930288E-26, 
>     			 1.7044813962636277E-25, 
>     			 1.9784716574832164E-24, 
>     			 1.8630236407866774E-23, 
>     			 1.4820532905097742E-22, 
>     			 1.0241963854632831E-21, 
>     			 6.275077366673128E-21, 
>     			 3.461808994532493E-20, 
>     			 1.7407124684715706E-19, 
>     			 8.056687953553974E-19, 
>     			 3.460193945992071E-18, 
>     			 1.3883326374011525E-17, 
>     			 5.233894983671116E-17, 
>     			 1.8630791465263745E-16, 
>     			 6.288759227922111E-16, 
>     			 2.0204433920597856E-15, 
>     			 6.198768938576155E-15, 
>     			 1.821419346860626E-14, 
>     			 5.139176445538471E-14, 
>     			 1.3956427429045787E-13, 
>     			 3.655705706448139E-13, 
>     			 9.253753324779779E-13, 
>     			 2.267636001476696E-12, 
>     			 5.3880460095836855E-12, 
>     			 1.2431632654852931E-11 
>     	};
>   
>     	GaussianFitter g = 
>     		new GaussianFitter(new LevenbergMarquardtOptimizer());
>     	
>     	for (int index = 0; index < 27; index++)
>     	{
>     		g.addObservedPoint(index, observations[index]);
>     	}
>        	g.fit();
> Results in:
> org.apache.commons.math.exception.NotStrictlyPositiveException: -1.277 is smaller than,
or equal to, the minimum (0)
> 	at org.apache.commons.math.analysis.function.Gaussian$Parametric.validateParameters(Gaussian.java:184)
> 	at org.apache.commons.math.analysis.function.Gaussian$Parametric.value(Gaussian.java:129)
> I'm guessing the initial guess for sigma is off.  

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message