Logical Modeling for Engineering Conrad Bock U.S. National - - PowerPoint PPT Presentation

logical modeling for engineering
SMART_READER_LITE
LIVE PREVIEW

Logical Modeling for Engineering Conrad Bock U.S. National - - PowerPoint PPT Presentation

Logical Modeling for Engineering Conrad Bock U.S. National Institute of Standards and Technology November 28, 2011 1 Overview Quantative and logical Modeling Categories As membership conditions Terminology and notation


slide-1
SLIDE 1

1

Logical Modeling for Engineering

Conrad Bock U.S. National Institute of Standards and Technology November 28, 2011

slide-2
SLIDE 2

2

Overview

  • Quantative and logical Modeling
  • Categories

– As membership conditions – Terminology and notation – Kinds of conditions – Most common condition: Generalization

  • Categories of categories

– Subject-specific languages

  • Categories of relations (and processes)
  • Summary and References
slide-3
SLIDE 3

3

Quantitative Modeling

  • Quantitative modeling

– Numerical formulas (equations) – Dynamic and stochastic simulations

  • Used for:

– Calculating or simulating numeric values and probabilities. – Deriving new numerical formulas.

slide-4
SLIDE 4

4

Logical Modeling

  • Logical modeling is about

categorizing things and relations between things ...

– This document is a requirement, this

  • ther one is a design, and the second

satisfies the first.

  • … and keeping these categorizations

consistent.

– Requirements or designs are changed, does the satisfies relation still hold? – If not, what would make it hold again?

slide-5
SLIDE 5

5

Categories = Conditions

  • Things “fall into” categories.
  • Categories have conditions for what

can and cannot fall into the category.

Category

ThingsThatFloat

{ x : density(x) < density(water) }

Condition for things falling into the category. Individual things that fall into the category Things that don’t

slide-6
SLIDE 6

6

Categories Specify Sets

  • Which things fall into a category can

change over time without changing the category (condition).

– New things created, some things destroyed, conditions met or unmet over time. – Not true for set membership. ThingsThatFloat

{ x : density(x) < density(water) ^ exists(x) }

Hole in hull New plastic bottle Amphibious cars hit the market

slide-7
SLIDE 7

7

Categories Imply Existence

  • Conditions might only be satisfied by

things from the past, future, in simulation, or not at all.

Perpetual Motion Machines Imaginary, or will never exist Existed in the past Roman Cities Marketable Solar Cars Might exist in the future, or in simulation

slide-8
SLIDE 8

8

Fixed and Changing Conditions

  • When something does not fall into a

category, but it should, you can:

– Modify the thing – Modify the category’s conditions

Cars AsBuiltThings

Conditions for “as-built” categories are modified if they are not satisfied by something they should be. Things that do not satisfy the conditions for a “specification” category, but should, are modified.

slide-9
SLIDE 9

9

Terminology

  • The term “categories” is just for

explanation in this presentation.

  • Other terms:

– “Classes” in the Unified Modeling Language (UML) and Web Ontology Language (OWL). – “Blocks” in the Systems Modeling Language (SysML), an extension of UML.

  • Things falling into categories:

– UML / SysML: “Instances” (of classes / blocks) – OWL: “Objects” and “Data” (interpretations

  • f classes and datatypes)
slide-10
SLIDE 10

10

Graphical Notation

UML & SysML:

ThingsThatFloat

SysML:

«block» ThingsThatFloat UML Class

(or SysML Block without stereotype)

SysML Block

(= UML Class with the Block stereotype applied)

«block» ThingsThatFloat

density(self) < density(water)

constraints density(self) < density(water)

UML / SysML Constraint

density(self) < density(water)

SysML compartment notation for UML / SysML Constraint “self” variable = any one thing falling into the category

Note: Naming conventions are usually singular, easily confused with instances.

slide-11
SLIDE 11

11

Diagrams

  • UML Classes and SysML Blocks

appear in particular kinds of diagrams.

UML Package Diagrams SysML Block Definition Diagrams

package Float

ThingsThatFloat

density(self) < density(water)

bdd Float

«block» ThingsThatFloat

constraints density(self) < density(water)

slide-12
SLIDE 12

12

“In” Conditions

  • Can only determine when something

falls into a category, not out of it.

– Any four-wheeled thing over 750kg that carries people using its own power over 100kw is a car. – If something meets the condition it is a car. – Otherwise, it might be a car or not (maybe some cars are three-wheeled).

  • Purely sufficient conditions do not

interact.

– Each condition is sufficient separately.

slide-13
SLIDE 13

13

“Out” Conditions

  • Can only determine when something

falls out of a category, not in it.

– Cars are vehicles. – If condition is not met (something is not a vehicle), then it is not a car. – Otherwise, it might or might not be a car (some vehicles might not be cars).

  • Purely necessary conditions do not

interact.

– Each condition negates separately.

  • Combining necessary and sufficient

can be contradictory.

slide-14
SLIDE 14

14

In vs Out in English

  • In English:

– Sufficient (in) conditions usually have the category at the end – Necessary (out) conditions usually have the category at the beginning

  • Any four-wheeled thing over 750kg

that carries people with it own power

  • ver 100kw is a car. (sufficient / in)
  • Cars are vehicles. (necessary / out)
  • Sometimes sufficient conditions are

incorrectly read as also necessary.

slide-15
SLIDE 15

15

In & Out Conditions

  • Conditions can be both sufficient (in)

and necessary (out).

– Things must meet the condition to be in the category, otherwise they are out, no in- between.

  • Mathematical set descriptors:

– { x : density(x) < density(water) } – Things less dense than water are in the category (sufficient / in). – Things more dense or the same density are not in the category (necessary / out).

slide-16
SLIDE 16

16

The Most Common Condition

  • Things falling into one category

always fall into another.

– Example: Cars are vehicles. – Cars satisfy the conditions of Vehicles. – A necessary condition for Cars, a sufficient condition for Vehicles.

Car Vehicle

slide-17
SLIDE 17

17

Terminology and Notation

  • The previous condition is so

common it is given a name and notation in most languages.

  • “Generalization” in UML and SysML.
  • “Subclass” in OWL.

Vehicles

SysML/UML Generalization

Cars

slide-18
SLIDE 18

18

Multiple Generalization

  • Useful for reusing and combining categories.

Cars LowEmissionCars 70%RecyclableCars StreamlineCars GoodCars

Design Refinement Design Aspects or Alternatives

slide-19
SLIDE 19

19

Multiple Generalization Gotchas

  • Subcategories might

not be complete.

  • Subcategories

might partially

  • verlap.
  • Subcategories might

not be an intersection.

Streamline Cars LowEmission Cars 70%Recyclable Cars

Good Cars

Cars

slide-20
SLIDE 20

20

Categories in Product Lifecycles

  • In the ideal world:

– Cars as built and maintained are also cars as designed. – Cars as designed are also cars meeting requirements.

Cars As Required Cars As Designed Cars As Built Cars As Maintained

Conditions are requirements Conditions are designs Conditions reflect what is built Conditions reflect results of maintenance

slide-21
SLIDE 21

21

Analysis / Reasoning

  • In the real world sometimes:

– Designs do not meet requirements. – Cars are not built or maintained to designs.

Cars as Designed Cars As Required Cars as Built Cars as Maintained

  • Analyzers and

reasoners help detect the possibility

  • f these

cases earlier.

slide-22
SLIDE 22

22

Categories of Categories

  • Distinguish categories according to

purpose.

Categories

Requirement Categories Design Categories

Cars As Designed Planes As Designed Trucks As Designed Cars As Required Trucks As Required Planes As Required

Categories of Categories Requirement Categories

(conditions are requirements)

Design Categories

(conditions are designs)

slide-23
SLIDE 23

23

Subject-Specific Languages

  • Use terminology of subject matter

experts, rather than logic / ontology.

Subject specific terminology Requirements Designs

Categories

Requirements Designs

Car Design Plane Design Truck Design Car Requirement Truck Requirement Plane Requirement

slide-24
SLIDE 24

24

Terminology

  • The terms “categories of categories”

and “subject-specific languages” are just for explanation in this presentation.

  • Other terms:

– “Metaclasses” in UML/SysML (part of “metamodeling”). – “Domain-specific languages” (common in UML community). – Not mentioned much in the OWL community, but it is partially supported with “punning”.

slide-25
SLIDE 25

25

Relations

  • Relations between actual things or

categories:

– Cars have engines. – Designs meet requirements.

Individual cars Individual engines

Cars Engines Car-Engine Links

Individual links

slide-26
SLIDE 26

26

Terminology

  • The term “relations” is just for

explanation in this presentation.

  • Other terms:

– “Properties” in UML, SysML, and OWL. – “Associations” in UML

  • Things falling into relation categories:

– UML / SysML: “Links” (of associations). No term for properties, but properties have “values”. – OWL: Elements of set cartesian (cross) products (“pairs”, “tuples”).

slide-27
SLIDE 27

27

Graphical Notation

UML & SysML:

Cars Property

hasEngine : Engines

Cars Engines

hasEngine

Association

SysML applies the «block» stereotype to UML Classes.

slide-28
SLIDE 28

28

Generalization of Relations

  • Links falling into one relation

category always fall into another.

– Example: Car-engine links are physical containment links.

Cars Engines

Car-Engine Links

Physical Containment Links

Physical Things

slide-29
SLIDE 29

29

Terminology and Notation

  • The term “generalization of relations” is

just for explanation in this presentation.

  • Other terms:

– “Property Subsetting” or “Association Generalization” in UML and SysML. – “Subproperties” in OWL.

Cars Property Subsetting

hasEngine : Engines { subsets physicallyContains }

Cars Engines

hasEngine

PhysicalThings

physicallyContains : PhysicalThings

Physical Things

physicallyContains

hasEngine physicallyContains Association Class / Block

slide-30
SLIDE 30

30

«satisfy»

Subject-Specific Languages

  • Use terminology of subject matter

experts, rather than logic / ontology.

Car Requirement Car Design Car Requirement Car Design Categories Relation Categories Generalization Satisfy

SysML terminology & notation

slide-31
SLIDE 31

31

Other Logical Constructs

UML/SysML OWL Property / Association Multiplicity Property Cardinality Property Redefinition Property Restriction UML Composite Structure, SysML Internal Block Diagram Role Composition SysML Association Participant Properties and Internal Block Connector Properties

slide-32
SLIDE 32

32

ChangeColor #1 ChangeColor #3

Logical Process Modeling

  • Categorizing occurrences.

Time

Brush Paint Dry Paint

Falls into both

Dry

Falls only into #3

Cleanup

Falls only into #1

Dry Spray Paint Cleanup

Behavior

ChangeColor Spray Paint

slide-33
SLIDE 33

33

Summary

  • Logical modeling is about categories.
  • Categories = conditions specifying sets.

– Independent of things falling into them. – In/out (sufficient/necessary) conditions. – Common condition: Generalization.

  • Relation as categories of links.
  • Categories of categories to define

subject-specific languages.

  • Various terminologies and notations.
  • Applicable to product and process

modeling.

slide-34
SLIDE 34

34

References

  • UML: http://omg.org/spec/UML
  • SysML: http://omg.org/spec/SysML

– 1.3: http://doc.omg.org/ptc/2011-08-09

  • OWL: http://w3.org/TR/owl2-overview
  • “Ontological Product Modeling for

Collaborative Design,”

Bock, Zha, Suh, Lee, Advanced Engineering Informatics, 24:4, pp510-524, 2010,

http://nist.gov/manuscript-publication-search.cfm?pub_id=822748.

  • “Ontological Behavior Modeling,”

Bock, Odell, Journal of Object Technology, 10:3, pp1-36, 2011,

http://www.jot.fm/contents/issue_2011_01/article3.html.

  • Other material: conrad dot bock at nist dot gov.