Exemplo n.º 1
0
 def abs(self, solver):
     u = Variable(2)
     constr = []
     constr += [abs(u[1] - u[0]) <= 100]
     prob = Problem(Minimize(sum_squares(u)), constr)
     print(("The problem is QP: ", prob.is_qp()))
     self.assertEqual(prob.is_qp(), True)
     result = prob.solve(solver=solver)
     self.assertAlmostEqual(result, 0)
Exemplo n.º 2
0
def describe_problem(problem: Problem):
    """
    DMCP https://github.com/cvxgrp/dmcp
    dccp
    """
    st = 'Curvature {}'.format(problem.objective.expr.curvature)
    st += '\nis disciplined quasiconvex    {}'.format(problem.is_dqcp())
    st += '\nis disciplined geometric      {}'.format(problem.is_dgp())
    st += '\nis disciplined quadratic      {}'.format(problem.is_qp())
    st += '\nis disciplined convex         {}'.format(problem.is_dcp())
    st += '\nis disciplined concave-convex {}'.format(dccp.is_dccp(problem))
    st += '\nis disciplined multi-convex   {}'.format(dmcp.is_dmcp(problem))
    # todo
    # SQP sequential quadratic program
    # SCP seperable convex program
    #
    return st