[SciPy-User] Inequality constrains definition and violation in slsqp

jagan prabhu jagan_cbe2003@yahoo.co...
Fri Dec 11 08:39:35 CST 2009


my objective function is a simple least square function, i have 8 parameters and  3 inequality constraints, i used fmin_slsqp optimization algorithm for my problem, but often my constraints are violated while execution. My

code looks like,



######### begin #####################################

Init = [8.0, 14.0, 16.0, 7.0, 13.0, 50.0, 9.0, 4.0]  #

[a,b,c,d,e,f,g,h]

# constraints  (c > d, g > h &  e>=a)



bounds =  [(3.0, 4000.0), (1.0, 6000.0), (2.0, 10000.0), (1.0,

4000.0), (4.0, 6000.0), (1.0, 5000.0), (2.0, 10000.0), (1.0, 4000.0)]

# constraints

con1 = lambda  x:  x[2]-x[3]

con2 = lambda  x:  x[6]-x[7]

con3 = lambda  x:  x[4]-x[0]

cons = [con1, con2, con3]

###

# gradient function for my problem

def grad(s,*args):

 f = func

 step = 1.e-3

 fini = f(*((s,)+args))

 grad = numpy.zeros((len(s),), float)

 st = numpy.zeros((len(s),), float)

 for i in range(len(s)):

   st[i] = step*s[i]

   grad[i] = (f(*((s+st,)+args)) - fini)/st[i]

   st[i] = 0.0

 return grad



opt = fmin_slsqp(func, Init, ieqcons=cons, bounds= bounds, fprime =

grad, iter=50000,iprint=2, acc=0.01)



##############  end of the code #############################



Here the major problem i face is the constraints (c > d, g > h & e>=a) are violated frequently during execution, is there any error with my constrain definition method or any better way to avoid constrain violations?



      The INTERNET now has a personality. YOURS! See your Yahoo! Homepage. http://in.yahoo.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/scipy-user/attachments/20091211/ae55ad65/attachment.html 


More information about the SciPy-User mailing list