Tech Blog

Tips and Tricks for AIMMS Users

Category archives: AIMMS

How to link AIMMS with an SQLite database (in Windows 10)

Posted on November 18, 2016 by Leave a replysqlite

Say you have a wonderful AIMMS application, that needs to link a Database Table identifier database (an AIMMS identifier) to one SQL data base of yours. Your amazing SQL data base is, however, an SQLite database. Thus, to be able to read it, AIMMS needs the appropriate “driver”, which enables him to read your SQLite database. This blogpost presents how to:

Continue reading »

This entry was posted in AIMMS, Beginner, Data on by .

Set, Subset, Index and Element Parameter in AIMMS

Posted on September 23, 2016 by Leave a reply


Do you know Set is a god of the desert, storms, disorder, violence and foreigners in ancient Egyptian? So it is totally possible that his disturbance power influenced mathematical world, which is considered employing set theory as foundation system. From 5th century Greek in west India in the east to today’s modern society, there are struggles, debates, paradoxes around set theories. You can find lots of readings about them, or if reading history sounds boring, there will be a little fun video to watch at the end of this blog.

Set in AIMMS can also be confusing for new AIMMS users. We often get questions regarding how to use set, subset, indices, mappings, etc. While working on my own Fantasy Football project, I think it might be helpful to share how I started building one of my models to clarify some of the ambiguity by this example.

Continue reading »

This entry was posted in App development, Beginner, Modeling on by .

Under control: managing errors and warnings within AIMMS

Posted on November 24, 2014 by Leave a reply

molumen_Exclamation_icons_1The goal of this article is to explain how you can control errors and warnings within AIMMS. Namely, we will walk you through some useful tips that can help you manage errors and warnings in the best possible way to create better models.

Continue reading »

This entry was posted in Beginner, Modeling on by .

Units of measurement – localized interaction with numeric data

Posted on September 10, 2013 by Leave a reply
mm inch ruler

mm inch ruler

uomconv Optimization applications deal with numeric data. Interpreting these numeric values is easier when they are presented according to familiar units of measurement, hereafter abbreviated as units. For instance, I’m used to calculating distances in km and need to consciously re-interpret them when I get a distance measurement in miles. Some of my American colleagues, however, are used to miles for measuring distance. When we are aware that we are dealing with an unfamiliar unit, we need to put in a little extra effort in its interpretation. Not being aware, we run the risk of encountering serious errors resulting from incorrect unit assumptions. And I mean horror stories, such as loss of spacecraft. This begs the question: which units should be chosen and how do we make a given choice clear when we’re dealing with applications that have an international audience? Such applications should be smart enough to adapt the units depending on the user. Continue reading »

This entry was posted in Beginner, Technical on by .

Using implicit identifier set in pivot table

Posted on July 24, 2013 by Leave a reply

Screenshot Pivot TableOne of the nice things of the pivot table in AIMMS is that you can easily display a large number of identifiers. Especially after the feature to select specific elements of a set to be displayed, this really allows for end-users to perform so-called slice-and-dice to get insights in data/results.

Normally, if you want to display multiple identifiers in a page object in AIMMS (for the ones that support this), you have to explicitly add each of these identifiers in the contents tab of the page property. Especially when the number of identifiers is large, this can take quite some time. Fortunately, the pivot table in AIMMS also has the option to work with a so-called implicit identifier set.

Continue reading »

This entry was posted in Beginner on by .

Using progress bar in AIMMS

Posted on May 23, 2013 by Leave a reply

Estimation - Credits: XKCD

Estimation – Credits: XKCD

Whenever your projects become larger, certain steps in the execution might start to take some more time. For example, if your project needs to retrieve its input from multiple sheets in multiple Excel spreadsheets, it can take a couple of seconds before all the input data has been read.

For most users, it is actually not a big problem if execution of certain steps in your project take some time, as long as they know that something is actually happening. If you don’t provide any feedback to the user about what is currently happening, the user might think that the application is hanging.

One possibility you have in AIMMS is to use a progress bar dialog indicating the progress via a graphical progress bar combined with a string describing the status.

Continue reading »

This entry was posted in Beginner on by .

Using calendars in AIMMS

Posted on April 24, 2013 by Leave a reply

calendarFor a lot of problems you will need to work with some time based notion during the modeling. For example, with a transportation problem the main decision could be how much to transport from each depot to each customer for every day in a given time horizon.

Of course, it is possible to just create a set Days in AIMMS and give this exactly the same number of elements as there are days in the time horizon you are considering. However, this would require you to manually keep track of which of these elements are working days and which ones are weekend days. Also, you would have to take care of the fun details regarding leap years. Fortunately, in AIMMS you have the possibility to work with a Calendar, which makes working with time related things a lot easier.

Continue reading »

This entry was posted in Beginner on by .

Animation with colors in AIMMS

Posted on April 02, 2013 by Leave a reply

screenshot-pivttable-heatmapIn the first post of this year (Happy New Year) I showed how you can use the network object in AIMMS to create an animation of exploding fireworks. In another recent post (Using colors for feedback in pivot table)I showed how you can use the pivot table in AIMMS to display a heat map.

In this new post, I will show how you can use the user color related functions UserColorAdd and UserColorDelete in AIMMS to create an animation of the heat map that is displayed on the right.

The goal is to create an animation that will morph the picture such that each point that starts out as green ends up as red and vice versa.

Continue reading »

This entry was posted in Beginner on by .

First AIMMS Hangout

Posted on March 22, 2013 by Leave a reply

AIMMS_HangoutAfter my questions on both the AIMMS Google Group and on this Blog about participating in an AIMMS Google Hangout, I got two replies from Yawen and Thiruselvan that they were willing to be the guinea piggs.

We just finished the first AIMMS Hangout and I would like to thank both Yawen and Thiruselvan again for being the guinea piggs!

In the rest of this post I will provide some more details about the questions and pointers that might be helpful.

Continue reading »

This entry was posted in Beginner on by .

Using project local solver configuration

Posted on March 20, 2013 by Leave a reply

preferencesIn an earlier post Change default solver used for each type of mathematical program I showed how you can modify the default solver that AIMMS will use for solving each type of mathematical program.

I did not only demonstrate how you can modify these defaults via the solver configuration screen (which you can access via the Settings menu), but also showed how you could temporarily overrule this default by modifying the contents of the predefined CurrentSolver element parameter or by using a where clause with the solve statement.

Normally, the list of solvers available via the solver configuration screen is the same for all projects opened with the same version of AIMMS. In this post, I will show how you can overrule the solvers that are available for your current project.

Continue reading »

This entry was posted in Beginner on by .
  • Customer Reviews

    Read more AIMMS reviews
  • Review AIMMS on G2 Crowd
  • Recent Posts

  • Categories

  • CC