• 220 likes • 354 Views
Project Topics 2007.2 if710 , in1097 , in1098. Jacques Robin. Topics: UML2 Profiles and SPEM2 Process for CBMDSE. A UML2 Profile and SPEM2 Process for the KobrA2 Component-Based Model-Driven Engineering Software (CBMDSE) Methodology Upgrade KobrA to leverage UML2, OCL2, MOF2, SPEM2
E N D
Project Topics 2007.2if710, in1097, in1098 Jacques Robin
Topics: UML2 Profiles and SPEM2 Process for CBMDSE • A UML2 Profile and SPEM2 Process for the KobrA2 Component-Based Model-Driven Engineering Software (CBMDSE) Methodology • Upgrade KobrA to leverage UML2, OCL2, MOF2, SPEM2 • Focus OCL constraints of UML2 Profile and SPEM2 Process • A UML2 Profile and SPEM2 Process for the ORCAS CBMDSE Methodology • Extends KobrA2 Profile and Process with sub-profile and sub-process for simple 2D GUI Modeling • A UML2 Profile and SPEM2 Process for the ORCAS CBMD Multi-Agent Simulation Engineering (CBMDMASE) Methodology • Extends ORCAS CBMDSE Profile with agents, sensors, actuators, environment ... • Views agents as active components whose sensors and actuators are interfaces that internally follow architectural patterns constisting of embedded Automated Reasoning (AR) and Knowledge Base (KB) component assembly • MOF2 meta-model of an OO version of the Fluent Calculus a first-order logic based knowledge representation language for non-monotonic reasoning in MAS • A UML2 Profile and SPEM2 Process for CBMDE of 3D Graphics Components
Topics: Rollerslam MAS Components • MAS simulation of imaginary fusion sports • Motivation: • Potentially very complex MAS environment of fully configurable characterics simulationg common sense domain • Perform MAS experiments comparing MAS and AI techniques • Teach MAS and AI • Assess productivity benefits CBMDE for MAS and MAS-based games Gaelic Football Soccer Australian Football Rollerslam! Handball Rugby Basketball American Football Ice Hockey Slamball Roller Derby
Topics: Rollerslam MAS Components out-track Track Zone Division 24m Trampoline Ramp in-track In-Tramp 45m Field 16m 64,25m 78m Center Circle Bounce Circle Out-Tramp Edge Goal
Topics: Rollerslam MAS Components Basket Goal Ramp Field Edge Wall Inner Trampoline (Ramp) Edge Outer Trampoline Goal Line Offensive Edge Shot Circle Edge Shot Square Defensive Edge Shot Circle
Topics: Rollerslam MAS Components 7m 10m 6m 5m 1.5m 4m 3m 2.5m 1.25m 7m 3m
Low Goal: Touched close hand: 1 pt Clear close hand, touched close foot, touched far hand, touched close hand volley: 2 pts Clear close foot, clear far hand, clear close hand volley: 4 pts Try: 7 pts Clear far foot, clear close foot volley: 8 pts Clear far foot volley: 16 pts High Goal: Close hand high volley: 1 pt Close hand high goal: 2 pts Close foot high volley: 3 pts Close foot high goal: 4 pts Far foot high volley: 6 pts Far high goal: 16 pts Baskets: Tramp hand hoop, simple dunk: 4 pts Ramp hand hoop, alley dunk: 6 pts Far dunk: 8 pts Far hand hoop, tramp foot hoop: 12 pts Ramp foot hoop: 18 pts Hyper hand hoop: 36 pts Hyper foot hoop: 100 pts Laps: 1 passing lap: 16 pts N consecutive passing laps: (N+1)*16 pts 1 rushing lap: 32 pts N consecutive rushing laps: (N+1)*32 pts Topics: Rollerslam MAS Components
Topics: Rollerslam MAS Components • Two players within a 5m radius circle from a third player in possession of the ball can screen each other by: • Pushing or grabbing each other with open hands below the neck (including from the back) and above the waist • Bumping into each other trunk first above the waist • Slapping each other on the arms with open hands • Two players within a 5m radius from a loose ball (in possession of no player) can scramble for the ball by: • Using the same physical contacts allowed for a screen, or • Elbowing each other in the arms or trunk from the front or side • A player can tackle an opponent in possession of the ball by: • Using the same physical contacts allowed for a screen, or • Pushing or grabbing him with open hands below the waist • Bumping into him trunk first below the waist • A player in possession of the ball can counter-tackle an opponent by: • Using the same physical contacts allowed for a tackle, or • Elbowing him in the arms or trunk from the front or side
Topics: Rollerslam MAS Components • A player is in possession of the ball when: • He holds it in one or both hands • He holds it against his trunk with one or both arms • It is within reach of his limbs and out of reach of any other player’s limbs • A player distant from the ball by more than 5m cannot be intentionally pushed, grabbed, hit or bumped into in any way • During a legal tackle, screen or scramble: • A player on the ramp, edge or outer trampoline, can only be pushed, grabbed or bumped into either laterally or towards the goal, • A player on the inner trampoline, can only be pushed, grabbed or bumped into either laterally or towards the ramp, • A player on the out-track can only be pushed, grabbed or bumped into away from the fence • A standing or floored player cannot tackle, screen or scramble with a jumping player, and vice-versa.
Topics: Rollerslam MAS Components • Bi-directional scoring: • Play takes place both in front and behind the goals, with goals scored in both directions • More continuous: • Plays does not stop when points are scored • Ball very rarely goes out of bounds due to the 10m high fence onto which the ball can be freely bounced • More diverse: • Unparalleled diversity of ways to score various amount of points • Integrates moves of handball, soccer, basketball, volleyball, rugby, american football and roller derby • Freer: • Unparalleled freedom for ball handling, positioning and body contacts • More physical: • Hardest body contacts allowed within safety limits • More acrobatic: • With skates and trampoline, jumping ramp and banked track
Topics: Rollerslam MAS Components • More technical: players need to know how to • skate on flat and inclined surfaces, • jump on a trampoline • throw, catch, spike, head and kick the ball • control the ball with feet, trunk and hands • shoot and dunk at baskets • shoot at two different goals with any body part • score tries on a trampoline • dribble opponents using hands, trunk, feet, head, the air and the fence • More tactical: • Mind-boggling diversity of plays with different rewards • Complex screening and counter-screening patterns within a 5m radius of the ball, yet freedom of movement beyond it
Topics: Rollerslam MAS Components LT 11 IR 13 LF 16 LB 3 FB 6 FF 18 CT 9 BT 1 GK 0 CB 4 HB 8 HF 10 CF 15 FT 19 IB 20 FB 5 FF 17 IT 21 RB 2 RF 14 RV 12 IR 22 IC 23 IF 24 RT 7
Topics: Rollerslam MAS Components • Rollerslam 1.0: • 6 student project of 4 graduate courses during 2007.1 • 2D • Distributed components: • 1 Generic MAS Communication Infrastructure • 1 Game Physics Simulator Agent • 1 Umpire Agent (Rule Simulator) • 2 Coach Agents • 40 Player Agents • Domain Model Defined as Domain Agents’ Percepts and Actions • N Game Displays • Oversimplified agent percepts and actions • Oversimplified game physics simulation • Oversimplified rules • Trivial player agent behavior • Single granularity tracing GUIs for: agent actions, percepts • PIM: UML2 / FLUX (not KobrA2) • Code: Java / Prolog
Topics: Rollerslam MAS Components • Rollerslam 2.0: • ?? student project of 3 graduate courses during 2007.1 • More realistic 2D agent percepts and actions • More realistic 2D game physics simulation • More realistic and complete set of 2D rules • Smarter 2D player tactical behavior • Systematic multi-granularity tracing GUI • High-level components • Agent’s percepts, actions) • Agent’s internal components (volatile KB, rule application) • PIM: ORCAS CBMDE / FLUX • Code: Java / Prolog
Topics: Rollerslam MAS Components • Rollerslam 3.0: • ?? student project of 3 graduate courses during 2007.1 • 3D • 3D agent percepts and actions • 3D game physics simulation • Complete 3D rules • 3D player behavior • 3D Game Display • 3D Systematic multi-granularity tracing GUI • High-level components • Agent’s percepts, actions • Agent’s internal components (volatile KB, rule application) • PIM: ORCAS CBMDMASE • Code: Java / Prolog
Topics Allocation • ORCAS UML2 Profile (Vinicius, Joabe, Pablo, FMP) • KobrA2 Profile w/ OCL constraints (Vinicius, Pablo) 15/11 • Extension with GUI Modeling Profile (Rafael, FMP) 22/11 • Extension with Agents as active KobrA2 components with Sensors and Effectors are required Interfaces and internal assembly following agent architectural patterns (Vinicius, Pablo) 29/11 • Extension with KB components as OO fluent calculus, substituting terms by UML2 objects and formulas by OCL2 constraints (Vinicius, Pablo) 09/12 • Extension with 2D Graphics Modeling Profile (Joabe, FMP) 29/11 • Extension with 3D Graphics Modeling Profile (Joabe, FMP) 09/12 • ORCAS SPEM2 Process (Marcus, Breno) • KobrA2 Process 22/11 • Extention w/ GUI modeling steps 29/11 • Extension w/ stepd to model agents and their social role structures, interaction protocols and internal Automated Reasoning (AR) and Knowledge Bases (KB) component assembly patterns (Vinicius, Pablo) 09/12 • Extension w/ steps to model KB with an OO version of the fluent calculus, substituting terms by UML2 objects and formulas by OCL2 constraints (Vinicius, Pablo) 16/12 • Extension w/ steps to model 2D Graphics Components (Joabe, FMP) 09/01 • Extension w/ steps to model 3D Graphics Components (Joabe, FMP) 21/01
Topics Allocation • Top-level simulation component (Maurelio) • KobrA2 PIM (15/11) • Upgraded Java Implementation (22/11) • ORCAS PIM (16/12) • Upgraded Java Implementation (23/12) • Agent Communication Infra-Structure Component (Maurelio) • KobrA2 PIM (15/11) • Upgraded Java Implementation (22/11) • ORCAS PIM (16/12) • Upgraded Java Implementation (23/12)
Topics Allocation • Rollerslam Agent Percepts and Actions (Gleibson, Sidney, Cleyton) • KobrA2-FLUX PIM for 2D simulation 15/11 • Java-FLUX implementation for 2D simulation 22/11 • ORCAS PIM for 3D simulation 16/12 • Java-FLUX implementation for 3D simulation 23/12 • Rollerslam Game Physics (Gleibson, Sidney, Cleyton) • Actions preconditions: Gleibson, Cleyton • Actions direct effects: Sidney, Cleyton • Ramifications: Cleyton • For each sub-task: • KobrA2-FLUX PIM for 2D simulation 29/11 • Java-FLUX implementation for 2D simulation 09/12 • ORCAS PIM for 3D simulation 14/01 • Java-FLUX implementation for 3D simulation 23/01
Topics Allocation • Rollerslam Umpire (Fábio, Thiago, Pablo) • KobrA2-FLUX PIM for 2D simulation 29/11 • Java-FLUX implementation for 2D simulation 09/12 • ORCAS PIM for 3D simulation 14/01 • Java-FLUX implementatio for 3D simulation 23/01 • Rollerslam Player Behavior (Vinicius, d’Oleron, Rilton, Adilson, Edivaldo, Maurelio) • withBall Behavior (Vinicius, Maurelio) • nearBall Offense Behavior (d’Oleron, Maurelio) • nearBall Defense Behavior (Rilton, Maurelio) • nearLooseBall Behavior (Adilson, Maurelio) • farBallBehavior (Offense, Defense, LooseBall, Edivaldo, Maurelio) • For each subtask: • KobrA2-FLUX PIM for 2D simulation 29/11 • Java-FLUX implementation for 2D simulation 09/12 • ORCAS PIM for 3D simulation 14/01 • Java-FLUX implementatio for 3D simulation 23/01
Topics Allocation • Game Display (Joabe, Breno) • 2D Graphics Profile PIM 23/12 • Java 2D Implementation 07/01 • 3D Graphics Profile PIM 16/01 • Java 3D or DirectX Implementation 23/01 • Agent Reasoning Tracing (Rafael, Weslei) • Trace Driver of Agent A (Agent’s A team, Weslei) • Trace GUI (Rafael, Weslei) • Trace Generator (Rafael, Agent’s A team, Weslei) • For each subtask: • KobrA2-FLUX PIM for 2D simulation 29/11 • Java-FLUX implementation for 2D simulation 09/12 • ORCAS PIM for 3D simulation 14/01 • Java-FLUX implementation for 3D simulation 23/01 • Integration Testing: (Maureli, Breno, Weslei) 28/01