vasco amaral universidade nova de lisboa unl vasco amaral
play

. Vasco Amaral Universidade Nova de Lisboa (UNL) - PowerPoint PPT Presentation

. Vasco Amaral Universidade Nova de Lisboa (UNL) vasco.amaral@di.fct.unl.pt Vasco Amaral, 24. April 2006 Self Introduction - p. 1/19 Overview Overview Overview Overview Who am I? Who am I? Projects involved PHEASANT PHEASANT


  1. . Vasco Amaral Universidade Nova de Lisboa (UNL) vasco.amaral@di.fct.unl.pt Vasco Amaral, 24. April 2006 Self Introduction - p. 1/19

  2. Overview Overview Overview ● Overview ■ Who am I? Who am I? ■ Projects involved PHEASANT PHEASANT Pheasant BATIC 3 S BATIC c 3 s ■ What do I expect from CAMPaM? Position Vasco Amaral, 24. April 2006 Self Introduction - p. 2/19

  3. Who am I? Who am I? Overview ■ 1998 Graduated in Computer Science at IST/UTL (Technical Who am I? ● Who am I? University of Lisbon) PHEASANT ■ 1999 Worked as software engineer at CERN Geneva Pheasant (Switzerland) for the ATLAS experiment. BATIC c 3 s ■ 2000-2003 Worked at DESY Hamburg(Germany) Position ■ 2005 Defended Phd. at the University of Mannheim (Germany) ■ Presently Assistant Professor at FCT/UNL (New University of Lisbon) Recent interests: MDA, DSL/DSM , Model Transformation Vasco Amaral, 24. April 2006 Self Introduction - p. 3/19

  4. Context: High Energy Physics(HEP) Big and complex machines to look for fundamental particles. Overview Who am I? PHEASANT ● Context: High Energy Physics(HEP) ● Data Mining ● Motivation Pheasant BATIC c 3 s Position Vasco Amaral, 24. April 2006 Self Introduction - p. 4/19

  5. Data Mining Overview Reconstruction Who am I? Result Generation Pattern Match PHEASANT ● Context: High Energy # Physics(HEP) Run ● Data Mining ● Motivation Pheasant BATIC c 3 s Event Position Track Vertex Vasco Amaral, 24. April 2006 Self Introduction - p. 5/19

  6. Motivation Overview ■ Problem: Who am I? ◆ Coding with a GPL PHEASANT Twists the way the user thinks about his data. ● Context: High Energy Physics(HEP) Error prone (excessive work debbuging) ● Data Mining ◆ Steep learning curve for beginners (2/3): ● Motivation Pheasant Demands good programming skills. BATIC c 3 s knowing data physical/logical layout. Mastering the utility libraries (typically legacy Position systems). ■ We want to increase the user productivity: ◆ Getting a less steep learning curve. ◆ Reduce the error rate. ◆ Reduce the time spent on query generation. Vasco Amaral, 24. April 2006 Self Introduction - p. 6/19

  7. PHEASANT (PHysicist’s EASy ANalysis Tool) Overview Who am I? PHEASANT Pheasant ● PHEASANT (PHysicist’s EASy ANalysis Tool) ● Semantics of the language ● Type System ● Algebraic Operators ● Algebraic Operators ● Algebraic Operators ● Overview: Query transformation process BATIC c 3 s Position Vasco Amaral, 24. April 2006 Self Introduction - p. 7/19

  8. Semantics of the language [[Query]] Overview Who am I? Query Plan PHEASANT Visual Syntax Semantics (Algebra) Pheasant ● PHEASANT (PHysicist’s EASy ANalysis Tool) ● Semantics of the language ● Type System ● Algebraic Operators ● Algebraic Operators ■ Visual language defined: ● Algebraic Operators ● Overview: Query Translational semantics into algebra. transformation process Advantage of reusing optimization techniques from the BATIC c 3 s Database Management Systems area. Position ■ Extended NF2 Algebra defined with denotational semantics. Vasco Amaral, 24. April 2006 Self Introduction - p. 8/19

  9. Type System Overview ■ Basic types: Float, Bool, Integer, String Who am I? ■ Bulk type: { τ } PHEASANT ■ Tuple: [ a 1 : τ 1 ,..., a 2 : τ 2 ] Pheasant ● PHEASANT (PHysicist’s ■ Sub-Typing: τ ≤ τ ′ ⇒ { τ } ≤ { τ ′ } , [ a 1 : τ 1 ,..., a n : τ n ] ≤ [ a 1 : τ ′ 1 ,..., a k : τ ′ EASy ANalysis Tool) k ] ● Semantics of the language ● Type System ■ Example: ● Algebraic Operators Event = ● Algebraic Operators ● Algebraic Operators [ id : Integer , ● Overview: Query transformation process particle : { Particle } , BATIC c 3 s vertex : { Vertex } ] Position Particle : [ id : Integer , mass , x , y , z : Float , Energy : Float ] Vasco Amaral, 24. April 2006 Self Introduction - p. 9/19

  10. Algebraic Operators � pred σ pred { τ } → { τ } Selection Overview pred : τ → B ool , F ( pred ) ≤ A ( τ ) � pred Who am I? τ ≤ [] PHEASANT { τ 1 }×{ τ 2 } → { [ tuple 1 : τ 1 , tuple 2 : τ 2 ] } Join pred : τ 1 , τ 2 → B ool , F ( pred ) ≤ A ( τ 1 ) ∪ A ( τ 2 ) Pheasant ● PHEASANT (PHysicist’s τ i ≤ [] EASy ANalysis Tool) ● Semantics of the language { τ 1 }×{ τ 2 } → { [ tuple 1 : τ 1 , tuple 2 : τ 2 ] } Outer-Join ● Type System pred : τ 1 , τ 2 → B ool , F ( pred ) ≤ A ( τ 1 ) ∪ A ( τ 2 ) ● Algebraic Operators ● Algebraic Operators τ i ≤ [] ● Algebraic Operators Union ● Overview: Query ∪ transformation process { τ }×{ τ } → { τ } BATIC c 3 s Intersection ∩ { τ }×{ τ } → { τ } Position Difference \ { τ }×{ τ } → { τ } Vasco Amaral, 24. April 2006 Self Introduction - p. 10/19

  11. Algebraic Operators { τ } → { τ ′} Unnesting Overview µ name : path Who am I? pred pred : τ , τ ′ → { B ool } PHEASANT i f τ = [ a 1 : τ 1 ,..., an : τ n , path : τ 0 ] , 0 < n , τ 0 ≤ Pheasant τ ′ = [ a 1 : τ 1 ,..., an : τ n ] ◦ [ name : τ 0 ] ● PHEASANT (PHysicist’s name = ζ () EASy ANalysis Tool) { τ } → { τ ′} ● Semantics of the language Outer-Unnest = µ name : path ● Type System ● Algebraic Operators pred : τ , τ ′ → B ool pred ● Algebraic Operators ● Algebraic Operators i f τ = [ a 1 : τ 1 ,..., an : τ n , path : τ 0 ] , 0 < n , ¬ ( τ 0 ≤ []) ● Overview: Query transformation process τ ′ = [ a 1 : τ 1 ,..., an : τ n ] ◦ [ name : τ 0 ] name = ζ () BATIC c 3 s { τ 1 } → { τ 2 } Reduce if ⊕ = ∪ : ∆ ⊕ / head Position pred { τ 1 } → τ 2 if ⊕ = max , min , sum ,... : head : τ 1 → τ 2 pred : τ 1 → B ool , F ( pred ) ≤ A ( τ 1 ) ∪ A ( τ 2 ) Vasco Amaral, 24. April 2006 Self Introduction - p. 11/19

  12. Algebraic Operators < evt , π − , mytrans , π + > ∆ ∪ / λ ( evt , π − , mytrans , π + ) .< evt , π − , mytrans , π + > Overview pred ( evt , π − , mytrans , π + )( true ) Who am I? PHEASANT ∆ ∪ / λ ( evt , π − , π + ) .< evt , π − , mytrans , π + , mytrans = Trans f orm > λ ( evt , π − , mytrans , π + ) . pred ( ′ π + . mass + π − . mass > 0 . 5 ′ ) Pheasant ● PHEASANT (PHysicist’s < evt , π + , π − > EASy ANalysis Tool) ● Semantics of the language ● Type System ∆ ∪ / λ ( < tuple 1 , tuple 2 > ) . ([ evt : tuple 1 . evt ] ◦ ( tuple 1 / evt ) ◦ ( tuple 2 / evt )) λ ( < tuple 1 , tuple 2 > ) . ( true ) ● Algebraic Operators � tuple 1 . evt . id = tuple 2 . evt . id ● Algebraic Operators ● Algebraic Operators < tuple 1 , tuple 2 > ● Overview: Query transformation process BATIC c 3 s Position ∆ ∪ / λ ( evt , π − ) .< evt , π − > ∆ ∪ / λ ( evt , π + ) .< evt , π + > λ ( evt , π − ) . ( true ) λ ( evt , π + ) . ( true ) π − π + π λ ( evt ) . [ π − : evt . Particle ] π λ ( evt ) . [ π + : evt . Particle ] λ ( evt , π − ) . ( pred ( ′ energy < 0 ′ )) λ ( evt , π + ) . ( pred ( ′ energy > 0 ′ )) evt evt [[ Q Event ]] E [[ Q Event ]] E Vasco Amaral, 24. April 2006 Self Introduction - p. 12/19

  13. Overview: Query transformation process Overview Concrete Components Who am I? PHEASANT Spatial Relationship Graph Pheasant Visual Editor ● PHEASANT (PHysicist’s EASy ANalysis Tool) ● Semantics of the language Abstract Syntax Graph ● Type System ● Algebraic Operators ● Algebraic Operators ● Algebraic Operators Abstract Syntax Tree ● Overview: Query Plan Generator transformation process BATIC c 3 s Query Plan Tree Position Optimizer Optimized Plan Tree Code Generator Target Source Code Vasco Amaral, 24. April 2006 Self Introduction - p. 13/19

  14. BATIC c 3 s ■ Collaboration with the SMV group (Geneva University), Overview CMS experiment at CERN as Use Case. Who am I? ■ Build a methodology, specific to the domain of complex PHEASANT control systems, for specifying, building and testing 3D GUIs Pheasant BATIC c 3 s efficiently. ● BATIC c 3 s ● Why? ● Goal ● Model Languages ● Base Modelig formalism Position Vasco Amaral, 24. April 2006 Self Introduction - p. 14/19

  15. Why? Why? Overview ■ Costly Who am I? ■ Difficult PHEASANT Pheasant ■ Error prone BATIC c 3 s We observe High complexity coming from : ● BATIC c 3 s ■ Number of components ● Why? ● Goal ● Model Languages ■ Hierarchical interaction between them ● Base Modelig formalism ■ Large number of parameters to be controled at the same Position time Vasco Amaral, 24. April 2006 Self Introduction - p. 15/19

  16. Goal Goal Overview ■ Specify system without the need of understand Who am I? programming logic: PHEASANT Structure and behaviour of the system and its GUI; Pheasant User profiles and task models; BATIC c 3 s ● BATIC c 3 s ■ Translate this specification to a model: ● Why? ● Goal Executable; ● Model Languages ● Base Modelig formalism Verifiable; Position Derive tests for it; ■ Automatically generate a prototype. Vasco Amaral, 24. April 2006 Self Introduction - p. 16/19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend