Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down at the end of May, and its replacement, statalist.org is already up and running.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: st: Optimize


From   Mohamud Hussein <Mohamud.Hussein@fera.gsi.gov.uk>
To   "statalist@hsphsun2.harvard.edu" <statalist@hsphsun2.harvard.edu>
Subject   RE: st: Optimize
Date   Mon, 23 Jul 2012 16:45:18 +0100

Thanks Austin.

I used code below as suggested but had no luck yet. I am sure it has something to do with my complete lack of knowledge in mata language.

I attach my data. I would be grateful if you can check for me where I am getting it wrong.

Many thanks,
Mohamud

==

void q(todo,x,y,g,H)
{
 crit=(3x^2+2x+1)^2
}
sol=J(1,0,0)
void grid(n1,n2)
{
 external sol, p
 for (i=n1; i<=n2; i++) {
  init=i
 S=optimize_init()
 optimize_init_evaluator(S, &q())
 optimize_init_which(S,"min")
 optimize_init_evaluatortype(S,"d0")
 optimize_init_params(S,init)
 p=round(optimize(S),10e-4)
 if (!anyof(sol, p)) {
  sol=(sol,p)
  }
 }
 sol
}
grid(-10,10)

==


-----Original Message-----
From: owner-statalist@hsphsun2.harvard.edu [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of Austin Nichols
Sent: 23 July 2012 15:26
To: statalist@hsphsun2.harvard.edu
Subject: Re: st: Optimize

Mohamud Hussein <Mohamud.Hussein@fera.gsi.gov.uk>:
Looks like you are trying to maximize the unbounded quadratic rather
than find its zeros.  Use a root finder instead e.g.
http://www.stata.com/statalist/archive/2007-12/msg00551.html
http://www.stata.com/statalist/archive/2009-01/msg01140.html
but note first that the particular example you gave has no zeros (so
no interior solution).

On Sun, Jul 22, 2012 at 9:59 AM, Mohamud Hussein
<Mohamud.Hussein@fera.gsi.gov.uk> wrote:
> Hi there,
>
> I am trying to run a model for a marginal cost curve equation based on the traditional cubic total cost curve function (i.e. y= x^3+X^2+X+c) using Stata's optimize() command. The goal is to estimate the value of x which minimises y subject to a number of constraints.
>
> When I tried to specify the marginal cost curve function in mata directly as y=3x^2+2x+1 (i.e. first derivative of the total cost equation) I got the following message:
>
> Iteration 0:   f(p) =          1  (not concave)
> Iteration 1:   f(p) =  7.911e+71  (not concave)
> Iteration 2:   f(p) =  1.95e+169  (not concave)
> Iteration 3:   f(p) =  8.32e+250  (not concave)
> Iteration 4:   f(p) =  1.62e+288  (not concave)
> Iteration 5:   f(p) =  2.34e+306
> Hessian is not negative semidefinite
>
> I have never used Stata's mata programming language before and am not quite sure of what do here? Grateful if someone can help me on this.
>
> Thanks,
> Mohamud

*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/

The information contained in this message may include privileged, proprietary or confidential information. Please treat it with the same respect that you would expect for your own information.  If you have received it in error, we apologise and ask that you contact the sender immediately and erase it from your computer. Thank you for your co-operation.

The original of this email was scanned for viruses by the Government Secure Intranet virus scanning service. On leaving the GSi this email was certified virus free.

Attachment: FD data_SL sample.dta
Description: FD data_SL sample.dta



© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index