Curs 9 My Diary Inferences Arhitectura sistemului Module

  • Slides: 19
Download presentation
Curs 9 My. Diary Inferences

Curs 9 My. Diary Inferences

Arhitectura sistemului

Arhitectura sistemului

Module 1. LOCALISATION 2. MOVEMENT 3. FACES 4. SOUNDS&VOICES 5. INFERENCES 6. BEHAVIOUR 7.

Module 1. LOCALISATION 2. MOVEMENT 3. FACES 4. SOUNDS&VOICES 5. INFERENCES 6. BEHAVIOUR 7. TEXT GENERATION 8. QUESTION-ANSWERING 9. INTERFACES 10. CLIENT-SERVER 11. STANDARDS AND EVALUATION

Interfețe și comunicații My. Diary activități zilnice GPS Localisation COMM vibrații Movement COMM Inferences

Interfețe și comunicații My. Diary activități zilnice GPS Localisation COMM vibrații Movement COMM Inferences imagini Faces COMM sunete Sounds/Voic es COMM

Interfețe și comunicații Inferences Diary repr. SIT QUE query SIT Text generation NL My.

Interfețe și comunicații Inferences Diary repr. SIT QUE query SIT Text generation NL My. Diary NL dialogul de seară Question answering Diary

Interfețe și comunicații Inferences Diary repr. SIT answer SIT Text generation NL My. Diary

Interfețe și comunicații Inferences Diary repr. SIT answer SIT Text generation NL My. Diary NL dialogul de seară Question answering Diary

COMM Communication standards: Localisation <COMM module=“LOC” time=“…” location=“…” proximity=“…”> TIME=7: 30, PROXIMITY = bedroom,

COMM Communication standards: Localisation <COMM module=“LOC” time=“…” location=“…” proximity=“…”> TIME=7: 30, PROXIMITY = bedroom, CLOCK = awake_time, SOUND = awake_ringing, GG: LIGHT = intensity_raise, Wi. Fi_WAVE = movement, ACCELERATION = zero, GPS = null, GEO_POSITION = home(remember_last_position) <COMM module=“LOC” time=“ 7: 30” location=“home” proximity=“bedroom”>

SIT Communication standards: Situation Representation <SITUATION module=“INF” time=“…” situation. ID=“…” instance. Of=“…” location=“…” proximity=“…”>

SIT Communication standards: Situation Representation <SITUATION module=“INF” time=“…” situation. ID=“…” instance. Of=“…” location=“…” proximity=“…”> My. Diary output: Astă dimineață am fost trezit de alarmă la ora 7: 30 în dormitorul meu. <SITUATION module=“INF” time=“ 2014/11/03/23: 18” situation. ID=“sleeping 048” instance. Of=“sleeping” location=“home” proximity=“bedroom”> <SITUATION module=“INF” time=“ 2014/11/04/7: 30” situation. ID=“awake 049” instance. Of=“awake” location=“home” proximity=“bedroom”>

Un graf al situațiilor – ierarhie de clase alive awake sleeping at_home moving shopping

Un graf al situațiilor – ierarhie de clase alive awake sleeping at_home moving shopping in_park in_theater driving_in_town walking driving_outside jogging

Semnale speciale în bază La pornirea contului: prima înregistrare din bază <SIGN-IN user. Name=“…”

Semnale speciale în bază La pornirea contului: prima înregistrare din bază <SIGN-IN user. Name=“…” pwd=“…” time=“…” contract. Type=“…” contract. Duration=“…” /> La expirarea contractului: ultima înregistrare <SIGN-OUT user. Name=“…” time=“…” live. Duration=“…” /> La log-in cu succes: <LOG-IN user. Name=“…” time=“…” /> La log-out: <LOG-OUT user. Name=“…” time=“…” />

Situații în graful ierarhic: alive <situation name="alive" kind-of="" > <!-- The most general situation-->

Situații în graful ierarhic: alive <situation name="alive" kind-of="" > <!-- The most general situation--> <variables> <variable type=“static” name=”*alive. ID” /> </variables> <triggering-conditions> <condition event. Type=”SIGN-IN” /> <condition event. Type=”LOG-IN” /> <!- atentie ca LOG-IN-ul sa fie al aceluiasi user ca si SIGNIN-ul… /> </triggering-conditions> <action-type=”on-enter" to. Do=”asign. Value(*alive. ID, generate. Id())” /> …

Situații în graful ierarhic: alive Output to be generated: <ENTER-SITUATION module=“INF” time=“…” situation. ID=“alive

Situații în graful ierarhic: alive Output to be generated: <ENTER-SITUATION module=“INF” time=“…” situation. ID=“alive 013” instance. Of=“alive” /> … <action-type=”on-enter" to. Do=”generate. XML( ENTER-SITUATION, (module, INF), (time, time()), (situation. ID, *alive. ID), (instance. Of, alive))” /> <!– Generates an ENTER-SITUATION signal when the initiation of the alive situation is recognised --> …

Situații în graful ierarhic: alive Output to be generated on exit: <EXIT-SITUATION time=“…” situation.

Situații în graful ierarhic: alive Output to be generated on exit: <EXIT-SITUATION time=“…” situation. ID=“alive 013” /> … <ending-conditions> <OR> <condition input=”SIGN-OUT” /> <condition input=”LOG-OUT” /> </OR> </ending-conditions> <action-type=”on-exit" to. Do=”generate. XML( EXIT-SITUATION, (time, time()), (situation. ID, *alive. ID))” /> <!– Generates an EXIT-SITUATION signal when the exit from an alive situation is recognised --> </actions> </situation>

Situații în graful ierarhic: awake <situation name="awake" kind-of="alive" > <!– daughter of "alive" -->

Situații în graful ierarhic: awake <situation name="awake" kind-of="alive" > <!– daughter of "alive" --> <variables> <variable type=“static” name=”*awake. ID” /> </variables> <triggering-conditions> <OR> <AND> <condition event. Type=“COMM” module=”LOC” location=“home” proximity=“bedroom" /> <condition event. Type=“COMM” module=”S&V” sound=“awake. Rinking” /> </AND> <AND>… </AND> </OR> </triggering-conditions>

Situații în graful ierarhic: awake Output to be generated: <ENTER-SITUATION module=“INF” time=“ 2014/11/04/7: 30”

Situații în graful ierarhic: awake Output to be generated: <ENTER-SITUATION module=“INF” time=“ 2014/11/04/7: 30” situation. ID=“awake 048” instance. Of=“awake” location=“home” proximity=“bedroom” /> … <actions> <action-type=”on-enter" to. Do=”asign. Value(*awake. ID, generate. Id())” /> <action-type=”on-enter" to. Do=”generate. XML( ENTER-SITUATION, (module, INF), (time, time()), (situation. ID, *awake. ID), (instance. Of, awake)) (location, home), (proximity, bedroom)” /> <! Atentie la specificitatea actiunilor pe conditii… /> </actions> </situation>

BEHAVIOUR codes <BEHAVIOUR beh. ID=“…” beg=“…” end=“…” enter. Situation=“…” prob=“…” /> Ion merge la

BEHAVIOUR codes <BEHAVIOUR beh. ID=“…” beg=“…” end=“…” enter. Situation=“…” prob=“…” /> Ion merge la culcare de obicei la ora 11 seara… <BEHAVIOUR beh. ID=“beh 43” beg=“ 22: 30” end=“ 23: 25” enter. Situation=“sleeping” prob=“ 0. 9” />

Situații în graful ierarhic: awake Output to be generated: <EXIT-SITUATION module=“INF” time=“ 2014/11/04/7: 30”

Situații în graful ierarhic: awake Output to be generated: <EXIT-SITUATION module=“INF” time=“ 2014/11/04/7: 30” situation. ID=“awake 048” instance. Of=“awake” /> … <ending-conditions> <action-type=”? ? ? " to. Do=”asign. Value(*prob, get. Atrib. Value(BEVAVIOUR, prob))” /> <action-type=”? ? ? " to. Do=”asign. Value(*beg, get. Atrib. Value(BEVAVIOUR, beg))” /> <action-type=”? ? ? " to. Do=”asign. Value(*end, get. Atrib. Value(BEVAVIOUR, end))” /> <action-type=”? ? ? " to. Do=”asign. Value(*beh. ID, get. Atrib. Value(BEVAVIOUR, beh. ID))” /> </actions>

Output to be generated: <EXIT-SITUATION module=“INF” time=“ 2014/11/04/7: 30” situation. ID=“awake 048” instance. Of=“awake”

Output to be generated: <EXIT-SITUATION module=“INF” time=“ 2014/11/04/7: 30” situation. ID=“awake 048” instance. Of=“awake” /> <condition prob=“*prob”> <BEHAVIOUR enter. Situation=“sleeping” beh. ID=“*beh. ID” /> <IF var=time() oper=“>=” val=“*beg” /> <IF var=time() oper=“<=” val=“*end” /> <! Nu am mai sesizat nicio miscare un timp T /> <NOT> <ENTER-SITUATION time=… /> </NOT> </condition> </ending-conditions> <action-type=”on-exit" to. Do=”generate. XML( EXIT-SITUATION, (module, INF), (time, time()), (situation. ID, *awake. ID), (instance. Of, awake))” /> </actions> </situation>

 • Se generează similar un ENTER-SITUATION de tip sleeping…

• Se generează similar un ENTER-SITUATION de tip sleeping…