Tutorial: "Multi-objective optimization with metaheuristics. Applications to multiple sequence alignment and other bioinformatics problems"
This site contains stuff to be used in the tutorial I will give in the Omics Data Analysis Master of the University of Vic on 7th February 2018.
In this tutorial we will learn:
- What are metaheuristic techniques and why they are useful.
- Issues related to optimizing problems having more tan one objective function (multi-objective optimization problems).
- How to use the jMetal optimization framework to solve both single and multi-objective optimization problems.
- To apply the M2Align metaheuristic to deal with multi-objective formulations of the multiple sequence alignment problem.
Metaheuristics in combinatorial optimization: Overview and conceptual comparison. C. Blum, A. Roli. ACM Computing Surveys Volume 35 Issue 3, September 2003. DOI.
An Introduction to Evolutionary Algorithms. Shahim Rostami. Video.
Multiobjective optimization in bioinformatics and computational biology. J. Handl, DB Kell, J Knowles. IEEE/ACM Transactions on Computational Biology and Bioinformatics (2), 279-292. 2007. DOI
Optimizing multiple sequence alignments using a genetic algorithm based on three objectives: structural information, non-gaps percentage and totally conserved columns. F.M. Ortuño et al. Bioinformatics, Volume 29, Issue 17, 1 September 2013, Pages 2112–2121. DOI.
M2Align: parallel multiple sequence alignment with a multi-objective metaheuristic. C. Zambrano-Vega, A.J. Nebro, J. García-Nieto, J.F. Aldana-Montes. Bioinformatics, Volume 33, Issue 19, 1 October 2017, Pages 3011–3017. DOI.
- Java JDK 8 64 bits (http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)
- Maven (https://maven.apache.org/download.cgi)
- Intellij Idea Community Edition (https://www.jetbrains.com/idea/download)
- Git (https://git-scm.com/)
- jMetal (https://github.com/jMetal/jMetal, http://jmetal.github.io/jMetal/)
- M2Align (https://github.com/KhaosResearch/M2Align)
- Account in GitHub
- A tool for plotting data (Gnuplot, R, … )
- Optionally: R and Latex
- Optionally: Anaconda Python 3.6 (https://www.anaconda.com/download/)