Model Optimization for History Matching
Use of Adaptive Evolutionary Algorithms to optimize the parameters of an Oil Reservoir model. Each evaluation requires an expensive simulation of the reservoir.
To reduce the computational cost of this simulation, we are trying to use surrogate evolutionary algorithms. Another approach is the use of Deep learning to learn a proxy of the simulator, and use this proxy instead for performing history matching.
Earthquake Risk Modeling
Earthquake risk models assess information from past earthquakes, and use this information to identify patterns in earthquake occurrence that can be useful to policy planners. We plan to use evolutionary algorithms to generate models that are accurate and useful.
Evolutionary Computation for Data Visualization
Data Visualization (as the bi-dimensional projection of multi-dimensional data), is a very important problem in the medical field. During the diagnostic of a patient, doctors need to consider a very large amount of exam data at once, and compare this data with the known standard values, keeping in mind how each person can have very individual characteristics.
To give a more concrete example, the classification of cancer types involves the analysis and comparison of a large number of markers across thousands of cells. While the human factor (experience of the phisycian) is essential for this kind of analysis, computational tools can be useful to give statistical information that can be critical for the decision-making process.
Evolutionary Computation for Super Computing
Evolutionary Algorithms, by their nature, are intrinsincally highly parallelizable. However, even in this case a lot of care must be taken when developing actual EC applications for supercomputing environments. I'm interested in studying the various variations of parallel EC (Island models, Terrain based models, etc), and how they can be tweaked to take the best from super computing.
Ant Colonies for Topologial Exploration
Ants are very simple organisms that are able to, as a group, display extremely complex behavior. We can see this complex behavior in the cooperation that ants display when looking for food, and the extremely complex nests that they build. One of the main components for the ant's cooperation is stygmergy. Stygmergy is the communication through work - instead of exchanging direct messages, ants infer what work needs to be done by what work has already been done in the environment.
These characteristics of ants have been used to generate effective, de-centralized algorithms for network routing and graph searching. Now we want to use the same principles to create a control system for groups of agents (such as robots) to explore a dynamically changing environment.
Evolutionary Computation for Games
Evolutionary Computation allows a computer agent (such as a game AI) to learn from its mistakes, and to adapt itself to changing conditions. There are a number of competitions that involve the development of AIs for a number of games, such as car racing, chess, action games, etc. I'm interested in collaborating with students and researchers to develop effective AIs using a variety of EC methods for these game competitions.