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/)