Using cobrapy (version 0.3.0b4 or later), we have interfaces to serveral floating point solvers (gurobi, MOSEK, CPLEX, soplex compiled with long double (80 bit) precision, and two different versions of GLPK). Additionally, we can use the rational solving capabilities of GLPK and esolver (also known as QSopt_ex). We will use all of these solvers on all the models in bigg, as well as some other models.
from os import listdir
from os.path import join
import warnings
import re
import pandas
import sympy
import scipy.io
import cobra
We will verify all of our solutions by writing out the Stoichiometrix matrix $\mathbf S$ using the sympy symbolic math library. The total error will be equivalent to $$ \sum \left|\mathbf S \cdot v \right| $$
def convert_to_rational(value):
return sympy.Rational("%.15g" % value)
def construct_exact_S(model):
# intialize to 0
S = sympy.SparseMatrix(len(model.metabolites), len(model.reactions), 0)
# populate with stoichiometry
for i, r in enumerate(model.reactions):
for met, value in r._metabolites.iteritems():
S[model.metabolites.index(met), i] = convert_to_rational(value)
return S
def total_error(S, v):
return sum(abs(i) for i in S * v)
Some of these models were exported from BiGG as SBML, and others were downloaded from their respective publications. All of the models are available in a git repository. They were parsed into a single mat file by an included script.
models = []
model_file = scipy.io.loadmat("m_model_collection/all_models.mat")
for possible_name in model_file.keys():
if possible_name.startswith("_"):
continue
with warnings.catch_warnings():
warnings.simplefilter("ignore")
model = cobra.io.mat.from_mat_struct(model_file[possible_name], model_id=possible_name)
models.append(model)
These models all compute rationally with esolver and also with the other floating point solvers, as shown below. They also compute with floating point solvers in the COBRA toolbox, as demonstrated in this test script.
results = {}
exact_results = {}
errors = {}
for m in models:
S = construct_exact_S(m)
S_float = m.to_array_based_model().S
rational_solution = m.optimize(solver="esolver", rational_solution=True)
rational_v = sympy.Matrix(rational_solution.x)
exact_results[m.id] = {"Rational Value": rational_solution.f,
"Decimal Value": float(rational_solution.f),
"Total Error": total_error(S, rational_v),
# Ensure the upper and lwoer bounds are satisfied.
"bounds_sat": all([r.upper_bound >= value >= r.lower_bound
for r, value in zip(m.reactions, rational_v)])}
# solve this model with all the solvers
solutions = {solver: m.optimize(solver=solver)
for solver in cobra.solvers.solver_dict}
solutions["cglpk_exact"] = m.optimize(solver="cglpk", exact=True)
# store the objective value and errors
results[m.id] = {k: v.f for k, v in solutions.iteritems()}
errors[m.id] = {k: sum(abs(S_float * array(v.x))) for k, v in solutions.iteritems()}
# format the results as pandas dataframes
exact_results = pandas.DataFrame.from_dict(exact_results).T
results = pandas.DataFrame.from_dict(results)
errors = pandas.DataFrame.from_dict(errors)
Here is are objective values and error of the rational results provided by esolver.
exact_results.rename(columns={"bounds_sat": r"$ub \ge v \ge lb$",
"Total Error": r"$\sum\left|\mathbf S \cdot v\right|$"})
Decimal Value | Rational Value | $\sum\left|\mathbf S \cdot v\right|$ | $ub \ge v \ge lb$ | |
---|---|---|---|---|
AORYZAE_COBRA | 25.6824 | 10504392200845731410/409011287584573141 | 0 | True |
AbyMBEL891 | 119.233 | 386664062500000/3242927908653 | 0 | True |
AraGEM | 10 | 10 | 0 | True |
PpaMBEL1254 | 78.70059 | 4725000000000/60037666259 | 0 | True |
PpuMBEL1071 | 132.3654 | 644062500000/4865793703 | 0 | True |
STM_v1.0 | 0.4778337 | 178576000/373720009 | 0 | True |
S_coilicolor_fixed | 860.0888 | 408741530000000000/475231759036371 | 0 | True |
SpoMBEL1693 | 63.78566 | 1237500000000/19400913101 | 0 | True |
T_Maritima | 0.359469 | 180000000/500738623 | 0 | True |
VvuMBEL943 | 96.40232 | 14000000000/145224717 | 0 | True |
iAC560 | 4.042612 | 35000000/8657769 | 0 | True |
iAF1260 | 0.7367009 | 146888000/199386199 | 0 | True |
iAF692 | 0.02725005 | 107424000/3942157643 | 0 | True |
iAI549 | 84.17419 | 114000000000/1354334333 | 0 | True |
iAN840m | 0.3401361 | 50/147 | 0 | True |
iBsu1103 | 1229.657 | 1687500000000000/1372333638281 | 0 | True |
iCA1273 | 0.7402418 | 293776000/396864911 | 0 | True |
iCB925 | 0.1194276 | 1614000000/13514458561 | 0 | True |
iCac802 | 0.209597 | 99830000000/476294907501 | 0 | True |
iFF708 | 14.91711 | 113942000000/7638344959 | 0 | True |
iIB711 | 84.68841 | 100000000000/1180799053 | 0 | True |
iIT341 | 0.6928127 | 814668000000/1175884921963 | 0 | True |
iJN678 | 0.06314984 | 869550000000/13769631712373 | 0 | True |
iJN746 | 1.397457 | 139745688763/100000000000 | 0 | True |
iJO1366 | 0.9823718 | 189480000/192880127 | 0 | True |
iJP815 | 0.861512 | 179500000/208354621 | 0 | True |
iJR904 | 0.9219481 | 6380800/6920997 | 0 | True |
iKF1028 | 0.517807 | 1900000/3669321 | 0 | True |
iLC915 | 79.02123 | 786562500000000/9953812160053 | 0 | True |
iMA871 | 27.79298 | 100000000000/3598031369 | 0 | True |
iMB745 | 0.03094245 | 161000000/5203208413 | 0 | True |
iMM1415 | 1.363428 | 110000/80679 | 0 | True |
iMM904 | 0.2878657 | 145400000/505096641 | 0 | True |
iMO1056 | 1.047929 | 100000000/95426353 | 0 | True |
iND750 | 0.09732338 | 21000000/215775499 | 0 | True |
iNJ661 | 0.05219947 | 894000/17126611 | 0 | True |
iNJ661m | 0.0521992 | 107280000/2055203801 | 0 | True |
iPS189_fixed | 2.238961 | 90000000/40197209 | 0 | True |
iRC1080 | 6.156851 | 1000000000000000000000/162420679450988000257 | 0 | True |
iRS1563 | 0.07996249 | 16170000000000000000/202219826710707573821 | 0 | True |
iRS1597 | 8.969346 | 37500000/4180907 | 0 | True |
iRsp1095 | 9.686899 | 1514600000000000000000000/15635550882015213602... | 0 | True |
iSB619 | 0.1580503 | 10000/63271 | 0 | True |
iSR432 | 11.48257 | 72500000000000000/6313917669853967 | 0 | True |
iSS884 | 70.35929 | 7513000000000/106780503717 | 0 | True |
iSyn669 | 0.1790899 | 6802000000/37980929237 | 0 | True |
iTH366 | 27890.89 | 10741489258500000/385125386207 | 0 | True |
iVS941_fixed | 0.5233846 | 10000000/19106407 | 0 | True |
iYL1228 | 1.042637 | 1590492000/1525450603 | 0 | True |
mus_musculus | 129.1006 | 10000000/77459 | 0 | True |
textbook | 0.8739215 | 686440/785471 | 0 | True |
Here is the $\sum\left|\mathbf S \cdot v\right|$ error computed using floating point operations for every solver. When computed rationally with esolver above, this value was exactly 0. Howver, when rounding the fractional values to floating point, there is a very small amount of resulting error, so even esolver does not give 0 error for this computation.
errors.T
cglpk | cglpk_exact | cplex | esolver | glpk | gurobi | mosek | soplex | |
---|---|---|---|---|---|---|---|---|
AORYZAE_COBRA | 8.397096e-12 | 7.876394e-12 | 9.102191e-12 | 7.278331e-12 | 9.208338e-12 | 1.312897e-11 | 1.755370e-11 | 5.941914e-12 |
AbyMBEL891 | 1.030879e-11 | 1.003474e-11 | 1.609881e-11 | 6.093565e-12 | 1.168024e-11 | 2.244530e-11 | 2.173014e-11 | 7.435998e-12 |
AraGEM | 4.518242e-12 | 5.055873e-12 | 1.031621e-11 | 3.953687e-12 | 5.721206e-12 | 1.075971e-11 | 1.607253e-11 | 4.703434e-12 |
PpaMBEL1254 | 5.524246e-12 | 6.130557e-12 | 1.653475e-11 | 1.599098e-12 | 5.808043e-12 | 7.211558e-12 | 1.327733e-11 | 3.710988e-12 |
PpuMBEL1071 | 9.213515e-12 | 1.006637e-07 | 6.212253e-12 | 5.611067e-12 | 6.928756e-12 | 3.708822e-11 | 1.154134e-11 | 6.461942e-12 |
STM_v1.0 | 2.442772e-12 | 7.616228e-09 | 9.155728e-13 | 4.133462e-13 | 4.027310e-12 | 2.906957e-11 | 1.424397e-11 | 2.233929e-12 |
S_coilicolor_fixed | 6.094508e-11 | 5.231821e-11 | 5.070666e-11 | 3.497688e-11 | 4.686266e-11 | 8.191589e-11 | 2.215057e-10 | 2.802614e-11 |
SpoMBEL1693 | 9.424184e-12 | 8.661221e-12 | 8.002987e-12 | 5.512237e-12 | 8.155074e-12 | 1.530839e-11 | 2.056227e-11 | 5.011248e-12 |
T_Maritima | 1.149696e-12 | 1.018268e-09 | 1.312999e-12 | 1.125577e-12 | 1.578348e-12 | 4.416971e-12 | 1.510734e-11 | 1.516991e-12 |
VvuMBEL943 | 1.291556e-11 | 1.499405e-11 | 1.001312e-11 | 1.396693e-11 | 8.099037e-12 | 1.663013e-11 | 2.356213e-11 | 1.508854e-11 |
iAC560 | 8.194865e-12 | 1.086580e-11 | 8.923992e-12 | 6.451882e-12 | 7.145092e-12 | 2.157194e-11 | 1.947821e-11 | 1.092283e-11 |
iAF1260 | 1.781254e-09 | 2.317057e-09 | 1.214389e-09 | 8.198651e-10 | 7.152690e-09 | 9.152921e-09 | 1.764879e-08 | 2.210171e-09 |
iAF692 | 3.386389e-09 | 1.658786e-09 | 1.631230e-08 | 1.963760e-09 | 1.222407e-09 | 9.790088e-09 | 9.934678e-09 | 3.282749e-07 |
iAI549 | 1.612223e-11 | 1.635750e-11 | 2.568619e-11 | 1.368209e-11 | 1.323319e-11 | 1.431488e-11 | 2.102636e-11 | 9.576010e-12 |
iAN840m | 3.298200e-10 | 1.590948e-10 | 2.751869e-10 | 2.302759e-10 | 2.859458e-10 | 9.040576e-10 | 1.172849e-09 | 2.037961e-10 |
iBsu1103 | 2.972863e-10 | 6.526070e-06 | 2.472710e-10 | 2.010636e-10 | 3.242728e-10 | 6.813292e-10 | 8.936830e-10 | 2.348458e-10 |
iCA1273 | 2.755569e-12 | 2.510899e-12 | 2.677644e-12 | 1.519041e-12 | 3.057492e-12 | 2.003935e-11 | 1.762628e-11 | 1.413854e-12 |
iCB925 | 1.736274e-14 | 8.833104e-15 | 1.165951e-14 | 1.306301e-14 | 2.114921e-14 | 5.571875e-12 | 6.289154e-12 | 1.105572e-14 |
iCac802 | 8.493680e-14 | 3.819428e-14 | 1.898222e-13 | 7.927829e-14 | 7.058789e-14 | 1.341451e-11 | 1.029223e-11 | 3.950239e-14 |
iFF708 | 9.631808e-12 | 7.577920e-12 | 7.416481e-12 | 5.430347e-12 | 1.020766e-11 | 8.490127e-12 | 2.012872e-11 | 5.210327e-12 |
iIB711 | 8.816919e-12 | 1.383682e-11 | 2.195908e-11 | 1.150156e-11 | 1.309052e-11 | 1.538718e-11 | 2.583597e-11 | 7.610506e-12 |
iIT341 | 1.014080e-09 | 1.238232e-09 | 8.119830e-10 | 2.710340e-10 | 1.470638e-09 | 5.846785e-09 | 7.601729e-09 | 1.514078e-09 |
iJN678 | 2.398464e-14 | 2.797801e-10 | 1.396985e-14 | 2.238604e-14 | 2.488953e-14 | 8.051307e-12 | 5.716085e-12 | 2.776961e-13 |
iJN746 | 4.619685e-09 | 6.488544e-09 | 6.687020e-09 | 4.391777e-09 | 5.307806e-09 | 9.431021e-09 | 1.182201e-08 | 2.626600e-09 |
iJO1366 | 3.229136e-12 | 2.352584e-09 | 5.214601e-12 | 8.026430e-13 | 4.692354e-12 | 9.346213e-12 | 1.267621e-11 | 2.973008e-12 |
iJP815 | 1.020123e-09 | 1.263897e-09 | 1.550045e-08 | 7.528140e-10 | 1.367096e-09 | 1.480841e-08 | 6.830615e-09 | 1.754968e-13 |
iJR904 | 1.099850e-09 | 2.948835e-09 | 4.445673e-10 | 1.427380e-10 | 1.365733e-09 | 8.422848e-09 | 1.420731e-08 | 5.069783e-10 |
iKF1028 | 4.410775e-09 | 3.251033e-09 | 4.556265e-09 | 1.713361e-09 | 4.626908e-09 | 6.951025e-09 | 9.571061e-09 | 1.402554e-09 |
iLC915 | 8.942108e-12 | 7.341506e-12 | 6.786460e-12 | 6.807457e-12 | 1.100345e-11 | 2.001077e-11 | 2.595469e-09 | 6.767324e-12 |
iMA871 | 8.159995e-12 | 7.914335e-12 | 9.557480e-12 | 4.393495e-12 | 7.955587e-12 | 1.058580e-11 | 1.738133e-11 | 5.867922e-12 |
iMB745 | 5.070478e-12 | 4.596056e-12 | 6.657764e-12 | 3.221213e-12 | 5.698374e-12 | 1.030674e-11 | 7.238292e-11 | 2.735226e-12 |
iMM1415 | 1.570216e-09 | 1.239422e-09 | 8.968702e-10 | 8.350148e-10 | 1.399133e-09 | 1.985386e-09 | 1.625218e-08 | 1.051536e-09 |
iMM904 | 3.595750e-09 | 4.833053e-09 | 2.982506e-09 | 1.531252e-09 | 4.619449e-09 | 8.978975e-09 | 1.828506e-08 | 1.866155e-09 |
iMO1056 | 4.451167e-12 | 4.065253e-09 | 2.091337e-12 | 2.158161e-12 | 4.592567e-12 | 7.228196e-12 | 1.088813e-11 | 6.606378e-13 |
iND750 | 2.859207e-09 | 3.247899e-09 | 8.041428e-09 | 2.058405e-09 | 3.681656e-09 | 8.144421e-09 | 1.155155e-08 | 2.719886e-09 |
iNJ661 | 4.577143e-09 | 4.692796e-09 | 3.712113e-09 | 3.654260e-09 | 4.502374e-09 | 1.148863e-08 | 1.308405e-08 | 3.472951e-09 |
iNJ661m | 4.915935e-12 | 1.078748e-11 | 1.044025e-07 | 2.524202e-12 | 5.219989e-07 | 3.654090e-07 | 1.416549e-11 | 7.307954e-07 |
iPS189_fixed | 4.986594e-13 | 2.228617e-09 | 6.313791e-13 | 2.516057e-13 | 8.629994e-13 | 1.490655e-11 | 3.172817e-12 | 4.561349e-13 |
iRC1080 | 1.212713e-11 | 5.622372e-08 | 1.456314e-11 | 5.134023e-12 | 1.027390e-11 | 2.536731e-11 | 3.641264e-11 | 9.311547e-12 |
iRS1563 | 2.844885e-12 | 2.415537e-12 | 4.673761e-12 | 1.709565e-12 | 3.843955e-12 | 1.515478e-11 | 1.570177e-11 | 2.564564e-12 |
iRS1597 | 2.635014e-12 | 3.304423e-12 | 3.210002e-12 | 1.169068e-12 | 1.140946e-12 | 1.117675e-11 | 5.307929e-12 | 1.102493e-12 |
iRsp1095 | 4.771094e-12 | 1.286166e-07 | 3.834673e-12 | 5.702781e-12 | 5.757338e-12 | 1.368581e-11 | 3.346712e-11 | 4.093764e-12 |
iSB619 | 6.677286e-10 | 2.563839e-10 | 2.292188e-11 | 2.877589e-11 | 1.436060e-10 | 5.811579e-09 | 1.817552e-08 | 4.394801e-10 |
iSR432 | 5.763678e-12 | 2.818231e-07 | 5.417731e-12 | 5.851002e-12 | 4.656121e-12 | 8.798916e-12 | 1.248002e-11 | 3.473549e-12 |
iSS884 | 1.012953e-11 | 9.508621e-12 | 9.887681e-12 | 9.827828e-12 | 9.738816e-12 | 1.818995e-11 | 2.586860e-11 | 9.911760e-12 |
iSyn669 | 8.127297e-11 | 1.060315e-10 | 6.030044e-11 | 2.003912e-11 | 3.519071e-11 | 1.452439e-10 | 1.517444e-10 | 6.519089e-11 |
iTH366 | 4.467643e-09 | 6.151925e-09 | 4.967946e-09 | 4.431032e-09 | 8.734066e-09 | 1.164260e-08 | 2.244135e-08 | 6.293012e-09 |
iVS941_fixed | 5.781317e-12 | 4.646162e-12 | 4.555880e-12 | 4.109086e-12 | 3.148214e-12 | 8.335240e-12 | 8.427532e-12 | 2.488732e-12 |
iYL1228 | 3.579303e-12 | 5.818149e-10 | 1.638551e-12 | 6.258599e-13 | 1.245614e-12 | 8.727630e-12 | 1.130580e-11 | 1.130485e-12 |
mus_musculus | 9.798615e-12 | 6.567552e-12 | 9.245493e-12 | 4.835687e-12 | 8.265638e-12 | 9.112100e-12 | 1.927275e-11 | 7.827294e-12 |
textbook | 7.371881e-14 | 2.203658e-09 | 5.417888e-14 | 4.862777e-14 | 8.348877e-14 | 1.268388e-09 | 2.745516e-09 | 3.197442e-14 |
Here are all the computed growth rates for each solver and model.
results.T
cglpk | cglpk_exact | cplex | esolver | glpk | gurobi | mosek | soplex | |
---|---|---|---|---|---|---|---|---|
AORYZAE_COBRA | 25.682402 | 25.682402 | 25.682402 | 25.682402 | 25.682402 | 25.682402 | 25.682402 | 25.682402 |
AbyMBEL891 | 119.233012 | 119.233012 | 119.233012 | 119.233012 | 119.233012 | 119.233012 | 119.233012 | 119.233012 |
AraGEM | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
PpaMBEL1254 | 78.700594 | 78.700594 | 78.700594 | 78.700594 | 78.700594 | 78.700594 | 78.700594 | 78.700594 |
PpuMBEL1071 | 132.365353 | 132.365353 | 132.365353 | 132.365353 | 132.365353 | 132.365353 | 132.365353 | 132.365353 |
STM_v1.0 | 0.477834 | 0.477834 | 0.477834 | 0.477834 | 0.477834 | 0.477834 | 0.477834 | 0.477834 |
S_coilicolor_fixed | 860.088835 | 860.088835 | 860.088835 | 860.088835 | 860.088835 | 860.088835 | 860.088835 | 860.088835 |
SpoMBEL1693 | 63.785658 | 63.785658 | 63.785658 | 63.785658 | 63.785658 | 63.785658 | 63.785658 | 63.785658 |
T_Maritima | 0.359469 | 0.359469 | 0.359469 | 0.359469 | 0.359469 | 0.359469 | 0.359469 | 0.359469 |
VvuMBEL943 | 96.402322 | 96.402322 | 96.402322 | 96.402322 | 96.402322 | 96.402322 | 96.402322 | 96.402322 |
iAC560 | 4.042612 | 4.042612 | 4.042612 | 4.042612 | 4.042612 | 4.042612 | 4.042612 | 4.042612 |
iAF1260 | 0.736701 | 0.736701 | 0.736701 | 0.736701 | 0.736701 | 0.736701 | 0.736701 | 0.736701 |
iAF692 | 0.027250 | 0.027250 | 0.027250 | 0.027250 | 0.027250 | 0.027250 | 0.027250 | 0.027250 |
iAI549 | 84.174193 | 84.174193 | 84.174193 | 84.174193 | 84.174193 | 84.174193 | 84.174193 | 84.174193 |
iAN840m | 0.340136 | 0.340136 | 0.340136 | 0.340136 | 0.340136 | 0.340136 | 0.340136 | 0.340136 |
iBsu1103 | 1229.657244 | 1229.657244 | 1229.657244 | 1229.657244 | 1229.657244 | 1229.657244 | 1229.657244 | 1229.657244 |
iCA1273 | 0.740242 | 0.740242 | 0.740242 | 0.740242 | 0.740242 | 0.740242 | 0.740242 | 0.740242 |
iCB925 | 0.119428 | 0.119428 | 0.119428 | 0.119428 | 0.119428 | 0.119428 | 0.119428 | 0.119428 |
iCac802 | 0.209597 | 0.209597 | 0.209597 | 0.209597 | 0.209597 | 0.209597 | 0.209597 | 0.209597 |
iFF708 | 14.917106 | 14.917106 | 14.917106 | 14.917106 | 14.917106 | 14.917106 | 14.917106 | 14.917106 |
iIB711 | 84.688415 | 84.688415 | 84.688415 | 84.688415 | 84.688415 | 84.688415 | 84.688415 | 84.688415 |
iIT341 | 0.692813 | 0.692813 | 0.692813 | 0.692813 | 0.692813 | 0.692813 | 0.692813 | 0.692813 |
iJN678 | 0.063150 | 0.063150 | 0.063150 | 0.063150 | 0.063150 | 0.063150 | 0.063150 | 0.063150 |
iJN746 | 1.397457 | 1.397457 | 1.397457 | 1.397457 | 1.397457 | 1.397457 | 1.397457 | 1.397457 |
iJO1366 | 0.982372 | 0.982372 | 0.982372 | 0.982372 | 0.982372 | 0.982372 | 0.982372 | 0.982372 |
iJP815 | 0.861512 | 0.861512 | 0.861512 | 0.861512 | 0.861512 | 0.861512 | 0.861512 | 0.861512 |
iJR904 | 0.921948 | 0.921948 | 0.921948 | 0.921948 | 0.921948 | 0.921948 | 0.921948 | 0.921948 |
iKF1028 | 0.517807 | 0.517807 | 0.517807 | 0.517807 | 0.517807 | 0.517807 | 0.517807 | 0.517807 |
iLC915 | 79.021232 | 79.021232 | 79.021232 | 79.021232 | 79.021232 | 79.021232 | 79.021232 | 79.021232 |
iMA871 | 27.792976 | 27.792976 | 27.792976 | 27.792976 | 27.792976 | 27.792976 | 27.792976 | 27.792976 |
iMB745 | 0.030942 | 0.030942 | 0.030942 | 0.030942 | 0.030942 | 0.030942 | 0.030942 | 0.030942 |
iMM1415 | 1.363428 | 1.363428 | 1.363428 | 1.363428 | 1.363428 | 1.363428 | 1.363428 | 1.363428 |
iMM904 | 0.287866 | 0.287866 | 0.287866 | 0.287866 | 0.287866 | 0.287866 | 0.287866 | 0.287866 |
iMO1056 | 1.047929 | 1.047929 | 1.047929 | 1.047929 | 1.047929 | 1.047929 | 1.047929 | 1.047929 |
iND750 | 0.097323 | 0.097323 | 0.097323 | 0.097323 | 0.097323 | 0.097323 | 0.097323 | 0.097323 |
iNJ661 | 0.052199 | 0.052199 | 0.052199 | 0.052199 | 0.052199 | 0.052199 | 0.052199 | 0.052199 |
iNJ661m | 0.052199 | 0.052199 | 0.052199 | 0.052199 | 0.052199 | 0.052199 | 0.052199 | 0.052199 |
iPS189_fixed | 2.238961 | 2.238961 | 2.238961 | 2.238961 | 2.238961 | 2.238961 | 2.238961 | 2.238961 |
iRC1080 | 6.156851 | 6.156851 | 6.156851 | 6.156851 | 6.156851 | 6.156851 | 6.156851 | 6.156851 |
iRS1563 | 0.079962 | 0.079962 | 0.079962 | 0.079962 | 0.079962 | 0.079962 | 0.079962 | 0.079962 |
iRS1597 | 8.969346 | 8.969346 | 8.969346 | 8.969346 | 8.969346 | 8.969346 | 8.969346 | 8.969346 |
iRsp1095 | 9.686899 | 9.686899 | 9.686899 | 9.686899 | 9.686899 | 9.686899 | 9.686899 | 9.686899 |
iSB619 | 0.158050 | 0.158050 | 0.158050 | 0.158050 | 0.158050 | 0.158050 | 0.158050 | 0.158050 |
iSR432 | 11.482570 | 11.482570 | 11.482570 | 11.482570 | 11.482570 | 11.482570 | 11.482570 | 11.482570 |
iSS884 | 70.359286 | 70.359286 | 70.359286 | 70.359286 | 70.359286 | 70.359286 | 70.359286 | 70.359286 |
iSyn669 | 0.179090 | 0.179090 | 0.179090 | 0.179090 | 0.179090 | 0.179090 | 0.179090 | 0.179090 |
iTH366 | 27890.888638 | 27890.888638 | 27890.888638 | 27890.888638 | 27890.888638 | 27890.888638 | 27890.888638 | 27890.888638 |
iVS941_fixed | 0.523385 | 0.523385 | 0.523385 | 0.523385 | 0.523385 | 0.523385 | 0.523385 | 0.523385 |
iYL1228 | 1.042637 | 1.042637 | 1.042637 | 1.042637 | 1.042637 | 1.042637 | 1.042637 | 1.042637 |
mus_musculus | 129.100556 | 129.100556 | 129.100556 | 129.100556 | 129.100556 | 129.100556 | 129.100556 | 129.100556 |
textbook | 0.873922 | 0.873922 | 0.873922 | 0.873922 | 0.873922 | 0.873922 | 0.873922 | 0.873922 |
The objectives computed for these solvers are effectively the same as those computed by esolver.
differences = (results - results.ix["esolver"])
differences.T
cglpk | cglpk_exact | cplex | esolver | glpk | gurobi | mosek | soplex | |
---|---|---|---|---|---|---|---|---|
AORYZAE_COBRA | 5.329071e-14 | 0.000000e+00 | -1.065814e-14 | 0 | -3.552714e-15 | 7.105427e-15 | -9.947598e-14 | 0.000000e+00 |
AbyMBEL891 | 1.136868e-13 | -1.421085e-14 | -8.526513e-14 | 0 | 1.136868e-13 | -3.552714e-13 | -7.105427e-14 | 0.000000e+00 |
AraGEM | 0.000000e+00 | 0.000000e+00 | 0.000000e+00 | 0 | 0.000000e+00 | 0.000000e+00 | 0.000000e+00 | 0.000000e+00 |
PpaMBEL1254 | 0.000000e+00 | -1.421085e-14 | -1.847411e-13 | 0 | 0.000000e+00 | -1.421085e-14 | -7.105427e-14 | 0.000000e+00 |
PpuMBEL1071 | 8.526513e-14 | 5.117897e-10 | 5.684342e-14 | 0 | 8.526513e-14 | 3.410605e-13 | -1.136868e-13 | 0.000000e+00 |
STM_v1.0 | 3.863576e-14 | 4.957084e-10 | -1.110223e-15 | 0 | 1.086908e-13 | 7.771561e-16 | 4.814482e-13 | 5.551115e-17 |
S_coilicolor_fixed | 1.136868e-13 | -1.136868e-13 | 0.000000e+00 | 0 | 1.136868e-13 | 0.000000e+00 | -1.250555e-12 | 0.000000e+00 |
SpoMBEL1693 | -1.421085e-14 | -7.105427e-15 | 7.815970e-14 | 0 | 7.105427e-14 | -1.421085e-14 | -6.039613e-13 | -7.105427e-15 |
T_Maritima | -3.214096e-14 | 9.456907e-11 | 3.330669e-16 | 0 | -2.114975e-14 | 9.436896e-16 | -3.308465e-14 | -3.330669e-16 |
VvuMBEL943 | 1.421085e-14 | 0.000000e+00 | 0.000000e+00 | 0 | 4.263256e-14 | 4.263256e-14 | 4.263256e-14 | 0.000000e+00 |
iAC560 | 2.664535e-15 | 0.000000e+00 | 8.881784e-16 | 0 | 0.000000e+00 | 1.776357e-15 | 1.421085e-14 | 0.000000e+00 |
iAF1260 | 2.087197e-11 | 0.000000e+00 | -2.066314e-11 | 0 | 1.858336e-11 | -1.203304e-11 | 1.749767e-11 | 2.220446e-16 |
iAF692 | -3.651770e-11 | -2.846203e-11 | 4.426832e-09 | 0 | -4.769716e-12 | 5.128266e-09 | 3.623219e-11 | 2.902875e-07 |
iAI549 | -7.673862e-13 | -1.421085e-14 | -5.826450e-13 | 0 | 1.705303e-13 | 2.131628e-13 | -1.421085e-13 | 0.000000e+00 |
iAN840m | 0.000000e+00 | 0.000000e+00 | -5.551115e-17 | 0 | 0.000000e+00 | 0.000000e+00 | 0.000000e+00 | 0.000000e+00 |
iBsu1103 | -2.273737e-13 | -2.653928e-08 | -4.547474e-13 | 0 | 2.273737e-13 | 4.547474e-13 | 4.547474e-13 | 2.273737e-13 |
iCA1273 | -3.275158e-14 | 0.000000e+00 | 4.685141e-14 | 0 | 5.406786e-14 | 5.551115e-16 | 2.265965e-13 | 1.110223e-16 |
iCB925 | 7.494005e-16 | -1.387779e-17 | -3.191891e-16 | 0 | -1.942890e-16 | 2.498002e-16 | 2.530753e-13 | -1.387779e-17 |
iCac802 | 4.440892e-16 | 0.000000e+00 | -1.665335e-16 | 0 | -1.249001e-15 | 2.775558e-17 | 5.651035e-14 | 0.000000e+00 |
iFF708 | 1.776357e-15 | 0.000000e+00 | 9.592327e-14 | 0 | 1.421085e-14 | 2.131628e-14 | -4.263256e-14 | 0.000000e+00 |
iIB711 | -1.421085e-14 | 0.000000e+00 | 4.263256e-14 | 0 | -2.842171e-14 | -9.947598e-14 | -1.421085e-14 | 0.000000e+00 |
iIT341 | -1.129519e-11 | 2.245906e-10 | -4.440892e-15 | 0 | -1.403899e-11 | -1.850742e-13 | -6.530149e-10 | 2.220446e-16 |
iJN678 | -4.718448e-16 | 2.856901e-11 | -1.082467e-15 | 0 | -2.220446e-16 | -3.469447e-16 | 1.214445e-13 | -4.163336e-17 |
iJN746 | 0.000000e+00 | 4.757172e-11 | 0.000000e+00 | 0 | 0.000000e+00 | 0.000000e+00 | 0.000000e+00 | 0.000000e+00 |
iJO1366 | 4.973799e-14 | 1.739908e-10 | 5.773160e-15 | 0 | 5.107026e-14 | -2.220446e-15 | 5.774270e-13 | 4.440892e-16 |
iJP815 | 1.783040e-11 | 0.000000e+00 | 2.160384e-10 | 0 | 2.299161e-12 | 3.759559e-11 | -1.644941e-10 | 0.000000e+00 |
iJR904 | -3.364420e-12 | 2.154040e-10 | -7.549517e-15 | 0 | -3.852363e-11 | 1.960387e-11 | 3.302114e-11 | 1.110223e-16 |
iKF1028 | -1.799028e-11 | -1.110223e-16 | 5.995204e-15 | 0 | -6.050105e-11 | -4.764367e-11 | 8.776668e-11 | 0.000000e+00 |
iLC915 | 2.103206e-12 | 0.000000e+00 | -7.105427e-14 | 0 | 3.211653e-12 | 7.105427e-14 | 1.196554e-11 | 0.000000e+00 |
iMA871 | 0.000000e+00 | -3.552714e-15 | -3.552714e-15 | 0 | 0.000000e+00 | -3.552714e-15 | -1.065814e-14 | 0.000000e+00 |
iMB745 | 2.247508e-14 | 0.000000e+00 | 4.757412e-10 | 0 | -2.697495e-14 | -2.657596e-15 | -3.501529e-12 | 0.000000e+00 |
iMM1415 | 3.918843e-11 | -2.220446e-16 | -1.776357e-15 | 0 | 4.864575e-11 | 1.776357e-15 | 3.898259e-11 | 4.884981e-15 |
iMM904 | 1.060230e-11 | -5.551115e-17 | -9.992007e-15 | 0 | -9.139328e-11 | -8.881784e-16 | -5.305936e-10 | -5.551115e-17 |
iMO1056 | -7.860379e-14 | -6.367742e-10 | -1.287859e-14 | 0 | 5.107026e-15 | -1.776357e-15 | -3.352874e-14 | 2.220446e-16 |
iND750 | -2.235294e-10 | 3.722023e-13 | -1.627079e-10 | 0 | 3.478570e-11 | 4.103134e-12 | -2.592769e-10 | -1.387779e-17 |
iNJ661 | -5.478381e-11 | -1.366268e-14 | 1.412759e-14 | 0 | -1.110825e-11 | 1.833117e-13 | -4.726380e-11 | -9.173218e-14 |
iNJ661m | 7.542578e-15 | -1.365574e-14 | 7.253811e-08 | 0 | 1.649386e-07 | 1.464993e-07 | -2.329942e-13 | 2.609968e-07 |
iPS189_fixed | 2.353673e-14 | -1.108660e-10 | 7.549517e-15 | 0 | 9.015011e-14 | -1.776357e-15 | -4.667378e-13 | 4.440892e-16 |
iRC1080 | -1.341149e-13 | 9.275872e-09 | 7.638334e-14 | 0 | 4.121148e-13 | 7.362999e-13 | -1.287859e-13 | 7.105427e-15 |
iRS1563 | 6.800116e-16 | 0.000000e+00 | -4.163336e-16 | 0 | 5.967449e-16 | -9.478529e-15 | -8.118506e-15 | 0.000000e+00 |
iRS1597 | 3.552714e-15 | 0.000000e+00 | -8.881784e-15 | 0 | 5.329071e-15 | -1.776357e-15 | -2.842171e-14 | 0.000000e+00 |
iRsp1095 | -1.065814e-14 | 1.172156e-09 | 8.881784e-15 | 0 | 1.421085e-14 | 1.509903e-13 | -8.526513e-14 | 1.776357e-15 |
iSB619 | -3.088640e-13 | 0.000000e+00 | 4.496403e-15 | 0 | -1.181277e-13 | -6.578071e-15 | 9.064693e-13 | 2.775558e-17 |
iSR432 | -3.019807e-14 | -1.671046e-09 | -2.167155e-13 | 0 | 5.151435e-14 | -3.552714e-14 | -1.847411e-13 | -1.776357e-15 |
iSS884 | 1.136868e-13 | 0.000000e+00 | -1.278977e-13 | 0 | 1.563194e-13 | -1.705303e-13 | -1.847411e-13 | 0.000000e+00 |
iSyn669 | -6.186440e-13 | -1.463302e-12 | -5.084516e-12 | 0 | 6.528666e-13 | -2.153278e-13 | -1.837835e-12 | -2.775558e-17 |
iTH366 | 3.274181e-11 | 0.000000e+00 | 1.091394e-11 | 0 | 1.455192e-11 | 2.910383e-11 | 1.818989e-11 | 1.091394e-11 |
iVS941_fixed | 2.153833e-14 | -1.110223e-16 | 3.785861e-14 | 0 | -3.352874e-14 | 0.000000e+00 | 9.936496e-14 | 0.000000e+00 |
iYL1228 | -7.904788e-14 | 0.000000e+00 | -1.332268e-15 | 0 | -1.265654e-14 | -2.664535e-15 | -2.731149e-13 | 1.332268e-15 |
mus_musculus | -2.842171e-14 | -2.842171e-14 | 0.000000e+00 | 0 | 0.000000e+00 | 2.842171e-14 | 0.000000e+00 | 0.000000e+00 |
textbook | 1.110223e-16 | 9.818812e-12 | 0.000000e+00 | 0 | -1.110223e-16 | -1.110223e-16 | 4.566791e-12 | 0.000000e+00 |