8 research outputs found
Motion learning in variable environments using probabilistic flow tubes
Commanding an autonomous system through complex motions at a low level can be tedious or impractical for systems with many degrees of freedom. Allowing an operator to demonstrate the desired motions directly can often enable more intuitive and efficient interaction. Two challenges in the field of learning from demonstration include (1) how to best represent learned motions to accurately reflect a human's intentions, and (2) how to enable learned motions to be easily applicable in new situations. This paper introduces a novel representation of continuous actions called probabilistic flow tubes that can provide flexibility during execution while robustly encoding a human's intended motions. Our approach also automatically determines certain qualitative characteristics of a motion so that these characteristics can be preserved when autonomously executing the motion in a new situation. We demonstrate the effectiveness of our motion learning approach both in a simulated two-dimensional environment and on the All Terrain Hex-Limbed Extra-Terrestrial Explorer (ATHLETE) robot performing object manipulation tasks.United States. Dept. of Defense (National Defense Science and Engineering Graduate Fellowship 32 CFR 168a)United States. National Aeronautics and Space Administration (JPL Strategic University Research Partnership
SOTER: A Runtime Assurance Framework for Programming Safe Robotics Systems
The recent drive towards achieving greater autonomy and intelligence in
robotics has led to high levels of complexity. Autonomous robots increasingly
depend on third party off-the-shelf components and complex machine-learning
techniques. This trend makes it challenging to provide strong design-time
certification of correct operation.
To address these challenges, we present SOTER, a robotics programming
framework with two key components: (1) a programming language for implementing
and testing high-level reactive robotics software and (2) an integrated runtime
assurance (RTA) system that helps enable the use of uncertified components,
while still providing safety guarantees. SOTER provides language primitives to
declaratively construct a RTA module consisting of an advanced,
high-performance controller (uncertified), a safe, lower-performance controller
(certified), and the desired safety specification. The framework provides a
formal guarantee that a well-formed RTA module always satisfies the safety
specification, without completely sacrificing performance by using higher
performance uncertified components whenever safe. SOTER allows the complex
robotics software stack to be constructed as a composition of RTA modules,
where each uncertified component is protected using a RTA module.
To demonstrate the efficacy of our framework, we consider a real-world
case-study of building a safe drone surveillance system. Our experiments both
in simulation and on actual drones show that the SOTER-enabled RTA ensures the
safety of the system, including when untrusted third-party components have bugs
or deviate from the desired behavior
CASP Solutions for Planning in Hybrid Domains
CASP is an extension of ASP that allows for numerical constraints to be added
in the rules. PDDL+ is an extension of the PDDL standard language of automated
planning for modeling mixed discrete-continuous dynamics.
In this paper, we present CASP solutions for dealing with PDDL+ problems,
i.e., encoding from PDDL+ to CASP, and extensions to the algorithm of the EZCSP
CASP solver in order to solve CASP programs arising from PDDL+ domains. An
experimental analysis, performed on well-known linear and non-linear variants
of PDDL+ domains, involving various configurations of the EZCSP solver, other
CASP solvers, and PDDL+ planners, shows the viability of our solution.Comment: Under consideration in Theory and Practice of Logic Programming
(TPLP
Optimal Planning with State Constraints
In the classical planning model, state variables are assigned
values in the initial state and remain unchanged unless
explicitly affected by action effects. However, some properties
of states are more naturally modelled not as direct effects of
actions but instead as derived, in each state, from the primary
variables via a set of rules. We refer to those rules as state
constraints. The two types of state constraints that will be
discussed here are numeric state constraints and logical rules
that we will refer to as axioms.
When using state constraints we make a distinction between
primary variables, whose values are directly affected by action
effects, and secondary variables, whose values are determined by
state constraints. While primary variables have finite and
discrete domains, as in classical planning, there is no such
requirement for secondary variables. For example, using numeric
state constraints allows us to have secondary variables whose
values are real numbers. We show that state constraints are a
construct that lets us combine classical planning methods with
specialised solvers developed for other types of problems. For
example, introducing numeric state constraints enables us to
apply planning techniques in domains involving interconnected
physical systems, such as power networks.
To solve these types of problems optimally, we adapt commonly
used methods from optimal classical planning, namely state-space
search guided by admissible heuristics. In heuristics based on
monotonic relaxation, the idea is that in a relaxed state each
variable assumes a set of values instead of just a single value.
With state constraints, the challenge becomes to evaluate the
conditions, such as goals and action preconditions, that involve
secondary variables. We employ consistency checking tools to
evaluate whether these conditions are satisfied in the relaxed
state. In our work with numerical constraints we use linear
programming, while with axioms we use answer set programming and
three value semantics. This allows us to build a relaxed planning
graph and compute constraint-aware version of heuristics based on
monotonic relaxation.
We also adapt pattern database heuristics. We notice that an
abstract state can be thought of as a state in the monotonic
relaxation in which the variables in the pattern hold only one
value, while the variables not in the pattern simultaneously hold
all the values in their domains. This means that we can apply the
same technique for evaluating conditions on secondary variables
as we did for the monotonic relaxation and build pattern
databases similarly as it is done in classical planning.
To make better use of our heuristics, we modify the A* algorithm
by combining two techniques that were previously used
independently – partial expansion and preferred operators. Our
modified algorithm, which we call PrefPEA, is most beneficial in
cases where heuristic is expensive to compute, but accurate, and
states have many successors
Short Term Unit Commitment as a Planning Problem
‘Unit Commitment’, setting online schedules for generating units in a power system to ensure supply meets demand, is integral to the secure, efficient, and economic daily operation of a power system. Conflicting desires for security of supply at minimum cost complicate this. Sustained research has produced methodologies within a guaranteed bound of optimality, given sufficient computing time.
Regulatory requirements to reduce emissions in modern power systems have necessitated increased renewable generation, whose output cannot be directly controlled, increasing complex uncertainties. Traditional methods are thus less efficient, generating more costly schedules or requiring impractical increases in solution time.
Meta-Heuristic approaches are studied to identify why this large body of work has had little industrial impact despite continued academic interest over many years. A discussion of lessons learned is given, and should be of interest to researchers presenting new Unit Commitment approaches, such as a Planning implementation.
Automated Planning is a sub-field of Artificial Intelligence, where a timestamped sequence of predefined actions manipulating a system towards a goal configuration is sought. This differs from previous Unit Commitment formulations found in the literature. There are fewer times when a unit’s online status switches, representing a Planning action, than free variables in a traditional formulation. Efficient reasoning about these actions could reduce solution time, enabling Planning to tackle Unit Commitment problems with high levels of renewable generation.
Existing Planning formulations for Unit Commitment have not been found. A successful formulation enumerating open challenges would constitute a good benchmark problem for the field. Thus, two models are presented. The first demonstrates the approach’s strength in temporal reasoning over numeric optimisation. The second balances this but current algorithms cannot handle it. Extensions to an existing algorithm are proposed alongside a discussion of immediate challenges and possible solutions. This is intended to form a base from which a successful methodology can be developed
Recommended from our members
Modular and Safe Event-Driven Programming
Asynchronous event-driven systems are ubiquitous across domains such as device drivers, distributed systems, and robotics. These systems are notoriously hard to get right as the programmer needs to reason about numerous control paths resulting from the complex interleaving of events (or messages) and failures. Unsurprisingly, it is easy to introduce subtle errors while attempting to fill in gaps between high-level system specifications and their concrete implementations.This dissertation proposes new methods for programming safe event-driven asynchronous systems.In the first part of the thesis, we present ModP, a modular programming framework for compositional programming and testing of event-driven asynchronous systems.The ModP module system supports a novel theory of compositional refinement for assume-guarantee reasoning of dynamic event-driven asynchronous systems. We build a complex distributed systems software stack using ModP.Our results demonstrate that compositional reasoning can help scale model-checking (both explicit and symbolic) to large distributed systems.ModP is transforming the way asynchronous software is built at Microsoft and Amazon Web Services (AWS). Microsoft uses ModP for implementing safe device drivers and other software in the Windows kernel.AWS uses ModP for compositional model checking of complex distributed systems. While ModP simplifies analysis of such systems, the state space of industrial-scale systems remains extremely large.In the second part of this thesis, we present scalable verification and systematic testing approaches to further mitigate this state-space explosion problem.First, we introduce the concept of a delaying explorer to perform prioritized exploration of the behaviors of an asynchronous reactive program. A delaying explorer stratifies the search space using a custom strategy (tailored towards finding bugs faster), and a delay operation that allows deviation from that strategy. We show that prioritized search with a delaying explorer performs significantly better than existing approaches for finding bugs in asynchronous programs.Next, we consider the challenge of verifying time-synchronized systems; these are almost-synchronous systems as they are neither completely asynchronous nor synchronous.We introduce approximate synchrony, a sound and tunable abstraction for verification of almost-synchronous systems. We show how approximate synchrony can be used for verification of both time-synchronization protocols and applications running on top of them.Moreover, we show how approximate synchrony also provides a useful strategy to guide state-space exploration during model-checking.Using approximate synchrony and implementing it as a delaying explorer, we were able to verify the correctness of the IEEE 1588 distributed time-synchronization protocol and, in the process, uncovered a bug in the protocol that was well appreciated by the standards committee.In the final part of this thesis, we consider the challenge of programming a special class of event-driven asynchronous systems -- safe autonomous robotics systems.Our approach towards achieving assured autonomy for robotics systems consists of two parts: (1) a high-level programming language for implementing and validating the reactive robotics software stack; and (2) an integrated runtime assurance system to ensure that the assumptions used during design-time validation of the high-level software hold at runtime.Combining high-level programming language and model-checking with runtime assurance helps us bridge the gap between design-time software validation that makes assumptions about the untrusted components (e.g., low-level controllers), and the physical world, and the actual execution of the software on a real robotic platform in the physical world. We implemented our approach as DRONA, a programming framework for building safe robotics systems.We used DRONA for building a distributed mobile robotics system and deployed it on real drone platforms. Our results demonstrate that DRONA (with the runtime-assurance capabilities) enables programmers to build an autonomous robotics software stack with formal safety guarantees.To summarize, this thesis contributes new theory and tools to the areas of programming languages, verification, systematic testing, and runtime assurance for programming safe asynchronous event-driven across the domains of fault-tolerant distributed systems and safe autonomous robotics systems