import soy ... if __name__ == '__main__': function = lambda x: 1/math.sqrt( (pos[0]-x[0])**2 + (pos[1]-x[1])**2 + (pos[2]-x[2])**2) dimensions = 3 pMin = [0.0 for x in xrange(dimensions)] pMax = [100.0 for x in xrange(dimensions)] print optimize(function, dimensions, pMin=pMin, pMax=pMax) screen = soy.Screen() win = soy.Window(screen, 'Particle Swarm', backgroup=soy.colors.Black()) key = soy.controllers.Keyboard(win) key['q'] = soy.actions.Quit() wcn = soy.controllers.Window(win) wcn['close'] = soy.actions.Quit()