7,023 research outputs found

    Solving the Resource Constrained Project Scheduling Problem with Generalized Precedences by Lazy Clause Generation

    Full text link
    The technical report presents a generic exact solution approach for minimizing the project duration of the resource-constrained project scheduling problem with generalized precedences (Rcpsp/max). The approach uses lazy clause generation, i.e., a hybrid of finite domain and Boolean satisfiability solving, in order to apply nogood learning and conflict-driven search on the solution generation. Our experiments show the benefit of lazy clause generation for finding an optimal solutions and proving its optimality in comparison to other state-of-the-art exact and non-exact methods. The method is highly robust: it matched or bettered the best known results on all of the 2340 instances we examined except 3, according to the currently available data on the PSPLib. Of the 631 open instances in this set it closed 573 and improved the bounds of 51 of the remaining 58 instances.Comment: 37 pages, 3 figures, 16 table

    Efficient algorithms to solve scheduling problems with a variety of optimization criteria

    Get PDF
    La programmation par contraintes est une technique puissante pour résoudre, entre autres, des problèmes d'ordonnancement de grande envergure. L'ordonnancement vise à allouer dans le temps des tâches à des ressources. Lors de son exécution, une tâche consomme une ressource à un taux constant. Généralement, on cherche à optimiser une fonction objectif telle la durée totale d'un ordonnancement. Résoudre un problème d'ordonnancement signifie trouver quand chaque tâche doit débuter et quelle ressource doit l'exécuter. La plupart des problèmes d'ordonnancement sont NP-Difficiles. Conséquemment, il n'existe aucun algorithme connu capable de les résoudre en temps polynomial. Cependant, il existe des spécialisations aux problèmes d'ordonnancement qui ne sont pas NP-Complet. Ces problèmes peuvent être résolus en temps polynomial en utilisant des algorithmes qui leur sont propres. Notre objectif est d'explorer ces algorithmes d'ordonnancement dans plusieurs contextes variés. Les techniques de filtrage ont beaucoup évolué dans les dernières années en ordonnancement basé sur les contraintes. La proéminence des algorithmes de filtrage repose sur leur habilité à réduire l'arbre de recherche en excluant les valeurs des domaines qui ne participent pas à des solutions au problème. Nous proposons des améliorations et présentons des algorithmes de filtrage plus efficaces pour résoudre des problèmes classiques d'ordonnancement. De plus, nous présentons des adaptations de techniques de filtrage pour le cas où les tâches peuvent être retardées. Nous considérons aussi différentes propriétés de problèmes industriels et résolvons plus efficacement des problèmes où le critère d'optimisation n'est pas nécessairement le moment où la dernière tâche se termine. Par exemple, nous présentons des algorithmes à temps polynomial pour le cas où la quantité de ressources fluctue dans le temps, ou quand le coût d'exécuter une tâche au temps t dépend de t.Constraint programming is a powerful methodology to solve large scale and practical scheduling problems. Resource-constrained scheduling deals with temporal allocation of a variety of tasks to a set of resources, where the tasks consume a certain amount of resource during their execution. Ordinarily, a desired objective function such as the total length of a feasible schedule, called the makespan, is optimized in scheduling problems. Solving the scheduling problem is equivalent to finding out when each task starts and which resource executes it. In general, the scheduling problems are NP-Hard. Consequently, there exists no known algorithm that can solve the problem by executing a polynomial number of instructions. Nonetheless, there exist specializations for scheduling problems that are not NP-Complete. Such problems can be solved in polynomial time using dedicated algorithms. We tackle such algorithms for scheduling problems in a variety of contexts. Filtering techniques are being developed and improved over the past years in constraint-based scheduling. The prominency of filtering algorithms lies on their power to shrink the search tree by excluding values from the domains which do not yield a feasible solution. We propose improvements and present faster filtering algorithms for classical scheduling problems. Furthermore, we establish the adaptions of filtering techniques to the case that the tasks can be delayed. We also consider distinct properties of industrial scheduling problems and solve more efficiently the scheduling problems whose optimization criteria is not necessarily the makespan. For instance, we present polynomial time algorithms for the case that the amount of available resources fluctuates over time, or when the cost of executing a task at time t is dependent on t

    Linear-time filtering algorithms for the disjunctive constraint and a quadratic filtering algorithm for the cumulative not-first not-last

    Get PDF
    We present new filtering algorithms for Disjunctive and Cumulative constraints, each of which improves the complexity of the state-of-theart algorithms by a factor of log n. We show how to perform TimeTabling and Detectable Precedences in linear time on the Disjunctive constraint. Furthermore, we present a linear-time Overload Checking for the Disjunctive and Cumulative constraints. Finally, we show how the rule of Not-first/Not-last can be enforced in quadratic time for the Cumulative constraint. These algorithms rely on the union find data structure, from which we take advantage to introduce a new data structure that we call it time line. This data structure provides constant time operations that were previously implemented in logarithmic time by the Θ-tree data structure. Experiments show that these new algorithms are competitive even for a small number of tasks and outperform existing algorithms as the number of tasks increases. We also show that the time line can be used to solve specific scheduling problems

    Planification socio-responsable du travail dans les chaînes de montage d'aéronefs : comment satisfaire à la fois objectifs ergonomiques et économiques

    Get PDF
    Dans cette thèse, le problème de planification des tâches dans les chaînes de montage des aéronefs est étudié. Ces lignes de production sont principalement manuelles et tactées. L'échec de la livraison dans les délais pouvant entraîner des pénalités importantes pour le fabricant, il est essentiel de respecter le calendrier de chaque poste de travail en tenant compte à la fois de critères économiques et ergonomiques. Ce problème de planification peut être considéré comme un problème généralisé de planification de projets avec contraintes de ressources (RCPSP). Dans un premier temps, nous passons en revue les méthodes ergonomiques existantes qui peuvent être utilisées pour évaluer la charge de travail physique dans les lignes de production et examinons leur applicabilité au contexte des chaînes de montage d'aéronefs avec des temps de cycle longs. Sur la base de cette évaluation, nous développons des modèles mathématiques à introduire dans les problèmes considérés du RCPSP afin de prendre en compte l'impact ergonomique sur les opérateurs. Tenant compte de ces contraintes ergonomiques, le problème industriel initial est modélisé comme un RCPSP avec des contraintes et des objectifs spéciaux intégrant à la fois des aspects économiques et ergonomiques. Plusieurs formulations avec des opérateurs polyvalents, des ressources avec des capacités dépendantes du temps, des contraintes sur les facteurs ergonomiques et des tâches multimodales ordonnées par des relations de précédence complexes sont considérées. Des modèles de programmation par contraintes et de programmation linéaire en nombres entiers ont été développés pour ces formulations. Afin d'améliorer les procédures de solution, de nouvelles techniques de propagation de contraintes sont proposées et mises en œuvre. Un nouvel algorithme pour le calcul de la borne inférieure est également développé. L'efficacité des modèles et méthodes présentés est validée par des expériences numériques.In this thesis, the scheduling problem of tasks in aircraft assembly lines is studied. These production lines are mainly manual and paced. Since the failure of delivery on time may result in significant penalties for the manufacturer, it is crucial to meet the schedule at each workstation taking into account both economic and ergonomic criteria. This scheduling problem can be considered as a generalized Resource-Constraints Project Scheduling Problem (RCPSP). Firstly, we review the existing ergonomic methods that can be used to evaluate the physical workload in production lines and examine their applicability to the context of aircraft assembly lines with long takt times. On the basis of this evaluation, we develop mathematical models to be introduced in considered RCPSP problems in order to take into account the ergonomic impact on the operators. Taking into consideration these ergonomic constraints, the original industrial problem is modeled as a RCPSP with special constraints and objectives integrating both economic and ergonomic aspects. Several formulations with multi-skilled operators, resources with time-dependent capacities, constraints on ergonomic factors and multi-mode tasks ordered by precedence relations with time lags are considered. Constraint Programming and Integer Linear Programming models are developed for these formulations. In order to enhance the solution procedures, novel constraint propagation techniques are proposed and implemented. A new algorithm for lower bound calculation is developed as well. The efficiency of presented models and methods are validated through numerical experiments

    Processor Models For Instruction Scheduling using Constraint Programming

    Get PDF
    Instruction scheduling is one of the most important optimisations performed when producing code in a compiler. The problem consists of finding a minimum length schedule subject to latency and different resource constraints. This is a hard problem, classically approached by heuristic algorithms. In the last decade, research interest has shifted from heuristic to potentially optimal methods. When using optimal methods, a lot of compilation time is spent searching for an optimal solution. This makes it important that the problem definition reflects the reality of the processor. In this work, a constraint programming approach was used to study the impact that the model detail has on performance. Several models of a superscalar processor were embedded in LLVM and evaluated using SPEC CPU2000. The result shows that there is substantial performance to be gained, over 5% for some programs. The stability of the improvement is heavily dependent on the accuracy of the model

    Towards a robust, effective and resource-efficient machine learning technique for IoT security monitoring.

    Get PDF
    Internet of Things (IoT) devices are becoming increasingly popular and an integral part of our everyday lives, making them a lucrative target for attackers. These devices require suitable security mechanisms that enable robust and effective detection of attacks. Machine learning (ML) and its subdivision Deep Learning (DL) methods offer a promise, but they can be computationally expensive in providing better detection for resource-constrained IoT devices. Therefore, this research proposes an optimization method to train ML and DL methods for effective and efficient security monitoring of IoT devices. It first investigates the feasibility of the Light Gradient Boosting Machine (LGBM) for attack detection in IoT environments, proposing an optimization procedure to obtain its effective counterparts. The trained LGBM can successfully discern attacks and regular traffic in various IoT benchmark datasets used in this research. As LGBM is a traditional ML technique, it may be difficult to learn complex network traffic patterns present in IoT datasets. Therefore, we further examine Deep Neural Networks (DNNs), proposing an effective and efficient DNN-based security solution for IoT security monitoring to leverage more resource savings and accurate attack detection. Investigation results are promising, as the proposed optimization method exploits the mini-batch gradient descent with simulated micro-batching in building effective and efficient DNN-based IoT security solutions. Following the success of DNN for effective and efficient attack detection, we further exploit it in the context of adversarial attack resistance. The resulting DNN is more resistant to adversarial samples than its benchmark counterparts and other conventional ML methods. To evaluate the effectiveness of our proposal, we considered on-device learning in federated learning settings, using decentralized edge devices to augment data privacy in resource-constrained environments. To this end, the performance of the method was evaluated against various realistic IoT datasets (e.g. NBaIoT, MNIST) on virtual and realistic testbed set-ups with GB-BXBT-2807 edge-computing-like devices. The experimental results show that the proposed method can reduce memory and time usage by 81% and 22% in the simulated environment of virtual workers compared to its benchmark counterpart. In the realistic testbed scenario, it saves 6% of memory footprints with a reduction of execution time by 15%, while maintaining a better and state-of-the-art accuracy

    A constraint-based framework for configuration

    Get PDF
    The research presented here aims at providing a comprehensive framework for solving configuration problems, based on the Constraint Satisfaction paradigm. This thesis is addressing the two main issues raised by a configuration task: modeling the problem and solving it efficiently. Our approach subsumes previous approaches, incorporating both Simplification and further extension, offering increased representational power and efficiency. Modeling. We advance the idea of local, context independent models for the types of objects in the application domain, and show how the model of an artifact can be built as a composition of local models of the constituent parts. Our modeling technique integrates two mechanisms for dealing with complexity, namely composition and abstraction. Using concepts such as locality, aggregation and inheritance, it offers support and guidance as to the appropriate content and organization of the domain knowledge, thus making knowledge specification and representation less error prone, and knowledge maintenance much easier. There are two specific aspects which make modeling configuration problems challenging: the complexity and heterogeneity of relations that must be expressed, manipulated and maintained, and the dynamic nature of the configuration process. We address these issues by introducing Composite Constraint Satisfaction Problems, a new, nonstandard class of problems which extends the classic Constraint Satisfaction paradigm. Efficiency. For the purpose of the work presented here, we are only interested in providing a guaranteed optimal solution to a configuration problem. To achieve this goal, our research focused on two complementary directions. The first one led to a powerful search algorithm called Maintaining Arc Consistency Extended (MACE). By maintaining arc consistency and taking advantage of the problem structure, MACE turned out to be one of the best general purpose CSP search algorithms to date. The second research direction aimed at reducing the search effort involved in proving the optimality of the proposed solution by making use of information which is specific to individual configuration problems. By adding redundant specialized constraints, the algorithm improves dramatically the lower bound computation. Using abstraction through focusing only on relevant features allows the algorithm to take advantage of context-dependent interchangeability between component instances and discard equivalent solutions, involving the same cost as solutions that have already been explored
    corecore