435 research outputs found
Search Strategies for Scheduling Problems
V předložené práci porovnávám prohledávací strategie pro řešení rozvrhovacích problémů z pohledu programování s omezujícími podmínkami. Těžiště práce je věnováno rozvrhovacím problémům obsahujícím alternativní úlohy. V práci jsou jednak rozebrány různé již publikované způsoby modelování těchto problémů, dále pak jsou popsány a experimentálně porovnány prohledávací strategie pracující s těmito modely. Porovnáván je zejména vliv strategií na rychlost práce řešiče v závislosti na typu a velikosti dat. Jako vedlejší efekt práce studuje možnosti řešení rozvrhovacích problémů obsahujících alternativní úlohy pomocí řešiče Choco, který byl pro implementaci experimentů použit.In the present work I compare the search strategies for solving scheduling problems from the view of constraint programming. The thesis is focused on scheduling problems containing alternative activities. An analysis of previously published various ways of modelling the problems is provided, next description and experimental comparison of search strategies targetting these models is provided. The influence of strategies on the speed of the solver is studied primarily. As a sideeffect the work studies the ways how Choco solver, which was utililized for implementation of the experiments, can be used to solve the scheduling problems with alternative activities.Department of Theoretical Computer Science and Mathematical LogicKatedra teoretické informatiky a matematické logikyFaculty of Mathematics and PhysicsMatematicko-fyzikální fakult
Linear-time filtering algorithms for the disjunctive constraint and a quadratic filtering algorithm for the cumulative not-first not-last
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
Automatic generation of optimized business process models from constraint-based specifications
Business process (BP) models are usually defined manually by business analysts through imperative languages considering activity properties, constraints imposed on the relations between the activities as well as different performance objectives. Furthermore, allocating resources is an additional challenge since scheduling may significantly impact BP performance. Therefore, the manual specification of BP models can be very complex and time-consuming, potentially leading to non-optimized models or even errors. To overcome these problems, this work proposes the automatic generation of imperative optimized BP models from declarative specifications. The static part of these declarative specifications (i.e. control-flow and resource constraints) is expected to be useful on a long-term basis. This static part is complemented with information that is less stable and which is potentially unknown until starting the BP execution, i.e. estimates related to (1) number of process instances which are being executed within a particular timeframe, (2) activity durations, and (3) resource availabilities. Unlike conventional proposals, an imperative BP model optimizing a set of instances is created and deployed on a short-term basis. To provide for run-time flexibility the proposed approach additionally allows decisions to be deferred to run-time by using complex late-planning activities, and the imperative BP model to be dynamically adapted during run-time using replanning. To validate the proposed approach, different performance measures for a set of test models of varying complexity are analyzed. The results indicate that, despite the NP-hard complexity of the problems, a satisfactory number of suitable solutions can be produced.Ministerio de Ciencia e Innovación TIN2009-1371
Efficient algorithms to solve scheduling problems with a variety of optimization criteria
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
User recommendations for the optimized execution of business processes
In order to be able to flexibly adjust a company's business processes (BPs) there is an increasing interest in flexible process-aware information systems (PAISs). This increasing flexibility, however, typically implies decreased user guidance by the PAIS and thus poses significant challenges to its users. As a major contribution of this work, we propose a recommendation system which assists users during process execution to optimize performance goals of the processes. The recommendation system is based on a constraint-based approach for planning and scheduling the BP activities and considers both the control-flow and the resource perspective. To evaluate the proposed constraint-based approach different algorithms are applied to a range of test models of varying complexity. The results indicate that, although the optimization of process execution is a highly constrained problem, the proposed approach produces a satisfactory number of suitable solutions.Ministerio de Ciencia e Innovación TIN2009-1371
Generating optimized configurable business process models in scenarios subject to uncertainty
Context: The quality of business process models (i.e., software artifacts that capture the relations
between the organizational units of a business) is essential for enhancing the management of business
processes. However, such modeling is typically carried out manually. This is already challenging and time
consuming when (1) input uncertainty exists, (2) activities are related, and (3) resource allocation has to
be considered. When including optimization requirements regarding flexibility and robustness it
becomes even more complicated potentially resulting into non-optimized models, errors, and lack of
flexibility.
Objective: To facilitate the human work and to improve the resulting models in scenarios subject to
uncertainty, we propose a software-supported approach for automatically creating configurable business
process models from declarative specifications considering all the aforementioned requirements.
Method: First, the scenario is modeled through a declarative language which allows the analysts to specify
its variability and uncertainty. Thereafter, a set of optimized enactment plans (each one representing a
potential execution alternative) are generated from such a model considering the input uncertainty.
Finally, to deal with this uncertainty during run-time, a flexible configurable business process model is
created from these plans.
Results: To validate the proposed approach, we conduct a case study based on a real business which is
subject to uncertainty. Results indicate that our approach improves the actual performance of the business
and that the generated models support most of the uncertainty inherent to the business.
Conclusions: The proposed approach automatically selects the best part of the variability of a declarative
specification. Unlike existing approaches, our approach considers input uncertainty, the optimization of
multiple objective functions, as well as the resource and the control-flow perspectives. However, our
approach also presents a few limitations: (1) it is focused on the control-flow and the data perspective
is only partially addressed and (2) model attributes need to be estimated.Ministerio de Ciencia e Innovación TIN2009-1371
Conformance checking and diagnosis for declarative business process models in data-aware scenarios
A business process (BP) consists of a set of activities which are performed in coordination in an organizational
and technical environment and which jointly realize a business goal. In such context, BP management
(BPM) can be seen as supporting BPs using methods, techniques, and software in order to design,
enact, control, and analyze operational processes involving humans, organizations, applications, and
other sources of information. Since the accurate management of BPs is receiving increasing attention,
conformance checking, i.e., verifying whether the observed behavior matches a modelled behavior, is
becoming more and more critical. Moreover, declarative languages are more frequently used to provide
an increased flexibility. However, whereas there exist solid conformance checking techniques for imperative
models, little work has been conducted for declarative models. Furthermore, only control-flow perspective
is usually considered although other perspectives (e.g., data) are crucial. In addition, most
approaches exclusively check the conformance without providing any related diagnostics. To enhance
the accurate management of flexible BPs, this work presents a constraint-based approach for conformance
checking over declarative BP models (including both control-flow and data perspectives). In addition,
two constraint-based proposals for providing related diagnosis are detailed. To demonstrate both
the effectiveness and the efficiency of the proposed approaches, the analysis of different performance
measures related to a wide diversified set of test models of varying complexity has been performed.Ministerio de Ciencia e Innovación TIN2009-1371
- …