Skip to main content

MATLAB-BARON Frequently Asked Questions

Welcome, Anonymous

This page is for general questions about using the MATLAB/BARON interface and solutions to common error messages. For further technical support, please contact info@minlp.com.

Getting Started

BAM (Branch-And-Model) is a derivative-free global optimization solver designed for problems where the objective or constraints are not available in algebraic form. It is ideal for simulation-based, experimental, or black-box optimization problems.

Use BAM when:

  • You cannot write the problem in a closed-form equation.
  • Your model is a simulator or experiment (black-box).
  • Function evaluations are expensive.
  • You want a global solution to high-dimensional or nonconvex problems.

 

BAM combines:

  • Global optimization techniques (via domain partitioning).
  • Surrogate modeling (using ALAMO for accurate local models).
  • Guaranteed convergence even for discontinuous or discrete problems.
  • BARON to globally solve surrogate models for new sampling points.

BAM runs on:

  • Windows
  • Linux
  • macOS

Installation is easy. Simply download and run the installer or unzip the archive available at BAM Downloads.

Problem Scope

BAM can handle:

  • Continuous, integer, or categorical variables
  • Nonconvex, discontinuous, or noisy functions
  • Problems defined by simulators or experiments
  • Data-driven optimization using previously collected evaluations

No. BAM is completely derivative-free. It uses function values only. No gradients or Hessians are needed.

Licensing

Yes. BAM requires a valid license file.

Options include:

  • Free academic license
  • Commercial license (with support and updates)

See BAM Licenses for details.

BAM offers three license types:

  • Commercial License: Includes technical support and software updates.
  • Academic License: Free for academic research and educational use.
  • DOE License: Free for the U.S. Department of Energy.

See BAM Licenses to view options or contact sales@minlp.com for further information.

Usage Tips

From the command line:

bam my_problem.bam

This runs BAM using the input file my_problem.bam.

The data provider is your simulator or executable. BAM calls it to evaluate the objective function. The provider must:

  • Read input variables from a file (input.in)
  • Write a single output value to a file (output.out)

Yes. BAM can use:

  • Unevaluated points (initial guesses)
  • Evaluated points (historical data)
    This reduces function calls and helps warm-start the optimization.

Error Messages and Support

Check the terminal or listing file (.lst). BAM provides clear termination codes such as:

  • Licensing error
  • Input file error
  • Simulator not returning valid output
  • Function call or time limit reached

See the Error Messages section of the BAM User Manual for full details.

Please contact our technical team at info@minlp.com for support or licensing questions.