Re: [ROOT] Fitting with Constraints

From: Victor Perevoztchikov (perev@bnl.gov)
Date: Sat Apr 05 2003 - 02:02:27 MEST


Hi Eddi and Matthew,
> Case 1 is simple: just add a Lagrangian multiplier(s) to your objective
>   function that you are minimizing in TMinuit. Case 2 is far more
difficult

it is not exactly true, both cases are complicated.
Lagrangian multiplier(s) do not help.

newFcn = fcn(par) + L*constrain(par)

then Minuit will search minimum of newFcn(par,L) but minimu is
evident, -infinity
because L could be very big.
Minuit does not searh extremum, it searches minimum.
But newFcn(par,L) has sadle point in extremum and Minuit can not handle it.

The only (but bad way) is.
newFcn = fcn(par) + 1000.*constrain(par)**2

If first approximation is very good, it could work.

The only existing, but hard way, is to select independent variables and
calculate others using constrains
Then Minuit will work as usual with independent variable

Victor



Victor M. Perevoztchikov   perev@bnl.gov
Brookhaven National Laboratory MS 510A PO Box 5000 Upton NY 11973-5000
tel office : 631-344-7894; fax 631-344-4206;

----- Original Message -----
From: "Eddy Offermann" <eddy@rentec.com>
To: <mdwood@midway.uchicago.edu>
Cc: <roottalk@pcroot.cern.ch>
Sent: Friday, April 04, 2003 2:45 PM
Subject: Re: [ROOT] Fitting with Constraints


> Hi Matthew,
>
> What kind of constraint ?
>
> 1) f(c1,c2,...) = 0 where c_i are the variables
>   or
> 2) f(c1,c2,...) < 0
>
> Case 1 is simple: just add a Lagrangian multiplier(s) to your objective
>   function that you are minimizing in TMinuit. Case 2 is far more
difficult
>
>
> Eddy
>
> > X-Authentication-Warning: harper.uchicago.edu: mdwood owned process
doing -bs
> > Date: Thu, 3 Apr 2003 16:18:17 -0600 (CST)
> > From: Matthew Wood <mdwood@midway.uchicago.edu>
> > X-Sender: mdwood@harper.uchicago.edu
> > To: roottalk@pcroot.cern.ch
> > Subject: [ROOT] Fitting with Constraints
> > MIME-Version: 1.0
> >
> > Hi.  I am trying to use the TMinuit class in Root to fit a function
given
> > a constraint function.  How does one create and use a constraint
function
> > with TMinuit?
> >
> > Matthew Wood
> >
>
> Eddy A.J.M. Offermann
> Renaissance Technologies Corp.
> Route 25A, East Setauket NY 11733
> e-mail: eddy@rentec.com
> http://www.rentec.com
>



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:10 MET