При попытке передать дополнительные аргументы в минимизируемую функцию происходит ошибка сегментирования.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from pyOpt import Optimization
from pyOpt import NSGA2
from pyOpt import SLSQP
b0 = 1.1
def objfunc2(x, b = (b0)):
b1 = b[0]
f = (x[0]**2 - b1)**2 + 4.*x[1]**2
g = 1.; fail = 0
return f, g, fail
opt_prob = Optimization('simpe quadric', objfunc2)
x = [0.0]*2; xa = [-3.]*2; xb = [3.]*2
opt_prob.addVarGroup('x', 2, type = 'c', lower=xa, upper=xb, value=x)
opt_prob.addObj('f')
print "\nopt_prob:"
print opt_prob
# Global Optimization
nsga2 = NSGA2()
print '-------------'
nsga2(opt_prob)
print "========================================================================\nopt_prob.solution(0):"
print opt_prob.solution(0)
вылетает на nsga2(opt_prob)