The other day I got a model from a user and every time that I solved the model the results were different. At first I thought that some of the outputs were used as input, but that wasn’t the case. After some analysis I found out that this statement was the culprit:
ShippingDuration(o,d) := uniform(22,34);
The user was prototyping and did not have all the data yet. In reality, you will use the known (average) durations.
AIMMS PRO is a multi-user environment, designed to host several Apps used by several end-users. Information is shared by these users via these applications. Depending on the role of the app user in the organization, selected information may or may not be accessible. For instance, a planner may change the production plan, that plan can be inspected by management, but is not accessible to the HRM staff.
This blog post is the first post in a series of three to enable AIMMS app developers to model necessary file sharing in a secure manner. The topics of the three posts are:
1. Identify the user of the AIMMS PRO App and the AIMMS PRO groups they belong to
2. Upload files to AIMMS PRO Storage and download files from AIMMS PRO Storage
3. Grant access, via authorization strings, as appropriate to files in AIMMS PRO Storage
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.
The AimmsXLLibrary was introduced in AIMMS 4.20. The new library can communicate with Excel files in server environments, where Excel is not installed. For instance, while running AIMMS through a WebUI on PRO or on Linux. Excel is usually not installed in such environments. However, this isn’t a problem. The AimmsXLLibrary doesn’t require Excel to be installed in order to read from or write to an Excel (.xls/.xlsx) file. By using this library, you can deploy your AIMMS project to more platforms with less restrictions.
In order to use the library, you first need to add the system library ‘AIMMSXLLibrary’ to your model. Then, you can use the functions, which start with prefix “axll”(Aimms eXeL Library), provided in the library. This blog post illustrates how these functions work. Let’s take a look.
In preparation for the INFORMS Business Analytics conference in Florida, we wanted to experiment with a new approach for our regular pre-conference workshop. We wanted to engage the audience much more during the session, and do so in a fun and interactive way.
A couple of weeks prior the conference, we sat down and discussed how we could achieve this goal. Almost immediately, we considered the idea of doing a reduced version of our proof of concept (POC). The recently improved POC has proven to be a method that successfully demonstrates the value of AIMMS. It demonstrates just how quickly an AIMMS-based decision support application can be developed and deployed. Our regular POC is a two-day process that starts by defining the problem on a whiteboard with a prospect. The information shared on the whiteboard is then translated into the AIMMS modeling language. Shortly thereafter, an end user application is created on top of the model.
Two weeks ago, I had the pleasure of attending the 2016 INFORMS Conference on Business Analytics and Operations Research. It’s a premier gathering for the world’s analytics and OR professionals, boasting a great program with peer-to-peer discussions, demos and keynote talks. There was a lot to choose from in terms of workshops. I was hesitating between the AIMMS workshop or Gurobi’s. Thankfully Laura (AIMMS Marketing Director) persuaded me to attend AIMMS’ workshop. I met very cool people there! Their plan for the workshop was quite innovative for the type of session I am used to attending at these conferences. Here’s why I liked it so much.
If you ever asked a question via email@example.com, you’ve probably seen a message with the title “One quick question about AIMMS Customer Support” after your issue was closed. In this message, you’re asked to rate your recent customer service experience by clicking on one of four different options. I would like to explain how we use this information in this blog post.
The number of positive (green and gold) responses (among the last 100 responses) is a Key Performance Indicator for our customer support team. This number is visible on the big KPI boards in both our European and US office. So, don’t hesitate to take a look at the board the next time that you’re in one of our offices. This information is updated in real-time, which means that this number will change directly once you send in a response. This number is not only visible inside our office, but it is also available to everyone with internet access. This picture is updated in real-time with the latest status as well:
The AIMMS WebUI is well known for its capability to create a UI for inspecting and analyzing data in a browser and for modifying existing data. However, as a model developer, you also want your users to be able to:
- Create new data,
- Modify existing data, and
- Detect invalid data as soon as possible
Consider the picture below:
As a software company with over 25 years in the industry, we’ve experienced the evolution of IT development first hand. In the past, like all software developers, we worked using the ‘waterfall’ method. In 2014, we decided to adopt Agile/SCRUM for our product development. Agile methodologies focus on user value and encourage rapid and flexible response to change as well as adaptive planning, instead of long-term planning and sequential design. We’ve seen several improvements since we adopted this approach: output has gone up a lot, transparency has increased, we get a lot more feedback on our development, the dialogue with internal stakeholders and customers has improved, and our overall sense of progress and job satisfaction has gone up.
Seeing what Agile has brought to our internal development process, I thought it would be valuable to share more about our experience in order to inspire you to consider Agile methodologies when developing AIMMS applications.
Although both the traditional AIMMS Windows UI and the new AIMMS Web UI offer excellent data visualization capabilities to view the data present within an AIMMS application, many of our customers have expressed the wish to be able to view and work with AIMMS data in Tableau (and other BI tools such as
QlikView, or Spotfire). This allows a much wider audience within a company to track KPIs on dashboards based on the results from an AIMMS application, using a wider range of graphical capabilities to drill down into the data presented, and to cross analyze these results against data from various other corporate data sources.