MathGroup Archive 2008

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: Solving nonlinear inequality constraints

  • To: mathgroup at
  • Subject: [mg91370] Re: [mg91243] Re: [mg91209] Solving nonlinear inequality constraints
  • From: "Stuart Nettleton" <Stuart.Nettleton at>
  • Date: Tue, 19 Aug 2008 07:13:10 -0400 (EDT)
  • Organization: University of Technology, Sydney
  • References: <>

On Mon, 18 Aug 2008 03:26:22 +1000, <danl at> wrote:
> (1) Get rid of all the Hold usage. If you need it, you are doing  
> something
> wrong.
> (2) If you spend a bit of time debugging this, say, computing various
> functions for various small values of t (e.g. inv[2]), you will quickly
> learn that you have not defined \[Mu][t_]. This means there will be no  
> end
> of symbolic computation in trying to resolve various inequalities, etc.
> (3) There could be other issues. For one, you might have complex values
> which will cause inequalities to be unevaluated. This, too, might be
> determined by computing various values (after resolving issue (2) above).
> Daniel Lichtblau
> Wolfram Research
Hi Daniel, Thanks for your response. I have experiemented with your
suggestions but question whether your points can be implemented because of
the following issues:
(1) Hold usage cannot be removed on constraints because they immediately
start to evaluate for true/false eg. 0.02*k[periods] <= inv[periods],
which is not wanted because they need to remain symbolic to be combined
with the objective function (and because they burst the Recursion limit).
(2) \[Mu][t_] is deliberately not defined or else the the {x,y,...} in
NMinimize[{f,cons},{x,y,...}] are immediately evaluated. As with the
constraints, the {x,y,...} need to remain symbolic to be of use in
NMinimize. Instead of a using the function that you suggested, I have left
the \[Mu][t] to be provided by NMinimize. Given (1) and (2), how can your
suggestion can be implemented?
(3) Complex values do not arise with any of the cases I can evaluate but
it is agreed that this would need to be watched. Interestingly, using
NMinimize, 7 periods takes 35 minutes and 8 periods takes 77 minutes. The
memory usage is 2.3Gb and 11.3Gb respectively. Using _NumericQ in each of
the function definitions actually slows down execution by about 1 minute.
I really appreciate your thoughts,

Stuart Nettleton
FCPA, MBA, MEngSci, BEng(Hons), GradDipAICD
Senior Lecturer, Faculty of Engineering

Privacy and Confidentiality Notice: The information in this e-mail may be  
confidential and /or legally privileged.  It is intended solely for the  
addressee.  Access to this e-mail by anyone else is unauthorised. If you  
are not the intended recipient, any disclosure, copying, distribution or  
any action taken or omitted to be taken in reliance on it, is prohibited  
and may be unlawful.

Virus Information: It is the recipient/client's duty to virus scan and
otherwise test the information provided before loading onto any computer  
system. No warranty is made that this material is free from computer virus  
or any other defect or error. Any loss/damage incurred by using this  
material is not the sender's responsibility.

UTS CRICOS Provider Code:  00099F
DISCLAIMER: This email message and any accompanying attachments may contain
confidential information.  If you are not the intended recipient, do not
read, use, disseminate, distribute or copy this message or attachments.  If
you have received this message in error, please notify the sender
immediately and delete this message. Any views expressed in this message
are those of the individual sender, except where the sender expressly, and
with authority, states them to be the views the University of Technology,
Sydney. Before opening any attachments, please check them for viruses and

  • Prev by Date: Re: Equations system with zero
  • Next by Date: Re: About the error message Indeterminate
  • Previous by thread: Re: Re: Solving nonlinear inequality
  • Next by thread: Re: Re: Solving nonlinear inequality constraints