Protein Folding

Gurobi protein folding JPME

Hone your modeling skills with this challenging Protein Folding problem. We’ll show you how to create a binary optimization model of the problem with the Gurobi Python API and then solve it using the Gurobi Optimizer.

This model is example 28 from the fifth edition of Model Building in Mathematical Programming by H. Paul Williams on pages 289-290 and 344-345.

This modeling example is at the advanced level, where we assume that you know Python and the Gurobi Python API and that you have advanced knowledge of building mathematical optimization models. Typically, the objective function and/or constraints of these examples are complex or require advanced features of the Gurobi Python API.

Request a Gurobi Evaluation License or Free Academic License

Modeling examples are coded using the Gurobi Python API in Jupyter Notebook. In order to use the Jupyter Notebooks, you must have a Gurobi License. If you do not have a license, you can request an Evaluation License as a Commercial User or download a free license as an Academic User.


Commercial Users: Free Evaluation Version Academic Users: Free Academic Version



Access the Jupyter Notebook Modeling Example

Click on the button below to be directed to GitHub where you can download the repository for the Protein Folding Jupyter Notebook modeling example.


Protein Folding


Contact Us

We’re happy to assist you. Please contact us using this form, and a Gurobi representative will get back to you shortly.

  • Free Consultations
  • General Inquiries
  • Gurobi Optimizer Questions

Can’t view the form? Please email us at

Thank you! The information has been submitted successfully.