LBL Homepage GenOpt Header

What's New

New features of Version 3.1

Output file processing

The keyword FirstCharacterAt has been introduced, which is needed to parse the EnergyPlus 7.0 standard output files (eso files). See the manual-3-1-0.pdf, Section 11.1.1 Initialization File.

New features of Version 3.0

Parallel computation

GenOpt has been changed to use parallel computation to evaluate the objective functions. With the default settings, depending on the algorithm, GenOpt may run as many simulations in parallel as there are CPUs on your computer. The maximum number of parallel simulations can be adjusted (see manual).

Algorithm Mesh

The algorithm EquMesh has been rewritten to also allow discrete parameters and continuous parameters that are logarithmically spaced. As this allows for other grids in the space of independent parameters than only equidistant grids, the algorithm has been renamed. It is now called Mesh.

Algorithm HookeJeeves

This algorithm has been deleted, use instead the algorithm GPSHookeJeeves, which implements a parallelized version of the Hooke Jeeves algorithm.

Other Algorithms

All algorithms have been revised to use parallel computation for evaluating the cost function. The implementations is such that no more simulations are required than in GenOpt 2.1, i.e., there are no speculative function evaluations at points that may not be needed. Such speculation may lead in some cases to a shorter optimization time, at the expense of more resource usage.

New features of Version 2.1

Release of source code

GenOpt 2.1 including its source code is released under a modified BSD license.

New and updated example files

The EnergyPlus example files have been updated to EnergyPlus version 2.2.0. Example files and configuration files are now also provided for Mac OS X and for IDA 3.0.

Better integration into file explorer

GenOpt is now distributed as a Java Archive (JAR) file that allows starting GenOpt from a file explorer by double-clicking the JAR file.

Update to Java 1.5

GenOpt has been updated to Java 1.5

New features of Version 2.0

Capability to Process Discrete Independent Variables

GenOpt can now process discrete independent variables, such as different window constructions, for solving optimization problems with (continuous and) discrete independent variables and for doing parametric studies.

New Optimization Algorithms

The following optimization algorithms are new in GenOpt 2.0:

  • GPSCoordinateSearch and GPSHookeJeeves: These algorithms are members of the family of Generalized Pattern Search (GPS) algorithms. They can be used to solve optimization problems with continuous independent variables. Both algorithms can be run using multiple starting points to increase the chance of finding the global minimum if the cost function has several local minima.
  • DiscreteArmijoGradient: An algorithm that approximates gradients by finite differences and uses the Armijo line search algorithm.
  • PSOCC, PSOCCMesh, and PSOIW: These algorithms are members of the family of Particle Swarm Optimization algorithms which are global heuristic optimization algorithms. They can be used to solve optimization problems with continuous and/or discrete independent variables.
  • GPSPSOCCHJ: This is a hybrid global optimization algorithm that initially does a Particle Swarm Optimization for continuous and discrete independent variables and then switches to the Hooke-Jeeves Generalized Pattern Search algorithm to refine the continuous independent variables.

Pre- and Post-Processing

Some simulation programs, such as EnergyPlus, do not have the capability to pre-process the independent variables, or to post-process values that are computed during the simulation. For such situations, input function objects and output function objects can now be used without having to modify GenOpt's source code.