CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 ·...

27
Ken Butts, TEMA Toyota Technical Center Powertrain Control – Model based Development 1 Toyota’s Direction Vehicle-to Vehicle and Infrastructure integration Vehicle technologies Our sustainable mobility strategy includes Our sustainable mobility strategy includes products, partnerships, the urban products, partnerships, the urban environment and energy solutions.* environment and energy solutions.* *Toyota 2010 North American Environmental Report Highlights *Toyota 2010 North American Environmental Report Highlights Connections

Transcript of CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 ·...

Page 1: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

1

Toyota’s Direction

Vehicle-to Vehicle and Infrastructure integration

Vehicle technologies

Our sustainable mobility strategy includes Our sustainable mobility strategy includes products, partnerships, the urban products, partnerships, the urban environment and energy solutions.*environment and energy solutions.*

*Toyota 2010 North American Environmental Report Highlights*Toyota 2010 North American Environmental Report Highlights

Connections

Page 2: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

2

Presentation Flow

1. Development Pressures � Model-based Development2. Open Challenge: Verification and Validation (V&V) of Verification and Validation (V&V) of

InIn--Vehicle Control SystemsVehicle Control Systems3. V&V Research Directions4. Discussion

with grateful contributions from:Koichi Ueda, Hakan Yazarel, Prashant Ramachandra, Derek Caveney, Chrona, UCLA, UC Berkeley CHESS, Carnegie Mellon

Page 3: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

3

Product Direction

Product variation, control, integration, and complexity are accelerating in order to improve vehicle performance, address sustainability, and provide new features.

Engine control

Transmission control

Vehicle integration control

Hybrid control

Suspension control

Auto cruise control

Brake control

Electric power control

Air conditioner control

AWD control

Power steering control

Environment

Safety Comfort

In-vehicle control systems

LEXUS LS460 …• 100 Electronic Control Units (ECUs) or more• Program size of seven million lines

Nikkei business (September, 2006)

��������������������������������������������������������

�� �������� �����

�� ���������� ���������

���� ����� ��������� �

Page 4: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

4

Model-Based Development: Basic Tooling

� ��������

������� ���!�� � ���������"

#�� �$ ������� � ���������"

$����%�� � ������� ��%�� �

$���&#�� '�(���������� ��)*

������� �&+���!�� '� ���!�� *

+,� ������$���)�#�-

,� �.�%,�

/�����������

���������

/��������

���������

/��������

Page 5: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

5

MBD Focus areas

• Process and Information Management

• Plant Modeling

• Model-based control design

• Calibration

• Verification and Validation

Page 6: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

6

MBD Focus: Verification and Validation

SoftwareVerification

Softwaredesign

Coding

Coding

Verification

Integration

Verification

Modification

Integration

Verification

Modification

Verification

Softwaredesign

Verification

Modification

Verification

Integration

SoftwareVerification

SoftwareVerification

Softwaredesign 50%

20%

Beforeintroducing

ACG

Afterintroducing

ACG

Future(Target)

Development time

- Verification

ACG: Automatic code generationACG: Automatic code generation

Page 7: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

7

Verification and Validation: Strategy

�)�/0/����� ��

& �)�+� ����1�����2 ���������'�� 3)��� �*

�)�/ ����������!��1���2�� ��� �1�3 �

& �)�4����� ��� ���� �����'�5������� �1���*

6)�#����� ��/���������������� �� ��� �

& �)� ���!�� �������������7���'�8 � ������ � ���������*

9)�/0/� 2���� �

& �)�,� ���� ��/0/� 2���� �'�8����:�� *

� 3)����7���

��� �� )

�����

�������� ��� ,� ������

��������7�� �� ������ �

������������ 3)��� �

#�-

7�� ��� ��� �������������( ��

��������7�� �� 3)��� � $�����

SIL

� !�� 2 ���� ������ ����7�����7�����2�� ��/0/�� �1����� ����������2 ;� <����7�� ��� � ��������! ����������� #����� �7�� �����= ��� 2 ���� ������

vehicle

HIL

������������ ������ �

Page 8: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

8

V & V Application: Model (vs. Code) Coverage

�������������

Show satisfied and unsatisfied paths unambiguously

������� ���

� �� ������ ����

����

Coverage measurement is required at each confirmation stage.i.e. Which paths are validated/verified by test cases?

� ������������� ���

Page 9: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

9

V & V Application: Test Generation�������������

� ���������

Structural coverage based test generation

• %100 MCDC (Modified Condition Decision Coverage) is required for new logic to make sure every part of the code is tested and there is no dead-code.• Generating test cases for %100 path coverage for main logic of legacy code.• Equivalence checking of Simulink models and corresponding C-code

Page 10: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

10

V & V Application: Test Generation

����������������������������

Commercial test generation tools are available, but they need laborious manual efforts to reach %100 MCDC.

Challenges are:• %100 MCDC• %100 path coverage (needed for some logic portions)• Look-up table coverage• Lots of nonlinear arithmetic operations• Logic with counters, timers, integrators

Page 11: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

11

V & V Research: Symbolic Equivalence Checking

�������������

Automatic and compositional symbolic equivalence checking of C code against corresponding Simulink models

� ������������� ���

������� ���

� �� ������ ����

����

Equivalence Checking of Code against Models

���������� ������ ���������� �������� ���������� ��������

��������������� ����

������� ����������

����� ��������� �

?+

-

Page 12: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

12

Equivalence Checking for Simulink Models and C code

?����

Scenario 1: Code Generation

Scenario 2: Legacy Code Modeling

Page 13: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

13

Compositional Equivalence Checking for Simulink Models and C code (UCLA)

���!�����������������!���!��������� ���� ������

� �� ������������� ���!�����������������!��

� �� �������������

� � �� ����!�����������������

���� ����Counter example

• Process repeated bottom-up on function-call tree• Function calls in upper hierarchy are treated as un-interpreted functions since they are assumed already verified down the hierarchy

* * SahaSaha, , MajumdarMajumdar

Page 14: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

14

V & V Research: Control Design Specification Validationi.e. Prove model is consistent with requirements

�������������

� ������������� ���

Prove properties using formal methods

������� ���

� �� ������ ����

����

Functional Requirement Checking for Models

Page 15: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

15

V & V Research: Property Proving

����������������������������

Commercial model-based tools for property proving are available, but very limited in their application:

Technical challenges are…- Scalability- Floating-point and Nonlinear mathematics- Look-up tables- Logic with counters, timers, integrators

Page 16: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

16

V & V Research: Real-time Software Checking

Improve engine control software real-time characteristic robustness to software changes (Chrona TDL)

• Real-time software evaluation with Software-in-the-Loop (SIL) (Chrona Validator)

• Real-time execution time estimation (CHESS GameTime)�

• “Predictable” computing (future work ?)– Today’s computer architects are not considering real-time control !

�������������

Page 17: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

17

V & V Research: Chrona TDLTDL: Timing Definition Language

Allocate generous computation time budgets (LETs) and use a run-time machine to enforce the timing specification

– Closely related to schedulability analysis– Requires software program analysis to evaluate variable interactions– Requires fine grain execution time data

Engine control requires extensions for event-based processes

**PreePree, , ResmeritaResmerita

Page 18: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

18

V & V Research: Chrona Validator

How to check Modified TDL versus Original ? � Real-time aware SIL– Pre-emption, scheduling, jitter, (reverse) source level debugging

**ResmeritaResmerita et. al.et. al.�������������

Page 19: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

19

V & V Research: GameTime in CHESS

How to get good fine grain execution time estimates for TDL and Validator ?– Resolve worst-case path and initial state dimensions (and their interactions)– Measure ‘ feasible basis’ paths and use data to generate a model for all paths

*Seshia*Seshia�������������

Page 20: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

20

V & V Research: Verifying Complex Systems(Complex == Cyber Physical Systems) (Carnegie Mellon University)

Learn how to apply recent V&V results to complex problems – Architectural and Formal approaches– Many advancements since MoBIES (circa 2002)

• Funding by the National Science Foundation • Collision Avoidance application area

*Krogh, *Krogh, BhaveBhave�������������

Page 21: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

21

V & V Research: Verifying Complex Systems(Complex == Cyber Physical Systems) (Carnegie Mellon University)

**GarlanGarlan, Krogh, , Krogh, BhaveBhave

Page 22: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

22

V & V Research: Verifying Complex Systems(Complex == Cyber Physical Systems) (Carnegie Mellon University)

Abstract modeling and formal verification Abstract modeling and formal verification yield control requirements to be yield control requirements to be satisfied during design and implementationsatisfied during design and implementation

Adaptive Cruise Control:Hybrid, Dynamic, and Now Formally Verified

������������������ ����

�����������������

�� �����������������

���������������������

����� �������������� ����

����� �������������� ����

����� ����������� �����

����� ������������ �����

����� �������������� ����

����� �������������� ����

����� ����������� �����

����� ������������ �����

**PlatzerPlatzer, , LoosLoos

Page 23: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

23

V & V Research: Verifying Complex Systems(Complex == Cyber Physical Systems) (Carnegie Mellon University)

**AlthoffAlthoff

Page 24: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

24

V & V Research: Verifiable Control Design in CHESS

How can we consider verification during control design ?

*Hedrick, *Hedrick, ShahbakhtiShahbakhti�������������

Page 25: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

25

Model-based V & V: Situation Summary What we think we can do (soon):

Validation (design confirmation)• Closed-loop simulation

• Property assertions• Robustness to parameter and scenario variation

• Rapid prototyping

Verification (implementation confirmation)• Structural

• Static analysis• Test vector generation• Visualization and analysis

• Software-in-the-Loop• Code to Model Equivalence checking• Functional scenarios• Fixed point design

• Hardware-in-the-Loop• ECU interface and signal conditioning• Real-time software confirmation• Fault diagnosis and handling

Page 26: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

26

Model-based V & V: Situation Summary What we (will) need:

A systematic engineering process to fully explore the operating space• Deal with system complexity

• Heterogeneity (hybrid dynamics, wireless networking, dynamic agent scenarios)• Hierarchical structure (in-vehicle, vehicle-to-vehicle, vehicle to infrastructure)• Scale• Floating point design vs. fixed-point Implementation

• Leverage compositionality / prior knowledge• Component to system verification• Multiple component providers• Control design attributes

• Security – threatening / malicious agents• Real-time software performance guarantees – predictable computing• Calibration – accommodate tuning changes at the end of the process.

Page 27: CMACS workshop 2012 v4cmacs.cs.cmu.edu/presentations/verif_csystems/06_Ken... · 2011-10-27 · Model-based V & V: Situation Summary What we (will) need: A systematic engineering

Ken Butts, TEMA Toyota Technical CenterPowertrain Control – Model based Development

27

Thank you for your attention !

We’re trying to hire a researcher to help.