Laurent Michel

Laurent Michel
University of Connecticut | UConn · Department of Computer Science and Engineering

Ph.D.

About

160
Publications
32,327
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
4,265
Citations
Introduction
Laurent is currently Professor in UCONN Computer Science and Engineering Department. His interests focus on the design and implementation of domain specific languages for combinatorial optimization. Laurent's interests also span programming languages, constraint programming, artificial intelligence, non-linear programming and reasoning under uncertainty.
Additional affiliations
January 1999 - December 2001
Brown University
August 2002 - present
University of Connecticut

Publications

Publications (160)
Article
Full-text available
The availability of commodity multi-core and multi-processor machines and the inherent parallelism in constraint programming search o!er significant opportunities for constraint programming. They also present a fundamental challenge: how to exploit parallelism trans- parently to speed up constraint programs. This paper shows how to parallelize cons...
Article
Full-text available
Search strategies, that is, strategies that describe how to explore search trees, have raised much interest for constraint satisfaction in recent years. In particular, limited discrepancy search and its variations have been shown to achieve significant improvements in efficiency over depth-first search for some classes of applications. This article...
Article
Full-text available
The Cumulative constraint is a foundamental global constraint, which naturally arises in a variety of problems related to scheduling with limited resources. Since its introduction, numerous propagation algorithms have been proposed, offering different tradeoffs between computational complexity and filtering power. Such diversity allows the resoluti...
Article
Full-text available
The AllDifferent constraint is a fundamental tool in Constraint Programming. It naturally arises in many problems, from puzzles to scheduling and routing applications. Such popularity has prompted an extensive literature on filtering and propagation for this constraint. This paper investigates the use of General Processing Units (GPUs) to accelerat...
Chapter
We study the automatic generation of primal and dual bounds from decision diagrams in constraint programming. In particular, we expand the functionality of the Haddock system to optimization problems by extending its specification language to include an objective function. We describe how restricted decision diagrams can be compiled in Haddock simi...
Chapter
Full-text available
The Cumulative constraint is one of the most important global constraints, as it naturally arises in a variety of problems related to scheduling with limited resources. Devising fast propagation algorithms that run at every node of the search tree is critical to enable the resolution of a wide range of applications. Since its introduction, numerous...
Article
Full-text available
Tolerant algebraic side-channel attack (TASCA) exploits side-channel information with an algebraic formulation of a cipher to exploit its weaknesses and recover a secret key. Its inputs consist of a side-channel trace of an encryption and the clear and cipher texts. TASCA demonstrated that pseudo-Boolean optimization can successfully recover a key...
Article
Maintaining a resilient computer network is a delicate task with conflicting priorities. Flows should be served while controlling risk due to attackers. Upon publication of a vulnerability, administrators scramble to manually mitigate risk while waiting for a patch. We introduce $\textsc {Fashion}$ : a linear optimizer that balances routing flows...
Article
This paper introduces MiniCP, a lightweight, open-source solver for constraint programming. MiniCP is motivated by educational purposes and the desire to provide the core implementation of a constraint-programming solver for students in computer science and industrial engineering. The design of MiniCP provides a one-to-one mapping between the theor...
Chapter
Full-text available
Multi-valued decision diagrams (MDDs) were introduced into constraint programming over a decade ago as a powerful alternative to domain propagation. While effective MDD-propagation algorithms have been proposed for various constraints, to date no system exists that can generically compile and combine MDD propagation for arbitrary constraints. To fi...
Preprint
Full-text available
This paper introduces the 2019 version of ObjCP-FP, a novel Constraint Programming framework for floating point verification problems expressed with the SMT language of SMTLIB. SMT solvers decompose their task by delegating to specific theories (e.g., floating point, bit vectors, arrays, ...) the task to reason about combinatorial or otherwise comp...
Preprint
Full-text available
Program verification techniques typically focus on finding counterexamples that violate properties of a program. Constraint programming offers a convenient way to verify programs by modeling their state transformations and specifying searches that seek counterexamples. Floating-point computations present additional challenges for verification given...
Preprint
Full-text available
Maintaining a resilient computer network is a delicate task with conflicting priorities. Flows should be served while controlling risk due to attackers. Configuration is time intensive and largely static until a major new vulnerability forces change. Tools exist to check network reachability (Khurshid et al., NSDI 2013) and risk using (probabilisti...
Chapter
Networks are designed with functionality, security, performance, and cost in mind. Tools exist to check or optimize individual properties of a network. These properties may conflict, so it is not always possible to run these tools in series to find a configuration that meets all requirements. This leads to network administrators manually searching...
Preprint
Full-text available
Networks are designed with functionality, security, performance, and cost in mind. Tools exist to check or optimize individual properties of a network. These properties may conflict, so it is not always possible to run these tools in series to find a configuration that meets all requirements. This leads to network administrators manually searching...
Chapter
Tolerant Algebraic Side-Channel Attack (TASCA) is a combination of algebraic and side-channel analysis with error tolerance. Oren et al., used mathematical programming to implement TASCA over a round-limited version of AES. In [7], Liu et al. revisited their results and introduced a TASCA-CP model that delivers solutions to this 1-round relaxation...
Chapter
Modern cloud-based services help deliver distributed software and aim to deliver a cost-effective solution while ensuring that application requirements are met. Deploying a Cloud-based implementation demands the resolution of a resource allocation problem to determine where and how software modules are deployed. For instance, one must decide, for e...
Chapter
Constraint-Based Local Search emerged in the last decade as a framework for declaratively expressing hard combinatorial optimization problems and solve them with local search techniques. It delivers tools to practitioners that enables them to quickly experiment with multiple models, heuristics, and metaheuristics, focusing on their application rath...
Conference Paper
AES is a mainstream block cipher used in many protocols and whose resilience against attack is essential for cybersecurity. In [14], Oren and Wool discuss a Tolerant Algebraic Side-Channel Analysis (TASCA) and show how to use optimization technology to exploit side-channel information and mount a computational attack against AES. This paper revisit...
Conference Paper
Full-text available
The ability to verify critical software is a key issue in embedded and cyber physical systems typical of automotive, aeronautics or aerospace industries. Bounded model checking and constraint programming approaches search for counter-examples that exemplify a property violation. The search of such counter-examples is a long, tedious and costly task...
Article
Full-text available
This paper presents a microkernel architecture for constraint programming organized around a small number of core functionalities and minimal interfaces. The architecture contrasts with the monolithic nature of many implementations. With this design, variables, domains and constraints all remain external to the microkernel which isolates the propag...
Article
The CP conference is the annual international conference on constraint programming. It is concerned with all aspects of computing with constraints, including theory, algorithms, environments, languages, models, systems, and applications such as decision-making, resource allocation, scheduling, configuration, and planning. The CP community is very k...
Chapter
Constraint-Based Local Search emerged in the last decade as a framework for declaratively expressing hard combinatorial optimization problems and solve them with local search techniques. It delivers tools to practitioners that enables them to quickly experiment with multiple models, heuristics, and meta-heuristics, focusing on their application rat...
Conference Paper
Recent work in model combinators, as well as projects like G12 and SIMPL, achieved significant progress in automating the generation of complex and hybrid solvers from high-level model specifications. This paper extends model combinators into the scheduling domain. This is of particular interest as, today, both Constraint Programming (CP) and Mixed...
Article
Full-text available
Short-term load forecasting at the distribution level predicts the load of substations, feeders, transformers, and possibly customers from half an hour to one week ahead. Effective forecasting is important for the planning and operation of distribution systems. The problem, however, is difficult in view of complicated load features, the large numbe...
Conference Paper
Full-text available
Views are a standard abstraction in constraint programming: They make it possible to implement a single version of each constraint, while avoiding to create new variables and constraints that would slow down propagation. Traditional constraint-programming systems provide the concept of {\em variable views} which implement a view of the type $y = f(...
Article
Full-text available
Very short-term load forecasting predicts the loads in electric power system one hour into the future in 5-min steps in a moving window manner. To quantify forecasting accuracy in real-time, the prediction interval estimates should also be produced online. Effective predictions with good prediction intervals are important for resource dispatch and...
Conference Paper
Full-text available
In recent years, Cml, G12 and Simpl, have achieved significant progress in automating the generation of hybrid solvers from high-level model specifications. This paper pushes this research direction one step further and introduces the concept of model combinators to provide principled model compositions. These model combinators rely on runnables ca...
Conference Paper
Full-text available
Objective-CP is an optimization system that views an optimization program as the combination of a model, a search, and a solver. Models in Objective-CP follow the modeling style of constraint programming and are concretized into specific solvers. Search procedures are specified in terms of high-level nondeterministic constructs, search combinators,...
Conference Paper
Full-text available
With human environmental footprint exceeding the world's regeneration capacity by about 30%, conserving energy and reducing emissions and waste are critical for sustainable living. A new prototype of living is eco-communities which consist of a set of buildings and associated devices for energy generation, conversion, consumption, storage and recov...
Conference Paper
This work focuses on the AccuVote Optical Scan voting terminal (AV-OS) that is widely used in US elections. We present a new attack that can be delivered without opening the system enclosure, and without changing a single bit of the system's firmware. The attack is launched by inserting a maliciously programmed AV-OS memory card into the terminal....
Article
Full-text available
Very short-term load forecasting predicts the loads 1 h into the future in 5-min steps in a moving window manner based on real-time data collected. Effective forecasting is important in area generation control and resource dispatch. It is however difficult in view of the noisy data collection process and complicated load features. This paper presen...
Conference Paper
Full-text available
Load forecasting methods for a large geographical area such as New England are widely established. However, substation load forecasting is much more difficult, since load patterns of substations are more irregular than that of a large system. In addition, considering the large number of sub 5a8 stations in an area, computation time is also an impor...
Conference Paper
Full-text available
Advanced Load Forecast (ALF) is a novel load forecast application that integrates different instances of Artificial Neural Network (ANN) forecast engines and generates load forecasts for multiple load locations at various hierarchical levels. The forecast results can be aggregated up and distributed down the hierarchical structure. The Artificial N...
Data
Full-text available
In 2004, Jean-Francois Puget presented [2] an analysis of the "simplicity of Use" of Constraint Programming from which he articulated a series of challenges to make Constraint Programming systems accessible and easier to use. The core of the argument was a contrast between mathematical programming and constraint programming tools. Mathematical prog...
Article
We study the behavior of the A * search algorithm when coupled with a heuristic h satisfying (1-ϵ 1 )h * ≤h≤(1+ϵ 2 )h * , where ϵ 1 ,ϵ 2 ∈[0,1) are small constants and h * denotes the optimal cost to a solution. We prove a rigorous, general upper bound on the time complexity of A * search on trees that depends on both the accuracy of the heuristic...
Conference Paper
Full-text available
This paper introduces a high level language that allows for the specification and manipulation of solver independent models and al- lows for easily generating complex solvers in the Comet language. As Constraint Programming (CP) techniques have increased in complexity, it has become more difficult and time consuming to implement models that take ad...
Article
Full-text available
In recent years, electronic voting systems have been deployed in all U.S. elections. Despite the fact that cryptographic integrity checks are used in most such systems, several reports have documented serious security vulnerabilities of electronic voting terminals. We present an overview of the typical security and election vulnerabilities found in...
Article
Full-text available
The availability of multi-processor machines and computer clusters offer significant opportunities for constraint programming. They also present a fundamental challenge: how to exploit parallelism trans-parently to speed up constraint programs. Our recent research showed how to parallelize constraint programs transparently on parallel com-puters. T...
Article
Full-text available
Following a line outage, the fast corrective operations of transmission line switching might be used to regain $N-1$ security of the system without generation re-dispatch or load shedding. The problem to find feasible switching operations can be formulated as a constraint satisfaction problem (CSP). Feasibility checking, however, is difficult since...
Conference Paper
Full-text available
Reasoning over bit vectors arises in a variety of applications in verification and cryptography. This paper presents a bit-vector domain for constraint programming and its associated filtering algorithms. The domain supports all the traditional bit operations and correcty models modulo-arithmetic and overflows. The domain implementation uses bit op...
Chapter
Access control models are often an orthogonal activity when designing, implementing, and deploying software applications. Role-based access control (RBAC) which targets privileges based on responsibilities within an application and mandatory access control (MAC) that emphasizes the protection of information via security tags are two dominant approa...
Conference Paper
Full-text available
The ability to specify CP programs in terms of a declara- tive model and a search procedure is instrumental to the industrial CP successes. Yet, writing search procedures is often dicult for novices or people accustomed to model & run approaches. The viewpoint adopted in this paper argues for the synthesis of a search from the declarative model to...
Conference Paper
Full-text available
Robust search procedures are a central component in the design of black-box constraint-programming solvers. This paper proposes activity-based search, the idea of using the activity of variables during propagation to guide the search. Activity-based search was compared experimentally to impact-based search and the WDEG heuristics. Experimental resu...
Conference Paper
Full-text available
We consider the weekly transportation problem in forestry which arises when transporting logs from forest sites to wood mills. We develop a decomposed approach to solve the weekly problem in three phases. In the first phase we use a constraint programming enumeration to generate a large set of feasible routes equivalent to one working shift of a dr...
Article
Full-text available
The Steel Mill Slab Problem is an optimization benchmark that has been studied for a long time in the constraint-programming community but was only solved efficiently in the two last years. Gargani and Refalo solved the problem using Large Neighborhood Search and Van Henten-ryck and Michel made use of constraint programming with an improved symmetr...
Chapter
Constraint programming (CP) is based on the fundamental idea that the resolution of hard optimization problems is best approached by the combination of a declarative model specification and the writing of a search procedure. The search procedure explores the underlying search space while taking advantage of the pruning derived from the declarative...
Article
Modeling of access control policies, along with their implementation in code, must be an integral part of the software development process, to ensure that the proper level of security in an application is attained. Previous work of the authors in this area yielded a framework that incorporates access control at the design and code levels, through a...
Conference Paper
Full-text available
Very short-term load forecasting predicts the load over one hour into the future in five-minute steps and performs the moving forecast every five minutes. To quantify forecasting accuracy, the confidence interval is estimated in real-time. An effective prediction with a small associated confidence interval is important for area generation control a...
Conference Paper
Full-text available
Rambo is the Reconfigurable Atomic Memory for Basic Objects, a formally specified algorithm that implements atomic read/write shared memory in dynamic networks, where the participating hosts may join, leave, or fail. To maintain availability and consistency in such dynamic settings, Rambo replicates objects and uses quorum systems that can be recon...
Article
Very short-term load forecasting predicts load over one hour into the future in five minute steps and performs the moving forecast every five minutes. This is essential for area generation control and resource dispatch, and helps operators make good decisions. To quantify prediction accuracy, it is desirable to have a confidence interval for the fo...
Article
Demand response is a reduction in the consumption of electricity by customers from their expected consumption in response to reliability or price triggered signals. Enabled by advanced metering infrastructure and other smart grid technologies, it is expected to be a crucial mechanism to compensate system uncertainties and the associated risks inclu...
Article
Full-text available
Modeling of security policies, along with their realization in code, must be an integral part of the software development process, to achieve an acceptable level of security for a software application. Among all of the security concerns (e.g. authentication, auditing, access control, confidentiality, etc.), this paper addresses the incorporation of...
Technical Report
Full-text available
Expert affidavit on the security and integrity issues of optical scan voting systems in support of petition-complain. Supreme Court of the State of New York, County of Nassau. County of Nassau Board of Elections against State of New York, New York State Board of Elections.
Article
Full-text available
In deregulated electricity markets, short-term load forecasting is important for reliable power system operation, and also significantly affects markets and their participants. Effective forecasting, however, is difficult in view of the complicated effects on load by a variety of factors. This paper presents a similar day-based wavelet neural netwo...
Conference Paper
The availability of commodity multicore and multiprocessor machines and the inherent parallelism in constraint programming search offer significant opportunities for constraint programming. Both constraint-based local search and finite-domain techniques can dramatically benefit from parallelization. Yet, currently available libraries and languages...
Chapter
Constraint-based local search COMET Modeling Search References
Article
Access control models are often an orthogonal activity when designing, implementing, and deploying software applications. Role-based access control (RBAC) which targets privileges based on responsibilities within an application and mandatory access control (MAC) that emphasizes the protection of information via security tags are two dominant approa...
Article
Full-text available
In recent years, two distinct electronic voting technologies have been introduced and extensively utilized in election procedures: direct recording electronic systems and optical scan (OS) systems. The latter are typically deemed safer, as they inherently provide a voter-verifiable paper trail that enables hand-counted audits and recounts that rely...
Conference Paper
Full-text available
Model visualization is an important problem in software engineering, to assist designers to understand and evolve models. Zoomable User Interfaces (ZUI), which uses zoom as the main mechanism to navigate between different levels of abstraction, has the potential to improve model visualization. This paper, the first step in this research direction,...
Conference Paper
Full-text available
Model visualization is an important problem in software engineering, to assist designers to understand and evolve models. Zoomable User Interfaces (ZUI), which uses zoom as the main mechanism to navigate between different levels of abstraction, has the potential to improve model visualization. This paper, the first step in this research direction,...
Conference Paper
Rambo is the Reconfigurable Atomic Memory for Basic Objects, a formally specified algorithm that implements atomic read/write shared memory in dynamic, rapidly changing networking environments. Rambo is particularly apt at dealing with volatile environments such as mobile networks. To maintain availability and consistency, even as hosts join, leave...
Conference Paper
Full-text available
Very short term load forecasting predicts the load over one hour into the future in five minute steps, and is important in resource dispatch and area generation control. Effective forecasting, however, is difficult in view of noisy real-time data gathering and complicated features of load. This paper presents a method based on multilevel wavelet ne...
Article
The availability of commodity multiprocessors and high-speed networks of workstations offer significant opportunities for addressing the increasing computational requirements of optimization applications. To leverage these potential benefits, it is important, however, to make parallel and distributed processing easily accessible to a wide audience...
Conference Paper
Providing consistent and fault-tolerant distributed object services is among the fundamental problems in distributed computing. To achieve fault-tolerance and to increase throughput, objects are replicated at different networked nodes. However, replication induces significant communication costs to maintain replica consistency. Eventually-Serializa...
Conference Paper
Full-text available
The rmware of an electronic voting machine is typically treated as a \trusted" component of the system. Conse- quently, it is misconstrued to be vulnerable only to an insider attack by someone with an in-depth knowledge of the sys- tem and access to the source code. This case study focuses on the Diebold/Premier AccuVote Optical Scan voting ter- mi...
Conference Paper
Formal specifications are indispensable in the design of verifiable complex distributed systems, and formal methods have received considerable attention in that respect. However, the full potential of formal methods can only be realized if the transition from specification to actual implementation can be automated to preserve the properties that we...
Article
Full-text available
In the interest of auditing election procedures, certain electronic voting technologies provide monitoring capa-bilities that record select actions undertaken by election officials before, during, and after an election process, as well as the conditions present in an electronic voting ter-minal as the result of its interactions with its environ-men...
Conference Paper
Full-text available
Tempo is a simple formal language for modeling distributed, concurrent, and timed systems as collections of interact- ing state machines, called timed input/output automata. Tempo provides natural mathematical notations for describ- ing systems, their intended properties, and intended rela- tionships between their descriptions at varying levels of...
Conference Paper
This paper proposes an approach for secure software design and coding; and, it provides a formal underpinning for security assurance, i.e., a proof that the generated code correctly realizes security specifications. The base of the proposed approach is a set of security features by J. Pavlich-Mariscal et al (2007) that separate security concerns fr...
Conference Paper
Full-text available
Recently, Gargani and Refalo (G&R) presented an elegant model for the Steel Mill Slab Design Problem (Problem 38 in the CSP LIB). Contrary to earlier approaches, their model does not use 0/1 variables but exploits the traditional expressiveness of constraint programming. G&R indicated that static symmetry-breaking constraints proposed earlier are n...
Article
Full-text available
Providing consistent and fault-tolerant distributed object services is among the fundamental problems in distributed computing. To achieve fault-tolerance and to increase throughput, objects are replicated at different networked nodes. However, replication induces significant communication costs to maintain replica consistency. Eventually-Serializa...