how to build an autonomous anything · internet of things (iot) 36 machine memory working with big...

61
1 © 2015 The MathWorks, Inc. How to build an autonomous anything Jim Tung MathWorks Fellow MathWorks

Upload: others

Post on 20-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

1© 2015 The MathWorks, Inc.

How to build an autonomous anything

Jim Tung

MathWorks Fellow

MathWorks

Page 2: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

2

Page 3: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

3

Page 4: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

4

Page 5: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

5

Page 6: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

6

Page 7: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

7

Page 8: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

8

Autonomous Technology

Page 9: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

9

Autonomous

Acting independently

Page 10: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

10

Autonomous Technology

Provides the ability of a system to act

independent of direct human control

under unrehearsed conditions

Page 11: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

11

Page 12: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

12

Capabilities of an Autonomous System

Sense

Page 13: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

13

Capabilities of an Autonomous System

Sense

Perceive

Page 14: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

14

Capabilities of an Autonomous System

Learning Algorithms

Optimization

Sense

Perceive

Decide

& Plan

Page 15: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

15

Capabilities of an Autonomous System

Control Algorithms

Sense

Perceive

Decide

& Plan

Act

Page 16: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

16

Autonomous Technology – Balancing Responsibility

Human

Computer

Resp

on

sib

ilit

y

Degree of Autonomy

Page 17: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

17

Cost of rig: $1,000,000+

Repair cost: $100,000

Cost of valve: $200

Page 18: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

18

Page 19: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

19

Page 20: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

20

Page 21: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

21

Autonomous Service for Predictive Maintenance

Which sensor values should they use?

Decide

& Plan

Act

Perceive

Sense

Pressure

Other

variables

Vibration Timing

Temperature

Page 22: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

22

Normal Operation Maintenance NeededMonitor Closely

Autonomous Service for Predictive Maintenance

Sense

Act

Perceive

Decide

& Plan

Page 23: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

23

Machine Learning or Deep Learning?

1. Normal

2. Monitor

3. Maintain

Classification OutputFeature

ExtractionCorrelation

Analysis

Feature Extraction & Classification

Sensor 1

Sensor 2

Sensor 25

Sensor a

Sensor b

Sensor c

Sensor 1

Sensor 2

Sensor 25

Machine Learning Approach

Deep Learning Approach

1. Normal

2. Monitor

3. Maintain

Output

Page 24: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

24

Design Deep Learning

& Vision Algorithm

Accelerate and Scale

Training

Deep learning design is easy

in MATLAB

Apps for Ground Truth Labeling,

Pixel Labeling

Pre-trained model importer

Training Visualization

Parallel Computing Toolbox

7x faster than pyCaffe

2x faster than TensorFlow

GPU Coder

14x faster than pyCaffe

4x faster than TensorFlow

1.6x faster than C++ Caffe

High Performance

Embedded Implementation

Mega Release of Deep Learning Capabilities

Page 25: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

25

What are the best predictors?

▪ Data-driven

Name of Presenter

Time and Location

Page 26: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

26

What are the best predictors?

▪ Data-driven

▪ Model-driven

Name of Presenter

Time and Location

Jet Engine Monitoring

Page 27: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

27

Autonomous Glucose Level Management

Page 28: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

28

Autonomous Glucose Level Management

Bigfoot Biomedical

Sense

Perceive

Decide

& Plan

Act

Continuous

Glucose Monitor

Target

Glucose

Level

+ -

Insulin PumpPerson

Page 29: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

29

Autonomous Glucose Level Management

Bigfoot Biomedical

Continuous

Glucose Monitor

Target

Glucose

Level

+ -

Insulin PumpPerson

+ +

Mobile App

Sense

Act

Perceive

Decide

& Plan

Page 30: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

30

Autonomous Glucose Level Management

Bigfoot Biomedical

Continuous

Glucose Monitor

Insulin Pump

Sense

Act

Decide

& Plan

Perceive

Person

Simulink,

Stateflow,

Polyspace

Mobile App

Target

Glucose

Level

+ -

+ +

Page 31: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

31

Autonomous Glucose Level Management

Bigfoot Biomedical

Continuous

Glucose Monitor

Target

Glucose

Level

+ -

Insulin Pump

+ +

Person

Perceive

Decide

& Plan

Act

Sense

Mobile App

Page 32: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

32

Autonomous Glucose Level Management

Bigfoot Biomedical

Person

Perceive

Decide

& Plan

Act

Sense

Continuous

Glucose Monitor

Target

Glucose

Level

+ -

Insulin Pump

+ +

Mobile App

2017

2018

Page 33: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

33

Virtual Clinic

Generating data through simulation

Page 34: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

34

Virtual Clinic

Scaling computations to simulate 50 million patients a day

Page 35: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

35

Where will you get your data?

▪ Simulation

▪ Public repositories

▪ In the lab

▪ In the field

▪ Internet of Things (IoT)

Page 36: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

36

Machine

Memory

Working with Big Data Just Got Easier

Tall arrays in MATLAB

Tall Data

e.g. 100GB~1TB

e.g. 4~8GB

Stream large input signals from MAT-files

Page 37: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

37

CNH Develops Intelligent Filling System for Forage Harvesters

Page 38: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

38

Page 39: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

39

Autonomous Trailer Filling

Control Algorithms

Perceive

Act

Sense

Decide

& Plan

Page 40: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

40

Autonomous Trailer Filling

Control AlgorithmsAct

Decide

& Plan

Perceive

Sense

Page 41: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

41

Page 42: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

42

Autonomous Trailer Filling

Computer vision and

controls algorithms

Act

Perceive

Decide

& Plan

Sense 3D Cameras

CAN

ECU

Actuators

Page 43: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

43

• Driver Input

• Visualization

Autonomous Trailer Filling

Act

Perceive

Decide

& Plan

Sense

Computer vision and

controls algorithms

Vehicle Display Controller

ECU

Actuators

3D Cameras

CAN

Page 44: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

44

• Driver Input

• Visualization

• Computer

Vision

• Controls

Autonomous Trailer Filling

Act

Perceive

Decide

& Plan

Sense

Computer vision and

controls algorithms

Vehicle Display Controller

ECU

ActuatorsEmbedded Coder

3D Cameras

CAN

Page 45: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

45

Autonomous Trailer Filling

Monitoring

• Driver Input

• Visualization

• Computer

Vision

• Controls

Act

Perceive

Decide

& Plan

Sense 3D Cameras

ECU

Actuators

Vehicle Display Controller

CAN

Page 46: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

46

How will you put it into production?

▪ Embedded Systems

▪ IT Systems

▪ Cloud

▪ Desktop Apps

Page 47: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

47

Investments in Model-Based Design

Efficient code generation

Floating-point HDL code generation

Page 48: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

48

Investments in Model-Based Design

Detect and fix standards compliance

issues at design timeCode verification in support

of CERT C standard

Page 49: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

49

Connected Physical Assets in Operation

•Pervasively

connected

•More computing

and monitoring

near the assets

•Data transport

protocols

•Transition to Web

technology

•Operational

Technology

•Optimization

end-to-end

IT Systems OT Infrastructure

DataIngestion

LocalCommunications

Long-RangeCommunications

EdgeManagement

Edge systems

Integration

Smart assets

•Value in services,

not just assets

•SW in everything

•Lots of sensors

•Cloud & on-prem

•Cloud: Big data

•On-prem: IP,

reliability, etc.

Page 50: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

50

IT Systems OT Infrastructure

DataIngestion

LocalCommunications

Long-RangeCommunications

EdgeManagement

Edge systems

Integration

Automation through Digital Twins

Digital Twin: Composite of artifacts

that characterize and predict

behavior of a specific real asset.

Smart assets

Act

Perceive

Decide

& Plan

Sense

Page 51: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

51

“Digital Twin” isn’t a new concept…

Digital Twin concept has been used for a long time, especially

when there is a small number of expensive assets and when

reliability is critical (e.g., spacecraft, aircraft engines).

The infrastructure has been one-off.

Long-RangeCommunications

AssetManagement

Smart assets OT Infrastructure

Page 52: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

52

Re-imagining the Digital Twin

Digital Twin:

• models (dynamic, FEM, data-driven, etc.) and data

• for each asset (e.g., system, component, or system of systems)

• performance and conditions over the asset’s history.

• continuously updated as the asset is operated.

• always represents a faithful representation of the current state of the asset.

IT Systems OT Infrastructure

DataIngestion

LocalCommunications

Long-RangeCommunications

EdgeManagement

Edge systems

Integration

Smart assets

Act

Perceive

Decide

& Plan

Sense

Page 53: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

53

MATLAB and Simulink for Digital Twins: Key Capabilities

Multi-domain

system modelingParameter

estimation

VPOC

PPOC

QPOC

PSIM

QSIM

Automatic code

generation

CODE

GENERATIONMC

U

DS

P

FP

GA

ASI

C

VHDL,

Verilo

g

C, C++

Structu

red

TextPLC

Control design and

analysis

Machine Learning

and Deep Learning

OptimizationVariety and Volumes

of DataEnterprise system integration,

with cluster/cloud execution

IT Systems OT Infrastructure

DataIngestion

LocalCommunications

Long-RangeCommunications

EdgeManagement

Edge systems

Integration

Smart assets

Page 54: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

54

MATLAB and Simulink for Digital Twins throughout the lifecycle

Product

Process

System

MaintenanceOperationDevelopmentPlanning

Wind farm planning

Future car infrastructure Automatic braking systems Asteroid rendezvous

Cloud-based HVAC optimization

Ensuring power grid reserves

Engine prognostics &health monitoring

Page 55: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

55

Page 56: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

56

Page 57: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

57

Page 58: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

58

Capabilities of an Autonomous System

Control Algorithms

Sense

Perceive

Decide

& Plan

Act

Page 59: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

59

How to build an autonomous anything

Focus on Perception

• Data-driven

• Model-driven

• Look for autonomy in creative places

• Do more than manually possible

Use the Best Predictors

Get the Right Data

Go to Production

Page 60: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

60

How to build an autonomous anything

Focus on Perception

• Data-driven

• Model-driven

• Reduce to actionable data

• Take advantage of Big Data

• Use simulation to supplement available data

• Address the architecture

• Leverage Model-Based Design for embedded

• Automate integration with enterprise IT systems

• Look for autonomy in creative places

• Do more than manually possible

Use the Best Predictors

Get the Right Data

Go to Production

Page 61: How to build an autonomous anything · Internet of Things (IoT) 36 Machine Memory Working with Big Data Just Got Easier Tall arrays in MATLAB ... Ingestion Local Communications Long-Range

61

What is your

autonomous anything?