Replies: 3 comments 3 replies
-
Hi, in general I would say yes, we have observed something similar, but some part of that is expected. Can you give some detail how you got the fluxes in the end? If you used the Having said that, the growth rates have a unique solution. So if those vary that is probably a numerical issue. OSQP struggles a lot with numerically difficult problems, especially linear ones. Playing around with the iteration limit can help there but I have not found a great default there. Some problem improve with more iterations but others get suber bad. CPLEX and Gurobi are generally more accurate there. If the growth rates between CPLEX and Gurobi are very different that is probably something we want to try to address/fix. Looks like your data is publicly available, so would you mind sharing the taxonomy/abundance tables (the input to |
Beta Was this translation helpful? Give feedback.
-
Thanks for the reply. I noticed that GUROBI and CPLEX agree better for the fluxes of metabolites but are not consistent with each other for the growth rates. Some taxa grow much more using GUROBI than CPLEX (around 10 times), while others have the growth compromised due to the dominant bacteria and don't even grow at all (the same happens in CPLEX too). This made me curious, considering that the medium was designed using the function Concerning the data, I used a VMH high_fibre diet, taxonomy from the ISB 2020 workshop (only for the 4 healthy individuals but I can't attach qiime artifacts) and AGORA reconstructions on genus level (qiime artifact, found then in the MICOM repository https://zenodo.org/record/3755182#.Y_PgGSZByUk). I ran other simulations using taxonomy from infants at weaning age and the same behaviour with the solvers was observed (results in the ppt attached). high_fibre.csv |
Beta Was this translation helpful? Give feedback.
-
Hi, so I checked one of the models and I could reproduce your results. Checking the solver status Gurobi marked the problem as numerically unstable so it is likely due to numerical issues. It seems to stem from the fact that the high fiber diet you used allows for only very small growth rates. If I run it with the flux bounds from the medium multiplied by 100 all of the solvers converge with an "optimal" status. Alternatively you can also use one of the more recent media from the MICOM media repository, for instance when using the high fiber medium from there you get:
OSQP still does not do a good job but the other solvers mostly agree with each other. If your medium is very limited you could also multiply the initial fluxes with some larger number (10-100) but would then have to adjust your output to get an approximation for the original medium (dividing by that same scale). The media in the repository are usually vetted to allow for sufficient growth so they should mostly work. |
Beta Was this translation helpful? Give feedback.
-
Hello,
I've been playing with MICOM and noticed that simulations using the same conditions (taxa abundance and diet) but with different solvers generate different growth rates and fluxes of produced metabolites. I understand that small changes are expected considering the different accuracies of the solvers but in some cases even the profile of the fastest-growing bacteria and the most-produced metabolites changes.
Does anyone observe the same?
I'm using CPLEX 22.1, GUROBI 10.0.1 and the default OSQP solver.
Cheers
Beta Was this translation helpful? Give feedback.
All reactions