Metadata-Version: 2.0
Name: cameo
Version: 0.7.0
Summary: cameo - computer aided metabolic engineering & optimziation
Home-page: http://cameo.bio
Author: Nikolaus Sonnenschein, Joao Cardoso, Emre Özdemir, Kristian Jensen
Author-email: niko.sonnenschein@gmail.com
License: Apache License Version 2.0
Keywords: biology metabolism bioinformatics
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Topic :: Utilities
Classifier: Programming Language :: Python :: 2.5
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: License :: OSI Approved :: Apache Software License
Requires-Dist: numpy (>=1.9.1)
Requires-Dist: scipy (>=0.14.0)
Requires-Dist: blessings (>=1.5.1)
Requires-Dist: pandas (>=0.15.2)
Requires-Dist: ordered-set (>=1.2)
Requires-Dist: cobra (>=0.4.1)
Requires-Dist: optlang (>=0.4.0)
Requires-Dist: requests (>=2.5.0)
Requires-Dist: numexpr (>=2.4)
Requires-Dist: networkx (>=1.9.1)
Requires-Dist: six (>=1.9.0)
Requires-Dist: escher (>=1.1.2)
Requires-Dist: IProgress (>=0.4)
Requires-Dist: inspyred (>=1.0)
Requires-Dist: lazy-object-proxy (>=1.2.0)
Requires-Dist: palettable (>=2.1.1)
Provides-Extra: all
Requires-Dist: Sphinx (>=1.3.5); extra == 'all'
Requires-Dist: redis (>=2.10.5); extra == 'all'
Requires-Dist: ipyparallel (>=5.0.1); extra == 'all'
Requires-Dist: jupyter (>=1.0.0); extra == 'all'
Requires-Dist: python-libsbml (>=5.13.0); extra == 'all'
Requires-Dist: swiglpk (>=1.2.14); extra == 'all'
Requires-Dist: nose (>=1.3.7); extra == 'all'
Requires-Dist: ipywidgets (>=4.1.1); extra == 'all'
Requires-Dist: plotly (>=1.9.6); extra == 'all'
Requires-Dist: rednose (>=0.4.3); extra == 'all'
Requires-Dist: numpydoc (>=0.5); extra == 'all'
Requires-Dist: bokeh (>=0.11.1); extra == 'all'
Requires-Dist: coverage (>=4.0.3); extra == 'all'
Requires-Dist: lxml (>=3.6.0); extra == 'all'
Provides-Extra: bokeh
Requires-Dist: bokeh (>=0.11.1); extra == 'bokeh'
Provides-Extra: docs
Requires-Dist: Sphinx (>=1.3.5); extra == 'docs'
Requires-Dist: numpydoc (>=0.5); extra == 'docs'
Provides-Extra: jupyter
Requires-Dist: jupyter (>=1.0.0); extra == 'jupyter'
Requires-Dist: ipywidgets (>=4.1.1); extra == 'jupyter'
Provides-Extra: parallel
Requires-Dist: redis (>=2.10.5); extra == 'parallel'
Requires-Dist: ipyparallel (>=5.0.1); extra == 'parallel'
Provides-Extra: plotly
Requires-Dist: plotly (>=1.9.6); extra == 'plotly'
Provides-Extra: sbml
Requires-Dist: python-libsbml (>=5.13.0); extra == 'sbml'
Requires-Dist: lxml (>=3.6.0); extra == 'sbml'
Provides-Extra: swiglpk
Requires-Dist: swiglpk (>=1.2.14); extra == 'swiglpk'
Provides-Extra: test
Requires-Dist: nose (>=1.3.7); extra == 'test'
Requires-Dist: rednose (>=0.4.3); extra == 'test'
Requires-Dist: coverage (>=4.0.3); extra == 'test'

Cameo—Computer Aided Metabolic Engineering and Optimization
-----------------------------------------------------------

|Join the chat at https://gitter.im/biosustain/cameo| |PyPI| |License|
|Build Status| |Coverage Status| |DOI|

What is Cameo?
~~~~~~~~~~~~~~

**Cameo** is a high-level python library developed to aid the strain
design process in metabolic engineering projects. The library provides a
modular framework of simulation methods, strain design methods, access
to models, that targets developers that want custom analysis workflows.

Computationally heavy methods have been parallelized and can be run on a
clusters using the IPython parallelization framework (see example and
documentation for more details). The default fallback is python's
multiprocessing library.

Furthermore, it exposes a high-level API to users that just want to
compute promising strain designs.

You got curious? Head over to `try.cameo.bio <http://try.cameo.bio>`__
and give it a try.

Installation
~~~~~~~~~~~~

Use pip to install Cameo from
`PyPI <https://pypi.python.org/pypi/cameo>`__ (we recommend doing this
inside a `virtual
environment <http://docs.python-guide.org/en/latest/dev/virtualenvs/>`__).

::

    pip install cameo

We highly recommend updating ``pip`` beforehand
(``pip install pip --upgrade``).

In case you downloaded the source code, run

::

    pip install -e .  # recommended

while you are in the top level directory. You might need to run these
commands with administrative privileges if you're not using a virtual
environment (using ``sudo`` for example).

Examples
~~~~~~~~

A number of examples are available as static
(`nbviewer.ipython.org <http://nbviewer.ipython.org/github/biosustain/cameo-notebooks/tree/master/>`__)
or executable Jupyter (née IPython) notebooks
(`try.cameo.bio <http://try.cameo.bio>`__).

High-level API (for users)
^^^^^^^^^^^^^^^^^^^^^^^^^^

Compute strain engineering strategies for a desired product in a number
of host organisms using the high-level interface.

::

    from cameo.api import design
    design(product='L-Serine')

`Output <http://nbviewer.ipython.org/github/biosustain/cameo-notebooks/blob/master/8-high-level-API.ipynb>`__

Low-level API (for developers)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Find gene knockout targets using evolutionary computation.

::

    from cameo import models
    from cameo.strain_design.heuristic import GeneKnockoutOptimization
    from cameo.strain_design.heuristic.objective_functions import biomass_product_coupled_yield

    model = models.bigg.e_coli_core
    obj = biomass_product_coupled_yield(
        model.reactions.Biomass_Ecoli_core_w_GAM,
        model.reactions.EX_succ_e,
        model.reactions.EX_glc_e)
    ko = GeneKnockoutOptimization(model=model, objective_function=obj)
    ko.run(max_evaluations=50000, n=1, mutation_rate=0.15, indel_rate=0.185)

`Output <http://nbviewer.ipython.org/github/biosustain/cameo-notebooks/blob/master/6-predict-gene-knockout-strategies.ipynb>`__

Predict heterologous pathways for a desired chemical.

::

    from cameo.strain_design import pathway_prediction
    predictor = pathway_prediction.PathwayPredictor(model)
    pathways = predictor.run(product="vanillin")

`Output <http://nbviewer.ipython.org/github/biosustain/cameo-notebooks/blob/master/7-predict-heterologous-pathways.ipynb>`__

Dependencies
~~~~~~~~~~~~

This library depends on:

-  `cobrapy <https://github.com/opencobra/cobrapy>`__ for
   constraint-based modeling
-  `optlang <https://github.com/biosustain/optlang>`__ for heuristic
   optimization and mathematical programming

Furthermore, the following dependencies are needed:

-  `numpy <http://www.numpy.org/>`__ and
   `scipy <http://www.scipy.org/>`__ for obvious reasons.
-  `IPython <http://ipython.org/>`__ is needed for parallel computations
   and notebook interface.
-  `bokeh <http://bokeh.pydata.org/>`__ is needed for reporting progress
   and plotting in the IPython notebook interface.
-  `pandas <http://pandas.pydata.org/>`__ is needed because most
   functions returns results as pandas DataFrames.
-  `inspyred <https://pypi.python.org/pypi/inspyred>`__ for evolutionary
   computations.

.. |Join the chat at https://gitter.im/biosustain/cameo| image:: https://badges.gitter.im/biosustain/cameo.svg
   :target: https://gitter.im/biosustain/cameo?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
.. |PyPI| image:: https://img.shields.io/pypi/v/cameo.svg
   :target: https://pypi.python.org/pypi/cameo
.. |License| image:: http://img.shields.io/badge/license-APACHE2-blue.svg
   :target: http://img.shields.io/badge/license-APACHE2-blue.svg
.. |Build Status| image:: https://travis-ci.org/biosustain/cameo.svg?branch=master
   :target: https://travis-ci.org/biosustain/cameo
.. |Coverage Status| image:: https://coveralls.io/repos/biosustain/cameo/badge.svg?branch=devel
   :target: https://coveralls.io/r/biosustain/cameo?branch=devel
.. |DOI| image:: https://zenodo.org/badge/5031/biosustain/cameo.svg
   :target: https://zenodo.org/badge/latestdoi/5031/biosustain/cameo


