Flexibilité et performance de codes de calcul en optimisation et simulation - Archive ouverte HAL
Hdr Année : 2016

Flexibility and Performance of Computer Codes in Optimization and Simulation

Flexibilité et performance de codes de calcul en optimisation et simulation

Résumé

This manuscript presents the synthesis of research works in optimization and simulation with the aim of developing flexible and performant software tools. The contributions are centered on three main domains:

(i) combinatorial optimization, with the resolution of problems of hypermedia documents synchronization and resources optimization in cloud computing;

(ii) numerical simulation, with an original outline of optimization-simulation coupling for solving a bus routing design problem in an urban transportation network, and a methodology to minimize the vulnerability of a grassland ecosystem facing climate changes;

(iii) generic software development, with design patterns for developing optimization algorithms, and a library to extend generic programming to "concepts" and thus to allow improving the quality of computer codes.

This multidisciplinary approach is explained by the complementarity of these domains when tackling the studied problems. Notably, combinatorial optimization allows designing very efficient algorithms to solve operational research problems, but is based on a usually too simplistic modeling of the studied system. Numerical simulation, which generally allows representing more precisely the system, can be coupled with the optimization process to identify better applicable solutions.

The studied systems can also be very complex and can need extremely time-consuming optimization algorithms and simulation models. Software development becomes thereby a crucial element where usual software engineering methods are not always enough to meet high performance computing needs. It seems thus relevant to study the possibilities offered by generic programming and metaprogramming to combine, with few compromises, flexibility and performance in computer codes.
Ce manuscrit présente la synthèse de travaux de recherche en optimisation et simulation dont l’objectif est le développement d’outils logiciels flexibles et performants. Les contributions s’articulent autour de trois grands domaines:

(i) l’optimisation combinatoire, avec la résolution de problèmes de synchronisation de documents hypermédia et d’optimisation de ressources dans les nuages informatiques;

(ii) la simulation numérique, avec un schéma de couplage optimisation-simulation original pour la résolution d’un problème de conception de tournées de bus dans un réseau de transport urbain, et une méthodologie pour la minimisation de la vulnérabilité d’un écosystème prairial face aux changements climatiques;

(iii) le développement logiciel générique, avec des patrons de conception pour le développement d’algorithmes d’optimisation, et une bibliothèque pour étendre la programmation générique aux "concepts" et permettre ainsi d’améliorer la qualité des codes de calcul.

Cette démarche pluridisciplinaire s’explique par la complémentarité de ces domaines pour répondre aux problématiques étudiées. Notamment, l’optimisation combinatoire permet l’élaboration d’algorithmes très efficaces pour résoudre des problèmes de recherche opérationnelle, mais en s’appuyant sur une modélisation souvent trop simpliste du système étudié. La simulation numérique, qui permet généralement une représentation plus fine du système, peut être couplée au processus d’optimisation afin d’identifier de meilleures solutions applicables.

Les systèmes étudiés peuvent aussi être très complexes et nécessiter des algorithmes d’optimisation et des modèles de simulation très coûteux en temps de calcul. Le développement logiciel devient alors un élément crucial où les méthodes usuelles de génie logiciel ne sont pas toujours suffisantes pour répondre aux besoins de calcul intensif. Il semble alors pertinent d’étudier les possibilités offertes par la programmation générique et la métaprogrammation pour combiner, avec peu de compromis, flexibilité et performance dans les codes de calcul.
Fichier principal
Vignette du fichier
hdr.pdf (6.27 Mo) Télécharger le fichier
Loading...

Dates et versions

tel-01509550 , version 1 (18-04-2017)

Identifiants

  • HAL Id : tel-01509550 , version 1

Citer

Bruno Bachelet. Flexibilité et performance de codes de calcul en optimisation et simulation. Génie logiciel [cs.SE]. Université Blaise Pascal - Clermont-Ferrand II, 2016. ⟨tel-01509550⟩
466 Consultations
525 Téléchargements

Partager

More