1 MBSE 2008-2011 Copyright © Georgia Tech. All Rights Reserved. Model-Based Systems Engineering...

Preview:

Citation preview

1MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Model-Based Systems Engineeringwith SysML:Problem Definition, Simulation and Optimization

Chris ParedisAssociate DirectorModel-Based Systems Engineering CenterGeorgia Techchris.paredis@me.gatech.edu

M BS EModel-BasedSystems EngineeringCenter

2MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Presentation Overview

Model-Based Systems Engineering– Overview and motivation– The Systems Modeling Language (OMG SysMLTM)

Model Transformation for Simulation and Optimization

System Architecture Exploration– Transforming SysML models into analysis and optimization

models

3MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Model-Based Systems EngineeringMoving from Documents to Models

Software

Manufacturing

ProjectManagement

Marketing

Analysis

CAD

• Power plant• Transmission• Brakes• Chassis• …

4MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Model-Based Systems EngineeringMoving from Documents to Models

Software

Manufacturing

ProjectManagement

Marketing

Analysis

CAD

• Power plant• Transmission• Brakes• Chassis• …

ImplicitImplicitDependenciesDependencies

betweenbetweenDocumentsDocuments

5MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Model-Based Systems EngineeringMoving from Documents to Models

Software

Manufacturing

ProjectManagement

Marketing

Analysis

CAD

• Power plant• Transmission• Brakes• Chassis• …

System Model

6MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Integrated System ModelMust Address MultipleAspects of a System

Model-Based Systems EngineeringWhat Kinds of System Models?

Models are more formal, complete & semantically richModels are more formal, complete & semantically rich

Requirements

Engine Transmission Driveline

Structure / Physical Architecture

Start Shift Accel Brake

Behavior / Functional Architecture

Power Equations

Control Input

Dynamic Performance

Vehicle Dynamics

System Model

(Adapted from OMG SysML Tutorial)

Mass

Cost

Manufacturing

Reliability

7MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

The Payoff for MBSE

Improved communication

less ambiguous, more consistent Improved complexity management

traceability, abstraction, decomposition Improved design quality

more efficient and effective exploration Improved knowledge reuse

integrated model libraries

Models are more formal, complete & semantically richModels are more formal, complete & semantically rich

8MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Summary: Making Better Decision

Goal of MBSE: Improve Efficiency & Rationality– Efficient = Perform the SE process with fewer resources– Rational = Make better decisions with available information

(Be consistent with designer’s beliefs and preferences)

(Figure Adapted from G. Hazelrigg)

Alternatives Outcomes

Maximize E[u]

Most PreferredSystem Alternative

IdeasKnowledge/Beliefs

Preferences

Decision Theory

Selection Criterion: E[u]

9MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Presentation Overview

Model-Based Systems Engineering– Overview and motivation– The Systems Modeling Language (OMG SysMLTM)

Model Transformation for Simulation and Optimization

System Architecture Exploration– Transforming SysML models into analysis and optimization

models

10MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

SysML: A Key Enabler for MBSE

What Can be Expressed in SysML?– All the information and knowledge needed for the

application of a systems development methodology

Specification Analysis Design Verification Validation

Hardware Software Data Personnel Procedures Facilities

The Systems Modeling Language (OMG SysMLTM)is a visual, general purpose modeling language

The Systems Modeling Language (OMG SysMLTM)is a visual, general purpose modeling language

11MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Pillars of SysML — 4 Main Diagram Types

definition

bdd [package] VehicleStructure [ABS-Block Definition Diagram]

«block»Traction Detector

«block»Brake

Modulator

«block»Library::Electro-Hydraulic

Valve

«block»Library::

Electronic Processor

«block»Anti-Lock Controller

d1 m1

bdd [package] VehicleStructure [ABS-Block Definition Diagram]

«block»Traction Detector

«block»Brake

Modulator

«block»Library::Electro-Hydraulic

Valve

«block»Library::

Electronic Processor

«block»Anti-Lock Controller

d1 m1

1. Structure 2. Behavior

4. Requirements 3. Parametrics

(Source: Friedenthal, www.omgsysml.org)

12MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Pillars of SysML — 4 Main Diagram Types

definition

bdd [package] VehicleStructure [ABS-Block Definition Diagram]

«block»Traction Detector

«block»Brake

Modulator

«block»Library::Electro-Hydraulic

Valve

«block»Library::

Electronic Processor

«block»Anti-Lock Controller

d1 m1

use

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavior

4. Requirements 3. Parametrics

(Source: Friedenthal, www.omgsysml.org)

13MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Pillars of SysML — 4 Main Diagram Types(Source: Friedenthal, www.omgsysml.org)

definition

bdd [package] VehicleStructure [ABS-Block Definition Diagram]

«block»Traction Detector

«block»Brake

Modulator

«block»Library::Electro-Hydraulic

Valve

«block»Library::

Electronic Processor

«block»Anti-Lock Controller

d1 m1

use

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavior

4. Requirements 3. Parametrics

interaction

sd ABS_ActivationSequence [Sequence Diagram]

d1:TractionDetector

m1:BrakeModulator

detTrkLos()

modBrkFrc()

sendSignal()

modBrkFrc(traction_signal:boolean)

sendAck()

sd ABS_ActivationSequence [Sequence Diagram]

d1:TractionDetector

m1:BrakeModulator

detTrkLos()

modBrkFrc()

sendSignal()

modBrkFrc(traction_signal:boolean)

sendAck()

14MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Pillars of SysML — 4 Main Diagram Types(Source: Friedenthal, www.omgsysml.org)

sd ABS_ActivationSequence [Sequence Diagram]

d1:TractionDetector

m1:BrakeModulator

detTrkLos()

modBrkFrc()

sendSignal()

modBrkFrc(traction_signal:boolean)

sendAck()

definition

bdd [package] VehicleStructure [ABS-Block Definition Diagram]

«block»Traction Detector

«block»Brake

Modulator

«block»Library::Electro-Hydraulic

Valve

«block»Library::

Electronic Processor

«block»Anti-Lock Controller

d1 m1

use

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavior

4. Requirements 3. Parametrics

interaction

state machine

stm TireTraction [State Diagram]

Gripping Slipping

LossOfTraction

RegainTraction

stm TireTraction [State Diagram]

Gripping Slipping

LossOfTraction

RegainTraction

15MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Pillars of SysML — 4 Main Diagram Types(Source: Friedenthal, www.omgsysml.org)

sd ABS_ActivationSequence [Sequence Diagram]

d1:TractionDetector

m1:BrakeModulator

detTrkLos()

modBrkFrc()

sendSignal()

modBrkFrc(traction_signal:boolean)

sendAck()

definition

bdd [package] VehicleStructure [ABS-Block Definition Diagram]

«block»Traction Detector

«block»Brake

Modulator

«block»Library::Electro-Hydraulic

Valve

«block»Library::

Electronic Processor

«block»Anti-Lock Controller

d1 m1

use

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavior

4. Requirements 3. Parametrics

interaction

state machine

stm TireTraction [State Diagram]

Gripping Slipping

LossOfTraction

RegainTractionactivity/function

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

16MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Pillars of SysML — 4 Main Diagram Types(Source: Friedenthal, www.omgsysml.org)

sd ABS_ActivationSequence [Sequence Diagram]

d1:TractionDetector

m1:BrakeModulator

detTrkLos()

modBrkFrc()

sendSignal()

modBrkFrc(traction_signal:boolean)

sendAck()

definition

bdd [package] VehicleStructure [ABS-Block Definition Diagram]

«block»Traction Detector

«block»Brake

Modulator

«block»Library::Electro-Hydraulic

Valve

«block»Library::

Electronic Processor

«block»Anti-Lock Controller

d1 m1

use

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavior

4. Requirements 3. Parametrics

interaction

state machine

stm TireTraction [State Diagram]

Gripping Slipping

LossOfTraction

RegainTractionactivity/function

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

17MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Pillars of SysML — 4 Main Diagram Types(Source: Friedenthal, www.omgsysml.org)

sd ABS_ActivationSequence [Sequence Diagram]

d1:TractionDetector

m1:BrakeModulator

detTrkLos()

modBrkFrc()

sendSignal()

modBrkFrc(traction_signal:boolean)

sendAck()

definition

bdd [package] VehicleStructure [ABS-Block Definition Diagram]

«block»Traction Detector

«block»Brake

Modulator

«block»Library::Electro-Hydraulic

Valve

«block»Library::

Electronic Processor

«block»Anti-Lock Controller

d1 m1

use

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavior

4. Requirements 3. Parametrics

interaction

state machine

stm TireTraction [State Diagram]

Gripping Slipping

LossOfTraction

RegainTraction

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

activity/function

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

18MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Cross Connecting Model Elements

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavioract PreventLockup [Swimlane Diagram]

«allocate»:TractionDetector

«allocate»:BrakeModulator

allocatedTo«connector»c1:modulatorInterface

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

act PreventLockup [Swimlane Diagram]

«allocate»:TractionDetector

«allocate»:BrakeModulator

allocatedTo«connector»c1:modulatorInterface

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

(Source: Friedenthal, www.omgsysml.org)

4. Requirements 3. Parametrics

19MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Cross Connecting Model Elements

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavioract PreventLockup [Swimlane Diagram]

«allocate»:TractionDetector

«allocate»:BrakeModulator

allocatedTo«connector»c1:modulatorInterface

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

act PreventLockup [Swimlane Diagram]

«allocate»:TractionDetector

«allocate»:BrakeModulator

allocatedTo«connector»c1:modulatorInterface

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

allocate

(Source: Friedenthal, www.omgsysml.org)

4. Requirements 3. Parametrics

20MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Cross Connecting Model Elements

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

SatisfiedBy«block»Anti-LockController

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

SatisfiedBy«block»Anti-LockController

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavior

4. Requirements 3. Parametrics

act PreventLockup [Swimlane Diagram]

«allocate»:TractionDetector

«allocate»:BrakeModulator

allocatedTo«connector»c1:modulatorInterface

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

allocate

(Source: Friedenthal, www.omgsysml.org)

21MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Cross Connecting Model Elements

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

SatisfiedBy«block»Anti-LockController

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

SatisfiedBy«block»Anti-LockController

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavior

4. Requirements 3. Parametrics

act PreventLockup [Swimlane Diagram]

«allocate»:TractionDetector

«allocate»:BrakeModulator

allocatedTo«connector»c1:modulatorInterface

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

allocate

satisfy

(Source: Friedenthal, www.omgsysml.org)

22MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Cross Connecting Model Elements

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

SatisfiedBy«block»Anti-LockController

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavioract PreventLockup [Swimlane Diagram]

«allocate»:TractionDetector

«allocate»:BrakeModulator

allocatedTo«connector»c1:modulatorInterface

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOf Traction

d1:TractionDetector

valuesDutyCycle: Percentage

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOf Traction

d1:TractionDetector

valuesDutyCycle: Percentage

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

allocate

(Source: Friedenthal, www.omgsysml.org)

satisfy

4. Requirements 3. Parametrics

23MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Cross Connecting Model Elements

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavioract PreventLockup [Swimlane Diagram]

«allocate»:TractionDetector

«allocate»:BrakeModulator

allocatedTo«connector»c1:modulatorInterface

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOf Traction

d1:TractionDetector

valuesDutyCycle: Percentage

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOf Traction

d1:TractionDetector

valuesDutyCycle: Percentage

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

allocate

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

m:

a:a:

v:

v:

x:

v.Position:

v.Weight:v.chassis.tire.

Friction:v.brake.abs.m1.

DutyCycle:v.brake.rotor.BrakingForce:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

m:

a:a:

v:

v:

x:

v.Position:

v.Weight:v.chassis.tire.

Friction:v.brake.abs.m1.

DutyCycle:v.brake.rotor.BrakingForce:

value binding

(Source: Friedenthal, www.omgsysml.org)

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

SatisfiedBy«block»Anti-LockController

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

satisfy

4. Requirements 3. Parametrics

24MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Cross Connecting Model Elements

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavioract PreventLockup [Swimlane Diagram]

«allocate»:TractionDetector

«allocate»:BrakeModulator

allocatedTo«connector»c1:modulatorInterface

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOf Traction

d1:TractionDetector

valuesDutyCycle: Percentage

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

allocate

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

m:

a:a:

v:

v:

x:

v.Position:

v.Weight:v.chassis.tire.

Friction:v.brake.abs.m1.

DutyCycle:v.brake.rotor.BrakingForce:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

m:

a:a:

v:

v:

x:

v.Position:

v.Weight:v.chassis.tire.

Friction:v.brake.abs.m1.

DutyCycle:v.brake.rotor.BrakingForce:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

m:

a:a:

v:

v:

x:

v.Position:

v.Weight:v.chassis.tire.

Friction:v.brake.abs.m1.

DutyCycle:v.brake.rotor.BrakingForce:

value binding

(Source: Friedenthal, www.omgsysml.org)

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

SatisfiedBy«block»Anti-LockController

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

satisfy

4. Requirements 3. Parametrics

25MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Cross Connecting Model Elements

act PreventLockup [Activity Diagram]

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

c

a:a:

v:

v:

x:

ibd [block] Anti-LockController [Internal Block Diagram]

d1:Traction Detector

m1:Brake Modulator

c1:modulator interface

1. Structure 2. Behavioract PreventLockup [Swimlane Diagram]

«allocate»:TractionDetector

«allocate»:BrakeModulator

allocatedTo«connector»c1:modulatorInterface

DetectLossOf Traction

Modulate BrakingForce

TractionLoss:

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOfTraction

d1:TractionDetector

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

ibd [block] Anti-LockController [Internal Block Diagram]

allocatedFrom«activity»DetectLosOf Traction

d1:TractionDetector

valuesDutyCycle: Percentage

allocatedFrom «activity»Modulate BrakingForce

m1:BrakeModulator

allocatedFrom«ObjectNode»TractionLoss:

c1:modulatorInterface

satisfies«requirement»Anti-LockPerformance

allocate

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

m:

a:a:

v:

v:

x:

v.Position:

v.Weight:v.chassis.tire.

Friction:v.brake.abs.m1.

DutyCycle:v.brake.rotor.BrakingForce:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

m:

a:a:

v:

v:

x:

v.Position:

v.Weight:v.chassis.tire.

Friction:v.brake.abs.m1.

DutyCycle:v.brake.rotor.BrakingForce:

par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

m:

a:a:

v:

v:

x:

v.Position:

v.Weight:v.chassis.tire.

Friction:v.brake.abs.m1.

DutyCycle:v.brake.rotor.BrakingForce:

(Source: Friedenthal, www.omgsysml.org)

4. Requirements 3. Parametrics

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

SatisfiedBy«block»Anti-LockController

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

SatisfiedBy«block»Anti-LockController

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

req [package] VehicleSpecifications [Requirements Diagram - Braking Requirements]

Braking Subsystem Specification

Vehicle System Specification

VerifiedBy«interaction»MinimumStoppingDistance

id=“102”text=”The vehicle shall stop from 60 mph within 150 ft on a clean dry surface.”

«requirement»StoppingDistance

SatisfiedBy«block»Anti-LockController

id=”337"text=”Braking subsystem shall prevent wheel lockup under all braking conditions.”

«requirement»Anti-LockPerformance

«deriveReqt»

satisfy par [constraintBlock] StraightLineVehicleDynamics [Parametric Diagram]

:AccellerationEquation[F = ma]

:VelocityEquation[a = dv/dt]

:DistanceEquation[v = dx/dt]

:BrakingForceEquation

[f = (tf*bf)*(1-tl)]

tf: bf:tl:

f:

F:

m:

a:a:

v:

v:

x:

v.Position:

v.Weight:v.chassis.tire.

Friction:v.brake.abs.m1.

DutyCycle:v.brake.rotor.BrakingForce:

verify

value binding

26MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Presentation Overview

Model-Based Systems Engineering– Overview and motivation– The Systems Modeling Language (OMG SysMLTM)

Model Transformation for Simulation and Optimization

System Architecture Exploration– Transforming SysML models into analysis and optimization

models

27MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Formal Models + Model Transformations

Stage-Gate Documents

Project Management Metrics

Transformation

Transformation

Simulation &Optimization

System Model

Transformation

28MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Model Transformation

Transformation Specification isalso a Model automated generation of transformation engine code

Origins– Model Driven Architecture/

Engineering Tools

– MOFLON, QVTo, ATL, GME/GReAT, VIATRA2, Kermeta,…

Example Usages:– Automation of repeated

modeling patterns– Tool interoperation– Document generation– Consistency checking– Dependency propagation

Source Metamodel

Source Model

Target Metamodel

Target Model

conforms to conforms to

Transformation Specification

Transformation Enginereads writes

refers to refers to

executes

(Czarnecki, K., & Hellen, S., 2006)

29MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

SysML-Modelica Transformation SpecificationRepresenting Hybrid Continuous/Discrete Dynamics in SysML

OMG standard for integrating SysML and Modelica Transformation is specified in QVT (Query/View/

Transformation) – an OMG specification

Modelica abstract syntax

XMI(SysML4Modelica)

conforms toSysML+

SysML4Modelicametamodel

SysML Tool

Modelica.mo file

Tool-Specific Repository

QVT(normative)

XMI(Modelica)

conforms toModelica

metamodel

OMC

30MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

SysML-ModelCenter TransformationExecuting SysML Parametric Analyses / Optimizations

Through ModelCenter, include and execute a wide range of engineering analyses in SysML

Trace requirements and design models to analysis

Transformation

System Properties

Analysis Model

31MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Presentation Overview

Model-Based Systems Engineering– Overview and motivation– The Systems Modeling Language (OMG SysMLTM)

Model Transformation for Simulation and Optimization

System Architecture Exploration– Transforming SysML models into analysis and optimization

models

32MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

SysML

SysML

SysML

Architecture Exploration Framework

Problem Definition

GenerateAlgebraic Design

Problem

SysML

GenerateArchitecture

Expl. Problem

Components

SysML

GenerateDynamic Design

Problem

SysML

Problem Formulation Problem Solution

Topology Analysis

Dynamic Analysis

Uncertainty Quantification

Mixed-IntegNonlin Solver

Algebraic Analysis

OptimizationSolver

Monte Carlo + KrigingDesign Explorer Modelica

GAMS / AMPL / AIMMS

Variable FidelityModel Selection

NonlinearModels

DynamicModels

LinearModels

Transformation

33MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

System Architecture Explorationfor a Hydraulic Excavator

Given:– Component models– Objectives / preferences

Find:– Best system architecture– Best component

parameters– (Best controller)

Excavator

pump_vdisp

cylinder

accum

How to connect and size these?

engine

v_3way

34MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Specify Allowable/Required Components

A Component may be abstract, representing multiple sub-classes

Multiplicities for optional components

Specify the required connectors in IBD

Hydraulic Subsystem Hydraulic Subsystem[Block] ibd [ ]

arm

bucket

boomL

swing

armHousing

bucketHousing

boomLHousing

boomRHousingboomR

fuel

bucketCylinder : Cylinder

A B

rod housing

boomCylinderRight : Cylinder

A B

rod housing

armCylinder : Cylinder

A B

rod housing

swingMotor : FixedDisplacementMotor

P : Hydraulic

T : Hydraulic

rotational : Rotational

boomCylinderLeft : Cylinder

A B

rod housing

valveBlock : ValveBlock [0..4]A

B

P1T1

P2T2

powerUnit : PowerUnit [1..4]

P [1] T

rotational : Rotational

mover : PrimeMover [1..4]

out : Rotational

fuelIn : Fuel

35MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Specify Allowable/Required Connections

Connectors blank not allowed 1 required

+ optional

1 1

1 1

Note: mock-up – under development

+ +

36MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Associate Tests with Requirements

37MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Define Tests in a Solution-Independent Fashion

Hydraulic Subsystem Hydraulic Subsystem[Block] ibd [ ]

arm

bucket

boomL

swing

armHousing

bucketHousing

boomLHousing

boomRHousingboomR

fuel

bucketCylinder : Cylinder

A B

rod housing

boomCylinderRight : Cylinder

A B

rod housing

armCylinder : Cylinder

A B

rod housing

swingMotor : FixedDisplacementMotor

P : Hydraulic

T : Hydraulic

rotational : Rotational

boomCylinderLeft : Cylinder

A B

rod housing

valveBlock : ValveBlock [0..4]A

B

P1T1

P2T2

powerUnit : PowerUnit [1..4]

P [1] T

rotational : Rotational

mover : PrimeMover [1..4]

out : Rotational

fuelIn : Fuel

38MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Define Test Protocols as Activities

39MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Domain Knowledge: Model Libraries

Component Structure Algebraic Linear/Nonlinear DAE — Modelica

40MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Model Transformations to Domain Knowledge

When cylinder is used, other corresponding models are often used also

Capture the reuse pattern

41MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Model Transformations to Domain KnowledgeDefining the Reuse Patterns in SysML

42MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Transformation to Mixed Integer (Linear) Program

Composition of component models

Decision variables for component & connector selection

Efficient filtering of architecture alternatives

System Model

AIMMS – CPLEXGeneration of AIMMS – CPLEX models through transformation

43MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Step 1: Create a Superstructure

All potential connections

All potential components

44MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Step 2: Linearization of Constitutive Equations

τmaxτ(2)

τ(3)

τ(1)

τ(0)

max 0 1 2 30 1 2 3

0 1 2 3(0) (1) (2) (3)

0 1 2 3 1

0 1 (1)sgmt

1 2 (2)sgmt

2 3 (3)sgmt

(1) (2) (3) 1sgmt sgmt sgmt

Binary Variable

ω

45MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Step 3: Generate Connection Equations

Kirchhoff’s Laws:– A.flow + flowAC = 0– B.flow + flowBC = 0– C.flow – flowAC – flowBC = 0– A.pressure = B.pressure = C.pressure

When considering optional connections:– A.flow + flowAC * existsAC = 0– B.flow + flowBC * existsBC = 0– C.flow – flowAC * existsAC – flowBC * existsBC = 0– (A.pressure - C.pressure) * existsAC = 0– (B.pressure - C.pressure) * existsBC = 0

A

B

C

Binary Variable

Continuous Variables

Model is nonlinear Difficult to

solve

46MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Step 3: Generate Connection Equations

Kirchhoff’s Laws:– A.flow + flowAC = 0– B.flow + flowBC = 0– C.flow – flowAC – flowBC = 0– A.pressure = B.pressure = C.pressure

When considering optional connections:– flowAC <= existsAC * upperBound– flowAC >= - existsAC * upperBound – flowBC <= existsBC * upperBound– flowBC >= - existsBC * upperBound

Model is linear Can be solved very quickly

A

B

C

47MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Step 4: Solve Mixed-Integer Linear Equations

Potentially 4 Pumps, 4 Valves, 4 Cylinders, 1 Motor 4 Motion Phases Generated MIP Problem: 7147 Constraints & 2175

Variables Solution time: < 10 minutes

48MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

So What?

Express complex problems in domain-specific language– Multiple perspectives, multiple operational phases, …

Transform problem into declarative equations– Efficient formulation much larger problems than

can be formulated manually– Efficient solution take advantage of knowledge of the

mathematical structure of the equations

Same problem definition can be reused at different levels of abstraction

Goal is NOT to find the optimal solution in one step… but to filter out the poor solutions so that more accurate and more expensive models can be applied selectively

49MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

SysML

SysML

SysML

Architecture Exploration Framework

Problem Definition

GenerateAlgebraic Design

Problem

SysML

GenerateArchitecture

Expl. Problem

Components

SysML

GenerateDynamic Design

Problem

SysML

Problem Formulation Problem Solution

Topology Analysis

Dynamic Analysis

Uncertainty Quantification

Mixed-IntegNonlin Solver

Algebraic Analysis

OptimizationSolver

Monte Carlo + KrigingDesign Explorer Modelica

GAMS / AMPL / AIMMS

Variable FidelityModel Selection

NonlinearModels

DynamicModels

LinearModels

Transformation

50MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

1. Model-Based Systems Engineering (MBSE)– Key for meeting tomorrow’s demands on complexity & functionality

2. SysML– The leading standardized language for supporting MBSE

3. Formal models enable model transformation– Extract information, documents, analyses from SysML models

4. Efficient solution of Architecture Exploration Problems– Formal problem definition optimization at different levels of

abstraction

M BS EModel-BasedSystems EngineeringCenter

Key Take-Aways

51MBSE2008-2011 Copyright © Georgia Tech. All Rights Reserved.

Acknowledgments

Sponsors– John Deere– Ford Motor Company– Lockheed Martin– National Science

Foundation– Siemens

Collaborators– Leon McGinnis– Russell Peak– Peter Fritzson– Roger Burkhart– Sandy Friedenthal

Grad Students / Postdocs– Aditya Shah (Deere)– Alek Kerzhner– Axel Reichwein– Ben Lee– Brian Taylor– Kevin Davies– Roxanne Moore– Sebastian Herzig– Wladimir Schamai (EADS)

Recommended