`` Evo-DesignOpt <-- background="bg-cream.jpg" background="bg-newsprint.jpg" --> <

"EVO-DesignOpt"

Evolutionary Design and Optimization Group

CSAIL, MIT


[Focus]  [Projects Summary]   [Current Projects]   [People]   [Student Research Opportunities]   [Publications]

[White Papers]   [Past Projects]  [Contact]



FOCUS: Evolutionary Algorithms for optimization, machine learning and adaptive systems.

The unrelenting growth of complexity, data creation and tighter performance deadlines has given rise to problems that are unyielding to statistical or kernel-based machine learning techniques, convex optimization or evolutionary algorithms alone. However, a combination of these techniques can yield powerful algorithms and solutions.

EVO-DesignOpt explores efficient ways to combine different techniques to solve hard optimization and design problems in domains of high complexity.

The techniques we develop can address problems related to:

The techniques have various sweet spots:

Typically Known

Less Heard Of

  • they determine "good enough" solutions in the class of NP-hard or NP-complete problems
  • they solve machine learning problems by recasting them as search problems
  • they optimize without needing gradient information or analytic functions
  • they learn model structure as well as parameters (Genetic Programming)
  • they naturally parallelize
  • they solve distributed problems requiring heterogenous or homogenous sub-solutions
  • they easily incorporate and leverage expert knowledge of the problem domain
  • they are naturally robust for soft computing

Examples of evolutionary algorithms are:
Genetic Algorithms (GAs), Genetic Programming (GP), Evolutionary Strategies (ES), Particle Swarm Optimization (PSO), Ant Colony Optimization (ACO), Bayesian Optimization Algorithm (BOA).

We welcome interest in our current projects and discussions on new collaborations.

Our group has related interests in adaptive computational agent systems and generative design.

[Back to top]


PROJECTS CHART

Projects Summary

[Back to top]





CURRENT PROJECTS

Hierarchical Genetic Algorithms
for
Parallelization of Sparse Matrix Algebra

High performance computing on a multicore processor demands efficient parallelization. While dense matrices can be efficiently distributed among cores without concern for inter-chip transport costs, sparse matrix algebra requires consideration of data distribution and transport costs.
In collaboration with Lincoln Labs, we have teamed a hierarchical GA with a fine grained computation model. The GAs (inner and outer) adaptively determine an efficient processor mapping for sparse matrix multiplication with respect to data processing and transport costs.

Nadya Travinin Bliss, Sanjeev Mohindra, V. Aggarwal, U.M. O'Reilly, "Analysis and Mapping of Sparse Matrix Computations," Proceedings of High Performance Embedded Computing, (HPEC 2007)

Motivation

Research in this vein facilitates migration of knowledge-based data-interpretation algorithms closer toward signal/data sources. Shortening the span between data collection and its interpretation forestalls data waste by processing it in a timely manner.

Applications

Surveillance, anomaly detection, security, transport, logistics, networks

Status

Active. Funded by MIT Lincoln Labs.

 

 

Genetic Algorithms for Network Coding

Minimization of resources required for network coding is an NP-hard problem. We have designed scalable genetic algorithms to solve the problem for the multi-cast scenario. The NWC-GA incorporates network topological knowledge in its representation and adaptive operators.

M. Kim, M. Médard, V. Aggarwal, U.M. O'Reilly, W. Kim, C.W. Ahn, M. Effros, "On Evolutionary Approaches to Minimizing Network Coding Resources,," 26th Annual IEEE Conference on Computer Communications (INFOCOM 2007)

We have developed a NWC-GA for a distributed network and the multiple-unicast scenario that is embedded spatially (on the network being coded) and temporally. (see GECCO 2007 publication)

We have developed a Multi-objective GA that provides pareto-front tradeoff options between coding and link costs. (see MILCOMM 2007 publication)

To achieve practical network coding, we are addressing resource and throughput tradeoffs in additional multi and unicast scenarios.

Collaborator: Prof. Muriel Médard, LIDS, MIT

Motivation

Network coding is an alternative to conventional network routing.

Applications

wireless and wired networks, sensor networks, ad-hoc networks

Status

Active.


Efficient, Scalable Evolutionary Algorithms
for
Multi-Objective Optimization Problems

We are investigating how design knowledge can easily be elicited from an expert designer to be exploited by an algorithm that returns to the designer a suite of pareto-optimal (i.e. non-dominated) designs. These designs present different tradeoffs with respect to multiple objectives and allow the designer or control algorithm to choose between them. The choice can be updated according to the current critical performance specifications. The technical challenge is to efficiently explore the space of possible solutions with scalable techniques that accomodate high dimensionality and multiple objectives.

V. Aggarwal, U.M. O'Reilly, COSMO: a correlation sensitive mutation operator for multi-objective optimization, Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation (GECCO '07)

Minkyu Kim, Muriel Médard, Varun Aggarwal, and Una-May O'Reilly, On the Coding-Link Cost Tradeoff in Multicast Network Coding,2007 Military Communications Conference (MILCOM 2007)

Motivation

Complex, real-world optimization problems frequently have multiple objectives in combination with high design dimensionality. Changing circumstances imply that a suite of tradeoff solutions be available.

Applications

Analog circuit sizing and network coding (to tradeoff link cost and coding cost). Other potential domains include (but are not restricted to) transportation, network mgmt, finance, and logistics.

Status

Active.


Models that Leverage Convex Optimization
Derived by A Hybrid Machine Learning and Evolutionary Algorithm

Convex optimization techniques such as geometric programming and semi-definite programming are powerful techniques for design and optimization. However, they require the design problem to be modeled with a specific formulation such as a posynomial/monomial objective, constraint or sum-of-squares objective. This is often not straight forward to accomplish accurately.
We investigate the use of machine learning and evolutionary algorithms for computing models supporting convex optimization techniques. We have developed a general hybrid EA+ML approach to model-building that accelerates the effectiveness of convex optimization.

V. Aggarwal, U.M. O'Reilly, "Simulation-based reusable posynomial models for MOS transistor parameters" , Proceedings of the Conference on Design, Automation and Test in Europe, (DATE 2007)

Motivation

Our techniques fall into the set of hybrid search-based machine-learning methods capable of solving the general problem classes of classification and regression.

Applications

Widespread: eg, bioinformatics, surveillance, data mining, circuit design.
Geometric and semi-definite programming are used in engineering design, operations research, coding theory, management science, economics, marketing, etc.

Status

Circuit focus in wrap up. Forthcoming report on approximation error bound.

 

Evolutionary Algorithms for Analog Reconfigurable Systems

Model-free methods such as evolutionary algorithms allow reconfigurable systems to adapt or self-tune based solely on performance feedback.
Analog reconfigurable systems have potential payoffs in two areas:
  1. Systems which need to be tuned or self-adapt according to a dynamic environment which is prohibitive to modeling;
  2. Facilitating post fabrication tuning of analog systems with high yield and low power objectives.

Terry, Marcus, Farrell, Aggarwal, O'Reilly, GRACE: Generative Robust Analog Circuit Design, Applications of Evolutionary Computing, EvoWorkshops 2006, (EvoHOT).

Aggarwal, Mao, O'Reilly, A Self-Tuning Analog Proportional-Integral-Derivative (PID) Controller, Adaptive Hardware Systems, 2006.


White Paper

Status

Inactive. Sponsorship invited.

 

 

Adaptive Resource Allocation

Computer architecture and application complexity is rapidly increasing. With the adoption of multi-core processors for desktop computing, workloads are less predictable because applications are more complex in terms of thread parallelism and diverse computation demands. Decentralized adaptive strategies within the operating system or runtime system potentially are a scalable solution to handling this complexity. We investigate computational economic mechanisms that allow individual software components to introspect on performance and adapt their run time resource requests like they would in a market place of sellers and consumers.

Dynamic Load-Balancing of StreamIt Cluster Computations, Eric Fellheimer, MIT M.Eng Thesis, Advisor: Una-May O'Reilly

Collaborators: Rodric Rabbah, Saman Amarasinghe, Steve Ward

Funded under DARPA ACIP Phase 1.

Status

Inactive. Sponsorship invited.

 

Evolvable Hardware: Artificial Life

We have developed an evolvable hardware testbench named GRACE. Grace's software component includes an evolutionary algorithm that generates sized analog circuit topologies. Evolved circuit designs are directly tested in silicon. They are each dynamically configured on an Field Programmable Analog Array then exercised with input signal while their output behaviour is captured and evaluated. GRACE is extensible. We plan to pursue using a highly complex reconfigurable circuit environment to evolve complex circuits such as an ADC.

Terry, Marcus, Farrell, Aggarwal, O'Reilly, GRACE: Generative Robust Analog Circuit Design, Proceedings of Applications of Evolutionary Computing, EvoWorkshops 2006: (EvoHOT),

Status

Inactive. Sponsorship invited.

[Back to top]


PAST PROJECTS

Filter Transfer Function Optimization

Classical filter approximations optimize for a single objective at a time, be it maximum flatness or phase linearity. We develop a unified framework for generating the complete trade-off space for a given order of filter using multi-objective particle swarm optimization. The framework will extend to incorporate robustness to component variation as a design objective.

  • Aggarwal, Jin, O'Reilly, Filter Approximation Using Explicit Time and Frequency Domain Specifications, to appear in GECCO 2006, Evolutionary Hardware track.
  • White Paper

 

Support Vector Machines: Performance Analysis

Support Vector Machines are an example of a recently developed machine learning algorithm that has rapidly been adopted by a wide range of application programmers as a means of classifying and performing data regression.

We formulated a large scale classification problem from the domain of UAV sensing. We evaluated the computational performance scaling of SVM learning and SVM classification with online and offline algorithms in the context of this problem and other large datasets.

Funded under DARPA ACIP.

 

Genr8: A design tool embedded in Maya for architects, Genr8 allows a designer to evolve computational generative processes that ``grow'' digital surfaces. Growth occurs within a 3D digital environment and responds to attractors, repellers and boundaries of the environment. More...

Genetic Programming for Compiler Design: Dissatisfaction with compiler efficiency and design, combined with the realization that compiler designers are overwhelmed with countless nonlinearly complex considerations motivated us to examine different passes within a compiler and their heuristics. We found a common, easily learned feature in the heuristics that we term a `priority function'. We used GP to generate more effective priority functions than currently exist in compilers. We optimized the priority functions associated with register allocation and branch removal via predication. More...

Genetic Programming Population Sizing Theory: This work attempted started addressing the lack of theory available to genetic programming practitioners to guide them in sizing a population for real problems. It analyzed building block supply in the initial population of a genetic programming run and based on a building block perspective derived a population sizing relationship for genetic programming.

Artificial Ants for Non-Photorealistic Rendering: An application of artificial ant techniques to the area of computer graphics known as Non-Photorealistic Rendering (NPR). An artificial ant colony placed on the environment of a digital image transforms a photograph into a stylized picture inspired by traditional artistry.

[Back to top]


PEOPLE


Una-May O'Reilly, Principal Investigator, unamay [at] csail.mit.edu

CURRENT STUDENTS

STUDENT ALUMNI

COLLABORATORS (PAST AND PRESENT)

Circuits: Mar Hershenson (SABIO), Joel Dawson (MIT), Vladimir Stojanovic (MIT) and their students

Network Coding: Muriel Médard (MIT)

Compiler Optimization: Saman Amarsinghe (MIT), Mark Stephenson, Duego Puppin, Martin C. Martin

Artificial Life in Architecture: P. Testa, D. Weiser, Axel Kilian, Simon Greenwold, Martin Hemberg

Genetic Programming Theory: David Goldberg, Kumara-Sastry

Artificial Ant's Approach to Non-Photorealistic Rendering: Fredo Durand, Yann Semet

[Back to top]


RECENT PUBLICATIONS

2007

Nadya Travinin Bliss, Sanjeev Mohindra, V. Aggarwal, U.M. O'Reilly, Analysis and Mapping of Sparse Matrix Computations, Proceedings of High Performance Embedded Computing, (HPEC 2007).

Varun Aggarwal, Una-May O'Reilly, Simulation-based reusable posynomial models for MOS transistor parameters, Proceedings of the Conference on Design, Automation and Test in Europe (Nice, France, April 16 - 20, 2007), DATE '07, ACM Press, New York, NY, pp. 69-74.

Varun Aggarwal, Una-May O'Reilly, COSMO: a correlation sensitive mutation operator for multi-objective optimization, Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation (London, England, July 07 - 11, 2007), GECCO '07, ACM Press, New York, NY, pp. 741-748.

Minkyu Kim, Muriel Médard, Varun Aggarwal, Una-May O'Reilly, Wonsik Kim, Chang Wook Ahn, Michelle Effros, Evolutionary Approaches to Minimizing Network Coding Resources, 26th Annual IEEE Conference on Computer Communications (INFOCOM 2007).

Minkyu Kim, Varun Aggarwal, Una-May O'Reilly, Muriel Médard, Wonsik Kim, Genetic Representations for Evolutionary Minimization of Network Coding Resources, 4th European Workshop on the Application of Nature-Inspired Techniques to Telecommunication Networks and Other Connected Systems (EvoCOMNET 2007), Springer, 2007.

Minkyu Kim, Varun Aggarwal, Una-May O'Reilly, and Muriel Médard, A doubly distributed genetic algorithm for network coding, Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation (London, England, July 07 - 11, 2007), GECCO '07, ACM Press, New York, NY, pp. 1272-1279.

Minkyu Kim, Muriel Médard, Varun Aggarwal, and Una-May O'Reilly, On the Coding-Link Cost Tradeoff in Multicast Network Coding, to appear at 2007 Military Communications Conference (MILCOM 2007), October 2007, Orlando, FL.

Varun Aggarwal, Karl Berggren, Una-May O'Reilly, On the "Evolvable Hardware" Approach to Electronic Design Invention, Evolvable and Adaptive Hardware, 2007, WEAH 2007, IEEE Workshop on 1-5 April 2007, pp. 46 - 54.

2006

Varun Aggarwal, Una-May O'Reilly, Design of Posynomial Models for Mosfets: Symbolic Regression Using Genetic Algorithms, Genetic Programming: Theory and Practice IV, Chapter 7, 2006. (pdf)

Michael A. Terry, Jonathan Marcus, Matthew Farrell, Varun Aggarwal, Una-May O'Reilly, GRACE: Generative Robust Analog Circuit Design, Proceedings of Applications of Evolutionary Computing, EvoWorkshops 2006: (EvoHOT), Lecture Notes in Computer Science 3907, pp 332-343, Springer Verlag. (pdf)

Varun Aggarwal, Meng Mao and Una-May O'Reilly,
A Self-Tuning Analog Proportional-Integral-Derivative (PID) Controller, Adaptive Hardware Systems, 2006, IEEE Press. (pdf)

Varun Aggarwal, Wesley O. Jin and Una-May O'Reilly,
Filter Approximation Using Explicit Time and Frequency Domain Specifications, GECCO 2006, pp. 753 - 760 Evolutionary Hardware track. (Nominated for BEST PAPER AWARD) (pdf)

PAST PROJECTS: Publications

U. M. O'Reilly and M. Hemberg,Integrating Generative Growth and Evolutionary Computation for Form Exploration, Genetic Programming and Evolvable Machines, (2007), 8:163-186. (pre-camera version pdf)

Martin Hemberg, U. M. O'Reilly, Achim Menges, Katrin Jonas, Michel da Costa Goncalves, Steven Fuchs,
Exploring Generative Growth and Evolutionary Computation for Architectural Design, chapter to appear in Art of Artificial Evolution (pre-camera version pdf)

U.M. O'Reilly, M. Hemberg, A. Menges,
Evolutionary Computation and Artificial Life in Architecture, Architectural Design: Special Issue on Emergence, June, 2004.

K. Sastry, U.M. O'Reilly, D. E. Goldberg, Population Sizing for Genetic Programming Based on Decision Making, in Ch. 4, Genetic Programming Theory and Practice II, (editors), U.M. O'Reilly, T. Yu, R. Riolo and B. Worzel, Kluwer Acad. Press, 2004.

Y. Semet, U.M. O'Reilly, F. Durand,
An Interactive Artificial Ant Approach to Non-Photorealistic Rendering, Genetic and Evolutionary Computation - GECCO 2004, K. Deb, R. Poli, W. Banzhaf, H-G. Beyer, E. Burke, P. Darwen, D. Dasgupta, D. Floreano, J.A. Foster, M. Harman, O. Holland, P. Luca Lanzi , L. Spector, A. Tettamanzi, D. Thierens, A. Tyrrell (Eds.), LNCS 3102, 2004. Awarded Best Paper in Track.

M. Hemberg, U.M. O'Reilly,
Extending Grammatical Evolution to Evolve Digital Surfaces with Genr8, Genetic Programming 7th European Conference on Genetic Programming - EuroGP 2004, LNCS, Vol. 3003, pp. 299-308, 2004.

K. Sastry, U.M. O'Reilly, D. E. Goldberg, David Hill,
Building Block Supply in Genetic Programming, Ch. 9, Genetic Programming Theory and Practice, R. L. Riolo and B. Worzel (editors), Kluwer, 2003.

M. Stephenson, U.M. O'Reilly, M.C. Martin, and S. Amarasinghe,
Meta Optimization: Improving Compiler Heuristics with Machine Learning, Proceedings of the SIGPLAN '03 Conference on Programming Language Design and Implementation, San Diego, California, June, 2003.

M. Stephenson, U.M. O'Reilly, M.C. Martin, and S. Amarasinghe,
Genetic Programming Applied to Compiler Heuristic Optimization, Proceedings of the 6th European Conference on Genetic Programming, C. Ryan, T. Soule, M. Keijzer, E. Tsang, R. Poli , E. Costa (editors), LNCS Vol. 2610, Springer Verlag, 2003.

D. Puppin, M. Stephenson, S. Amarasinghe, M.C. Martin, U.M. O'Reilly,
Adapting Convergent Scheduling Using Machine-Learning, 16th International Workshop on Languages and Compilers for Parallel Computing, LNCS, Springer Verlag, 2003.

P. Testa, U.M. O'Reilly, D. Weiser, I. Ross,
Emergent Design Studio: Interactive Model of Design and Computation, Environment and Planning B: Planning and Design, Vol. 28 No. 4. 2001.

[Back to top]


WHITE PAPERS

Potential Uses of Dynamically Reconfigurable Analog Circuits

Enabling automatic Analog/RF Circuit Sizing

OptimFilt: A New Perspective of Filter Design

[Back to top]


STUDENT OPENINGS (UROP, UAP, M.Eng., PhD @MIT only)

Send questions or application via email to EVO-DesignOpt [at] csail.mit.edu or unamay [at] csail [dot] mit [dot] edu. Please make the subject header of the mail "Student Research".

Projects (updated Mar 31, '08)

Genetic Algorithms Applied to Biosynthesis Problems
Biosynthetic fuels are produced via genetic manipulation of a host bacterial DNA to alter its metabolic network. Initially this activity was a wetware/lab bench endeavour. Lab researchers faced overwhelming combinations of knockout reactions (genes) to investigate. They had to resort to small subsystem manipulation, a deep understanding of metabolic chemistry and phenotypic-driven evolutionary techniques. They literally evolved or bred colonies of bacteria (under various environments) to meet synthetic objectives by hand selecting potentially exploitable reactions and genes. With the advent of high fidelity flux balance models and an optimization perspective, addressing the problem with computational experimentation is now possible. Early computer optimizations validated laboratory findings. Our goal is to use computational evolution to address large scale (many knockouts, large metabolic networks) biosynthesis problems.
Terms: Jan-Dec, 2008
Scope: M.Eng, 6.UAT, a minor in biochemisty, bio-engineering very helpful.

Research in Genetic Programming
Genetic Programming is a bio-inspired algorithm that "evolves" (with a computational algorithm) programs or functions. Evolving programs are subjected to "survival of the fittest" and "genetic" crossover and mutation in an environment that tests them for processing their inputs to correctly derive desired outputs. We are interested in many issues in genetic programming: how can a population *collectively* evolve a distributed solution? how can we evolve effective plans? how can we use probabilistic models of a population to efficiently evolve populations in the order of millions or more? how can we run genetic programming more efficiently on a GPU or in hardware (ie an FPGA), how can genetic programming collaborate with a programmer, etc? This project will be driven by your particular interest after discussions with me . It appeals to a student wanting to gain experience in AI and research.
Terms: Summer and or Fall, 2008
Scope: M.Eng, 6.UAT, Junior or Senior of high standing or relevant experience

Research in Genetic Algorithms
Genetic Algorithms are bio-inspired algorithms that search and optimize with an algorithmic version of Darwinian evolution. They are well suited for problems where there there is no derivative, convex optimization scales inefficiently, multiple objectives need to be satisfied or where machine learning algorithms or conventional optimization methods need a partner. We frequently tackle full scale real-world problems and address the research issues that arise in solving the with a genetic algorithm - typically minimizing computational cost and identifying best-possible solutions. The software development is modest but a student typical spends a lot of time "experimenting" with the algorithm to understand its behavior in a "genetic" sense and modify it for improvement using evolution-based concepts.
Terms: Summer and or Fall, 2008
Scope: M.Eng, 6.UAT, Junior or Senior of high standing or relevant experience

Projects That I Find Hard to Resist (inviting a motivated student passionate about the specific topic.)

Evolvable Hardware: Design and implement an uninterrupted hot-swappable evolutionary Alife System on a FPGA chip. (Required: 6.002, 6.301, 6.302, Programming experience in C; Desired: 6.775 or equivalent)

Analog Reconfigurable Systems: Design of custom-board for reconfigurable continuous time controller; power and performance evaluation and benchmarking; Post-fabrication tuning of analog/digital systems (Required: 6.002, 6.071, 6.046, Programming experience in C, Desired: 6.301, 6.775, 6.374, 6.376 or equivalent)

[Back to top]


Copyright © MIT.