Engineering for Robotics and Autonomous Systems Alessandro Cimatti - - PowerPoint PPT Presentation

engineering for robotics
SMART_READER_LITE
LIVE PREVIEW

Engineering for Robotics and Autonomous Systems Alessandro Cimatti - - PowerPoint PPT Presentation

Computer-Assisted Engineering for Robotics and Autonomous Systems Alessandro Cimatti cimatti@fbk.eu February 12 17 , 2017 Dagstuhl Seminar 17071 Computer-Assisted Engineering for Autonomous Systems: a formal methods perspective


slide-1
SLIDE 1

Computer-Assisted Engineering for Robotics and Autonomous Systems

Alessandro Cimatti cimatti@fbk.eu February 12 – 17 , 2017 Dagstuhl Seminar 17071

slide-2
SLIDE 2

Computer-Assisted Engineering for Autonomous Systems: a formal methods perspective

slide-3
SLIDE 3

Computer-Assisted Engineering for… complex systems

slide-4
SLIDE 4

The Design Challenge

  • Designing complex systems
  • Automotive
  • Railways
  • Aerospace
  • Industrial production
  • Sources of complexity:
  • Hundreds of functions
  • Networked control
  • Real-time constraints
  • Complex execution model with mixture
  • f real-time and event-based triggers
  • System composed of multiple

heterogeneous subsystems

  • Critical Functions:
  • ABS, drive-by-wire
  • Operate switches, level crossings, lights
  • Manage on-board power production
  • Conflicting objectives:
  • Avoid crashes vs move trains

Source: Prof. Rolf Ernst – CAV 2011

slide-5
SLIDE 5

A Wheel Brake System

  • Control brake for

aircraft wheels

  • Redundancy
  • Multiple BCSU
  • Hydraulic plants
  • Functions
  • Asymmetrical

braking

  • Antiskid
  • Single

wheel/coupled

  • depending on

control mode

slide-6
SLIDE 6

Alessandro Cimatti 6

slide-7
SLIDE 7

Life Cycle of Complex Systems

  • Functional

correctness

  • Does the system

satisfy the requirements?

  • Requirements

validation:

  • Are the requirements

flawed?

  • Safety assessment
  • Is the system able to

deal with faults?

Design

Requirements analysis Architecture definition Components design Safety analysis SW/HW implement.

slide-8
SLIDE 8

CAE for complex systems

  • Source of complexity: critical systems
  • Must provide reliable response to very wide range of

adverse conditions

  • Redundancy, reconfiguration
  • Examples:
  • Wheel brake system
  • Power supply on board of a large-sizes aircraft
  • Key remark: operational conditions and response

thoroughly analyzed upfront

  • Validation of reconfiguration policies
  • As designed “off-line”
slide-9
SLIDE 9

“Old-fashioned” Model Checking

  • Does system satisfy requirements?
  • System as finite state model
  • Requirements as temporal properties

System Requirements satisfied by

slide-10
SLIDE 10

Models – where do they come from?

  • Models are directly extracted from design

languages

  • Verilog, VHDL
  • AADL, SysML, UML
  • Altarica
  • C
  • Proprietary languages

Alessandro Cimatti 10

slide-11
SLIDE 11

The three main challenges in Formal Verification

  • Scalability
  • Scalability
  • Scalability

The ability to analyze large models automatically

11

slide-12
SLIDE 12

Formal verification engines

  • From BDD-based engines…
  • Fix-point computation
  • to SAT-based engines
  • Bounded model checking, induction, interpolation, IC3
  • SMT: SAT + decision procedures
  • Verification Modulo Theories
  • From finite-state…
  • Circuits, microcode
  • To infinite-state
  • Software, timed systems, hybrid systems, closed loop
slide-13
SLIDE 13

Satisfiability vs Verification

(or, combinational vs sequential)

Boolean Modulo theories

Verification

Finite state model checking Infinite state Model checking

Satisfiability

BDDs, SAT solvers SMT solvers

slide-14
SLIDE 14

Many levels of expressiveness

  • Finite state transition systems
  • Infinite state transition systems
  • Timed automata
  • Hybrid automata
  • Software
  • Concurrent software
  • Closed-loop software + hybrid plant
slide-15
SLIDE 15

A “modern” view of FM

  • Requirements analysis
  • Contract-based design
  • Delegation of top-level requirements to subcomponents
  • Correctness by construction
  • Safety analysis
  • Construct fault trees, FMEA tables
  • Timed Failure Propagation Graphs (TFPG)
  • Tool chains:
  • COMPASS
  • http://www.compass-toolset.org/
  • OCRA, nuXmv, xSAP
  • http://nuxmv.fbk.eu/, http://ocra.fbk.eu, http://xsap.fbk.eu
  • Applications:
  • AIR 6110 wheel brake system (https://es-static.fbk.eu/projects/air6110/)
  • NASA nextgen function allocation (https://es-static.fbk.eu/projects/nasa-aac/)
slide-16
SLIDE 16

Computer-Assisted Engineering for… adaptive systems

slide-17
SLIDE 17

Life Cycle of Adaptive Systems

Design Operation

Requirements analysis Architecture definition Components design Safety analysis SW/HW implement. Planning Execution Monitoring FDIR Replanning

slide-18
SLIDE 18

From design to operation…

  • Planning
  • plan how to achieve desired “firing” sequence
  • retrieve pipes from holds, pre-weld, send to firing line, final weld
  • Execution Monitoring
  • welding may fail, activities can take more time than expected
  • plant may fail
  • Fault Detection, Fault Identification/Isolation
  • is there a problem? where is it?
  • Fault Recovery
  • put off-line problematic equipment
  • Replanning
  • identify alternative course of actions, e.g. reroute pipes
slide-19
SLIDE 19

High level Objective

  • Support Project Designers
  • Identify plant configurations and operations sequence

while fulfilling project requirements

  • Engineering Tool at support of Supervisor
  • Evaluation of the performances of the operation

sequences and configuration (manually or automatically produced)

  • Worst case execution time
  • Production rate
  • Nominal and in presence of faults after re-planning
slide-20
SLIDE 20

Project outcomes

  • Simulator and Evaluator for the CASTORONE plant to

be used for evaluation of plans, and compute performance measures before actual deployment for decision making

  • Planning layer
  • Nominal planning (no faults)
  • Re-planning in presence of faults (product or plant)
  • Monitoring infrastructure to monitor correct execution

and predict delays on the completion of the execution

  • f a plan while executing, and identify faults
slide-21
SLIDE 21

Simulation and Evaluation GUI

slide-22
SLIDE 22

The Monitor (Operations Precedence Network)

Operations network for 2 TJs

slide-23
SLIDE 23

Factory automation projects

  • Activity scheduling in galvanic coating factories
  • Execute precise “recipe”
  • Quick re-plan for production changes
  • Fault tolerance
  • Estimation of expected costs
  • Helping in design of flexible and efficient plants
slide-24
SLIDE 24

Galvanic processes and plants

  • Sequence of chemical washes
  • Timing is crucial
  • Pieces moved in stocks by carriage-mounted

forklifts

  • Once started, cannot be interrupted without

quality degradation

slide-25
SLIDE 25

Current state of the art

slide-26
SLIDE 26

Control

State Estimation

Physical Plant Plan Execution Monitoring FDIR

Sensing Actuation Hidden State

Planning/ Deliberation

Goals

Operation of adaptive systems

Plan

slide-27
SLIDE 27

Adaptive/reconfigurable systems

  • Highly optimized functions in controlled

environments

  • Unpredictable sequence of missions
  • Arrival of urgent production batch
  • Degraded operational conditions
  • CAE for
  • Automated programming
  • Simulation and cost estimation
slide-28
SLIDE 28

Automated planning and monitoring

  • Plan validation
  • Does plan achieve required objectives?
  • Could be manually generated
  • Planning as generation of suitable course of actions
  • Actions with possibly uncertain durations
  • Actions with different costs
  • Execution Monitoring, FDI
  • Is execution proceedings as expected?
  • Fault detection and identification
  • Can be reduced to analysis of transition systems
  • Planning as model checking paradigm
slide-29
SLIDE 29

Computer-Assisted Engineering for… robotics

Many important “low level” issues: RTOS, WCET, scheduling, collision avoidance, high-speed motion control, path/motion planning, …

Not covered here

slide-30
SLIDE 30

Computer-Assisted Engineering for… autonomous systems

slide-31
SLIDE 31

Autonomy levels in operation

  • Or, where are operation activities carried out?

MONITORING PLANNING EXECUTION

On-ground On-board

slide-32
SLIDE 32

ESA Autonomy Levels

Lev. Description Functions E1 Mission execution under ground control; limited capability for safety issues. Real-time control from ground for nominal operations Execution of time-tagged commands for safety issues E2 Execution of pre-planned ground- defined, mission operations on-board Capability to store time-based commands in an on- board scheduler E3 Execution of adaptive mission

  • perations on-board

Event-based autonomous operations; Execution of

  • nboard operations control procedures

E4 Execution of goal-oriented mission

  • nboard

Goal oriented mission re-planning

ECSS-E-70-11A Autonomy Level Definitions

slide-33
SLIDE 33

Autonomy Levels

  • E1: Exec under ground control
  • E2: Exec of pre-planned mission operations on-board
  • Action sequence planned on ground, lower level execution on-board
  • Very common, applied to spacecrafts
  • E3: Exec of adaptive mission operations on-board
  • High-level tasks planned on ground, adaptive execution on-board
  • Foreseen in future missions
  • E4: Exec of goal-oriented mission operations on-board
  • High-level mission goals on ground, all the rest on board
  • Currently at prototypical level
slide-34
SLIDE 34

Some Remarks

  • The level of autonomy has a direct impact on the type of plan...
  • produced by the planning system (or team)
  • dealt with by the on-board executor
  • The reasoning processes on-ground and on-board must be tightly

related!

  • E.g. interpret on ground what happened on board
  • more CPU but less information
  • Dynamic increase/decrease of autonomy level
slide-35
SLIDE 35

A General Autonomy Architecture

Autonomous Framework

Mission Goals Mission Activity Plan Control Commands

Decision Layer Executive Layer Functional Layer

Hardware Interfaces

slide-36
SLIDE 36

Autonomous Architecture Example

slide-37
SLIDE 37

Concretization Example

slide-38
SLIDE 38

Non-Determinism and Uncertain Duration

  • Non-determinism
  • Discrete choice
  • Uncertainty
  • Continuous
  • Controllable
  • Start
  • Uncontrollable
  • Effects
  • End

CERTAIN DURATION UNCERTAIN DURATION DETERMINISTIC ACTIONS NON DETERMINISTIC ACTIONS

Controllable start Uncontrollable end Uncontrollable effect

slide-39
SLIDE 39

Conclusions / Challenges

slide-40
SLIDE 40

Conclusions

  • Very complex problem
  • Many different angles
  • Complex systems
  • Adaptive systems
  • Robotics
  • Autonomy
  • Model-based approaches and Formal methods to

provide a unifying view

slide-41
SLIDE 41

Challenges

  • Verification of plans/programs in closed loop with

complex plants

  • Merge model checking for sw and for hybrid systems
  • Role of planning, scheduling and optimization
  • Even domain modeling is nontrivial
  • Activity-based modeling vs automata-based modeling
  • Link from real-world execution data to models
  • Automated modeling, dealing with degradation
  • Validation of Intelligence w/o representation
  • Do we trust deep learning?
slide-42
SLIDE 42

Questions?