Why It Matters

01

The Challenge

02

The Inputs

03

The Outputs

04

Requirements

05

Code Quality

06

Award

07

Register to Participate

Join the Discord

SCIP
Auto Tuner Contest

Join us to build the future of adaptive mixed-integer optimization. There will be $10,000 in total prize money.

 

Modern mixed-integer programming solvers like SCIP expose hundreds of parameters that can dramatically impact performance. Finding optimal settings for each problem today requires deep expertise and extensive manual tuning. Your challenge: build an intelligent automatic tuner that adapts SCIP's parameters for any given problem.

 

01

Why It
Matters

Mixed-integer optimization powers solutions to some of the world's most pressing challenges across science, society, and industry. From supply chain logistics to energy distribution, from financial modeling to medical research scheduling—these mathematical tools drive real-world impact.

While powerful commercial solvers exist, accessible open-source alternatives like SCIP democratize this technology, making it available to:

  • Innovative startups
  • Small and medium-sized enterprises
  • Public research institutions
  • Non-profit organizations
  • Academic researchers worldwide

02

The Challenge

What You'll Build

Create an automatic parameter tuner that intelligently configures SCIP for optimal performance on mixed-integer linear programming instances. You may use any programming language, for which SCIP provides an interface, in particular Python, Rust, and C/C++.

03

The
Inputs

Your tuner will receive

  • a single instance file in MPS, LP, or any SCIP-readable format,

  • a reference value OBJ for the optimal objective function value
    (may be ±∞ for infeasible/unbounded cases),

  • a time limit T1 for a single SCIP execution,

  • an overall time limit T2 for the entire tuning process,

 

  • the number of threads to be used by the tuner, and

 

  • one of two tuning targets: time to optimality and primal bound after time T1.

04

The
Outputs

Your tuner will must

  • a SCIP-compatible settings file for which a fixed SCIP 10 alpha release returns

  • correct primal and dual bounds consistent with the reference value and

  • a primal solution (if feasible) that passes SCIP's feasibility checks.

05

Required

Your tuner must

  • support interruptible execution: return the best settings when stopped early at Ctrl-C,

  • ship with documentation and clear usage instructions,

  • be open source: your repo license matches SCIP’s license (Apache 2.0), and

 

  • pass the following check for code quality:

06

Code Quality

Your code must pass a quality score of 4 or higher using this prompt in ChatGPT model 3o or Claude 4. Submissions that score below 4 will not be reviewed. Replace “Python” by the programming language of your submission:


----- PROMPT -----

This is the code for an auto-parameter tuner for SCIP, the mixed integer optimizer. You are an expert in using MIP solvers and Python. Review this code for bugs. Then look even closer for edge case bugs. Once we’ve cleared all the bugs I want you to score the code on these dimensions:

 

Maintainability

Performance

Robustness

Give each score on a scale of 1 to 5 (whole numbers only). Be very critical but also be realistic. The developer should be able to attain 5 on each dimension. Clearly phrased todos for future improvements should be evaluated positively.

07

Evaluation

We will provide a docker container that contains the basic infrastructure, scripts and public test instances for developing and evaluating your tuner’s performance.

 

After submission each tuner will be evaluated in two separate tracks.

In each track we run the tuner on a hidden set of instances, and for each instance we finally run SCIP with the tuned setting on several seeds and compute the final score:

 

Track 1 - The exact track

  • individual score for each seeded run: (min(solving time, T1) + 1 sec) x 1.02^(number of changed parameters)
  • total score: geometric mean over all individual scores


Track 2 - The heuristic track

  • individual score for each seeded run: primal bound x 1.02^(number of changed parameters)
  • total score: geometric mean over all individual scores
  • note that the score is well-defined because all test instances in the heuristic track have positive primal bound

 

In both tracks, penalty scores are imposed if the tuner aborts without a settings file or returns settings with which SCIP produces an error. We will run the submissions on [CPU spec] with [RAM spec].

08

Award + Timeline

We will publish leaderboards for each track in regular intervals. Each track shall have its own reward. In each track three prizes are awarded according to the position in the final leaderboards:


Track 1
1st Prize - $3000

2nd Prize - $1500

3rd Prize - $500

Track 2
1st Prize - $3000

2nd Prize - $1500

3rd Prize - $500

 

Participants may not be affiliated with ZG Foundation, nor be citizens of countries under active US financial sanctions.

 

June 13th - Docker container and full set of public test instances available

June 27th - First submission allowed

Sept 19th - Final submission deadline

Sep 26th - Winners announced

09

Team

Organized and funded by ZG Foundation

 

Endorsed and supported by

Why It Matters

01

The Challenge

02

The Inputs

03

The Outputs

04

Requirements

05

Code Quality

06

Award

07

Register to Participate

Join the Discord

SCIP
Auto Tuner Contest

Join us to build the future of adaptive mixed-integer optimization. There will be $10,000 in total prize money.

 

Modern mixed-integer programming solvers like SCIP expose hundreds of parameters that can dramatically impact performance. Finding optimal settings for each problem today requires deep expertise and extensive manual tuning. Your challenge: build an intelligent automatic tuner that adapts SCIP's parameters for any given problem.

 

01

Why It
Matters

Mixed-integer optimization powers solutions to some of the world's most pressing challenges across science, society, and industry. From supply chain logistics to energy distribution, from financial modeling to medical research scheduling—these mathematical tools drive real-world impact.

While powerful commercial solvers exist, accessible open-source alternatives like SCIP democratize this technology, making it available to:

  • Innovative startups
  • Small and medium-sized enterprises
  • Public research institutions
  • Non-profit organizations
  • Academic researchers worldwide

02

The Challenge

What You'll Build

Create an automatic parameter tuner that intelligently configures SCIP for optimal performance on mixed-integer linear programming instances. You may use any programming language, for which SCIP provides an interface, in particular Python, Rust, and C/C++.

03

The
Inputs

Your tuner will receive

  • a single instance file in MPS, LP, or any SCIP-readable format,

  • a reference value OBJ for the optimal objective function value
    (may be ±∞ for infeasible/unbounded cases),

  • a time limit T1 for a single SCIP execution,

  • an overall time limit T2 for the entire tuning process,

 

  • the number of threads to be used by the tuner, and

 

  • one of two tuning targets: time to optimality and primal bound after time T1.

04

The
Outputs

Your tuner will produce

  • a SCIP-compatible settings file for which a fixed SCIP 10 alpha release returns

  • correct primal and dual bounds consistent with the reference value and

  • a primal solution (if feasible) that passes SCIP's feasibility checks.

05

Required

Your tuner must

  • support interruptible execution: return the best settings when stopped early at Ctrl-C,

  • ship with documentation and clear usage instructions,

  • be open source: your repo license matches SCIP’s license (Apache 2.0), and

 

  • pass the following check for code quality:

06

Code Quality

Your code must pass a quality score of 4 or higher using this prompt in ChatGPT model 3o or Claude 4. Submissions that score below 4 will not be reviewed. Replace “Python” by the programming language of your submission:


----- PROMPT -----

This is the code for an auto-parameter tuner for SCIP, the mixed integer optimizer. You are an expert in using MIP solvers and Python. Review this code for bugs. Then look even closer for edge case bugs. Once we’ve cleared all the bugs I want you to score the code on these dimensions:

 

Maintainability

Performance

Robustness

Give each score on a scale of 1 to 5 (whole numbers only). Be very critical but also be realistic. The developer should be able to attain 5 on each dimension. Clearly phrased todos for future improvements should be evaluated positively.

07

Evaluation

We will provide a docker container that contains the basic infrastructure, scripts and public test instances for developing and evaluating your tuner’s performance.

 

After submission each tuner will be evaluated in two separate tracks.

In each track we run the tuner on a hidden set of instances, and for each instance we finally run SCIP with the tuned setting on several seeds and compute the final score:

 

Track 1 - The exact track

  • individual score for each seeded run: (min(solving time, T1) + 1 sec) x 1.02^(number of changed parameters)
  • total score: geometric mean over all individual scores


Track 2 - The heuristic track

  • individual score for each seeded run: primal bound x 1.02^(number of changed parameters)
  • total score: geometric mean over all individual scores
  • note that the score is well-defined because all test instances in the heuristic track have positive primal bound

 

In both tracks, penalty scores are imposed if the tuner aborts without a settings file or returns settings with which SCIP produces an error. We will run the submissions on [CPU spec] with [RAM spec].

08

Award + Timeline

We will publish leaderboards for each track in regular intervals. Each track shall have its own reward. In each track three prizes are awarded according to the position in the final leaderboards:


Track 1
1st Prize - $3000

2nd Prize - $1500

3rd Prize - $500

Track 2
1st Prize - $3000

2nd Prize - $1500

3rd Prize - $500

 

Participants may not be affiliated with ZG Foundation, nor be citizens of countries under active US financial sanctions.

 

June 13th - Docker container and full set of public test instances available

June 27th - First submission allowed

Sept 19th - Final submission deadline

Sep 26th - Winners announced

09

Team

Organized and funded by ZG Foundation

 

Endorsed and supported by

Why It Matters

01

The Challenge

02

The Inputs

03

The Outputs

04

Requirements

05

Code Quality

06

Award

07

Register to Participate

Join the Discord

SCIP
Auto Tuner Contest

Join us to build the future of adaptive mixed-integer optimization. There will be $10,000 in total prize money.

 

Modern mixed-integer programming solvers like SCIP expose hundreds of parameters that can dramatically impact performance. Finding optimal settings for each problem today requires deep expertise and extensive manual tuning. Your challenge: build an intelligent automatic tuner that adapts SCIP's parameters for any given problem.

 

01

Why It
Matters

Mixed-integer optimization powers solutions to some of the world's most pressing challenges across science, society, and industry. From supply chain logistics to energy distribution, from financial modeling to medical research scheduling—these mathematical tools drive real-world impact.

While powerful commercial solvers exist, accessible open-source alternatives like SCIP democratize this technology, making it available to:

  • Innovative startups
  • Small and medium-sized enterprises
  • Public research institutions
  • Non-profit organizations
  • Academic researchers worldwide

02

The Challenge

What You'll Build

Create an automatic parameter tuner that intelligently configures SCIP for optimal performance on mixed-integer linear programming instances. You may use any programming language, for which SCIP provides an interface, in particular Python, Rust, and C/C++.

03

The
Inputs

Your tuner will receive

  • a single instance file in MPS, LP, or any SCIP-readable format,

  • a reference value OBJ for the optimal objective function value
    (may be ±∞ for infeasible/unbounded cases),

  • a time limit T1 for a single SCIP execution,

  • an overall time limit T2 for the entire tuning process,

 

  • the number of threads to be used by the tuner, and

 

  • one of two tuning targets: time to optimality and primal bound after time T1.

04

The
Outputs

Your tuner will produce

  • a SCIP-compatible settings file for which a fixed SCIP 10 alpha release returns

  • correct primal and dual bounds consistent with the reference value and

  • a primal solution (if feasible) that passes SCIP's feasibility checks.

05

Required

Your tuner must

  • support interruptible execution: return the best settings when stopped early at Ctrl-C,

  • ship with documentation and clear usage instructions,

  • be open source: your repo license matches SCIP’s license (Apache 2.0), and

 

  • pass the following check for code quality:

06

Code Quality

Your code must pass a quality score of 4 or higher using this prompt in ChatGPT model 3o or Claude 4. Submissions that score below 4 will not be reviewed. Replace “Python” by the programming language of your submission:


----- PROMPT -----

This is the code for an auto-parameter tuner for SCIP, the mixed integer optimizer. You are an expert in using MIP solvers and Python. Review this code for bugs. Then look even closer for edge case bugs. Once we’ve cleared all the bugs I want you to score the code on these dimensions:

 

Maintainability

Performance

Robustness

Give each score on a scale of 1 to 5 (whole numbers only). Be very critical but also be realistic. The developer should be able to attain 5 on each dimension. Clearly phrased todos for future improvements should be evaluated positively.

07

Evaluation

We will provide a docker container that contains the basic infrastructure, scripts and public test instances for developing and evaluating your tuner’s performance.

 

After submission each tuner will be evaluated in two separate tracks.

In each track we run the tuner on a hidden set of instances, and for each instance we finally run SCIP with the tuned setting on several seeds and compute the final score:

 

Track 1 - The exact track

  • individual score for each seeded run: (min(solving time, T1) + 1 sec) x 1.02^(number of changed parameters)
  • total score: geometric mean over all individual scores


Track 2 - The heuristic track

  • individual score for each seeded run: primal bound x 1.02^(number of changed parameters)
  • total score: geometric mean over all individual scores
  • note that the score is well-defined because all test instances in the heuristic track have positive primal bound

 

In both tracks, penalty scores are imposed if the tuner aborts without a settings file or returns settings with which SCIP produces an error. We will run the submissions on [CPU spec] with [RAM spec].

08

Award + Timeline

We will publish leaderboards for each track in regular intervals. Each track shall have its own reward. In each track three prizes are awarded according to the position in the final leaderboards:


Track 1
1st Prize - $3000

2nd Prize - $1500

3rd Prize - $500

Track 2
1st Prize - $3000

2nd Prize - $1500

3rd Prize - $500

 

Participants may not be affiliated with ZG Foundation, nor be citizens of countries under active US financial sanctions.

 

June 13th - Docker container and full set of public test instances available

June 27th - First submission allowed

Sept 19th - Final submission deadline

Sep 26th - Winners announced

09

Team

Organized and funded by ZG Foundation

 

Endorsed and supported by