AIMMS PRO & Cloud Platform
Get and give help with AIMMS PRO and Cloud Platform
- 74 Topics
- 77 Replies
How to Operate AIMMS PRO like a ProHow-To
As AIMMS applications move from desktops to PRO platforms and start to play a larger role for a larger number of users it is important to adopt the [b]best practices[/b] that the IT specialists have developed for operating [b]server-based business applications[/b]. This article presents common best practices of application management as they apply to professionally operating AIMMS PRO platforms. These address how to deal with application management challenges such as [b]bugs[/b], accidental [b]project deletion[/b], and[b] hardware failures[/b]. [url=https://how-to.aimms.com/Articles/251/251-pro-operations-best-practices.html]Read more...[/url]
How to Communicate Data Changes in WebUI
In previous articles it was shown how to communicate [url=https://how-to.aimms.com/Articles/35/35-web-ui-progress-window.html]progress[/url] and [url=https://how-to.aimms.com/Articles/36/36-intermediate-solution.html]data[/url], from the server session to the data session. In addition, we can [url=https://how-to.aimms.com/Articles/34/34-interrupt-server-session.html]interrupt[/url] by sending a signal from the data session to the server session. In this article we will send data from the data session to a running server session. Use case: We continue with the Flowshop application. Even though the progress information obtained from the server is very interesting, we decide to wait for a longer period the solve and do not want to waste computation time with progress or incumbent updates. Therefore, we switch the progress and incumbent updates off in the server session. [url=https://how-to.aimms.com/Articles/42/42-data-session-changes.html]HERE[/url]
How To Interrupt the Server Session
We saw how to remove the “Busy” veil during a solve process in a [url=https://how-to.aimms.com/Articles/19/19-remove-veil.html]previous article[/url] to let the user be in control of the application while a procedure execution is running in the background. However, we also lose the ability to interrupt this background process which was available as a “Cancel” button on the veil. This article will guide you on how to interrupt a procedure executing in the server session when the veil has been disabled. [url=https://how-to.aimms.com/Articles/34/34-interrupt-server-session.html]HERE[/url]
How to Show Intermediate Solutions
During a long running solver session (job), we may want to compute intermediate results and show them to the end user as soon as they are available. Consider the following use cases: [list=1] [*]The submitted job contains multiple decision subproblems, all of which are solved in one batch. Why wait for providing the solution of the first subproblem, while the job is already working on the second subproblem? [*]The optimization of a significant Mixed Integer Problem will compute several intermediate incumbents, and perhaps these incumbents are worth visualizing and studying further. [*]By showing intermediate solutions, the end user may decide that the last shown solution is good enough and decide to terminate the job. [/list] [url=https://how-to.aimms.com/Articles/36/36-intermediate-solution.html]HERE[/url]
How to Load Server Session Results Manually
If the [code]waitForCompletion[/code] argument of [code]pro::DelegateToServer[/code] is 0, both the data session and the server session run in parallel. This allows the end user to browse and modify data while a delegated procedure is executed on the server side in the background. However, at the end of execution, the results are loaded back in to the data session without any warning. This unannounced loading of data does not provide the best user experience. This article presents the approach to manually control this data transfer between the data and server sessions. [url=https://how-to.aimms.com/Articles/40/40-data-server-load-results.html]Here's [/url]more
How to Reduce Exchange Between Client Session and Server Session
As shown in [url=https://how-to.aimms.com/Articles/33/33-pro-deploy-app.html]Deploy an Application on AIMMS PRO[/url], part of the overhead in solving is creating a case and transferring it, once from the client session to the server session and once back. Especially, for short solves, the overhead can be relatively large. To reduce this overhead, we’ll reduce the number of identifiers that need to be passed between these sessions. Read more [url=https://how-to.aimms.com/Articles/reduce-client-server-exchange/reduce-client-server-exchange.html]HERE[/url]
How to Deploy an Application on AIMMS PRO
When you want to share the AIMMS application you developed with your colleagues, they will need an AIMMS developer system and license installed on their Windows PC to be able to use the application. The AIMMS PRO Platform enables you to share your AIMMS applications without your colleagues having AIMMS installed on their PC, and even let the end users access the application in their web browser, via AIMMS WebUI. Find out more, [url=https://how-to.aimms.com/Articles/33/33-pro-deploy-app.html]HERE[/url]
How to Size Your AIMMS PRO Server Hardware
[url=https://manual.aimms.com/pro/system-requirements.html]The AIMMS PRO documentation[/url] details the minimum system requirements for client-side and server-side machines used for AIMMS PRO. However, the memory and CPU requirements of the back-end server where all the solve procedures are executed is heavily dependent on the size of your AIMMS model(s). This [url=https://how-to.aimms.com/Articles/171/171-pro-system-requirements.html]article [/url]will help you determine the system requirements of the server-side machine.
How to Troubleshoot Unresponsive Applications
Executing a [code]pro::DelegateToServer[/code] from a WinUI AIMMS app launched from a distant AIMMS PRO server may fail due to various causes. In this article, we discuss one potential cause for an app not responding for more than a minute after the [code]DelegateToServer[/code] call - an unstable internet connection. Wireless connections are more likely to be unstable compared to wired connections. If this behavior is occurring frequently in your applications, you can use the Error Handling functionality offered in AIMMS to mitigate the situation. Find an example [url=https://how-to.aimms.com/Articles/155/155-Catering-unresponsive-server-unstable-connection.html]here[/url]
How to Run Executable Files
AIMMS provides a good selection of functions, such as arithmetic functions, string manipulation functions, time functions, distribution functions, file functions, and more, for app developers to build prescriptive analytics applications. However, if you already have another program for certain tasks that you don’t want to rebuild in AIMMS or if the functionality you need is not available, you can use the Execute function to call the program from AIMMS. [url=https://how-to.aimms.com/Articles/114/114-execute.html#run-executable-files]HERE[/url]
How To Send and Receive Messages (schedule regular jobs)
In the context of a coherent collection of AIMMS data and server sessions, there should be an option to communicate between these sessions. AIMMS PRO provides the concept of queue for this; a session can create a queue and start listening to it. In addition, that session can communicate the name of that queue such that other sessions can also listen to it, or can put messages on it. read [url=https://how-to.aimms.com/Articles/80/80-receive-messages.html]here[/url] This article is a follow up of [url=https://how-to.aimms.com/Articles/80/80-schedule-jobs.html]Schedule Regular Jobs[/url]
How to Schedule Regular Jobs
Some applications involve solving a mathematical program regularly, for instance every night or every ten minutes. In this [url=https://how-to.aimms.com/Articles/80/80-schedule-jobs.html]article[/url], we’ll discuss how an AIMMS job can reschedule itself, as depicted in the next picture.
How to model necessary file sharing in a secure manner.
This [url=https://how-to.aimms.com/Articles/117/117-Uploading-and-Downloading-files.html]blog [/url]post is the second post in a series of three to enable AIMMS app developers to model necessary file sharing in a secure manner. In our [url=https://how-to.aimms.com/Articles/120/120-pro-user-groups.html]Create PRO User Groups[/url], we covered AIMMS PRO User groups and how they can be used to authorize access to information within your AIMMS Apps. This [url=https://how-to.aimms.com/Articles/117/117-Uploading-and-Downloading-files.html]blog [/url]post explains how you can upload and download files to and from AIMMS PRO Storage. And [url=https://how-to.aimms.com/Articles/115/115-Securing-File-Access.html]here's [/url]the last part.
How to Create PRO User Groups
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 [url=https://how-to.aimms.com/Articles/120/120-pro-user-groups.html]blog [/url]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: [list=1] [*]Identify the user of the AIMMS PRO App and the AIMMS PRO groups they belong to [*]Upload files to AIMMS PRO Storage and download files from AIMMS PRO Storage [*]Grant access, via authorization strings, as appropriate to files in AIMMS PRO Storage [/list]
How to Exchange data with the AIMMS Cloud Platform
Most AIMMS applications import data from other systems and/or export data to other systems, beyond manual file upload into the app. For on-premise AIMMS installations that exchange data with other on-premise systems this can all be arranged using the standards, procedures and custodians of that on-premise environment. This document describes the options for exchanging data between on-premise systems and AIMMS apps running on the AIMMS Cloud Platform. [url=https://how-to.aimms.com/Articles/159/159-exchange-data-with-cloud.html]Here[/url]
Sharing one AIMMS Cloud Platform between different departments or user groups
You can share one AIMMS Cloud Platform between different departments or user groups in your organization. Here are some tips on how to set it up without friction. When apps from different user groups are published on the same AIMMS Cloud Platform, they share certain Cloud functionalities. Who is responsible for creating User Accounts for the Cloud Platform? User Accounts for a shared Cloud platform are created in one admin console. Any user with admin rights can, among other things, create accounts for other users. Make clear rules about who will create and remove user accounts to avoid duplication, accidental removals, and so on. An admin can create an unlimited number of user accounts. Do you need User Groups to control access to apps? If you do not want all users to access all apps, you can create User Groups and configure app access so that certain groups only see certain apps. How many Concurrent Users do you need? There is a limit on the number of users who can be l
Already have an account? Login
Please use your business or academic e-mail address to register
Login to the community
No account yet? Create an account
Enter your username or e-mail address. We'll send you an e-mail with instructions to reset your password.