Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

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

Search the Archive

Re: maximization with array of constraints

  • To: mathgroup at smc.vnet.net
  • Subject: [mg128373] Re: maximization with array of constraints
  • From: felipe.benguria at gmail.com
  • Date: Thu, 11 Oct 2012 02:06:47 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-newout@smc.vnet.net
  • Delivered-to: mathgroup-newsend@smc.vnet.net
  • References: <k434cf$ne5$1@smc.vnet.net>

Thank you very much for all your help, this was really helpful.

felipe







El jueves, 27 de septiembre de 2012 23:10:29 UTC-4, Dana DeLouis  escribi=F3:
> > .. if mydata is an array with two columns and 100 rows, I would have 100 constraints, which are too many to enter manually. 
>
>
>
> > .. x*mydata[[1,row,1]] + y*mydata[[1,row,2]] >0
>
>
>
> Hi.  If I understood your question correctly, here is one idea:
>
> (* Make sure your MyFunction is not unbounded *)
>
>
>
> mydata=RandomInteger[{1,9},{10,2}]
>
>
>
> {{7,8},{9,4},{5,7},{4,3},{2,2},{2,7},{8,5},{9,1},{6,5},{5,7}}
>
>
>
> const = Thread[mydata.{x,y}>0]
>
>
>
> {
>
> 7 x+8 y>0,
>
> 9 x+4 y>0,
>
> 5 x+7 y>0,
>
> 4 x+3 y>0,
>
> 2 x+2 y>0,
>
> 2 x+7 y>0,
>
> 8 x+5 y>0,
>
> 9 x+y>0,
>
> 6 x+5 y>0,
>
> 5 x+7 y>0
>
> }
>
>
>
> MyFunction[x_,y_]:=-3x^2-4y+3
>
>
>
> NMaximize[{MyFunction[x,y],const}, {x,y} ]
>
>
>
> {3.10884, {x->0.190508,y->-0.0544307} }
>
>
>
> = = = = = = = = = =
>
> HTH  :>)
>
> Dana DeLouis
>
> Mac & Mathematica 8
>
> = = = = = = = = = =
>
>
>
>
>
>
>
>
>
> On Thursday, September 27, 2012 3:14:09 AM UTC-4, Felipe wrote:
>
> > Hi,
>
> >
>
> >
>
> >
>
> >       I am trying to maximize a function using NMaximize and I have a large list of constraints that I would like to write with a loop or as an array.
>
> >
>
> >
>
> >
>
> > It looks like the following:
>
> >
>
> >
>
> >
>
> > NMaximize[{myfunction[x,y] ,  x*mydata[[1,row,1]] + y*mydata[[1,row,2]]>0 }]
>
> >
>
> >
>
> >
>
> > and I want the restriction to be valid for the numbers in each row of the "mydata" array. That is, if mydata is an array with two columns and 100 rows, I would have 100 constraints, which are too many to enter manually. 
>
> >
>
> > Can I write a loop for the constraints inside NMaximize ? Do you have some suggestion on how to write this? I was not able to find it in earlier posts.
>
> >
>
> >
>
> >
>
> > Thank you very much for your help
>
> >
>
> > Felipe




  • Prev by Date: Re: Suppress Resizing in Manipulate[expr].
  • Next by Date: Re: Assuming and Integrate
  • Previous by thread: Re: how to put variables
  • Next by thread: Re: maximization with array of constraints