Using Darwin Scheduler to Optimize Pump Operation

Product(s): WaterGEMS
Version(s): V8 XM, V8i, CONNECT
Original Author: Scott Kampa, Bentley Technical Support Group


Darwin Scheduler allows you to optimize pump operations. By using genetic algorithm optimization to control nominated pumps during an extended period simulation (EPS), it avoids a manual trial and error approach to finding the most efficient operating schedule. Solutions and costs calculated using Darwin Scheduler can be exported back to the selected scenario.


Previously, the only way to optimize pump operations in a model was to use trial and error, changing settings in the model manually and then computing the model. Darwin Scheduler was introduced with WaterGEMS V8i, and allows for optimized solutions to be calculated with a genetic algorithm similar to that found in Darwin Calibrator. This tool allows for a more efficient analysis of a model. The optimization only knows the best solution relative to other solution already found during computation. The power of this is in that the study runs through a large number of possible solutions and can often find a very good solution to fit the model.

Darwin Scheduler is used in EPS models only. It is recommended that the model is well-calibrated so that you get the best results.

Darwin Scheduler is included with a license for WaterGEMS. It is no longer available as an add-on license for WaterCAD. Additionally, starting with CONNECT Edition Update 2 and greater, Darwin Scheduler is no longer accessible from within WaterCAD. If you have WaterCAD and would like to use Darwin Scheduler, you will need to upgrade to WaterGEMS (models will be compatible). See more here: WaterGEMS vs. WaterCAD.

A note on sewer system pump optimization (SewerGEMS or SewerCAD) - There really isn't too much you can do to optimize sewage pumping. The pump would be turned on when the wet well level gets high and turned off when it is low. Unlike drinking water which you can store for long periods, you need to keep sewage moving. Consider running some different on/of strategies to confirm that there is minimal difference in energy costs. Ensure you meet NPSH requirements.

Getting Started

Darwin Scheduler is accessed by going to Analysis > Darwin Scheduler, or by clicking the Darwin Scheduler icon above the drawing pane.

Once Darwin Scheduler is open, click the New icon in the upper left select “New Scheduler Study”. An item will appear in the window on the left, and a series of tabs will appear at the top right. Next, choose “New Optimized Run”. A new item will appear below the name of the scheduler study. These can be renamed.

On the Scenario tab, choose the scenario that will be optimized.

Next you will need to identify the pumps or pump stations that will be optimized during the Scheduler study, as well as constraints used by the genetic algorithm. Make sure the Scheduler study is highlighted. Select either the “Pumps to Optimize” or “Pump Stations to Optimize” and choose the pumps or pump stations that will be optimized. The preferred usage for Darwin Scheduler is pump stations. In either the “Pumps to Optimize” or “Pump Stations to Optimize” tab, click the New icon. Next, click in the cell for Pump Station or Pump (depending on the usage). Click the ellipsis button (“…”) to activate the Select tool and choose the element you want to add.

In the Constraints tab, the various constraints on the system are entered. These include node pressure, pipe velocity, number of pump starts, and tank levels/elevations. These are the parameters that the solution must satisfy to be viable. This will assure that a solution does not have a very low pressure or empty tank in the results. Note that you have the option to enter overrides for given elements in the system.

The next step is to set the Objective Elements. Darwin Scheduler associates the optimization with an energy pricing pattern. In this section, you can use the icons to add the pumps, variable speed pump batteries, and tanks that will be included in the optimization. Once the pumps are added, you must choose an Energy Pricing pattern for the pump.

If one has not been already created, you can click in the cell and choose the ellipsis button (“…”), which will open the Energy Pricing manager. More information on the Energy Pricing manager can be found in the WaterGEMS Help or the Energy Cost technote also available.

Once the Energy Pricing pattern has been created, you can select it from the pulldown. Note that if all pumps will be using the same pattern, you can also right-click on the column header and choose “Global Edit” to set the patterns for use. In the Tanks tab, the tanks that will be included in the optimization can be selected, but no patterns are associated with them.

Next, select the “Objective Type” tab. There are two choices: Minimum Energy Use and Minimum Energy Cost. Minimum Energy Use will try to minimize the energy used in the system. Minimize Energy Cost uses energy tariffs and peak demand charges to calculate the cost of the energy used in the analysis.

Optimized Run

The next step is to create a new optimized run. Highlight the Scheduler study on the left of the manager and click the New icon. One of the options will be New Optimized Run. This new run can be renamed by clicking the Rename icon or right-clicking on the optimized run and choose Rename.

If you highlight the new optimized run, a new set of tabs will appear on the right side of the manager. This is where you define the parameters specific to this particular optimized run.

The “Pump Stations to Optimize” and “Pumps to Optimize” tabs contain the same information for these two different element types. Each of the pump stations or pumps you identified in your Scheduler study will be displayed. If the pump station or pump is to be included in the optimization, be sure that the item “Include in Optimization?” has a checkmark in it. Next you will need to identify whether the pump is a fixed speed or variable speed pump in the “Decision Type” column. If you choose Fixed Speed, the columns for minimum and maximum speed, as well as the increment, will be unavailable and the pump will be assumed to be set to the relative speed factor you have identified in the pump properties. The pumps are variable speed pumps, you can choose the minimum and maximum speeds that the pump may be able to operate at that allows for the best optimization.

The “Objective Elements” tab allows you to choose if the objective elements identified in the Scheduler study will be available for this particular optimized run.

The Options tab allows you to make adjustments to how Darwin Scheduler will solve for the optimization. Darwin Scheduler uses a genetic algorithm to find the best possible solution. The type of genetic algorithm is select in the Options tab. You can choose the Simple Genetic Algorithm option or the Fast Messy Genetic Algorithm. The Simple Genetic Algorithm will often take less time to compute.

There are a number of other items that can be changed. In most cases, the default settings are sufficient. However, if you make changes to any values here, you could generate a different set of results. For that reason, it is often recommended that you compute several different optimized runs using a different set of options. For instance, in the Genetic Algorithm Options tab, you can select a random seed number. If you enter a different seed number and leave all other parameters that same, you will see a different set of results. Since Darwin Scheduler doesn’t have any optimality and only knows the best solution relative to other solution already found during computation, changing this value could lead to better results.

Once you have set up the parameters, you are ready to compute. Highlight the optimized run on the left side of the manager and select the Compute icon. The computation time will vary depending on the complexity of the model and the setup of the Scheduler study. Once completed, the top solutions will be displayed. The number of solutions is defined in the Options tab.

Understanding the Results and Updating the Model

To review the results from the Scheduler study, highlight the item “Solutions”.

You will see a general overview of the energy cost or energy use results for each of the solutions generated. For details on each solution, choose one of the solutions from the tree. A new set of tabs will appear.

In the “Pump Stations Decisions” and “Pump Decisions” tab, the type of decision is verified (fixed speed or variable speed). By highlighting an individual pump station or pump in the table at the top, information on the speed settings and the number pumps (for pump stations) or lag pumps (for pumps) running are identified.

In the Constraints tab, simulated results for the node pressure, pipe velocity, number pump starts, and tank levels are generated. These are the expected results if the optimization from this solution is exported into the model.

In the Objective Elements tab, a breakdown on the energy cost or energy use for each pump and tank identified in the optimized run will be displayed. These results are based on the energy pricing pattern created for the Scheduler study.

In addition to the numeric results, there are also graphical results that are available. With one of the solutions highlighted, a Graph icon will become active. The graph generated will display the pump speed settings and the number of pumps/lag pumps running for a given solution. You can also generate reports for the solution by choosing the Report icon at the top of the Darwin Scheduler manager.

Running the Scheduler study does not change the properties in the model. After reviewing the results, if you want to export the optimization results into a new scenario in your model, this can also be done in the Darwin Scheduler manager. Choose the solution that you wish to export and choose the Export icon. A new dialog will open that allows you to export the results to a new or existing scenario. It is generally recommended to export to a new scenario so that the original data is not overwritten.

To export to a new scenario, check the “Export Scenario?” box. You can change the default name by simply typing in one in the Name field. By creating a new scenario, new Physical, Active Topology, and Operational alternatives will also be created. You can change the name of these new alternatives as well.


After computing a Scheduler study, you will sometimes see results that do not have a good fitness or do not make sense. The first thing to check is if the model is well-calibrated. This will have a large effect on the performance of the Scheduler study. WaterGEMS has a calibration tool called Darwin Calibrator that can aid in calibrating a water model.

Making adjustments to the settings in the Options tab is another option. As stated earlier, simply changing the Random Seed number will generate new results after running the study again. You can also make changes to any number of other options. For more information on this, please look at the information in WaterGEMS Help.

Note: Scheduler currently does not support factoring in the energy recovered from turbines. That is, there is nothing in the optimization definition to encourage the use of pumping energy to recover energy from a turbine. With turbines in a model, the cheapest solution tends to be for the pump not to run very little or at all. This can cause skewed results in the optimization.

Finally, there is a set of Frequently Asked Questions available in the Help documentation that may prove beneficial. Search Help for “Darwin Scheduler FAQ” to find this information.

See Also

Product TechNotes and FAQs

OpenFlows Product Tech Notes And FAQs

General WaterGEMS V8 FAQ

Hydraulics and Hydrology Forum