Recently active topics
We are pleased to announce Team Bern Unicorns from the University of Bern as the winners of the 14th AIMMS-MOPTA Optimization Modeling Competition. Team Bern Unicorns' solution, report and modeling effort was selected as the most comprehensive among the three finalists at the MOPTA conference banquet, which took place at Lehigh University, Bethlehem on July 26, 2022. AIMMS is excited to continue supporting MOPTA. This year’s problem statement, designed by Dr. Karmel S. Shehadeh (Lehigh University) and Dr. Luis Zuluaga (Lehigh University), explores surgery scheduling in flexible operating rooms under uncertainty. The participants were tasked to develop an efficient and implementable optimization model with a user interface of finding the best solutions. All the three finalists did an excellent job in developing various approaches to arrive at their recommendations. Team Bern Unicorns includes Nicklas Klein, Robin Hauenstein and Nicola Travaglini, advised by Norbert Trautmann. The team
Dear Community, As you know, we’ve been working on Enhancing the Tabular Data Manipulation experience on WebUI epic, and made our first incremental release of Excel Upload/Download support in the last 4.86.1 release, also mentioned in my previous product update. We’ve made further progress on this epic and also have introduced a new Data Color Palette that is applied across widgets in the WebUI. The 4.87 release includes these features, here is a preview of them: Increment on Enhancing the Tabular Data Manipulation experience: As part of enhancing user experience of data manipulation on the WebUI table widgets, we now have extended it with support for Block Editing and Copy/Paste:Block Editing: We now can select a region of a table using your mouse, then type a value and press CTRL+ENTER to change all selected cells into the value you typed. You are not limited to selecting a rectangular region of cells. Holding down the CTRL key, you can select more than one
Dear All, I want to model the power of wind turbine under different wind speeds with respect to the cut-in, cut-out and rated speeds. How can this be implemented in AIMMS. Please, kindly make your response comprehensive as i am new to AIMMS. Thank you. All the terms have been declared as parameters.
Machine shop scheduling problem, how to introduce a binaray variable that shows if you have production?
Dear all,I'm quite new to Aimms, therefore I don’t know if my problem is easy to solve or a difficult one. My end goal is to be able to generate an automated production planning for a big pizza bakery. The machine shop scheduling example is in the direction for what I’m looking for, see the link below. https://how-to.aimms.com/Articles/473/473-ProductionPlanning-machinescheduling.htmlThe machine shop scheduling example determines the optimal machine and start time for each order, so that the makespan is minimized. I want to expand this model, so that more contraints can be added. An important binary variable for me is ‘DoYouHaveProductionInAPeriod(i,o,i_hc)’: do you have production at a certain machine i, for a spefic order o, at a certain time period i_hc. An example of a constraint that I want to add and using the variable ‘DoYouHaveProductionInAPeriod(i,o,i_hc)’ is if I have 4 workers available, only 4 machines can run at the same time → for each i_hc, sum((i,o),DoYouHaveProductionI
Hi everyone, I need to make a simulation in Aimms to simulate the mechanism on the following picture: Order Release Mechanism I have no problem in declaring all the sets and parameters, but my main 2 problems are too make the periods pass correctly and repeat all processes in the periods and too update the loads and sets at the right points in time. I have too do this via simulation so without an objective function thats also something that throws me off cause i cant use a Mathematical Programm so solve this. Maybe the solution is simple but i havent ever worked with Aimms and that is a very big project for me, which is also very urgent so i really appreciate any help i can get. With kind regards AlexPS.: The programm i made so far is attached as a zip-file. Maybe u can tell me how i need to adapt it to make it work.
I see in the release notes that the default value of a parameter is now only available if it is specified.However, I always use this option to empty selection boxes. I tried addding '’ as a default value, but that still does not allow me to select the “Default:: “ option in the dropdown.So my question is “What should I now do to empty my selectionbox (and show the data for all possible values of the parameter - instead of only for the selected value (location in my case)?
Hi everybod,I have a quick question and hope you can help me.I calculate in my model the optimal stock level depending on the period and szenario specific demand.The inventory level is defined as follows: Inventory_PreviousPeriod + ProductionQuantity_CurrentPeriod (also a variable) - DeliveryQuantity_CurrentPeriod.How is it possible to preset the variable stock for the first period to a fixed inital value (in this case the opening inventory)?I would be very grateful for your answer!Best ragards, Hans
Dear all, I am fairly new to Aimms, but for my thesis i need to solve a model in Aimms that has no objective function. Its like a scheduling problem, but it must not be optimization based. So i have most parts of my Model but i dont no how to implement it since i cant use constraints and the solver. One Idea i had was to just make an irrelevant Objective function, let the Solver solve it and have my other parameters (Which Order goes to what station at what time and what is the capacity at each station) as results of the simulation. Would this work or is there any other way i can set this up properly? Thank you in advance. With kind regards, Andrew
Recently, someone asked me about time limits for AIMMS PRO Jobs.You can control the timeout via the timeout argument in pro::delegateToServer. Note that this timeout is in milliseconds.When thinking about time limits, I usually think about time limit for the solver.To provide the solver with the opportunity to share the best solution thus far, I usually add some minutes to cater for case load, project start, case save etc of the job to the time limit for the AIMMS PRO Job. Therefore, my delegate sometimes looks as follows:if pro::DelegateToServer( ... timeout: p_timeLimit * 1.2 * 1000 + 5 * 60 * 1000, ! timelimit for job is in milli seconds. ....) Where p_timeLimit is the time limit in seconds for the solve itself.
Hello everyone, Is there a way to use a discrete uniform distribution inside of Aimms? I know there is a uniform distribution but it gives me real number values for my parameter. Instead i just want integer values to be drawn from the uniform distribution. Is this possible? Thank you for an answer. Kind regardsAlex
Hello Everyone!Second renewed example is live! Come check!In this example an optimal employee assignment is determined for a chain of restaurants. Each restaurant has different demands concerning the number of employees available and their skills. The objective of the optimization is to find the best placement of staff at the lowest cost, while taking into account shortage of skilled workforce.The employees work in shifts and each position is primarily fulfilled by skilled employees. Assigning a less experienced staff member to a task will have impact on the overall cost.We used a lot WebUI new features, you can download the app by clicking here. Feel free to use this thread to anything you need about this example.
Dear Community, As you know, we are always striving to improve the user experience with WebUI. Part of this journey is simplifying the process of adding new widgets to the grid layout area.On the Page-Configuration pane, against each area in the Grid Layout page, we now provide a button to add a new widget. When clicked, this reveals the “Add Widget” wizard, which then adds the new widget to that specific area.The respective Area name is shown in the title of the “Add Widget” wizard for reference.This simplified way of adding new widgets eliminates the additional step of moving widgets from the default “Unassigned Widgets” area to their designated area. We hope this feature brings value to your application and further enhances your user experience. Please leave your feedback and suggestions in the comments. Thanks.Team WebUI.
Hello everyone, I have an Element Parameter PredecessorOperations(i_operation) that holds the value of the operation that has to be executed before i_operation. With the following statement i want to check if the EP has a value or not: if (val(PredeccesorOperation(i_operation)) = 0) then….endif; However this only works if all values of the Ep are empty. If any operation gets assigned a predeccesor (e.g. Operation1) then i get the error: Cannot compute the value of string “Operation1”. If I would casually formulate the code it would look like this: if( PredeccesorOperation(i_operation) is empty ) then ….endif;So my question is: What operator do I need to use in order to check if the parameter has any value or no value assigned? I am thankful for any advice you might have. With kind regardsAndrew
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.