team 2 409-509 final presentation
TRANSCRIPT
-
8/14/2019 Team 2 409-509 Final Presentation
1/50
Smart Home Calendaring andNotification SystemTeam 2 Hojun Jaygarl, Nam Pham,Andrew Denner
-
8/14/2019 Team 2 409-509 Final Presentation
2/50
Introduction Overview
Brief introductionAndrew
DescriptionAndrew System RequirementsNam
System VerificationHojun
-
8/14/2019 Team 2 409-509 Final Presentation
3/50
Overview of System The Targeted user demographic: elderly and
disabled persons
Users Unique Issues Decline in cognitive function
Medical issues/Dietary needs
Medical Appointments
Other senior activities
Users desire to remain independent
-
8/14/2019 Team 2 409-509 Final Presentation
4/50
Overview of System (cont.) Current existing systems
Complex and scary
Poorly integrated
-
8/14/2019 Team 2 409-509 Final Presentation
5/50
Overall descriptionWhat does the Notification and Calendaring
System (NCS) do?
Schedule management Notification
Planning
Nam will go into this further next
-
8/14/2019 Team 2 409-509 Final Presentation
6/50
Function DiagramCalendering
-
8/14/2019 Team 2 409-509 Final Presentation
7/50
Function DiagramNotification
-
8/14/2019 Team 2 409-509 Final Presentation
8/50
Class
-
8/14/2019 Team 2 409-509 Final Presentation
9/50
Deployment
-
8/14/2019 Team 2 409-509 Final Presentation
10/50
Sequence diagramfor
-
8/14/2019 Team 2 409-509 Final Presentation
11/50
System Requirements
-
8/14/2019 Team 2 409-509 Final Presentation
12/50
Specific Requirements Contain:
External Interface Requirements
User InterfaceHardware Interface
Software Interface
Performance Requirements
Software System AttributeReliability, Security, Availability, Maintainability andReparability
Design Constraint
-
8/14/2019 Team 2 409-509 Final Presentation
13/50
External Interface Requirements User Interface
The primary goals of the NCS user interfaces areaccessibility, universality, and reachability.
-
8/14/2019 Team 2 409-509 Final Presentation
14/50
External Interface Requirements
-
8/14/2019 Team 2 409-509 Final Presentation
15/50
External Interface Requirements Hardware Interface
NCS has sensors to get data and actuators to
provide physical services.
These sensors and actuators are connected to thehome server computer through OSGi(Open
Services Gate-way Initiative) interface.
-
8/14/2019 Team 2 409-509 Final Presentation
16/50
External Interface Requirements Sensors
-
8/14/2019 Team 2 409-509 Final Presentation
17/50
External Interface RequirementsActuators:
-
8/14/2019 Team 2 409-509 Final Presentation
18/50
External Interface Requirements
Communication Interfaces The system should be connected to the Internet or
LAN. The system shall connect with the telephone lines.
The system has a connection with an emergencyprotocol that is connected to a hospital, police
station , and fire station.
-
8/14/2019 Team 2 409-509 Final Presentation
19/50
External Interface Requirements
Software Interface Subsystem of existing smart home
The Calendaring System uses iCal file format (RFC2445)
The Notification system uses XML file format
-
8/14/2019 Team 2 409-509 Final Presentation
20/50
PERFORMANCE REQUIREMENTS UI Transition: The information transfers between any
devices (sensors/actuators) with main system shouldnot take more than 3s.
Data access time: The system should access any datafrom database in reasonable time.
Startup Time: The time between when the system isreset and normally operated should be less than 10s.
Interoperability: The system shall work smoothlywith other smart home systems
-
8/14/2019 Team 2 409-509 Final Presentation
21/50
SOFTWARE SYSTEM ATTRIBUTES Reliability/Dependability
Security
Availability Maintainability
Reparability
-
8/14/2019 Team 2 409-509 Final Presentation
22/50
Reliability/Dependability
-
8/14/2019 Team 2 409-509 Final Presentation
23/50
Security
Contains three main properties: Information congeniality
Information Integrity Information Availability
-
8/14/2019 Team 2 409-509 Final Presentation
24/50
Availability
The system shall provide requested service in24/7
The response time of the system when a requestarrive should be prompt and precise.
-
8/14/2019 Team 2 409-509 Final Presentation
25/50
Maintainability The system shall have a backup system to be
upgraded parallel/online when a new device
comes or some modifications taken by technician.
With very low probability, the system willintroduce bugs when updating changes.
-
8/14/2019 Team 2 409-509 Final Presentation
26/50
Reparability The repair time shall be quick.
The system is able to be diagnosed and to replaceerroneous parts while still running.
-
8/14/2019 Team 2 409-509 Final Presentation
27/50
Design Constraints Coding Constraint: Two sub-systems shall be
developed using Java language.
Memory Constraint: The memory for all twosubsystem shall not be larger than 1Gb.
Line of code constraint: The total number of LOCshould be limited in range to 100k lines.
-
8/14/2019 Team 2 409-509 Final Presentation
28/50
Design Constraints Functionality constraint: The two sub-systems
shall provide ONLY the functions required in the
requirement documents
Environment constraint: The sub-systems shallbe developed using the Java VM.
The interface between components shall beconsistent and well described.
-
8/14/2019 Team 2 409-509 Final Presentation
29/50
System Verification
30
-
8/14/2019 Team 2 409-509 Final Presentation
30/50
04/01/09
30
Introduction ofBDI
Bratman [1] proposedBelief, Desire, Intention (BDI)model based on belief, desire and intention as mentalstates.
BDI models of agents have been widely researched byAI
researchers. The purpose of these models is to characterize agents
using anthropomorphic notions, such as mental states andactions.
formally definedusing logical frameworks that allowtheorists to analyze, specify and verify rational agents [6].
31
-
8/14/2019 Team 2 409-509 Final Presentation
31/50
04/01/09
31
BDI Logic
BDI logic?BDI logic? Belief, Desire, IntentionBelief, Desire, Intention Logic formalism for agent planningLogic formalism for agent planning
BDI model
(M. Bratman 87)
Belief and Desire withdecision
(Other Philosophers)
In PhilosophyIn AI(Agent Planning)
BDI logic(A. Rao and M. Georogeff 91)
applied TemporalLogic.
Much controversy exists
X-BDI(M. Mora et al. 99)AgentSpeak (Rao 96)
installed Explicit
Negationimproved the BDI logic
In Pervasive Computing
Inference of HumanIntentions
For a new evolvable,autonomous principle
The Formalism(P. Cohen and H. Levesque 90)
32
-
8/14/2019 Team 2 409-509 Final Presentation
32/50
04/01/09
32
What is BDI[2]?
Beliefs: represent the characteristics of the environment
are updated appropriately after each sensing action. can be viewed as the informative component of the system.
Desires: contain the information about the objectives to be
accomplished, the priorities and payoffs associated with the
various objectives can be thought as representing the motivationalstate ofthe system.
33
-
8/14/2019 Team 2 409-509 Final Presentation
33/50
04/01/09
33
What is BDI[2]? Intentions:
represent the currently chosen course of action (the output of
the most recent call to the selection function) capture the deliberativecomponent of the system.
BDI agents are systems: situated in a changing environment
receive continuous perceptual input
take actions to affect their environment
based on their internal mental state.
34
-
8/14/2019 Team 2 409-509 Final Presentation
34/50
04/01/09
34
Why BDI? Best known and best studied model of practical reasoning
agents.
BDI model combines a respectable philosophical model ofhuman practical reasoning.
A number of implementations, several successfulapplications
the now-famous fault diagnosis system for the space shuttle, as well asfactory process control systems and business process management
An elegant abstract logical semantics, which have beentaken up and elaborated upon widely within the agentresearch community.
35
-
8/14/2019 Team 2 409-509 Final Presentation
35/50
04/01/09
35
AgentSpeak(L)
Attempt to bridge the gap between theory and practice A model that shows a one-to-one correspondence between
the model theory, proof theory and the abstract interpreter.
Natural extension of logic programming for the BDI agent
architecture Based on a restricted first-order language with events and
actions.
The behavior of the agent is dictated by the programswritten in AgentSpeak(L).
36
-
8/14/2019 Team 2 409-509 Final Presentation
36/50
04/01/09
36
+concert (A,V) : likes(A)
-
8/14/2019 Team 2 409-509 Final Presentation
37/50
04/01/09
37
About Jason[2]
a fully-fledged interpreter for AgentSpeak(L) many extensions, providing a very expressive
programming language for agents. allows configuration of a multi-agent system to run on
various hosts. implemented in Java (thus it is multi-platform) available Open Source and is distributed under GNU
LGPL. http://jason.sourceforge.net/
38
-
8/14/2019 Team 2 409-509 Final Presentation
38/50
04/01/09
38
Safe Home ExampleBeliefstime(T)smokeheatloc(outside)loc(home)range(on)range(off)
smokeTime(ST)
ovenTime(ST)mvTime(ST)alarmTime(R,ST)
Basic Actioncallenv
alarmenv
Goalalarm
saveAlarm
callFireman
39
-
8/14/2019 Team 2 409-509 Final Presentation
39/50
04/01/09
39
Safe Home Example/* Plans */
+time(T) : smokeTime(ST) & (T > ST + 5) ST + 10) ST + 13) ST + 7)
-
8/14/2019 Team 2 409-509 Final Presentation
40/50
Rhapsody
41
-
8/14/2019 Team 2 409-509 Final Presentation
41/50
4
What Rhapsody can do?*
A environment for Systems and Software Development Flexible design environments supporting SysML, UML 2.0, DoDAF, and
Domain Specific Languages (Rational Rose import and XMI support) Integrated Requirements modeling, traceability and analysis
e.g., Lifecycle traceability and analysis
Small and large team collaboratione.g., Model-based differencing and merging Design for Testability
Model simulation Requirements Based testing Auto test generation Embedded target model level debugging
Application generation C, C++, Java, Ada Code visualization and reverse engineering Integration with Eclipse-based IDEs
*http://www.ilogix.com/sublevel.aspx?id=53
42
-
8/14/2019 Team 2 409-509 Final Presentation
42/50
4
Model Driven Development It starts out with making a requirements document
and a series of models using UML, SysML or a similar
modeling language. These models and requirements are then useddirectly for the generation of code.
MDD tools use models as the primary means ofdevelopment.
One of the extremely useful tools it has is itsanimator. It allows you to view an animatedversion of many diagrams in real time as theprogram is running.
-
8/14/2019 Team 2 409-509 Final Presentation
43/50
Model Based Testing
44
-
8/14/2019 Team 2 409-509 Final Presentation
44/50
44
Use Animation to Validate the Model Rhapsody animates the model by executing the code
generated with instrumentation for classes, operations,and associations.
Animated Sequence Diagram, State Machine Diagram,and Activity Diagram help design-level debugging. E.g., stepthrough the model, set and clear breakpoints, inject events, and generate anoutput trace.
Allows incremental testing
45
-
8/14/2019 Team 2 409-509 Final Presentation
45/50
UML by Example: Home Alarm System
Door and movement sensors
Arm/Disarm based on 4 digit code
Code may be modified
Timeout to allow entering/exiting house
Indication lights
Siren
46
-
8/14/2019 Team 2 409-509 Final Presentation
46/50
Outlining the requirements:HomeAlarm Use Cases
47
-
8/14/2019 Team 2 409-509 Final Presentation
47/50
Detailed scenario: Arming the alarm
48
-
8/14/2019 Team 2 409-509 Final Presentation
48/50
Behavior: The AlarmController
49
-
8/14/2019 Team 2 409-509 Final Presentation
49/50
Resource UML resource:http://www.uml.org/#Links-General
Model-driven Development resource:http://www.mdsd.info/mdsd_cm/page.php?page=intro&id
http://www.omg.org/docs/omg/03-06-01.pdf
Rhapsody resource:
Rhapsody->Help->List of Bookshttp://www.ilogix.com/sublevel.aspx?id=53
50
http://www.uml.org/#Links-Generalhttp://www.mdsd.info/mdsd_cm/page.php?page=intro&id=5http://www.omg.org/docs/omg/03-06-01.pdfhttp://www.ilogix.com/sublevel.aspx?id=53http://www.ilogix.com/sublevel.aspx?id=53http://www.omg.org/docs/omg/03-06-01.pdfhttp://www.mdsd.info/mdsd_cm/page.php?page=intro&id=5http://www.uml.org/#Links-General -
8/14/2019 Team 2 409-509 Final Presentation
50/50
04/01/09
References1. M. E. Bratman, Intentions, Plans, and Practical Reason, Harvard University Press, Cambridge,
MA, 1987.
2. BDI Agents and AgentSpeak(L)(Romelia Plesa,PhD Candidate, University of Ottawa)
3. A BDI Agent-Based Software Process(Chang-Hyun Jo, California State University Fullerton,
USA, Jeffery M. Einhorn, University of North Dakota, USA.4. AgentSpeak(L): BDI Agents speak out in a logical computable language (Anand S. Rao)
5. http://jason.sourceforge.net/mini-tutorial/getting-started/
6. P. R. Cohen and H. J. Levesque, Intention is choice with commitment, Artificial Intelligence ,vol. 42, is. 2-3, pp.213-261, 1990.
7. Bordini, R. H., Hbner, J. F. and Vieira, R., Jason and the Golden Fleece of agent-oriented
programming. In R. H. Bordini, M. Dastani, J. Dix, and A. El Fallah Seghrouchni, editors,Multi-Agent Programming: Languages, Platforms and Applications, chapter 1, pp. 337,Springer-Verlag, 2005.
8. Rao, A. S. AgentSpeak(L): BDI agents speak out in a logical computable language, InProceedings of the 7th European Workshop on Modelling Autonomous Agents in A Multi-AgentWorld (MAAMAW96,), pp. 42-55, 1996
http://jason.sourceforge.net/mini-tutorial/getting-started/http://jason.sourceforge.net/mini-tutorial/getting-started/