Title: A NSGAII, Web Enabled, Parallel Optimization Framework for NLP and MINLP
1(No Transcript)
2A NSGA-II, Web Enabled, Parallel Optimization
Framework for NLP and MINLP
IT Administrator
Designer/End User
- David J. Powell
- Joel Hollingsworth
- Elon University
Application Programmer
Optimization Expert
3Overview
- Problem Making Optimization a common work place
tool for today and tomorrow - Pragmatic Solution Component based framework
using industry standards - Growing Usage In Industry
- Bench Marks / Results
- Project Status
4Problems with Optimization
- Modeling
- Cost
- Optimizer Selection and Tuning
- Performance
- No Standards Based Development.
5Modeling Solution
- Use AMPL for Optimization Formulation.
- Single or multiple objectives min or max
- Continuous or mixed integer design variables
- Bounds or constraints can be one sided or two
sided. - Mathematical language to express in intuitive
fashion - Extendable with user supplied C functions
- Interpretive (iterative exploration)
6Low Cost Solution
- Use widespread free tools AMPL, NSGA-II, Apache
Axis (Tomcat), SGE, Java. - Supports industry standards Web Services, DRMAA
- Large newsgroups for support
- Documentation is wide spread
- Works on heterogeneous platforms
7Optimizer Selection and Tuning Solution
- Single algorithm/implementation NSGA-II
- Supports multiple objectives (min and max)
- Supports mixed integer design variables.
- No landscape assumptions.
- Minimal tuning parameters.
- Easily supports parallel evaluation.
- Other world class algorithms for plug and play
8Performance Solution
- Moores Law
- Continue through 2011 - consistent with future.
- Cost of a single design evaluation in 1990 would
in 2007 equal 10 generations of population size
50. - SGE
- Coarse grained, heterogeneous, parallel
evaluation - Supports fine grained parallel evaluation
- DRMAA 1.0
- C and java support
- Is cost of GA really much greater than cost of
finite differences and branch and bound methods?
9Standards Based, Mainstream Solution
- AMPL coupling with NSGA-II with sequential
evaluation (C) - AMPL coupling with NSGA-II with parallel
evaluation (DRMAA - SGE) - Java Class Wrapper for AMPL
- Web Service for AMPL - SOA
10Single Machine Sequential View
Command promptgt ampl model file
11Multiple Machines Parallel Evaluation
12 Classic Example
Page 534 Engineering Optimization Theory and
Practice
13NSGA-II AMPL MO-MI-NLP specification
14NSGA-II AMPL Controllable Options
- Population size
- Number of generations
- Real variable crossover and mutation rates
- Real variable distribution indices for crossover
and mutation - Integer variable crossover and mutation rates
- Random number seed
- Seed of initial population with start point
- Delta for equality constraints
15Wrapping Ampl Inside Java Class
16Using Wrapper Inside Web Service
17Benchmark Results of Parallel Speedup
18Engineering Survey
19Engineering Survey
20Benchmark Results with Sandren
21Project Status
- Framework proof of concept completed for inside
firewall. - Key Items to industrialize
- End User Administration/Security
- Asynchronous callbacks.
- Uploading design codes.
- Globus grid engine
22Support
- Work funded by North Carolina Office of the
President for a Consortium to Promote
Scientific Computation and High Performance
Computing
23Questions?
- dpowell2_at_elon.edu
- jhollingsworth_at_elon.edu
24Survey of GA Usage in Japan, Korea and Singapore
- Primary Application Automotive.
- Popularity due to parallel processing and global
search. - Clusters are usually Linux/Unix with LSF. Size
varies from 4 to 128 CPUs - Design point evaluations range from a few seconds
on a single CPU to 12 hours on a 8 CPU machine. - GA run varies from 1 hour to 10 days.
- 30 population size for 30 generations
- 60 to 100 population size for 100 generations