HOW-TO

  • Getting Started with AIMMS
  • Getting Started
    • Set Encoding Format
    • Adjust Engine and Solver Settings
    • How to Link a Solver to AIMMS
    • Overview: Create a reliable and successful AIMMS application
    • Add AIMMS Libraries
    • Encrypt Projects to Protect Intellectual Property
    • Overview: Model Sources, Version Control and aimmspack Files
  • Licensing
    • Activating Licenses Offline
    • Single-User License
      • Install Single-User License
      • Transfer Single-User License to Other Machine
      • Single-User License Troubleshooting
    • Network License
      • Install and Configure a Network License
      • Install the Network License on a Client Computer
      • Named Users in License Manager
      • Migrate AIMMS PRO License Server
    • Academic and Community License
      • Academic and Community License Troubleshooting
  • AIMMS IDE
    • Installing AIMMS
    • Configuring AIMMS IDE
    • Keyboard Shortcuts
    • Sharing AIMMS Project Files
    • Export Code to Another Project
  • AIMMS Developer
    • Data Connection
      • Data Exchange Library (DEX)
        • How to Integrate the Data Exchange Library
        • How to use the Data Exchange Library for extracting files and data
        • How to create mappings for matrix-oriented data via name-binds-to
        • Reading slices of data via ExternalBinding mapping element
        • Dealing with different data types in the DEX
        • Using OAuth2 for API authorization with DEX
        • Use the AIMMS Cloud Azure Data Lake Storage for integrating data
        • How to access the Azure Data Lake Storage from an external location
        • Creating and Connecting Python Service to AIMMS
        • OpenAPI
        • Develop an AIMMS Service
        • A Framework for Progress, Logging, and Error Handling of Tasks
      • Databases
        • Connecting to and using the AIMMS Cloud database
        • Which ODBC Drivers
        • Link an SQLite Database to a Project
        • Connection String for Access Database Files
        • Write Selected Database Tables
        • Write to a Database Efficiently
        • Write data to a table
        • Adapt model when linked database table is modified
        • Exchange data with the AIMMS Cloud Platform
        • Reading relations and indexed sets from databases
        • How to Use Direct SQL Queries
        • Create a static AIMMS Library from a runtime library
      • AIMMSXL Library (AXLL)
        • AIMMS Excel Library - AXLL
        • Read Columns of Data from Excel
        • Determine Data Ranges in Excel Files
      • HTTP Library
        • Overview: HTTP Client Library
        • Extract Data from an XML File
        • Extract XML File from a Server with the HTTP Library
        • Retrieve Geographic Data with Google Maps API
        • Retrieve Geographic coordinates with Google Maps API
        • Extract Photos Using the Flickr API
        • Convert Audio File with IBM API
        • Use the IBM Image Recognition API
        • Integrate AIMMS with Models Built in Languages like Python or R
        • Integrate AIMMS with Python
        • Integrate AIMMS with R
      • Other Functions
        • Create Email Templates
        • Overview: Email Client Library
        • Create an External Function with Visual Studio
        • Exchange Data with External Source
        • Link AIMMS with Tableau
        • Connect AIMMS with Gurobi
        • Linking to AIMMS
        • Read and Write CSV Files
    • Mathematical Modeling
      • Adapt Solve Procedure with Callbacks for GMP
      • Color a Map with Constraint Programming
      • Use Constraint Programming to Solve ROGO Puzzle
      • Optimize Shift Schedules
      • Reduce the Time Window for Scheduling Jobs
      • Optimize Scheduling for Project Planning
      • Use a Multi-Objective Approach
      • Minimize Objective Containing a min Operator
      • Model Variables with Limited Values
      • Various (Integer) Linear Modeling Tricks
      • Model a Rounded Variable
      • Debug an Infeasible Model
      • Speed Up MIP Solve
      • Providing an Initial Solution to MIP Solvers
      • Data for Optimization Libaries
      • Nonlinear Presolve Algorithm in AIMMS
      • AIMMS Outer Approximation Algorithm for MINLP (using GMP functionality)
      • Solving convex MINLP problems with AIMMS
      • Vehicle Routing
        • Capacitated Vehicle Routing Problem Library
        • Capacitated Vehicle Routing Problem formulation
        • Explicit Dantzig-Fulkerson-Johnson formulation
        • Implicit Dantzig-Fulkerson-Johnson formulation
        • Miller-Tucker-Zemlin formulation
        • Time Windows
        • Testing the Library
    • AIMMS Language
      • AIMMS Language Basics
        • Overview: Set, Subset, Index and Element Parameter
        • Identifier Naming Convention
        • Application initialization and termination with libraries
        • Standardize Random Data in Distribution Functions
        • Using LoopCount instead of explicit counting parameter in loops
        • Solve in a Loop
        • Local Binding vs. Default Binding
        • Model category mapping of items
        • Monitor Identifiers for Changes
        • Convert string to numerical value
        • Write and Read AIMMS Data in Text Format
        • Interrupt Execution During a Single Statement
        • Generate Random Numbers
        • Get Name of an AIMMS Case
        • Check Computations with Units of Measurement
        • Localize Units of Measurement per User
        • Save a Case from an AIMMS Procedure
        • Identify Differences
        • Finding Unused Identifiers
      • AIMMS sets
        • Composite objects
        • Representing time
        • Element after Last
        • Handling of Integer Sets and Operators
        • Select Constraints and Variables for a Math Program Declaration
        • Multiple Indices for a Set
        • Types of Set
        • Overview: NBest Operator
        • Remove Elements from a Set
      • Execution Efficiency
        • Analyze Long Execution Time
        • Measure Execution Time
        • Optimize Execution Time
        • Reduce Memory Usage
        • Investigate Memory in Use
        • Monitor Memory Usage and Leaks
      • Libraries
        • Library of Functions and Procedures
        • Test Driven Development using the AIMMSUnitTest Library
        • Retrieve Value of Dynamic Identifier
        • Repeat Data with Model Query and Model Edit
        • Use Formulas as Data
        • Runtime functions with arguments
        • Create a static AIMMS Library from a runtime library
      • Solvers
        • Change the Frequency of Progress Updates
        • Retrieve Solver Log Files in AIMMS Developer
        • Retrieve Solver Log Files in AIMMS PRO
        • Overview: Generated Mathematical Programs
        • Set Stop Criteria for Math Programs
        • Generate Multiple Solutions with CP Optimizer
        • Use Alternative MIP Solutions with CPLEX Solution Pool
        • Automatic Benders’ Decomposition
        • Solve with Benders Decomposition in CPLEX
        • Solve with Lazy Constraints
        • Debug Infeasible or Unbounded Results
        • Change the Default Solvers Used
        • Create Local Solver Configuration
        • Solve MINLP problems with AOA
        • Check if Variable Values Satisfy Constraints
        • Use a Multi-Objective Approach
        • Tune CPLEX Options from AIMMS
        • Solve in Parallel with Asynchronous Solver Sessions
        • Adding a Solver
    • Error Handling
      • Get Log Files
      • Get More Log Information
      • Handle errors and warnings
      • Customize Settings for Errors and Warnings
      • Identify Error
      • Configuring the logging of sessions ran on a AIMMS PRO on Premise
      • Tracing Procedures
      • In model tracing
      • Sending a dump file?
      • What is a dump file?
      • Troubleshooting
        • Academic and community licenses: No logon response from server
        • Sudden Microsoft Access reporting: “make sure this is a valid datasource”
        • Writing to a Snowflake Database
  • WebUI
    • Core
      • Best Practices in your Application
      • Dos and Don’ts
      • Showing Progress of Long Running Algorithms
      • Selecting Pages for Workflow Panels
      • Comparing Schedules from Scenarios
      • Disable Standard WebUI Functions
      • Uponchange with Arguments
    • Styling
      • Working with Wonderful WebUI Widgets
      • Create Wonderful WebUI Widgets
      • Add Qualitative Color Palettes
      • Consistent Data Coloring on an AIMMS WebUI Page
      • Hiding Default Values
      • Using Scalar Border Annotation
      • Using Table Background Annotation
      • Hiding Widget Header
      • Centering Cells in Table Widget
      • Change Widget Styles with CSS
      • Adding a Logo to an AIMMS WebUI App
      • Change Hover and Select Effects for WebUI Charts
      • Display an On/Off Switch in Widgets
      • Adding an Icon on your Menu Bar
    • Widgets
      • The iFrame Widget
      • Zoom and Scroll in a Gantt Chart
      • Sailing Across the World
      • Refreshing an Image Widget Without Changing the File Name
      • Adding an Icon on your Button
  • Deployment
    • PRO Basics
      • Understanding Concurrent Usage on AIMMS PRO/Cloud
      • Send and Receive Messages
      • Schedule Regular Jobs
      • Upload and Download Files on AIMMS PRO
      • Secure File Access
      • Copy Folder Operations in PRO Storage
      • Number of running and pending solver sessions
      • Troubleshoot Unresponsive Applications
      • Scaling AIMMS PRO
      • Protect AIMMS PRO installation for business continuity
      • Waiting for sub jobs to complete
      • Investigate Behavior of AIMMS PRO Job
    • Cloud Platform
      • Exchange data with the AIMMS Cloud Platform
      • Using CI/CD with AIMMS
      • Publishing, Running and Deleting apps on the Cloud
    • Client-Server Communication
      • Create Responding Applications
      • Deploy an Application on AIMMS PRO
      • Develop Multi-Platform Applications
      • Keep WebUI Active During Solve
      • Load solver session Results Manually
      • Use the Progress Window in WebUI
      • Show Intermediate Solutions
      • Interrupt the solver session
      • Modifying Session Timeout Duration for WebUI Apps
      • Communicate Data Changes in WebUI
      • Exporting aimmspack for WinUI or WebUI
      • Reduce Exchange Between Client Session and Solver Session
    • AIMMS PRO API
      • Start a Job via PRO API using Java
      • Start a Job via PRO API using C#
    • Miscellaneous
      • Run Batch Commands with AIMMS Command Line Tool
      • Run Executable Files
      • Zipping and Unzipping on AIMMS Developer and on AIMMS Cloud
  • AIMMS PRO & Cloud Platform
    • User Management
      • Create PRO User Groups
    • AIMMS PRO OnPremise
      • Migrate PRO Server to Another Machine
      • Download Server Session Log
      • Size AIMMS PRO Server Hardware
      • Install CDM Service
      • Log CDM
      • Publishing to Offline Servers
      • Change AIMMS PRO Service Account
      • Best Practices for Operating AIMMS PRO
  • Software Evolution
    • Update the Project’s AIMMS Version
    • Overview: Deprecation of Compound Sets
    • Prepare for the Deprecation of Compound Sets
    • Install Side-by-Side Drivers
    • Upgrade WebUI Page Actions
    • Upgrade Old WebUI Maps
    • Convert a GAMS Model or AIMMS 3 Model to an AIMMS 4 Model
    • Convert Files from DAT to DATA
    • Upgrade an AIMMS PRO Installation
    • Check Version Dependencies for AIMMS Developer and AIMMS PRO
    • Using UNICODE in Maintained AIMMS Applications
    • Update WebUI to Newer AIMMS Version
    • Error Message “tlsv1 alert protocol version”
    • Evolution of AIMMS using Transport Layer Security
    • Unsupported Browser
    • Dollar or Pipe Sign?
    • Empty WebUI After Upgrade
    • WinUI
      • Align Objects in WinUI
      • Change Views of 2D Charts in a WinUI Page
      • Enable the Page Manager
      • Add a Custom Startup Image in WinUI
      • More Logging of WinUI Published Applications
      • Openstreetmap Images Missing from Network Object
  • Examples
    • Examples vs Features
    • Demo Applications
      • Contract Allocation
      • Employee Scheduling
      • Knapsack Problem
      • Reindeer Pairing
      • Traveling Salesman
      • Vessel Scheduling
      • EV Charging Location
    • Functional Applications
      • Geolocation AbstractAPI
      • Demand Forecasting
      • Bias in AI
    • WinUI Applications
      • Bandwidth Allocation
      • Cutting Stock
      • Diet Problem
      • Employee Training
      • Facility Location Choice
      • Farm Planning
      • File Merge
      • Inventory Control
      • Investment Portfolio Selection
      • Media Selection
      • Performance Assessment
      • Power System Expansion
      • Refinery Pooling Planning
      • Telecommunication Network Design
      • Two Level Decision
      • 3D Chart
      • AIMMS API
      • Arcs and Nodes
      • Calendar
      • Camping
      • Chance Constraints
      • Database Inspection
      • Database Interface Generation
      • Data Feed
      • Date Aggregation
      • Distributed Solver Sessions
      • Distributions
      • Email and Sound Support
      • Error Handling
      • Experiment
      • External Procedure
      • Gantt Chart
      • GIS Support
      • Goal Programming
      • Horizon
      • Indexed Page
      • Interrupt AIMMS Externally
      • Linked Objects
      • Model Edit API
      • Model Edit Functions
      • MPS Functions
      • Multi Start
      • Nested Solve
      • Oil Well Drilling
      • Power System Expansion RO
      • Print Pages
      • Rolling Horizon
      • Stochastic Programming
      • Tea Consumption
      • Chemical Engineering: Blending problem
      • Chemical Engineering: Chemical Equilibrium problem
      • Energy: Oil pipeline design
      • Energy: Water Distribution Network Design
      • Power Systems Planning - Methods and Applications
      • Engineering: 2D Strip Packing
      • Engineering: Goddard rocket
      • Engineering: Hanging chain
      • Engineering: Largest small polygon
      • Engineering: Robot arm
      • Engineering: Structural Optimization
      • Location: Capacitated warehouse location
      • Location: Capacitated facility location problem (CFLP)
      • Lot Sizing: Multi level bucket
      • Lot Sizing: Single level big bucket
      • Lot Sizing: Single level small bucket
      • Lot Sizing: Single level small bucket with two items
      • Miscellaneous: Asynchronous solver sessions
      • Miscellaneous: Multistart
      • Multiple Solutions: Dice problem
      • Production Planning: Machine scheduling
      • Routing: Capacitated Vehicle Routing Problem
      • Routing: Capacitated Vehicle Routing Problem with Time Windows
      • Telecommunications: Delay constrained routing
      • Telecommunications: Filter design
      • Telecommunications: Capacitated network design problem
      • Transportation: Aircraft Assignment
      • Transportation: Aircraft landing
      • Transportation: Piecewise linear transportation
      • Uncertainty: Synchronous Optical Network Ring Design
      • Uncertainty: Production Planning - Robust Optimization
      • Uncertainty: Production Planning - Stochastic Programming
      • Car Selection
      • Circle Packing
      • Data Reconciliation
      • Distribution Center Allocation
      • Economic Exchange Equilibrium
      • Flow Shop
      • Gate Assignment problem
      • Life Cycle Consumption
      • Project Analysis
      • Railway Stock
      • Sudoku
      • Traffic Equilibrium
      • Transport Model
  • Toolkit
    • Comparing Profiler Runs
    • Stopwatch Library
    • DataLake Tools
  • Recently added
AIMMS How-To
AIMMS Logo
  • How-To »
  • AIMMS Developer »
  • AIMMS Language »
  • Solvers
  • Edit on Github
AIMMS Solvers Help & Support

Solvers

Mathematical Programming solution algorithms, solvers for short, are the muscles inside AIMMS applications. The articles in this section contain tips and tricks for steering these solvers and interpreting their solutions and behavior.

  • Change the Frequency of Progress Updates
  • Retrieve Solver Log Files in AIMMS Developer
  • Retrieve Solver Log Files in AIMMS PRO
  • Overview: Generated Mathematical Programs
  • Set Stop Criteria for Math Programs
  • Generate Multiple Solutions with CP Optimizer
  • Use Alternative MIP Solutions with CPLEX Solution Pool
  • Automatic Benders’ Decomposition
  • Solve with Benders Decomposition in CPLEX
  • Solve with Lazy Constraints
  • Debug Infeasible or Unbounded Results
  • Change the Default Solvers Used
  • Create Local Solver Configuration
  • Solve MINLP problems with AOA
  • Check if Variable Values Satisfy Constraints
  • Use a Multi-Objective Approach
  • Tune CPLEX Options from AIMMS
  • Solve in Parallel with Asynchronous Solver Sessions
  • Adding a Solver
Last updated: Jan 04, 2024

Help & Feedback

Docs

Edit this page to fix an error or add an improvement in a pull request
Create an issue to suggest an improvement to this page

Product

Create a topic if there's something you don't like about this feature
Propose functionality by submitting a feature request

Support

Not what you where looking for? Search the docs

Remember we also have Community support

Still having trouble ? Reach out to us


Next Previous

AIMMS
AIMMS COMMUNITY
AIMMS DOCS
DISCLAIMER
PRIVACY STATEMENT
© 1989 - 2024 AIMMS B.V.