Skip to Main content Skip to Navigation

L'Approche du portfolio d'algorithmes pour la construction des algorithmes robustes et adaptatifs

Abstract : On many problems, it is hard to find an algorithm that solves all its instances with the shortest execution time. We are interested here by the design of approaches for combining several algorithms solving the same problems in order to determine a good combination over the whole set of instances. Such approaches can be developed at a system level (with libraries, adaptive languages and components, etc.) or at an algorithmic level. In this work we are interested on generic algorithmic approaches for combining algorithms.We mainly focus on approaches based on the algorithm portfolio concept. An algorithm portfolio defines a concurrent execution of many algorithms solving a same problem. The execution of algorithms is interleaved in time or in space. The execution is interrupted on the instance to solve when one algorithm finds a solution. We propose in this thesis a classification of existing techniques for combining algorithms. In this classification, we define for each technique the most suitable context for its utilisation. Then, we propose two techniques for designing porftolio of algorithms. The first technique is based on an adaptation of the nearest neighbour method in machine learning for the combination of algorithms. This technique is adaptive because for each instance to solve, we aim at determining the most suitable subset of algorithms that can perform well on it. We apply this technique to the resolution of sparse linear systems of equations with iterative solvers and we show experimentally on around one thousand matrices that this technique can effectively be used to reduce the number of iterations and the execution time necessary on the resolution.Moreover, on some experimentations, we were able to predict on almost all the cases the well suited algorithms for solving instances. The second technique is based on a formulation of the resource sharing problem. Given a target problem, a benchmark of problem instances, a set of candidate algorithms, and the behaviour in execution time of candidate algorithms on the benchmark, the objective in the resource sharing is to find the best way of deploying ressources to candidate algorithms in order to minimize of the execution time necessary to benchmark instances. Our objective with this problem is to build a robust algorithm in sharing ressources to candidate algorithms that are executed in the portfolio. We show that the formulated problem is NP-complete and we propose two families of heuristics and exact algorithms to solve it. Then, we validate our algorithms on a database of SAT problems. The obtained results show that the proposed solutions can serve effectively to exploit complementarities between algorithms in order to propose more robust algorithms.
Complete list of metadatas

Cited literature [69 references]  Display  Hide  Download
Contributor : Yanik Ngoko <>
Submitted on : Friday, February 8, 2013 - 11:08:07 AM
Last modification on : Saturday, February 15, 2020 - 2:03:35 AM
Long-term archiving on: : Thursday, May 9, 2013 - 3:55:05 AM


  • HAL Id : tel-00786253, version 1



Yanik Ngoko. L'Approche du portfolio d'algorithmes pour la construction des algorithmes robustes et adaptatifs. Algorithme et structure de données [cs.DS]. Université de Grenoble, 2010. Français. ⟨tel-00786253⟩



Record views


Files downloads