In [1]:
%load_ext autoreload
%autoreload 2

In [3]:
from irispy.ldp_mosek import ldp as mosek_ldp
from irispy.ldp_gurobi import ldp as gurobi_ldp
from irispy.ldp_cvxgen import ldp as cvxgen_ldp

In [4]:
import numpy as np

In [10]:
Y = np.random.rand(3,8)
print Y


[[ 0.07679552  0.8366745   0.12181081  0.77423917  0.45762605  0.79449443
   0.14414941  0.96406981]
 [ 0.36102141  0.3267518   0.6301299   0.12799804  0.24633271  0.6791391
   0.61674855  0.23263205]
 [ 0.89097694  0.56311321  0.38960095  0.03318534  0.41613427  0.93194734
   0.28324555  0.8230046 ]]

In [11]:
m = mosek_ldp(Y)
print m
g = gurobi_ldp(Y)
print g
c = cvxgen_ldp(Y)
print c
assert np.all(abs(m - g) < 1e-3)
assert np.all(abs(m - c) < 1e-3)


[ 0.39779814  0.40343681  0.21382337]
[ 0.39779808  0.40342557  0.21384467]
[ 0.39779882  0.40342566  0.21384647]

In [12]:
%timeit mosek_ldp(Y)


100 loops, best of 3: 1.17 ms per loop

In [13]:
%timeit gurobi_ldp(Y)


1000 loops, best of 3: 494 µs per loop

In [14]:
%timeit cvxgen_ldp(Y)


10000 loops, best of 3: 26.1 µs per loop

In [ ]: