#!/bin/env python # # Test for the main features of the Xpress Python interface # # Adds a vector of N=5 variables and sets constraints and objective. The problem is a convex QCQP from __future__ import print_function import xpress as xp N = 5 S = range (N) v = [xp.var (name = "y{0}".format (i)) for i in S] # set name of a variable as m = xp.problem ("problem 1") print ("variable:", v) m.addVariable (v) m.addConstraint (v[i] + v[j] >= 1 for i in range (N-4) for j in range (i,i+4)) m.addConstraint (xp.Sum([v[i]**2 for i in range (N-1)]) <= N**2 * v[N-1]**2) m.setObjective (xp.Sum ([i*v[i] for i in S]) * (xp.Sum ([i*v[i] for i in S]))) # objective overwritten at each setObjective () m.solve () print ("solution: ", m.getSolution ())