Compact representation of sets of solutions for scheduling under uncertainty
Représentation compacte d'ensemble de solutions pour l'ordonnancement sous incertitude
Résumé
In this thesis, we study how data structures succinctly representing sets of sequences can be used in handling uncertainty within scheduling problems. The first part of the thesis introduces scheduling problems and scheduling problems under uncertainty; and describes the approaches that we will use to tackle them. The second part takes interest in single machine scheduling problems and jobshop scheduling problems, in which uncertainty lies within release dates of tasks or on their duration. Uncertainty is modeled as a discrete set of scenarios, and we assume a minimalistic information model, in which uncertainty is lifted after the fact. We study stochastic as well as robust objectives for several regular criteriums, used to guide search in an offline phase, on a training set of scenarios; we then evaluate the solutions obtained on a testing set of scenarios in an online phase. We specifically are interested in the several types of partial decisions that can be taken during the offline phase, such that a simple "First-in First-out" heuristic, guided by information revealed during the online phase, takes the remaining decisions to reach a schedule. Partial decisions we consider restrict the solution space to sets of sequences of tasks. These sets are described by data structures such as sequences (as in the stochastic and robust scheduling literature), sequences of permutable groups, or multivalued decision diagrams. We introduce several methods to compute the best possible partial decision offline given the heuristic decision online and the considered data structure. Experimentations evaluate the different approaches for the different objectives and instances parameters and show their relevance. Finally the third part aims at formalising the study of the different data structures (called languages in that context) in the light of the tools of knowledge compilation. In this part, we consider a decision variant of a single machine scheduling problem. Uncertainty is not explicitly taken into account, but rather the goal is to find out, depending on the data structures used to represent the problem and its set of solutions, which perturbations it is possible to handle, for example by quickly updating the data structure to reflect a change in problem data. The goal is to compute in an offline phase a representation of the problem that will be used as a tool for a decision-maker and allows them to handle as much perturbation as possible in the online phase. Several languages able to represent the problem as a set of sequences of tasks corresponding to admissible solutions are considered (among which the data structures of the second part). The languages are compared along their expressivity, succinctness and by the requests they satisfy. The results achieved allow us to draw a compilation map of the studied languages and to guide a decision-maker in choosing a representation language. The conclusions drawn in this thesis are a first step towards the formalisation and usage of sets of sequences as partial decisions in the context of scheduling problems. Experimental results show that computing optimal solutions in the offline phase is very difficult, but that using warm-start strategies allows some gain over previous methods. Theoretical results allow the comparison of several languages, however, for the considered problem, no language was found to be completely suitable. Results of this thesis suggest numerous leads for future works, specifically at the intersection of the domains of scheduling and knowledge compilation, two fields that are rarely considered jointly.
L'objectif de cette thèse est l'étude de méthodes permettant la prise en compte d'incertitude dans des problèmes d'ordonnancements à l'aide de structures de données représentant un ensemble de solutions de façon compacte. La première partie de cette thèse présente les problèmes d'ordonnancement sous incertitude, et introduit les méthodes de résolution dont nous ferons usage dans cette thèse. Le seconde partie s'intéresse à des problèmes d'ordonnancement à une machine et des problèmes de jobshop, où l'incertitude porte sur les dates de disponibilité des tâches ou sur leurs durées. L'incertitude est modélisée par un ensemble de scénarios discrets, et nous supposons un modèle d'information minimaliste, dans lequel l'incertitude est levée lors du fait accompli. Nous considérons des objectifs stochastiques et robustes pour plusieurs critères réguliers, que nous utilisons pour guider la recherche de solution dans une phase hors-ligne, sur un ensemble de scénario d'entraînement; puis nous évaluons ces solutions sur un ensemble de scénarios de test dans une phase en ligne. Nous nous intéressons particulièrement aux différent types de décisions partielles qui peuvent être prises lors de la phase hors-ligne, telles que l'heuristique "First-in First-out", guidée par les informations révélées lors de la phase en ligne, complète la décision pour obtenir un ordonnancement. Les décisions partielles que nous considérons restreignent l'espace des solutions à des ensembles de séquences de tâches. Ces ensembles sont décrits par des structures de données comme les simples séquences (comme dans la littérature en ordonnancement stochastique ou robuste), des séquences de groupes d'opérations permutables, ou des diagrammes de décision multivalués. Nous proposons plusieurs méthodes pour prendre la meilleure décision partielle hors-ligne étant donnée la décision heuristique en ligne et le type de structure considérée. Des expérimentations évaluent les différentes approches selon les objectifs et les paramètres des instances considérées et montrent l'intérêt des nouvelles approches proposées. Enfin, le troisième partie vise à formaliser l'étude, à la lumière du formalisme de la compilation de connaissance, des différentes structures utilisées (appelées langages de représentation dans ce contexte). Dans cette partie, nous considérons une variante décisionnelle d'un problème d'ordonnancement à une machine. L'incertitude n'y est pas modélisée explicitement, mais l'objectif est de déterminer, en fonction des structures de données utilisées pour représenter l'ensemble des solutions du problème, quels aléas il est possible de prendre en compte, par exemple en remettant à jour rapidement l'ensemble des solutions face à un aléa. L'objectif étant de calculer dans une phase hors-ligne une représentation du problème, qui serve d'outil à un décideur et permette la prise en compte d'un maximum d'aléas lors de la phase en ligne. Différents langages qui représentent le problème par un ensemble de séquences de tâches correspondant à des solutions admissibles sont considérés (parmi lesquels les structures de données de la seconde partie). Les langages sont comparés selon des critères d'expressivité, de compacité, et en fonction des requêtes qu'ils satisfont. Les résultats établis permettent de dresser une carte de compilation des langages étudiés et de guider un utilisateur dans le choix d'un langage de représentation. Les résultats de l'étude menée dans cette thèse montrent expérimentalement que le calcul de solution en amont est très difficile, mais utiliser des départs à chaud semble prometteur. Les résultats théoriques permettent de comparer plusieurs langages, mais n'identifient pas de candidat pleinement satisfaisant pour le problème considéré. Enfin, les résultats suggèrent de nombreuses pistes de travail futures, en particulier à l'intersection des domaines de l'ordonnancement et de la compilation de connaissances, qui sont rarement considérés conjointement.
Domaines
Systèmes et contrôle [cs.SY]Origine | Version validée par le jury (STAR) |
---|