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

Product Update - Expected WebUI features in next release!

The below mentioned features are available with AIMMS version 4.80. Read more about the New Features.Dear Community,  We had mentioned a couple of new features in the previous product update. Apart from that, we have now extended the grid layout to the side panels as well. Also, the Side Panels now have the option to configure icons and icon colors on the tabs. Here is a preview of those two features.Side Panel Grid Pages: As part of improving the layout of the application and maintaining consistency, we have extended grid layout support to side panel pages as well. The process is the same as converting pages to the grid layout. You can also create and apply custom layouts, and utilize the space more efficiently. Side Panel Grid Page with Custom LayoutWe are also contemplating providing different sizes for the side panel. We encourage you to read through the topic.    Addition of `icon` and `iconcolor` properties in the side panel specification. We have introduced two extra properties in the SidePanelSpecification which allows you to now add icons and color to the icon for specific tabs. You can use the icon and color to depict and indicate some more information without the user having to open the tab.     We hope these features help further enhance the experience of your application and the happiness of your users..Please leave your feedback and suggestions in the comments. Thanks.Team WebUI.

Related products:WebUI

WebUI features update

The below mentioned features are available with AIMMS version 4.80. Read more about the New Features.Dear Community,Here is a preview of a few of the new features / additions to the WebUI.Selection Box V2 (Experimental Feature): This is a replacement for the dropdown Selection Box with some extra features and improvements: 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. Better performance since the data is loaded only when needed. Available for Grid Layout only. Built with new technology. These options are not available in Selection Box V1. Grid Layout on Dialog Pages: As part of improving the layout of the application and maintaining consistency, we have extended grid layout support for Dialog pages. The process is the same as converting pages to the grid layout. You can also create and apply custom layouts, as you would for regular pages. You can now specify CUSTOM sizes for Dialog pages. We will soon begin extending grid layout support for the Side Panels as well. It has also been a few months since we released our first set of features on Application Management in 4.78, which allow you to easily cut, copy, paste, and move widgets from one page to another. We would love to hear your feedback and if you have any suggestions. You can read more about it and add your comments here. In our upcoming release, we will be removing one of the Experimental Features, Ignore Map Upgrade. All map widgets will now be rendered with the latest version. Please read more about that here. We hope these features add more value to your applications and further enhance the experience. Please leave your feedback and suggestions in the comments. Thanks.Team WebUI.

Related products:WebUI

New attribute for library: Required Units

Having the same quantity declared in multiple libraries and modules was the source of many problems and unexpected behavior. Starting in AIMMS 4.79 we move away from this and follow this new recommendation/best practice:Declare all your quantities at one location in your main model and do not declare them in a library or module. If your library or module needs a specific unit, use the new attribute Required Units to make sure that the main model will automatically declare this unit.This new attribute, Required Units, is available for libraries and modules and it specifies which units the module or library needs to work correctly. For example, until now, the WebUI library had its own quantity SI_Time_Duration declared because it needed the units [s] and [minute]. In the new version, the WebUI no longer has this quantity. Instead, it specifies the new attribute as follows: What will this do?For a new model or for an existing model that does not have its own quantity SI_Time_Duration declared, this specification tells AIMMS to automatically add a quantity in the main model. This quantity will appear in a new section called “Quantities and Units,” which is added as the last section in the root node of your main model (see image below). For an existing model that already contains the quantity SI_Time_Duration, this quantity is extended with two derived units [s] and [minute] (unless these are already present).You are free to adapt the automatically added quantities and/or units to your own needs, but of course you cannot delete the added units. They will be added again as soon as you restart the model with the WebUI library.In AIMMS 4.79, the following libraries and modules are now using this new feature:WebUI library System modules: MultiStart, GMP_BendersDecomposition and GMPOuterApproximation AimmsProGui librarySo if you use any of these in your application, it could be that a quantity or unit is added to your main model. If this happens, a message will appear in the Message window, and also the comment of the quantity will tell you which units were added.We don’t expect any real problems because of this change. It will just make it easier to understand which units come from which quantity. The only thing that we know of is that the suffix SolutionTime of a math program ‘suddenly’ may have a unit seconds, and this might lead to an error/warning about non-commensurate units in expressions where you use this suffix. The option ‘Solution Time has unit Seconds’ can be used to make sure that this suffix is always unitless, even if the unit [s] is known in the main model.Of course, this new attribute is not only for the generic libraries and modules that are shipped with AIMMS. You can (or should) use it in your own libraries as well, to make sure that you follow the recommendation/best practice stated above.If you encounter any problems because of these changes, please let us know.   

Related products:AIMMS Developer

Smarter Delivery of WebUI for improved performance

We constantly work towards improving the efficiency and performance of the WebUI. One such improvement we have made, which will be part of AIMMS version 4.78, is smarter delivery of WebUI components. This is a backend improvement that is done on two major aspects of the WebUI. Network-bound optimization - This improves the loading of the application and mostly affects first-time visitors, basically when the application is launched the first time.  (due to caching after the first visit) CPU-bound optimization - This improves the rendering of the application which mostly affects second-time visitors, basically when the application is re-launched with the same version and the same browser. To improve the loading of the application we made the following changes:Combing all custom Javascript & CSS - Currently, we load both the components separately. Embed translation in the initial HTML - Currently, the translation file is embedded after the initial load. Compress all Javascript/CSS & HTML resources. Reduce the main Javascript bundle size by a factor of 10x. Parallelize fetching JS/CSS/Fonts resources. - Currently, we load the resources sequentially.To improve the rendering of the application post the first launch, we made the below changes:Loaded the contents in the navigation menu on demand and with caching, which means the navigation menu is constructed only when it clicked, and once it is constructed we cache it.   We optimized the jQuery core when rendering DOM elements.We recorded measurements to check the impact of our changes and we measured performance for real models. The overall results are as follows:30% faster load time for first-time visitor 22% faster load time for second-time visitor Some specific applications like our SC Navigator applications saw a 3x faster load for first-time visitors.There are some key points to see improvements:The more custom JS/CSS/Translation you have, the more impact you will see in load times. The larger number of pages you have in your application, the larger impact you will experience. The higher latency your end-user has, the more impact you will see.If your application is already fast or fairly fast, these improvements might seem to not make much of an impact. If you would like to have your model profiled please reach out to us and we will get in touch with details. Thanks,Team WebUI

Related products:WebUI

Cases and runtime libraries

AIMMS 4.77 comes with a completely new internal implementation of how cases are written and read back. This was needed because the old code had become too complex to maintain and had known issues that were impossible to fix. This complexity has grown over the years because of new case formats that needed to be supported and various bug fixes that did not really fit in the original design.So we changed it. We removed the support for really old cases but made sure that the code is still compatible with the case format that has been used for the last couple of years. In other words, we don’t expect any compatibility issues when you start using AIMMS 4.77. Even cases created with this version can be read back in previous AIMMS versions.But...We accidentally overlooked one feature of the old cases. This is the feature that you can store and read back the model text of a runtime library. So when you read a case file that contains a runtime library, this library is automatically re-constructed and added to your model. This could even imply that the runtime library that you created explicitly in the code got overwritten by the (older!) version stored in the case file. To be honest, we do not recall why we ever created this feature in AIMMS and what a valid use case could be.We believe that the majority of our AIMMS users do not even know that this feature exists, and we actually hope that nobody is deliberately using this. In the last couple of years this feature has given us a lot problems and our recommendation has been to explicitly disable this feature for every newly created runtime library (because by default it is enabled). The feature has side-effects that are hard to explain and sometimes are simply wrong.Usually, our policy is to first announce the deprecation of a feature that we would like to remove from the product, and then really remove it some time later. This time we decided to skip the deprecation stage. We believe that releasing the new case read/write implementation now is of more value than waiting until we have certainty that none of the existing projects suffer from the fact that this feature is no longer in. And we also don’t want to spend our development time in an area that is not (or hardly) used by anyone.So, please take notice of this change in 4.77. If you see that your model behaves differently after reading in a case, ask yourself the question whether this could be caused by a runtime library and whether your model really relies on reading back the runtime library from a case. Good to know is that this only applies to application specific runtime libraries, the libraries created by for example the WebUI already had the feature disabled long time ago.Reach out to our support team if you really have problems with this, so that we can help you to fix it. When we see that quite a lot of models are actually using this feature, we will reconsider our decision to remove it. 

Related products:AIMMS Developer

What’s New in AIMMS Products? 2020 Greatest Hits – Volume 2

In July, we shared the most popular new features released in the first half of the year. Today, as 2020 draws to a close, we’re happy to bring you another collection of features - Volume 2 in our product greatest hits!  Integrations for AIMMS and Scripting languages like Python You can now easily include the power of Python (and other scripting languages) into your AIMMS model, for example to pre-process input data using Machine Learning. We released a combination of libraries and documentation to give you ultimate flexibility in using the (scripting) service of the choice. Learn about these resources here. Curious about the benefits of combining machine learning and AIMMS? Read this article.   AIMMS Developer New features  AIMMS 4.75 and AIMMS 4.76 were action-packed releases with new features. Highlights include: The Grid Page Layout, which introduces the CSS Grid concept of visualization in page layouts - a widely-used standard in web design. Table filtering options, which allow you to narrow down the data in your table, helping you view only the information you need. Date-Time Picker, which makes it easy to differentiate between dates and maintain a reference when dates are used in tables. TimeZone support to configure multi-user time zone applications, ideal for teams using apps in several locations across the world.Check out these best practices and a working example for multi-time zone applicationsKnitro 12, the latest version of this solver. Bar-line Chart, a new visualization feature that’s in high demand.  New Data Exchange Library   We also launched version 1.1. of the new Data Exchange Library (Version 1 shipped on July 2020). This version now also supports read/write capabilities to and from Excel and comes with improved (auto-)mapping features. To be precise, we added:   The ability to read/write tables to Excel, one table per sheet.   The ability to auto-generate mappings for JSON, XML, CSV and Excel based on model annotations, as well as new mapping attributes to support this.    AIMMS Network Design Bill of Materials modeling and Custom Costs shipped in AIMMS Network Design AIMMS Network Design now includes Bill of Materials modeling. This allows you to configure the Bill of Materials (BOM) and specify production conversions, extending your modeling capability to the end-to-end supply chain (including raw materials and intermediate products). Custom costs can also be added at all points in the supply chain where physical costs are incurred. Example use cases are the addition of taxes and duties, carbon costs and inventory holding costs to the optimization. Check out this tutorial and learn to model Bill of Materials and Custom Costs in AIMMS Network Design Data ValidationWe added validation checks to trap common data mistakes before they are imported. Improved Control Panel and Spreadsheet templateWe extended control over scenarios from the control panel in the browser so that the user can spend less time in the Excel template, and more time in the browser to configure scenarios. We also made changes to the input data template to make it more intuitive and easier to capture data required by the model.Transport costingWe added further capability to model transport costs such as stepwise cost functions, and take or pay arrangementsData separationWe added the ability to separate data between different business units and projects in the same environment.UX 2.0: We are nearly complete with the UX (User Experience) upgrade for both Network Design and Center of Gravity, announced in last month’s update. In January 2021, you can expect workflows, side panels, status bars and other enhancements that will improve the user experience in the apps.  

Related products:WebUIIntegrations and Data ExchangeNetwork Design

Product Update - November 2020

Product Update - November 2020: AIMMS Academy, ODH-CPLEX webinar, WebUI and Network Design news This post is an archive of the Product Update email sent by AIMMS Product Owner, @Gertjan de Lange. We have great news this month, including: The launch of our new training and certification platform: AIMMS Academy! New in the AIMMS WebUI and SC Navigator. An upcoming webinar where you can learn more about ODH-CPLEX.  Become a Certified AIMMS User      AIMMS Academy is officially live! We are very excited to bring you this new learning center. AIMMS Academy will offer courses for all AIMMS users, from beginners to expert modelers. It helps you: Develop your modeling skills Improve team collaboration with AIMMS feature Advance your career through certifications Browse available courses and follow trainings at your own pace. You can expect advanced courses and trainings covering all AIMMS domains, from supply chain planning to modeling, UI and deployment.  Sign up today AIMMS WebUI Roadmap Update   We are currently making further improvements in our Application management tooling. First, we are adjusting the Page Layout for Dialog pages and Side Panels (for pages this is already available as an experimental feature in AIMMS 4.76). Second, we are extending the current Page manager into an App Management tool to allow you to manage pages and easily copy, rename and move widgets between them (see preview below).    Webinar: Improve Runtimes with ODH-CPLEX   As mentioned in last month's update, we have seen significant improvements in runtime for customers using ODH-CPLEX in the AIMMS Platform. To help you learn more about this add-on, we have invited its creators, Optimization Direct, for an upcoming webinar. Join us on Thursday, December 10 at 8 AM PST/ 11 AM EST/ 5 PM CET. If you can't make it, sign up anyway to get the recording. We will cover:  Examples of problems that might benefit from using ODH-CPLEX Computational examples of ODH-CPLEX A demo of an actual use case running ODH-CPLEX Sign up New in AIMMS SC Navigator     We recently released two new features in AIMMS Network Design:  Stepwise transport cost functions: this gives the user greater flexibility when specifying transport costs. For example, volume based pricing discounts, take or pay arrangements, and costing applied to combined transport constraints.  Data separation: it is now possible to separate data in different schemas in the database. For example, if you wish to separate data between 2 business units.  Watch this space! In our next release, we plan to upgrade the user experience of both the Network Design and Center of Gravity Apps.    Gertjan de Lange Product Owner

Related products:AIMMS DeveloperWebUINetwork DesignAIMMS Academy

Product Update - October 2020

Product Update - October 2020: AIMMS 4.76.1, Scripting language integration, runtime improvements and new features This post is an archive of the Product Update email sent by AIMMS Product Owner, @Gertjan de Lange. We released some exciting new features this past month. Here's an overview of what you'll find in this email: 1. Integration options for Python and other scripting languages 2. Library updates: Data Exchange, AXXL and Forecasting 3. Solver updates for runtime improvements 4. AIMMS 4.76.1 release 5. New in AIMMS SC Navigator 6. Inspiration for Data Chart Styling 7. Language Reference now in HTML Easily include the power of Python into your AIMMS model, for example to pre-process input data using Machine Learning     Interested in using the combined power of machine learning and AIMMS to improve decision making? Now you can! We have released new features to provide support for scripting languages in AIMMS, including a new HTTP Client Library, a new Data Exchange Library and supporting documentation in How-To. More information is available here. The combination of these libraries and docs should give you ultimate flexibility in using the (scripting) service of your choice; now and in the future.To learn more about the differences between mathematical optimization and machine learning, and how you can use them together, check out this post in our community. Library Updates      Data Exchange   We launched version 1.1. of the new Data Exchange Library (Version 1 shipped on July 2020). This version now also supports read/write capabilities to and from Excel, and comes with improved (auto-)mapping features. To be precise, we added:  The ability to read/write tables to Excel, one table per sheet.  The ability to auto-generate mappings for JSON, XML, CSV and Excel based on model annotations, as well as new mapping attributes to support this. AXXL and Forecasting Library   Until now, both the AXXL Library (for reading and writing XLS/XLSX files) and the Forecasting Library have been system libraries and part of each AIMMS installation. However, all newer libraries have been released via the online AIMMS Library Repository, allowing us to be more agile and creating less dependency on specific AIMMS releases. Therefore, we are close to completing the move of those two libraries. We will keep you posted in this Product Update email or in the Community.  Solver Updates That Improve Runtimes by 75%   Did you know some solver updates can improve runtime by 75%? Don't forget to update your version of AIMMS to benefit from this and all the new features we launch. One of our customers saw an improvement of 50% in models that run over 1 hour by moving from CPLEX 12.7 to CPLEX 12.10 (running the defaults of CPLEX 12.10, no tuning needed). When they added the new ODH-CPLEX add-on, runtime was sliced in half yet again. This meant a 75% total improvement in runtime. We see the same kinds of improvements for other customers. I recommend you update your version and use this add-on. Contact us if you want to learn more.    AIMMS 4.76.1 Feature Release   AIMMS 4.76.1 is out, including the new Bar-Line Chart in WebUI. Read the release notes for more details.  New in AIMMS SC Navigator     In case you missed it, earlier this month, our team released a new version of AIMMS SC Navigator with some exciting updates:   A new Inventory Planning App that can be used in combination with other SC Navigator Apps, like Network Design, IBP and Demand Forecasting. An enhanced IBP App with updated Project Management Phase functionality to give you more flexibility to plan out project phases during the IBP process, resulting in better plans.  Custom Costs in Network Design. These costs can be added at all points in the supply chain where physical costs are incurred. Example use cases are the addition of taxes and duties, carbon costs and inventory holding costs to the optimization.   Community Insights: Styling Data Charts     Many AIMMS developers are interested in different ways to style data charts. In AIMMS, you can do this by using style annotations in combination with CSS. The example below shows how you can visualize forecast data differently from historic data. There are several examples in our Community: Visualize historic and forecast data Creating a Waterfall chart  General info about adjusting chart styling    Language Reference Now Available in HTML      Just like the Function Reference, the AIMMS Language Reference is now available in HTML and crawled by our search engine. We will soon connect it to our ”Help on” feature in the AIMMS IDE.  Gertjan de Lange Product Owner

Related products:AIMMS DeveloperWebUIIntegrations and Data ExchangeNetwork DesignIBP

New in AIMMS Network Design: Custom Costs, Data Validation, Expanded Control Panel, Changes in Excel Data Template

Below you’ll find a summary of the latest features in AIMMS Network Design.Custom CostsYou can now configure custom cost elements to include in the optimization. These costs can be added at all points in the supply chain where physical costs are incurred. Example use cases are the addition of taxes and duties, carbon costs and inventory holding costs.Watch a demo of custom costs in Network DesignData ValidationWe have added some data validation checks in Data Navigator that will pick up common data issues before saving the dataset, so that these can be fixed before running into infeasibility issues in the Network app. Learn more about data validation in this article: Expanded Control PanelWe have expanded the current control panel to give the user more options and control to configure a scenario from the control panel in the browser, instead of having to return to the Excel data template. For example, it is now possible to switch on minimum and maximum constraints separately from the control panel.  It is also possible to edit key parameters like supply and resource capacities and costs directly from the control panel in the browser.Excel Data TemplateWe have made some changes to the Excel data template to make it easier and more intuitive to capture data.Despite these changes, it will still be possible to upload old data templates that use the old format, subject to a warning message, so that users do not have to reconfigure old data templates.Transport costingWe added further capability to model transport costs such as stepwise cost functions, and take or pay arrangementsFind out more about Take-or-Pay in this article: Find out more about Step cost transportation: Data separationWe added the ability to separate data between different business units and projects in the same environment.UX 2.0:We are nearly complete with the UX (User Experience) upgrade for both Network Design and Center of Gravity, announced in last month’s product update. In January 2021, you can expect workflows, side panels, status bars and other enhancements that will improve the user experience in the apps.  

Related products:Network Design

Adding Python and R to AIMMS models

In our June Product Update, we shared that we made a strategic turn in our Python Integrationproject. First, by making it more generic and thus enabling it to support scripting languages in general. Secondly, by decoupling the facilities from running these scripts from the AIMMS deployment options as those are widely available and needs vary greatly among customers making it impossible to keep ourselves. As a result, we have now developed and released the following: A rebuild AIMMS HTTP Client library to interact with external (computational) services that support REST API calls A new AIMMS Data Exchange library for format conversions (e.g. JSON to AIMMS identifiers). A first set of ‘How-to’s that shows how you can integrate scripting languages, and specifically Python into AIMMS Apps (more ‘How-to’s will follow).The combination of the libraries and documentation should give you ultimate flexibility in using the (scripting) service of the choice; now and in the future. It will allow you to leverage and customize your own scripting deployment environments and/or make use of specialized third party deployment services (such as Azure Functions, AWS Lambda, or any other services you might be aware of or already are using). Of course, the requirement will be that you need to have such a service in which you can host e.g. Python script, available to you. In the “how-to’, we discuss how to add a scripting service to your model and how a setup could look like, both for development (local desktop) or deployment (on premise servers, or AIMMS cloud). Check it out by starting here: https://how-to.aimms.com/Articles/494/494-overview-aimms-ds-models.html

Related products:Integrations and Data Exchange

Product Update - September 2020

Product Update - September 2020: AIMMS 4.75 and 4.76 highlights, SC Navigator Apps and Training Resources This post is an archive of the Product Update email sent by AIMMS Product Owner, @Gertjan de Lange. We have an action-packed Product Update for you this month, with exciting announcements and feature enhancements in AIMMS and AIMMS SC Navigator. Let's dive in! AIMMS e-Learning Platform Coming Soon     We will soon launch the AIMMS e-Learning Platform. Anyone with an AIMMS license will be able to access it and become a certified AIMMS user! The platform will offer training for beginners and advanced courses for those who are more experienced. Keep an eye on our Online Community, newsletter and social media to get notified when we launch.  New in AIMMS 4.75 and 4.76   In case you missed it, we released AIMMS 4.75 earlier this month. We'd love to hear your feedback on new features, like the Grid Page Layout, Table filtering options, the Date-Time Picker, TimeZone support and Knitro 12.  Share your feedback Barline ChartDid you know you can suggest feature ideas in our Online Community? Many of our users were looking for options to plot multiple identifiers in lines and bars, using the same Y-axis.  We are currently developing a combo Bar-Line chart to address this need. We expect to release a first version of this chart in AIMMS 4.76. We will make visual enhancements and include additional options in future iterations. Check out this discussion for more information and bookmark this section of the Community to share your ideas!    Core Engine Developments Many of the features we build are visible, but in the back-end our Core Engine team is also working to improve how AIMMS runs your code. These are some of the highlights: We've done an internal rewrite of the code that saves and reads cases. The new code uses the dependency between identifiers to determine the best order to read them. The format of the cases has not changed, so they are still compatible with previous AIMMS versions. However, we did remove support for cases that were created in AIMMS versions that were more than 15 years old.  We're working on "just-in-time compilation" of procedure bodies. This feature improves the startup time of an app, especially those that are deployed to end users. A procedure will be compiled when it is called for the very first time. In relation to "just-in-time compilation," we want to add a feature where identifiers created during runtime can be referenced in ordinary procedures (and definitions), from your main project or libraries.  Let us know if you want to test these features.   AIMMS SC Navigator Apps    Bill of Materials Modeling Now Available in AIMMS Network DesignThe latest release of AIMMS SC Navigator includes Bill of Materials modeling for Network Design. This allows you to configure the Bill of Materials (BOM) and specify production conversions, extending your modeling capability to the end-to-end supply chain (including raw materials and intermediate products). More information will follow this week!   More Features Coming Soon  In our next release, we will include additional functionality to allow you to add custom cost elements to the objective function, such as Taxes, Carbon, Inventory Holding and more. We will also add: Data validation checks An improved spreadsheet data template More control to configure and run scenarios without creating new datasets Inventory App     Another big highlight coming to SC Navigator is our Inventory App. The App has been designed to complement other Apps in our suite. It allows you to assess the inventory impact of a given network design in our Network Apps. It also calculates inventory targets for use in AIMMS IBP, and can use demand variability and forecast accuracy from AIMMS Demand Forecasting for use in the safety stock calculation.The Inventory App will allow you to: Instantly calculate minimum, maximum, and average amount of inventory split by: Safety stock   Cycle stock In-transit  Work in Progress Define service level requirements using segmentation, based on the rate of sale and demand variability. Get detailed insights on inventory health (too much, too little, within target grouped by location and also SKU detail). Export results to be used as inventory targets in AIMMS IBP or external planning systems. Integrations for Python, other scripting languages, and Azure Functions      We are close to completing a new version of the HTTP library and accompanying documentation to help you enable third-party (Python or R) scripts and services like Azure functions in your AIMMS applications. We look forward to hearing your thoughts and how you will be using this new feature!  Join Conversations in our Online Community    We are happy to announce that we are opening the product roadmap, all product updates, and product ideation sections to all of our Online Community users. We invite you to join ongoing discussions, start your own, give feedback, and share your AIMMS knowledge with others! If you're looking for a place to start, check out this post by Marcel Roelofs, our Portfolio Architect, and share your feedback on Data Exchange.  Join the conversation Gertjan de Lange Product Owner

Related products:AIMMS DeveloperWebUIIntegrations and Data ExchangeNetwork Design

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

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