Summary: | La validation des charges utiles des satellites de télécommunication nécessite des opérations coûteuses en temps et en personnel. Ce coût augmente régulièrement du fait de la complexité croissante des charges utiles. Il est donc crucial pour Astrium d'optimiser la réalisation des opérations de test. L'objectif de cette thèse CIFRE menée en collaboration entre Astrium et l'Onera est de développer une suite logicielle d'aide à la génération de plans de test. Le problème de génération de plan de test a été modélisé sous forme de graphe orienté à états. La NP-complétude de ce problème a été établie. Des modèles mathématiques ont été construits en programmation linéaire en nombres entiers et en programmation par contraintes en vue d'une résolution par des solveurs génériques. Cependant, ces solveurs génériques se sont heurtés à des problèmes d'insuffisance de mémoire liés à la très grande taille des instances à traiter. Ceci nous a conduits à développer un solveur spécialisé à base de recherche arborescente faisant appel à des mécanismes spécifiques de choix de variables et de valeurs, de propagation de contraintes, de calcul de borne, de retour-arrière, d'apprentissage et de redémarrage. Un solveur spécialisé à base de recherche locale a été développé en parallèle. Les résultats obtenus par ces différents solveurs avec différents paramétrages ont pu être comparés. === Telecommunication satellite payload validation requires operations which are expensive in terms of time and manpower. This cost is constantly increasing as the payloads become more and more complex. It is crucial for Astrium to optimise the testing phase to keep these costs under control. The objective of this CIFRE thesis, conducted in collaboration with Astrium and Onera, is to develop a software suite to help generate test plans for the payloads.The problem of generating test plans was modeled using the form of a directed graph with states. The NP-completeness of this problem was proven. Mathematical models were built using integer linear programming and constraint programming with a view to solving the problems using generic solvers. However, these generic solvers had problems due to insufficient memory on account of the large size of instances to be handled. These problems led us to develop a specialised solver using a tree search, with special mechanisms for choosing variables and values, propagating constraints, computing bounds, backjumping,learning, and restarting. A specialised solver based on local search was developed in parallel.The results obtained by these different solvers with different settings were compared.
|