A core Course on Modeling Introduction to Modeling 0LAB0 0LBB0 0LCB0 0LDB0 S.14.

Slides:



Advertisements
Similar presentations
A core course on Modeling kees van Overveld Week-by-week summary.
Advertisements

Responsible & Ethical Use of Technology Oak Valley Middle School Adapted from: Johnson, D. (1999). Teaching Students Right from Wrong in the.
Máscaras no CARNAVAL DE VENEZA.
Lesson 8 Data Toss.
First, some basic info. What is iTunes U? What is a podcast?
Secure Naming structure and p2p application interaction IETF - PPSP WG July 2010 Christian Dannewitz, Teemu Rautio and Ove Strandberg.
Community of Practice (COP) Content Management Author R.A. Dalton, MKMP, Master Facilitator 1.
How to make a good water filter
Student Dropbox. Register –Click on Not Registered?
Bruce Scharlau, University of Aberdeen, 2011 Creating Presentations A presentation of two halves Bruce Scharlau Computing Science Department.
NGS computation services: API's,
Remote fieldwork: Synchronous and asynchronous communication support for fieldworkers GEES: Geoscience graduates in the 21st century 19th January 2011.
Subordinating Conjunctions that Introduce Dependent Clauses for Cause and Effect: When Because Since If Now That So that by Patricia Galien
Photo Story 3 Project How to use. Objective How to download Microsofts Photo Story 3 to the computer. Introduction to Photo Story 3. Get started with.
By Patricia Galien
Insertion Sort David Borden CS 32. How Insertion Sort Works Author: Swfung8 Somewhat.
Chapter 11: Models of Computation
Turing Machines Memory = an infinitely long tape Persistent storage A read/write tape head that can move around the tape Initially, the tape contains only.
Design Process Design Process Gateway To Technology®
RTI International RTI International is a trade name of Research Triangle Institute. New Dimensions of Mobile Data Quality Michael Keating,
A core Course on Modeling Introduction to Modeling 0LAB0 0LBB0 0LCB0 0LDB0 S.6.
A core Course on Modeling Introduction to Modeling 0LAB0 0LBB0 0LCB0 0LDB0 S.20.
Natural Gas. What is it/How does it work The process of converting gas to energy is similar to the one they use with coal, or oil, but usually cleaner.
1 Programming the Web: HTML Basics Computing Capilano College.
10/5/2013Multiplication Rule 11  Multiplication Rule 1: If a > b and c > 0 then a c > bc Examples If 7 > 3 and 5 > 0 then 7(5) > 3(5) If 2x + 6 > 8 then.
Executional Architecture
1 Welcome to the CLU-IN Internet Seminar OSC Readiness Presents...QA for OSCs Sponsored by: EPA Office of Superfund Remediation and Technology Innovation.
A core Course on Modeling Introduction to Modeling 0LAB0 0LBB0 0LCB0 0LDB0 S.13.
Educating Professionals Creating and Applying Knowledge Engaging our Communities Catherine Daniel, Copyright Coordinator Publishing your Research Don’t.
Parent Academy / Academia de Padres What is a Parent-Teacher Conference?
1 GPS, A Program That Simulates Human Thought 신 동 호신 동 호 Allen Newell & H.A. Simon.
Lirong Xia Reinforcement Learning (2) Tue, March 21, 2014.
WHY CAN’T WE ALL JUST GET ALONG? TCEA, FEBRUARY 2014 Dr. Mary Ann Bell Dr. Holly Weimar James VanRoekel Sam Houston State University Huntsville TX.
A core Course on Modeling Introduction to Modeling 0LAB0 0LBB0 0LCB0 0LDB0 P.5.
Building a Foundation Open Access and Open Educational Resources in Allied Health Higher Education for Lifelong Research.
Bonjour !! Lætitia. 14 pr.caltech.edu/.../Volume%203/ /track.jpg.
Cleaning Uncertain Data with Quality Guarantees Reynold Cheng, Jinchuan Chen, Xike Xie 2008 VLDB Presented by SHAO Yufeng.
What is a Student Learning Outcome?
A core Course on Modeling Introduction to Modeling 0LAB0 0LBB0 0LCB0 0LDB0 S.24.
A core Course on Modeling Introduction to Modeling 0LAB0 0LBB0 0LCB0 0LDB0 S.7.
THE ECONOMICS OF ENVIRONMENTAL QUALITY
Functions In everyday language the word “function” has at least two separate meanings I can think of: A. The purpose of something, as in “The function.
10 February Event Monitoring and Event File Maintenance.
1 Introduction to Computability Theory Lecture15: Reductions Prof. Amos Israeli.
1 Complexity of Network Synchronization Raeda Naamnieh.
1 CS 106, Winter 2009 Class 2, Section 4 Slides by: Dr. Cynthia A. Brown, Instructor section 4: Dr. Herbert G. Mayer,
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
Winter 2012SEG Chapter 11 Chapter 1 (Part 2) Introduction to Requirements Modeling.
Comp1004: Introduction I Welcome!. Welcome to Programming Principles Dr. David Millard Dr. Julian Rathke Dr.
Year 10 Geography by Martin Pluss
Introduction -When was the last time you washed your hands? -Did you use soap? -What have you done since you washed? -Have you eaten, put your fingers.
Plan My Move & MilitaryINSTALLATIONS May, 2008 Relocation Personnel Roles and Responsibilities MC&FP.
Process of interface design Instant Saxon XML/XSLT to JavaScript Design process, sampling Class time for work on user projects Homework: complete user.
Earth Science Daily Challenge, 9/17
Methodology Matters: Doing Research in the Behavioral and Social Sciences ICS 205 Ha Nguyen Chad Ata.
Creating a backup file Downloading a backup file Uploading a backup file Resetting or restoring your course from a backup file.
Earth Science Daily Challenge, 9/9 What is a MODEL? Give at least 4 different examples of models.
1 A Core Course on Modeling      Contents      Change needs Time Introduction to Processes States and State Charts Applying State Charts Time.
Artificial Intelligence and Searching CPSC 315 – Programming Studio Spring 2013 Project 2, Lecture 1 Adapted from slides of Yoonsuck Choe.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
Properties of Real Numbers
Solving Inequalities with Variables on Both Sides
Always wear gloves when working with dirty clothes.
Solving Inequalities with Variables on Both Sides
TransCAD Vehicle Routing 2018/11/29.
Solving Inequalities with Variables on Both Sides
A core Course on Modeling
Solving Inequalities with Variables on Both Sides
Solving Inequalities with Variables on Both Sides
Solving Inequalities with Variables on Both Sides
Presentation transcript:

A core Course on Modeling Introduction to Modeling 0LAB0 0LBB0 0LCB0 0LDB0 S.14

Running example: the secret life of socks Purpose: the model should … help decide which socks to wear help decide which socks to wear help decide when to wash socks help decide when to wash socks

Step 1: conceptual model with properties: mySocks=[pair1:pairOfSocks, pair2:pairOfSocks, pair2:pairOfSocks,...]...]pairOfSocks:[lSock:sock,rSock:sock];sock:[where:{closet,on,wash}, hygiene:{clean... dirty}]; hygiene:{clean... dirty}]; pair1.lSock.where == closet pair2.rSock.where == on pair3.lSock.hygiene == dirty pair2.rSock.where == wash means: left sock of pair1 is stored away means: I am wearing the right sock of pair2 means: the left sock of pair3 is dirty means: the right sock of pair 2 is being washed

Describe processes: statecharts Both socks of pair1 are in the closet and clean Right sock of pair1 is in the closet; I wear left sock of pair1 Right sock of pair1 is in the closet; I wear left sock of pair1; it is somewhat dirty put on left sock of pair1 left sock gets dirty

State = all properties in the conceptual model with their values with their values State space = the collection of all states A behavior = a route through statespace A process = the collection of behaviors

Both socks of pair1 are in the closet and clean Right sock of pair1 is in the closet; I wear left sock of pair1 Right sock of pair1 is in the closet; I wear left sock of pair1; it is somewhat dirty Left sock of pair1 is in the closet; I wear right sock of pair1 Both socks of pair1 are in the closet and clean Right sock of pair1 is being washed left sock of pair1 is in the closet Left sock of pair1 is being washed Right sock of pair1 is in the closet Left sock of pair1 is being washed Right sock of pair1 is in the closet I wear both socks of pair1; left sock is dirtier than right sock I wear right sock of pair2; I wear left sock of pair1; left sock is somewhat dirty

A real-life example: controlling a parking garage

With n quantities, each m i values, nr states =  i=1 … n m i. Number of behaviors with p steps =  j=1 … p  i=1 … n m i. State and process explosion

For 1 pair of socks, pairOfSocks: [lSock: sock, rSock: sock]; sock: [where: {closet,on,wash}, hygiene:{clean... dirty}], say 10 steps from clean... dirty the state space contains 3 x 10 x 3 x 10 = 900 states. For 2 pair: 900 x 900 = states, etc.

For 1 pair of socks, pairOfSocks: [lSock: sock, rSock: sock]; sock: [where: {closet,on,wash}, hygiene:{clean... dirty}], say 10 steps from clean... dirty the state space contains 3 x 10 x 3 x 10 = 900 states. For 2 pair: 900 x 900 = states, etc.

For 1 pair of socks, pairOfSocks: [lSock: sock, rSock: sock]; sock: [where: {closet,on,wash}, hygiene:{clean... dirty}], say 10 steps from clean... dirty the state space contains 3 x 10 x 3 x 10 = 3600 states. For 2 pair: 900 x 900 = states, etc. Parking garage: states (incl. folded cars!)

12 Idea: hiding and exposing quantities or quantities or values values

Decrease amount of states: distinguish exposed and hidden quantities or values, focus on the exposed ones.

what to hide?  purpose to decide washing: value ‘closet’ can be hidden for property ‘where’; to decide which socks to wear: hygiene values between ‘clean’ and ‘dirty’ can be hidden. Only ‘clean’ and ‘not clean’ matter.

Example: 1 pair of socks lSock.where==on rSock.where==on lSock.hygiene==clean rSock.hygiene==clean lSock.where==wash rSock.where==wash lSock.hygiene==dirty rSock.hygiene==dirty wearing washing

Example: 1 pair of socks Too naive: ignores closet-state ignores closet-state ignores socks can get separated ignores socks can get separated ignores multiple pairs of socks ignores multiple pairs of socks

First: look at 1 sock where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: change 1 property at once

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: change at least one property

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: change at least one property

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: change at least one property

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: transitions in both directions are distinct

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: transitions in both directions are distinct

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: socks don’t get dirty unless being worn

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: socks only get clean by washing

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: socks only get clean by washing

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: socks only get clean by washing

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: only put on clean socks

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: don’t put dirty socks in the closet

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: don’t put dirty socks in the closet

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: don’t put dirty socks in the closet

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: don’t put clean socks in the wash

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: don’t put worn socks into the closet

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: some states are unreachable

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean First: look at 1 sock: the life cycle for a single sock

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean pair1.lSockpair1.lSock pair1.rSockpair1.rSock Next: look at 2 socks: the life cycle for a pair of socks

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean pair1.lSockpair1.lSock pair1.rSockpair1.rSock Next: look at 2 socks: the life cycle for a pair of socks

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean pair1.lSockpair1.lSock pair1.rSockpair1.rSock only allowed if pair1.rSock.hygiene == clean only allowed if pair1.lSock.hygiene == clean Next: look at 2 socks: the life cycle for a pair of socks

where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean where==closet hygiene==clean where==closet hygiene!=clean where==on hygiene==clean where==on hygiene!=clean where==wash hygiene==clean where==wash hygiene!=clean pair1.lSockpair1.lSock pair1.rSockpair1.rSock only allowed if pair1.rSock.hygiene == clean only allowed if pair1.lSock.hygiene == clean Next: look at 2 socks: the life cycle for a pair of socks

Statecharts: Communicating and Synchronizing processes

Simulate processes Simulate processes Analyse processes Analyse processes Optimize processes Optimize processes Verify: desired states are reached? Verify: desired states are reached? Verify : forbidden states cannot be reached? Verify : forbidden states cannot be reached? Statecharts:

Simulate processes Simulate processes Analyse processes Analyse processes Optimize processes Optimize processes Verify: desired states are reached? Verify: desired states are reached? Verify : forbidden states cannot be reached? Verify : forbidden states cannot be reached? Reduce processes (hiding / exposing) Reduce processes (hiding / exposing) Statecharts:

model was reduced from to 3.3 x 10 6 states… and could be analysed by computer Statecharts: what about the automated garage?... what about the automated garage?

Summary : state: properties and values in a certain situation state: properties and values in a certain situation transition: go from one state to a next transition: go from one state to a next state space: collection of states state space: collection of states behavior: route through state space behavior: route through state space process: collection of behaviors process: collection of behaviors state explosion: processes amount to very many states state explosion: processes amount to very many states hiding / exposing: simplifying process by reducing values or properties (given a purpose) hiding / exposing: simplifying process by reducing values or properties (given a purpose) state chart: formal representation of process state chart: formal representation of process