| |
UOF
- Unified Optimization Framework |
In this project, an object-oriented unified
optimization framework (UOF) for general problem optimization is
proposed. Based on evolutionary algorithms, numerical deterministic
methods, and C++ objective design, UOF possesses real-world applications
for various optimization problems. UOF is with interface between
defining a general problem and generic solver; hence the two areas
are bridged. UOF's components are categorized into problem and solver
parts, and they work independently. Therefore, the reusable high
level code allows the adaptation to new problem and solver quickly.
Practical applications in microelectronics industry confirm the
functionality of the developed unified optimization framework. |
| Overview |
For a general purpose optimizer, defining a comprehensive interface
between problems and solvers is one of important issues in programming
language. In public domain, different optimization frameworks,
such as GALIB,
DESMO,
NP-Opt...etc. have shown their advantages. However,
it still has room to improve the interface between problem and
solver for real-world applications. In this work, we implement
a C++ unified optimization framework (UOF) for general problems
and solvers. Examples of the traveling salesman problem (T.S.P.)
and optimal antenna shape problem for wireless communication,
are demonstrated to show the performance and extensibility of
UOF. The preliminary results confirm that UOF solves these problems
in a cost-effective way.
|
| Architecture |
All members in UOF can be easily categorized
into problem-related and solver-related classes. Problem relative
classes are used to form a problem in UOF, and so are those in the
solver relative category. |

The class hierarchy of the basic classes of UOF
|
The abstract classes shown above is defined
as follow: |
| UOFProblem: The main
class for problem definitions. |
| UOFInitializer: Initialization
procedure of the solution. |
| UOFEvaluator: The
method to evaluate the result. |
| UOFConstraint: To
define constraints for the problem. |
| UOFSolver: Main procedure
of the optimization solver. |
| UOFSolution: To store
the solutions for the optimized results. |
| UOFTerminator: To
determine when and how to stop the optimization process of the solver. |
| UOFInfo: To log the
behavior of the solver during solving processes. |
| Built-in
classes |
| In UOFProblem category: |
| - MinFunctionPool:
Various testing functions for minimization optimizer. |
| - TSP: Constraint
and UnConstraint TSP probelms. |
| - ExtSimProblem: An
abstract class for defining a simulation-based (from external simulators)
problem. |
| -- SPICE: Link to external SPICE simulator
to perform circuit simulations. |
| -- TCAD: Link to external TCAD simulator
(e.g. ISE, Medici...) to perform process/device simulations. |
| -- ECAD: Link to external EDA tools
(e.g. HFSS, FEKO...) to perform electronic optimizations. |
| In UOFSolver category: |
| - PopBaseSolver: Base
class for defining "Population-based" solvers. |
| -- GABaseSolver: Simple genetic algorithm. |
| -- PSOSolver: Particle swarm optimization
method. |
| -- ACOSolver: Ant colony optimization
method. |
| - LMSolver and BGFSSolver:
Traditional numerical methods. (To be implemented in next version
of UOF) |

The built-in classes of UOFProblem and UOFSolver |
| Tutorial |
| We give a programming tutorial for solving a T.S.P. by UOF, moreover,
the procedure to define "UOF" style problem and solver will
be also introduced. Please go to this page. |
| |
| Example |
| Traveling salesmen problem |
| Optimal antenna shape problem |
| TCAD reverse modeling problem |
ECAD optimal high frequency circuit
design
|
| Related
work |
| 1. Distributed GA in UOF |
2. UOF in EDA optimization
|
| Publication |
- Yiming Li, Shao-Ming Yu and Yih-Lang Li,
"Application of A Unified Optimization Framework to Electronic Design Automation,"
accepted for publication in Mathematics and Computers in Simulation.
- Yiming Li and Shao-Ming Yu, "A Unified Optimization Framework for Real World Problems,"
in Lecture Series on Computer and Computational Sciences,
edited by T. Simos et al., Recent Progress in Computational Sciences and Engineering,
Brill Academic Publishers, vol. 7, pp. 816-819, 2006.
- Yiming Li, Cheng-Kai Chen, Yen-Yu Cho,"A
Unified Optimization Framework for Microelectronics Industry,"
Proceedings of the 8th annual conference on Genetic and evolutionary
computation (GECCO 2006), Seattle, Washington, USA, 8-12 July, 2006,
pp. 1875-1876, ISBN: 1-59593-186-4.
|
| |
| |
| |
|