1 / 36

Self-Adaptive Software Application Development SHAGE : A Framework for Self-Adaptive Software

Self-Adaptive Software Application Development SHAGE : A Framework for Self-Adaptive Software. Sooyong Park Computer Science and Engineering Sogang University sypark@sogang.ac.kr. Contents. Software Systems Engineering Lab.(SSEL) at Sogang University

kedem
Download Presentation

Self-Adaptive Software Application Development SHAGE : A Framework for Self-Adaptive Software

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Self-Adaptive Software Application DevelopmentSHAGE : A Framework for Self-Adaptive Software SooyongPark Computer Science and Engineering Sogang University sypark@sogang.ac.kr

  2. Contents • Software Systems Engineering Lab.(SSEL) at SogangUniversity • SHAGE(Self Healing, Adaptive, and Growing Environment) • Applications: Robocode, Service Robot (1, 2) • Issues

  3. Sogang University

  4. Software Systems Engineering Laboratory Ph.D Students : 8( 5 full-time, 3 Part-Time) Master Students : 8 (all full-time)

  5. On-Going Projects • Self-Healing, Adapt, and Growing Environment(SHAGE) for Service Robot : 2004 – 2012 • Self-Adaptive software for Mobile Device : 2007 – 2010 • Dynamic Product Line Engineering feasibility study: 2006-2008

  6. SHAGE Project : Background • In 2003, National Project (Frontier Project) was launched by KIST. • The worldwide population of elderly people is rapidly growing and is set to become a major problem in the future. • This can lead to a huge market for assistive robots. • In this context, the intelligent service robot for the elderly, called T-Rot, was initiated at Center for Intelligent Robotics (CIR) of KIST.

  7. Research Motivation Malfunction User’s new needs newEnvironment LimitedResources Self-Healing, Adaptive, and Growing Technologies for Intelligent Robots

  8. Example – (1) PathPlanner MapBuilder Localizer MontionController AutoMove LaserProxy VisionProxy SonarProxy SkinProxy • Need for safety: an old man says “move carefully!” • During a party: a lot of unrecorded moving objects Quality requirement:Don’t care execution time, but avoidall possible collisions Reconfigured Architecture:ready to use various sensors and tomake a map by using the sensors.

  9. Example – (2) PathPlanner MapBuilder Localizer MontionController AutoMove LaserProxy • Need for agility: an old man says “move quickly!” • The old man is home alone: no unrecorded object Quality requirement:Short response time, Shortexecution time, optimize use ofbatteries. Reconfigured Architecture:ready to use one sensor(laser). It cannot avoid (unrecorded) moving objects

  10. Overall Approach Runtime Process

  11. Five Phases • Detection Phase • Monitors environmental situations that need adaptation. • Planning Phase • Establishes a new plan(ex. Architectural changes) associated with the detected situations. • Execution Phase • Applies the plan to the system. • Evaluation Phase • Estimates the effectiveness of the plan compared to the goals. • Learning Phase • Learns and accumulates the estimated results.

  12. Detection Phase GoalSpecification Environment Identify current situations from an environment based on specified goals SituationMonitoring Situations The situations that needs adaptation

  13. Planning Phase Decides an adaptation plan based on the situation and the learned planning table Situations DecisionMaking PlanningTable ReconfigurationDecisions The decided plan

  14. Execution Phase ReconfigurationDecisions Applies the plan to the system Reconfiguring The changed system ArchitecturalConfiguration

  15. Evaluation Phase Estimates rewards based on the result of the system execution and the specified goals ArchitecturalConfiguration Evaluating GoalSpecification The estimated rewards Rewards

  16. Learning Phase Rewards Learns the result and updates the planning table Learning PlanningTable

  17. SHAGE Overall Architecture

  18. Application 1 : Robocode Simulator

  19. Robocode • IBM developed Fighting Robot game SW • Basic Library and Simulator are provided • Competitions among various algorithms .

  20. Robocode에서의 실험 수행

  21. Role Structure of Robot Targeting Strategy Firing Strategy Maneuver RobotBody Radar

  22. 역할, 포트 기반의 아키텍처에 기초한 동적 재구성 Firing Radar Maneuver Targeting HeadOnTargeting NewRobot AdvancedTargeting LinearManeuver LinearTargeting AdvancedTargeting LinearTargeting Targeting Strategy Radar Targeting Strategy Targeting Strategy Targeting Strategy Targeting Strategy RobotBody Firing Strategy Maneuver Targeting Strategy Targeting Strategy Repository Candidate components

  23. Experiment Result(1)

  24. Experiment Result(2)

  25. Case 2: Service Robot

  26. Self-Adaptation(Unknown Obstacle)

  27. Self-Tuning (Resource Changes)

  28. Optimized Component Diployment based on Model knowledge Vision SBC Main SBC

  29. Self-adaptive and tuning

  30. New Research Topics • Self-Adaptive on Mobile Devices(2007) Add TTS(Text-to-Speech) and ASR(Automatic Speech Recognition) When the LCD is broken

  31. New Research Topics At night Based on brightness, Under sunlight

  32. Issues • Currently, self-adaptive SW is developed based on existing SW • Kind of reverse eng. • Prepare scenario, strategy, possible solutions • Do not have systematic method to build self-adaptive software • Traditional SW development + X • One possibility is to learn from SPL approach

  33. Software Product Lines F1 F6 F4 F5 Product-line architecture Feature Model Component set F0 Mandatory features VF2 F3 Mapping Optional features Alternative features VF7 VF8 Feature Selection Instantiation ... Product 1 Product 2 Product n

  34. Dynamic Product Lines F1 F6 F4 F5 Product-line architecture Feature Model Component set F0 Mandatory features VF2 F3 Mapping Optional features Alternative features VF7 VF8 At Runtime Feature Selection Instantiation ... Product 1 Product 2 Product n

  35. Conclusions • Self-Adaptive SW approach can be a good solution to separate control complexity at design time in Robot SW. • Overall framework for test-bed has been established but need a lot in depth work for each phase • SPL can be helpful in development of Self-Adaptive SW.

More Related