AIMMS 4.0 Release

On this page you can read about the new features in AIMMS 4.0. More details can be found in the release notes. AIMMS 4.0 and its release notes can be downloaded here.

Features introduced in AIMMS 4.0 (July 2014)

If you have any questions on these new or improved features, please contact us at and we can discuss how we can help you.

Below, you can find a description of all new features that have been introduced in AIMMS 4.0.

Storage of AIMMS development projects is completely text-based

Text-based AIMMS refers to new functionality in AIMMS where all project files, both for the model and the UI, are saved entirely as text files, during the development phase of your AIMMS application. In previous AIMMS editions the major project files were binary files.

Project files on disk with Text Based AIMMS

Project files on disk with Text Based AIMMS

Why this change?
In the software development world teams commonly use a version control system, such as Git, Subversion or Team Foundation Server, to share and merge their coding work to a common repository. As teams developing AIMMS applications have grown over the years, both in size and in software engineering sophistication, users started asking for the ability to use a version control system when developing AIMMS applications. And as those version control systems work best with text files, we decided to change the format in which AIMMS projects are stored.

So, with text-based AIMMS, development teams can manage their AIMMS projects in their own version control system. This will make it much easier to work together on one application, to share code, to merge the contributions of the various team members, to manage versions of a project, to differentiate between development and production code, etc. Key benefits include higher productivity and more control.

Can I edit projects with a text-editor?
You can open the individual project files in a text-editor and in theory you could edit them outside of AIMMS in that way. However, AIMMS is not designed to automatically register changes that are made by external editors. We therefore recommend to continue using AIMMS to create and edit projects. If you want to use external editors to change your model sources, we advise to re-compile the model after every change you saved through the external editor.

How do I use text-based AIMMS with version control systems?
Text-based AIMMS does not offer built-in integration with any particular version control system. It writes and reads project files in text format. Developers need to commit and retrieve files to and from a repository in the version control system of their choice.  Branching, merging and conflict resolution is done using tools offered by the version control system. After retrieving new sources from the version control system, you are advised to re-open the application to let AIMMS pick up the changes. To use version control for their AIMMS sources, developers need to be familiar with the use of version control systems. Also the development team needs to agree on the way of working with the source control system: conventions, procedures, etc.

Project conversion
When you upgrade your AIMMS 3.x projects to AIMMS 4.0, a manual conversion step is required to convert the development version of your projects to the new text-based format. This conversion is described in detail in section 3.2, AIMMS 4 Conversion, of the AIMMS 4.0 Release Notes.

New encryption scheme for protecting end-user projects

Encryption of Exported End-User Project

Encryption of Exported End-User Project

During development the entire project will be stored as text-files. This implies that all users with proper authorization to the version control system used can ‘read’ the model and thus gain access to potentially confidential information or intellectual property. For end-user deployment the entire project will be stored into a single encrypted aimmspack file. AIMMS 4.0 offers flexible encryption schemes, either using passwords, or public-private keys, to effectively protect your intellectual property.