AIMMS PRO & Cloud Platform
Get and give help with AIMMS PRO and Cloud Platform
- 76 Topics
- 78 Replies
I'm not able to start any PRO session anymore, keep getting this error "Cannot verify project validity" and it says to check logs. The error message in the server log is: java.io.IOException: C:\Program Files\AimmsPRO 2.0\AimmsPROLibrary\vc141\x64 doesn't exist. What could be wrong?
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]
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]
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]
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]
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
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]
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]
[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.
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]
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]
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]
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.
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.
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]
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]
In [url=https://how-to.aimms.com/Articles/13/13-Solver-Logging-IDE.html]Retrieve Solver Log Files in AIMMS Developer[/url], we explain how to adapt the project such that solver log files are available for inspection. A solver session runs somewhere on an AIMMS PRO server, and as a user, you do not have direct access to those files. However, with a few small steps, which are explained in this article, you can access these files as well. [url=https://how-to.aimms.com/Articles/13/13-Solver-Logging-PRO.html]Here[/url]
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.