Skip to main content
featured-image
featured-image
featured-image

User Content Roadmap

I have been invited to share a roadmap for the User Content! So, this is what we are planning for the year. E-learning platform (AIMMS Academy)For those familiar with our introductory course in Linear Programming, you'll be glad to know we are very close to releasing the second step in this program. The full scope of this journey will guide you in the set of skills required to build a very complete application - our fictitious Water Bottling company distribution optimization. This Water Bottling journey was created as a background for a full course in AIMMS. In it, you are part of analytics team of the company and need to apply your knowledge to help sourcing, distribution, marketing and sales in improving their decision making process within a water distribution company.From the conceptualizing of the model, to implementation and enhancing features, adding a UI and integrating to different sources. This part of the journey picks off from where we stopped and looks at more complex, higher dimensional data structures. It also introduces important UI and integration techniques.In addition to this, we have other courses on the way:My first WebUI App – This will be a starter course on WebUI, just as we have for “My first AIMMS App”. My intermediate AIMMS App - Also a continuation, picks off from our first My First AIMMS APP The third instalment of the Water bottling journey. Storytelling with Graphs - A conceptual and practical view of how to improve the use of graphs in applications.  Examples and DemosWe have been developing our D³ - Definitive Dynamic Demos – a collection of open-sourced apps that dive deeper into a specific optimization problem.These app’s are truly focused on being a starting point for developers that wants to create their own solution or a powerful demonstration tool for pre-sales.We will launch the first of the series very soon – F³ - Fantastic Furniture Factory – a production scheduling tool with several levels of complexity.We also are planning 3 additional demo’s during the year, focused on other optimization problems.They will also accompany with some documentation and video tutorials. Documentation and How ToOn the How-to initiative, we have added many articles during Q1 and will continue to do so during the year. Our priorities lie in addressing items that customers recurring request. Our intention is to accelerate problem resolution through examples- based articles.Here are the more recent ones:https://how-to.aimms.com/Recently_added.html

Related products:AIMMS Language
featured-image

2022 Roadmap

In this post, I like to highlight the main developments that we will be focusing on in 2022. This roadmap has been created based on various inputs, including many customer & partner discussions, stakeholder interviews we did in 2021, incoming requests, and market trends so we can provide an even greater impact and more benefits to you and your users. In addition, these inputs have allowed us to adjust and finetune our product vision.  An important component of our vision is that we want to provide you AIMMS as a complete service in the Cloud where customers can find ready to go Supply Chain applications, run their end-to-end optimization practices using bespoke applications, and partners are able to build a thriving business. This means, we have adopted a Cloud-first strategy with a strong focus on deployment of applications and optimization engines (API-based), and the integration of external services (be it data, machine learning or AI). We want to allow more connected and integrated decision making such that more impact can be achieved by a growing community of users, easily.  In our Cloud-first strategy, we are also moving from AWS to Azure to benefit from the partnership Microsoft can offer to us and to many of our customers.In the Roadmap 2022 table below you can see that some of these items are not exactly specified yet as they also depend on our customer use cases and feedback during development. For example, in the AI/ML incorporation, as well as the understanding of optimization results, we are looking forward to your input. So please do reach out to us if you have specific use cases you are looking to address, or respond to requests and use the ideation on this community.  Timing of all initiatives is purely indicative; we’ll update this table as frequently as possible.It’s good to know that next to those main developments, lots of smaller improvements are developed and released on a regular basis. In addition, we are continuously improving our architecture to assure maintainable, and robustness of use. As always, you can expect from us to stay up to date with the latest solvers. Please be sure to regularly check the release notes of our various products you use.  Table updated July 4, 2022 Focus Area Details Q1 Q2 Q3 Q4 Next Gen SC Navigator Our next generation supply chain application consolidating our existing apps and delivering; improved UX for working with scenarios, more optimization options, improved inventory modeling, and improved data modeling.       Beta Data Exchange Library Multi-functional library to generate both REST API servers and clients and easily map data onto AIMMS models, designed to minimize the programming effort for app developers (OAuth, OpenAPI, …) More details here. Parquet-file support OAuth support OpenAPI support Incremental releases PRO REST services Providing programmatic access to our cloud deployment platform for publishing apps, running apps, managing users/groups/permissions, etcetera. More details here.   Users, Apps Sessions   Incorporating AI/ML into models Making it easy to incorporate AI/ML functionality into AIMMS-cloud-powered analytics/optimization flows (Azure ML, Bring-Your-Own-Scripts, connect to your ML platform, …, TBD).   DIY via DEX BIY via Azure ML DBA (Done by AIMMS) Beta UI-builder: improved tabular data manipulation Step-improvement in tabular data manipulation (removing one hurdle from switching from WinUI to WebUI) More details here. Scope clear Beta released V1 V2 ­­UI-builder: widget upgrades + DIY widgets New visualization widgets + easier widget customization or even creation of custom widgets by app developers More details here. New Combination Chart Theming, Extensions Combination Chart, more Tooltip support Incremental releases Incremental releases UI-builder: flow widget Providing app developers with a flexible tool for creating data-driven diagrams (removing one hurdle from switching from WinUI to WebUI)       V1? Optimization results easier to understand Exploring how to improve the experience of understanding solutions and handling infeasibilities to better serve app developers and end users ongoing ongoing ongoing Ongoing Azure Cloud Switching from AWS to Azure as Cloud Service Provider for AIMMS Cloud Platform, including ‘transactable’ in Azure Marketplace    new customers + migrating   target completion      

Related products:AIMMS LanguageWebUIIntegrations and Data ExchangeAIMMS PRO and Cloud PlatformSC Navigator
featured-image

Product Update - Expected WebUI features in AIMMS 4.85

Dear Community, As you know, we recently released in 4.84.1 the new Combination Chart Widget type as an experimental feature, mentioned in the previous product update.We’ve been extending the Combination Chart Widget type with additional features and been working on structuring our WebUI Theming. The next release will likely include these features, here is a preview of them: Increment on Combination Chart: As part of improving the capabilities of this new chart, we have extended it with features such as:Chart Types: We now can control how the data from each of the identifier is to be presented on the chart. We can choose the Chart-Type per identifier. The available options are Column, Line, Area, Scatter, Spline and Area Spline.  Display of Chart-Type options on the Widget Option Ediotor.Option EditorDisplayed as combination of Area and SplinesCombination chart with Area and Spline.Displayed as combination of Columns, Lines and Areas Combination chart with Columns, Line and Area.Data Coloring: We now can control coloring of the chart elements. From the indexes of the contents provided, we can choose the index over which our color palette is to be applied and similarly the index over which the 5 levels of transparency palette is to be applied. These color and transparency palettes are also applied on the respective legend items.Data Coloring through Color and Transparency Index OptionsData Coloring OptionsUsing color index (fruits) instead of Identifiers (default)Data ColoringMigration to new Combination chart: We will provide a 1-click solution to create a copy of the existing charts (Bar, Line and BarLine) to that of the new Combination chart. We encourage the App developer to use this feature, since the risks are low here as the existing chart is still available on the page, they get an opportunity to compare side-by-side their existing chart with that of the new chart type and take the migration forward.Support for 2nd Y-Axis: Combination Chart Widget now supports Multiple (Primary and Secondary) Y-Axes. You could choose per identifier, against which the Primary (Left-sided) or Seondary (Right-Sided) Y-Axis the data is to be represented. Combination Chart with Multiple Y-Axes  Support for Hidden Indices: In the Combination Chart Widget, we now have the ability to hide an Index reference from display on the UI. An example of <Identifier-Set> p_isCarrying be shown on the Legends of the ChartAn example of <Identifier-Set> being set to be hidden from UI. And is not seen on the Chart Legend.  WebUI Theming – As mentioned in more details here, we’ve been working on cleaning up and restructuring the theming of WebUI. Tooltips for Multi-Select, Selection-Box and Legend Widgets - Based on the Ideation requests here and here we received over the community. We now have extended Multi-Select, Selection-Box and Legend widgets to support tooltips on the elements. Hover over the elements shows the tooltips configured using webui::TooltipIdentiifer Annotation on the respective Set. Tooltip on hover of elements on Selection-Box.Tooltip on hover of elements on Mulit Select  Tooltip on hover of elements on Legend​​​​​  We hope these features bring value to your applications and further enhance your user experience. Please leave your feedback and suggestions in the comments. Thanks.Team WebUI.

Related products:WebUI
featured-image
featured-image
featured-image

Product Update - Expected WebUI features in AIMMS 4.84

Dear Community,As you know, we’ve been working on a new Widget framework and improvements to our widgets Option Editor. While doing so, we built a new Combination Chart widget.The next release will likely include the following: Combination Chart (Beta Release)- In this initial version, the widget supports only data representation with Columns. This Chart widget includes improvements such as: The ability to control the ‘Number of Decimals’ and ‘Show/Hide Units’ per content. ‘Number of Decimals’ and ‘Show/Hide Units’ default options and these values are inherited across contents. These option values per content can be overridden with an explicit value. The ability to add the same content multiple times and slice each differently. Interactive Legend, with option to toggle it On/Off. Data labels, with option to toggle it On/Off. Option to control the number of visible Data categories within viewport through the introduction of a Horizontal scroll. The ability to set a chart sub-title and tiles for Axes. Add Widget Wizard - We have redesigned the experience of adding new widgets. We now start by providing the widget type input and then the name. Based on the widget type, you can provide the contents. Contents and other options for the widget can be configured through the option editor. We hope these features bring value to your applications and further enhance your user experience. Please leave your feedback and suggestions in the comments. Thanks.Team WebUI.

Related products:WebUI
featured-image

WebUI Theming: new, easier options available soon

Dear Community,While we know many of you are pleased with the way our WebUI looks, we also recognize that many of you want to add a custom touch: using your company colors, adding a logo or maybe opting for a dark theme. Current theming = adding custom, magic stylesheets If you have ever tried to change, for example, the color of buttons, or add an amazing gradient to your app's background, you will probably find out that these seemingly simple changes can take quite a lot of effort. Custom stylesheets with some pretty long, repetitive and illogical selectors need to be maintained. Upcoming WebUI Theming = Custom CSS Properties So, we decided to start working on a better way. More logical, more future-proof, more manageable.That is why we're introducing a whole range of new CSS variables (officially known as Custom CSS Properties) that will give you access to the properties of the WebUI elements that are most often changed.CSS variables can be changed on the fly, so your browser's developer tools can give you immediate feedback on the effect of what you're changing. And they'll all be grouped together, using much more logical names than before. Just list your desired values in a single, easy to set up stylesheet file and you're ready to go.You wanted dark red instead of bright blue buttons? Add this to your project and you're done!:root {    --color_bg_button_primary: #7f0000;    --color_bg_button_primary_hover: #600000;    --color_bg_button_primary_active: #a00000;}There will be 50+ other properties to work with.We will document all the possibilities with the official release, providing hints and demos. Customer Support will also be able to guide you even better than with the old custom stylesheets.    How you benefit:change the basics by changing just a few colors or other properties. set the color/font/property of one logically named item and you'll see it work wherever it should work. feeling adventurous: add 'scoping' to your variables and limit where you apply theming. feeling really adventurous: combine old custom stylesheets with some new variables and get 'the best of both worlds'. Just because you can and because we're not ending the old ways of working all of a sudden.What this means for us:we are now solely responsible for making your theming work with whatever we add or change to WebUI. New widgets, differently structured widgets: it will now be possible without you seeing any side-effects. we can make sure you don't compromise the usability of the developer-interface parts of WebUI.Expect to see more news about this before the end of Q1'22. A limited trial setup will be part of the next release, but lacking full documentation and support for now.Keep an eye on the product updates to see how we progress and please reach out to us to share your thoughts.   Thanks!Team WebUI

Related products:WebUI
featured-image

What’s New in AIMMS products? Check out the Greatest Hits in 2021

Curious about the features and product updates our team released in 2021? We collected the highlights below.  AIMMS Development   AIMMS Community Edition Since its launch in March 2021, many users around the world are using AIMMS Community Edition! In case you haven’t requested yours yet, this free AIMMS license gives you access to our extensive capabilities for model diagnostics, data connectivity, web application building and visualization, case management features, and more. AIMMS Community Edition also includes access to the open source solvers CBC (for linear and mixed-integer problems), and IPOPT (for nonlinear problems), as well as the AOA solver (for mixed-integer nonlinear problems). It’s ideal for personal projects and training purposes. Request AIMMS Community Edition todayWebUI  We released a new Application Management capability as experimental feature in February and released this as a standard feature in September. This allows you to more easily copy, move and rename widgets on your pages.  Read more   The Grid Layout became a standard feature in July. This gives you far better control over where widgets are placed on your pages, dialogs, and side panels using pre-defined or custom layout templates. Read more  You can now download widget contents as an image - one of the many ideas submitted in our community.   You can now add custom tooltips for the X-, Y- and Size labels in your Bubble Chart widgets, which can further increase the clarity of the data that you are presenting to your users in this widget type. We also added support for custom tooltips to the Button, Upload and  Download widgets – another idea submitted in our community.  We announced a new WebUI Widget Framework, which will make widgets more flexible, robust, and easy to use for us and our users to manage, and hosted a live product update to provide a demo of upcoming features.     We extended the Text Widget to support a string parameter as its content. This means that you can now dynamically specify the content of this widget.  PLUS we would love your feedback on the new widget types we are building. Take a short survey.  For a complete overview of new features, check out this page.  Algorithmic Capabilities As of this summer, Gurobi can now be used on applications running on the AIMMS Cloud Platform - thanks to Gurobi’s new Web License Service (WLS). This expanded the choice of solvers you have across AIMMS products. In AIMMS 4.83 (released in November), we added support for Gurobi 9.5, which comes with performance improvements for LP, MIP, MIQP models and for convex and non-convex MIQCP models. This release also shipped with the following:For most GMP procedures used to modify columns, rows or coefficients, we added a ‘raw’ variant which uses a set of columns and/or row numbers as input. You can now use a new procedure GMP::SolverSession::GetIIS to retrieve an irreducible infeasible set (IIS) for an infeasible math program. It returns the row and column numbers of the rows and columns in the IIS. The IIS will be calculated by the solver and is supported by CPLEX, Gurobi and BARON.Besides this, we released other algorithmic capabilities this year, such as:  The use of quadratic structures in solvers, including Knitro 12.3 (or higher)  Support for blockmatrices in submodels  For more information about the latest algorithmic capabilities, click here.   Data Exchange Library The Data Exchange library now enables you to expose procedures in your model through a REST API. We also announced several improvements in the Data Exchange library last month, including:  A new annotation-based JSONDocument generator that creates a mapping for a standardized nested JSON document to read and write all data for a given collection of identifiers in a model.  A new function dex::ResetMappingData() to empty all identifiers, sets, and reset counters used in a particular mapping.    AIMMS Network Design  We started the year by revamping the user experience in AIMMS Network Design, check out this post for details.  You can now generate Geocodes, Trip Times and Distances automatically.   We released features to make maps in AIMMS Network Design more customizable, easier to use, and visually appealing.  The app now enables you to model non-financial objectives, like carbon emissions and power consumption, to assess sustainability trade-offs. Watch a demo and learn more  AIMMS Docs: Now open source  We opened our documentation’s source code in an effort to make it easier for users to provide feedback and contribute to the improvement of our products. Read more  AIMMS Academy: More training possibilitiesThis year, we expanded the course offering on AIMMS Academy to include:Error Handling WebUI Advanced User Interaction  Inventory Planning Execution Efficiency Remember that you can get certified in several of our courses. Enroll today! 

Related products:AIMMS LanguageIntegrations and Data ExchangeSC Navigator
featured-image
featured-image
featured-image
featured-image
featured-image
featured-image

Product Update - Expected WebUI features in AIMMS 4.82

Dear Community, We recently released a couple of improvements for the side panels, mentioned in the previous product update in AIMMS 4.81.4. In the next release, we will be making the following features General Availability features. Application Management - The new application manager will become the default option when developing applications. We have made a couple of improvements as well. Combined all widgets under a page in a “Widgets on page” section. That helps reduce the clutter and the length of the application tree. It also helps identify the widgets from the pages. Removed the effect where, when a widget is copied and pasted, the source node of the copied widget expands. The copied widget will lose the border once it is pasted. However, the copied widget will stay on the clipboard unless another widget is copied, or the application is closed. Download PNG - We have extended this feature to also the Map widget. Download PNG will be a default option for all the Charts widgets, Table and Map widgets, and the Full Page. Selection Box V2 - The Selection Box V2 widget was released as an experimental feature in AIMMS 4.80. This widget will now be available in the list of widgets you see when adding widgets to a page. The advantages are mentioned in this product update, a couple of which are: Server-side search allows users to search the entire data set, i.e. all elements in the set regardless of the size of the set.  Users can scroll the complete list of elements.  We hope these features bring value to your applications and further enhance the experience. Please leave your feedback and suggestions in the comments. Thanks.Team WebUI.

Related products:WebUI
featured-image

New Algorithmic Capabilities in AIMMS 4.81

We added some interesting new algorithmic capability features in the latest release, AIMMS 4.81. Gurobi Use on the AIMMS Cloud So far, you could use Gurobi on desktop licenses and on-premise deployment systems, such as AIMMS PRO. However, the AIMMS Cloud was not able to support this. Thanks to a new licensing mechanism developed by Gurobi Optimization, it is now possible to connect your Gurobi Web Service License to the AIMMS Cloud. For more details, please check our AIMMS Cloud Gurobi support documentation.   Passing Quadratic Structures to Knitro We added a new option called “Use Quadratic Structure” to the Solvers General category. If this option is active, quadratic structures are passed to Knitro 12.3 (or higher). Check the AIMMS Help section inside the IDE for more information.      Creating Block Matrices for Submodels If the coefficient matrix of a math program contains several independent block submatrices, then you can use the new function GMP::Instance::CreateBlockMatrices to decompose the math program into several generated math programs, each containing an independent block submatrix. Each of these blocks can be solved separately. By combining the solution blocks, you can obtain a complete solution to the original math program. This approach can be more efficient than solving the full math program at once.math program with 3 blocksEnjoy!

Related products:AIMMS LanguageAIMMS PRO and Cloud Platform
featured-image

AMMS 4.81 and Upcoming Features

Dear Community, With AIMMS 4.81, Grid Layout is now a General Availability feature and the default layout applied when adding new Pages, Dialog Pages, and Side Panel Pages will be the grid layout. That does not mean that the existing pages in your application that are in classic layouts will be converted to Grid Layout pages. You still have the choice to select the Classic Layout once a new page has been added.We have made considerable improvements to the existing functionality. To mention a few:Auto scrolling to the selected layout in the page configurator. Hidden widgets in a grid no more cause an issue for other widgets in the same grid. Although we discourage the use of hidden widgets. Compact Scalars are sized correctly now.We hope you have had a positive and great experience using Grid Layout in your applications.  We encourage you to start using Grid Layout in your applications, if you have not already, as support for Classic Layout will be limited. Also, the new widgets that will be introduced will only be available on Grid Layouts. Upcoming Features: We are working on improving the functionality of the Side Panels as well.state property for Side Panels: The state property in the SidePanelSpecification can be used to show or hide specific side panel tabs. The state can have one of two values Active - To show the Side Panel and Hidden - To hide the Side Panel. When the data for properties like displayText, tooltip, icon, or iconcolor is changed for a side panel that is open in the WebUI, the side panel will remain open. The side panels will close only when pageId and state is changed Thank you,Team WebUI.

Related products:WebUI
featured-image

Information on transfer of existing cloud accounts from AWS to Azure

As you may know, we will transfer the AIMMS Cloud Platform from AWS to Azure. A few words on the transfer of existing cloud accounts from AWS to Azure:We are currently writing the ‘playbook’ for this and developing and testing the technology. We expect to start the first transfers in July and we intend to complete the last account transfer no later than the end of this year. Our ‘guiding intention’ is to minimize the impact for our users. If you want we can first transfer your ‘non-production account’ and then one or two weeks later your ‘production’ account, allowing you time to convince yourself that everything still works as before. We anticipate a few hours of downtime as we need to take the application database off-line when we transfer its contents. We will schedule this downtime at your convenience. Customers using SSO via ADFS/SAML will need to ask their IT colleagues to set-up the ADFS/SAML identity provider to point to the new AIMMS PRO metadata URL (more info). We will support you. Customers using IP-range white-listing for providing their cloud account access to on-premise data sources will need to adjust the white-listed IP range. We will support you. Customers using VPN access will have to re-configure their VPN gateway. We will support you.  We do not offer an option to stay on AWS. We are too small to properly support two versions of the AIMMS Cloud Platform, especially as we are making extensive use of the PaaS managed services of the cloud providers and these are quite different between AWS and Azure. So we will transfer all our customers from AWS to Azure and then shut-down the AWS version of the AIMMS Cloud Platform. Please let me know if you have questions.Jan-WillemAIMMS Cloud Platform

Related products:AIMMS PRO and Cloud Platform
featured-image

AIMMS meets MS Teams

Many of us use a tool like MS Teams nowadays to meetup, create teams to exchange information, have chat groups etc. We also are aware that some of our customers have channels to exchange AIMMS information such as best practices, internal support, example cases, snippets and more.So why not add AIMMS Apps to the teams that you have created, or are in to e.g. give access to a specific App to the team, or add the App Portal to the users. Once added, the App can be used inside the TAB, or you can open it in a browser. All works out of the box.In my opinion, this can be very handy for training channels, or for easy distribution of a specific App to a specific user group (no need to send out or find the portal URL) and you can build an experience around the App(s) and make it a more integral part of something else (files, chat, other tabs, planner, polls, etc.). Is this interesting? Not at all? Love to hear your reaction/ideas/suggestions for its combined use.  If you want to try, its good to know:MS Teams version should be based on Chromium 85.0 or higher, which I think is MS Teams 1.4.00 or higher (update to the latest should do the trick).Also, we know there are some limitations (intrinsic due to MS Teams), but those are not really hampering its use. We found:download image and csv drops the files right in your download folder without a message as there is no status bar switching tabs always brings the app back the URL you added in the tab settings (there is no ‘active tab’ concept yet in MS Teams)  Select Add Tab in MS TeamsEnter details for Website Tab using URL of App (right-click on Launch App button)Now you can run the App inside the MS TabOther features of MS Teams can be used around your AppEnter details for Website Tab using URL of App portalNow Apps can be started (will open in default browser) 

Related products:AIMMS LanguageAIMMS PRO and Cloud Platform
featured-image

Producing or Consuming REST APIs Using the Data Exchange library

Version 1.2 of the Data Exchange library supports a new capability to expose procedures in your model through a REST API. You can simply expose procedures by adding a model annotation to specify the service name through which you want the procedure to be exposed. Within a procedure called this way, you have full access to the query parameters, HTTP headers and the body of the request through predefined parameters in the Data Exchange library. The latter can also be used to map the data in a request body to parameters in your model, or conversely, to create a response body from the output data of your model. For now, you can directly use this feature on the desktop, for instance to allow AIMMS to be called from within a Python application, or a Jupyter notebook. As you can use this functionality directly from the AIMMS IDE, this will even allow you to interactively debug such requests using the AIMMS debugger. As this functionality will work with all types of AIMMS licenses (also the free Academic and Community licenses), this is now the preferred way to embed AIMMS in other applications running on your desktop.  This functionality will also form the basis for exposing AIMMS models through a REST API on the AMMS Cloud Platform. This will, however, require additional support in the AIMMS Cloud Platform for load-balancing and routing API calls to the appropriate solver session, which is planned for Q4 of this year. We do not plan to support this functionality for AIMMS PRO on-premise installations.  In addition, the Data Exchange library now also contains a completely asynchronous Curl-based HTTP client library, which supports any feature supported by libCurl that can be activated through an integer- or string-valued Curl option.  This makes the Data Exchange library your one-stop shop for producing or consuming REST APIs from within your AIMMS models.Visit the documentation page for more information.

Related products:Integrations and Data Exchange
featured-image

Didn't find what you were looking for? Try searching on our documentation pages:

AIMMS Developer & PRO | AIMMS How-To | AIMMS SC Navigator