21st July 2014. My presentation at MORSE 2014 (http://st.inf.tu-dresden.de/MORSE14) about a family of Domain-Specific Languages for specifying Civilian Missions of Multi-Robot Systems.
This document discusses a project to connect the Emergent neural simulator to robotic platforms using ROS (Robot Operating System). The goals are to provide a general communication pathway between Emergent and robots and implement it for simple robot platforms. Key decisions include using ROSBridge on a cloud server for portability across platforms and connecting Emergent to ROS messages through a Java ROSBridge connector. A demonstration shows an Android app receiving motion commands from Emergent and sending photos to it via ROS topics to control an iRobot Create robot. The results found ROS support for the Create to be weak but connecting a Rovio robot to ROS worked well. Connecting software to robots in a general way remains non-trivial.
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
The document discusses industrial robot applications and programming. It describes how robots are used for material handling, assembly, processing and inspection operations that are hazardous, repetitive or difficult for humans. It then covers various types of material handling applications including pick and place, palletizing, machine loading/unloading and stacking operations. The document also discusses robot programming methods, languages, accuracy, repeatability and resolution.
The document discusses variables in VB programming, including global variables which are declared at the beginning and accessible throughout a program, local variables which are declared within a program block and only accessible within that block, and constants which represent values that do not change throughout a program. It provides examples of different variable data types and best practices for naming variables.
EclipseCon Eu 2015 - Breathe life into your Designer!melbats
You have your shiny new DSL up and running thanks to the Eclipse Modeling Technologies and you built a powerful tooling with graphical modelers, textual syntaxes or dedicated editors to support it. But how can you see what is going on when a model is executed ? Don't you need to simulate your design in some way ? Wouldn't you want to see your editors being animated directly within your modeling environment based on execution traces or simulator results?
The GEMOC Research Project designed a methodology to bring animation and execution analysis to DSLs. The companion technologies required to put this in action are small dedicated components (all open-source) at a "proof of concept" maturity level extending proven components : Sirius, Eclipse Debug, Xtend making such features within the reach of Eclipse based tooling. The general intent regarding those OSS technologies is to leverage them within different contexts and contribute them to Eclipse once proven strong enough. The method covers a large spectrum of use cases from DSLs with a straightforward execution semantic to a combination of different DSLs with concurrent execution semantic. Any tool provider can leverage both the technologies and the method to provide an executable DSL and animated graphical modelers to its users enabling simulation and debugging at an early phase of the design.
This talk presents the approach, the technologies and demonstrate it through an example: providing Eclipse Debug integration and diagram animation capabilities for Arduino Designer (EPL) : setting breakpoints, stepping forward or backward in the execution, inspecting the variables states... We will walk you through the steps required to develop such features, the choices to make and the trade-offs involved. Expects live demos with simulated blinking leds and a virtual cat robot !
Lect 1. introduction to programming languagesVarun Garg
A programming language is a set of rules that allows humans to communicate instructions to computers. There are many programming languages because they have evolved over time as better ways to design them have been developed. Programming languages can be categorized based on their generation or programming paradigm such as imperative, object-oriented, logic-based, and functional. Characteristics like writability, readability, reliability and maintainability are important qualities for programming languages.
This document describes the development of an agricultural robot sprayer and evaluation of different user interfaces for human-robot interaction. It discusses the technical specifications of the robot platform used and modifications made to integrate a sprayer. Various user interface designs were implemented and tested in field experiments, including web-based and augmented reality interfaces. Preliminary findings showed that interfaces providing views from multiple cameras led to better task performance and fewer collisions compared to a single camera view. Further work is still needed to address additional technical challenges of agricultural robotics and improve the usability of interfaces.
This document discusses a project to connect the Emergent neural simulator to robotic platforms using ROS (Robot Operating System). The goals are to provide a general communication pathway between Emergent and robots and implement it for simple robot platforms. Key decisions include using ROSBridge on a cloud server for portability across platforms and connecting Emergent to ROS messages through a Java ROSBridge connector. A demonstration shows an Android app receiving motion commands from Emergent and sending photos to it via ROS topics to control an iRobot Create robot. The results found ROS support for the Create to be weak but connecting a Rovio robot to ROS worked well. Connecting software to robots in a general way remains non-trivial.
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
The document discusses industrial robot applications and programming. It describes how robots are used for material handling, assembly, processing and inspection operations that are hazardous, repetitive or difficult for humans. It then covers various types of material handling applications including pick and place, palletizing, machine loading/unloading and stacking operations. The document also discusses robot programming methods, languages, accuracy, repeatability and resolution.
The document discusses variables in VB programming, including global variables which are declared at the beginning and accessible throughout a program, local variables which are declared within a program block and only accessible within that block, and constants which represent values that do not change throughout a program. It provides examples of different variable data types and best practices for naming variables.
EclipseCon Eu 2015 - Breathe life into your Designer!melbats
You have your shiny new DSL up and running thanks to the Eclipse Modeling Technologies and you built a powerful tooling with graphical modelers, textual syntaxes or dedicated editors to support it. But how can you see what is going on when a model is executed ? Don't you need to simulate your design in some way ? Wouldn't you want to see your editors being animated directly within your modeling environment based on execution traces or simulator results?
The GEMOC Research Project designed a methodology to bring animation and execution analysis to DSLs. The companion technologies required to put this in action are small dedicated components (all open-source) at a "proof of concept" maturity level extending proven components : Sirius, Eclipse Debug, Xtend making such features within the reach of Eclipse based tooling. The general intent regarding those OSS technologies is to leverage them within different contexts and contribute them to Eclipse once proven strong enough. The method covers a large spectrum of use cases from DSLs with a straightforward execution semantic to a combination of different DSLs with concurrent execution semantic. Any tool provider can leverage both the technologies and the method to provide an executable DSL and animated graphical modelers to its users enabling simulation and debugging at an early phase of the design.
This talk presents the approach, the technologies and demonstrate it through an example: providing Eclipse Debug integration and diagram animation capabilities for Arduino Designer (EPL) : setting breakpoints, stepping forward or backward in the execution, inspecting the variables states... We will walk you through the steps required to develop such features, the choices to make and the trade-offs involved. Expects live demos with simulated blinking leds and a virtual cat robot !
Lect 1. introduction to programming languagesVarun Garg
A programming language is a set of rules that allows humans to communicate instructions to computers. There are many programming languages because they have evolved over time as better ways to design them have been developed. Programming languages can be categorized based on their generation or programming paradigm such as imperative, object-oriented, logic-based, and functional. Characteristics like writability, readability, reliability and maintainability are important qualities for programming languages.
This document describes the development of an agricultural robot sprayer and evaluation of different user interfaces for human-robot interaction. It discusses the technical specifications of the robot platform used and modifications made to integrate a sprayer. Various user interface designs were implemented and tested in field experiments, including web-based and augmented reality interfaces. Preliminary findings showed that interfaces providing views from multiple cameras led to better task performance and fewer collisions compared to a single camera view. Further work is still needed to address additional technical challenges of agricultural robotics and improve the usability of interfaces.
This document discusses robot programming methods. It describes different types of robot programming including joint-level, robot-level, and high-level programming. It also covers various robot programming methods such as manual, walkthrough, leadthrough, and offline programming. Specific programming languages and their applications are also summarized.
The document summarizes a Scala meetup discussing functional programming concepts and techniques. It covers topics like monadic IO, monad transformers, free monads, tagless final encoding, and domain specific languages. Sample code is provided demonstrating storing a file using monadic IO and rewriting it without side effects using equational reasoning.
This document discusses model executability within the GEMOC Studio. It provides an overview of the GEMOC initiative and projects, which aim to coordinate research on globalizing modeling languages. The GEMOC Studio allows users to design executable domain-specific modeling languages and edit, simulate, and animate heterogeneous models. Breakthroughs include defining modular and explicit semantics for modeling languages and integrating languages for heterogeneous model coordination. The document presents examples of debugging tools developed using the GEMOC Studio.
SiriusCon 2015 - Breathe Life into Your Designer!melbats
You have your shiny new DSL up and running thanks to the Eclipse Modeling Technologies and you built a powerful tooling with graphical modelers, textual syntaxes or dedicated editors to support it. But how can you see what is going on when a model is executed ? Don't you need to simulate your design in some way ? Wouldn't you want to see your editors being animated directly within your modeling environment based on execution traces or simulator results?
The GEMOC Research Project designed a methodology to bring animation and execution analysis to DSLs. The companion technologies required to put this in action are small dedicated components (all open-source) at a "proof of concept" maturity level extending proven components : Sirius, Eclipse Debug, Xtend making such features within the reach of Eclipse based tooling. The general intent regarding those OSS technologies is to leverage them within different contexts and contribute them to Eclipse once proven strong enough. The method covers a large spectrum of use cases from DSLs with a straightforward execution semantic to a combination of different DSLs with concurrent execution semantic. Any tool provider can leverage both the technologies and the method to provide an executable DSL and animated graphical modelers to its users enabling simulation and debugging at an early phase of the design.
This talk presents the approach, the technologies and demonstrate it through an example: providing Eclipse Debug integration and diagram animation capabilities for Arduino Designer (EPL) : setting breakpoints, stepping forward or backward in the execution, inspecting the variables states... We will walk you through the steps required to develop such features, the choices to make and the trade-offs involved. Expects live demos with simulated blinking leds and a virtual cat robot ! This talks presents also xCapella an industrial use case onwhich the Gemoc methodology was applied.
This talks was presented at SiriusCon 2015 in collaboration with Jérôme Le Noir from Thales.
The Arduino Designer documentation is available on : https://github.com/mbats/arduino/wiki/Documentation
The document provides an introduction to robotics, including definitions of key terms:
- A robot is an automatically controlled, reprogrammable device designed to perform tasks normally done by humans.
- Robots are classified based on their drive technology, work envelope/coordinate geometry, and motion control methods.
- Robotic systems have components like manipulators, end effectors, actuators, sensors, controllers, and software to allow various applications in manufacturing and other industries.
Simulation of robotic positions and programmingRachit Laharia
This document discusses simulation and programming of robotic positions. It describes using simulation software to test robotic systems virtually before implementing them in the real world. This allows exploring design options while avoiding risks to the physical robot. The document also covers different types of robotic programming including joint-level, robot-level, and high-level programming. It compares online and offline programming methods and discusses advantages and disadvantages of techniques like teach pendants and lead-through programming.
This document provides an overview of an introduction to robotics lecture. It outlines the course structure, which will include weekly live lectures and practical sessions. The first week will have a two-hour lecture and two-hour introductory practical session. Subsequent weeks will follow a regular schedule of one-hour lectures on Wednesdays and compulsory three-hour practical sessions on Wednesdays and Fridays. The document also provides summaries of key topics that will be covered over the course of the lectures, including robot motion, sensors, probabilistic robotics, localization, and simultaneous localization and mapping.
The document describes the RoboCupRescue 2006 Robot League Team from Iran called MRL. It discusses three rescue robots they have designed - two for indoor use and one for outdoor/rough terrain. Their goal is to develop practical rescue robots that can help with search and rescue operations during earthquakes, which frequently occur in Iran. Team members are from the Mechatronics Research Laboratory and are working on various research areas related to autonomous mobile robots like localization, mapping, navigation, and search algorithms.
The document discusses a cloud robotics platform called Rospeex that provides speech recognition and text-to-speech services to enable multilingual conversational abilities for robots, it has been used by over 40,000 developers, and analyzes usage data to identify opportunities to optimize the platform like introducing caching to reduce communication time for frequently used sentences.
The document discusses various methods of robot programming including manual programming, walkthrough programming, leadthrough programming, and offline programming. It also covers different robot languages such as VAL, AL, AML, MCL, and RAIL as well as features of a teach pendant and basic modes of robot operation including monitor, edit, and run modes. Common robot motions, sensors, and welding patterns are also explained.
Robot programming , accuracy ,repeatability and applicationvishaldattKohir1
This document discusses robot programming methods, accuracy and repeatability, and applications. It covers three main robot programming methods: lead-through programming, offline programming, and computer-like programming. It also defines resolution, accuracy, and repeatability as they relate to robot positioning. Finally, it outlines several common industrial robot applications including material handling, processing operations like welding and painting, and assembly.
PromoBox in Practice: A Case Study on the GISMO Domain-Specific Modelling Lan...Tom Mens
This document discusses applying the ProMoBox framework to the GISMO domain-specific modelling language (DSML). ProMoBox shifts verification tasks to the DSM level by generating separate sublanguages for the DSML. It was applied to GISMO by annotating and simplifying the metamodel. Properties written in the GISMO syntax could then be checked and counterexamples shown. Future work includes reducing verification time/space and broadening language support while minimizing simplification requirements.
Unit IV Solved Question Bank- Robotics EngineeringSanjay Singh
This Question Bank for Robotics Engineering is only for academic purpose and not for any commercial use. Students of Anna University and other Universities can use it for reference and knowledge.
This document discusses robotics technology and its various components and applications. It begins with defining robots and robotics. It then covers the different types of robots categorized by their general concept, application, locomotion/kinematics. The core components of robots like manipulators, end effectors, actuators, sensors and controllers are explained. Popular robot configurations and programming languages are also outlined. The wide range of applications of robotics technology in industries, household, medical, military, space and more are highlighted. Both the advantages like precision, endurance and disadvantages like costs, power needs are touched upon. The future developments in various domains like construction, rescue and caregiving are envisioned.
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Benoit Combemale
Talk given at the 8th ACM SIGPLAN Int'l Conf. on Software Language Engineering (SLE 2015), Pittsburgh, PA, USA on October 27, 2015. Preprint available at https://hal.inria.fr/hal-01182517
Unit IV.pptx Robot programming and LanguagesBalamech4
1. The document discusses robot trajectory planning, programming languages, and kinematics. It describes different levels of robot programming languages from microprocessor to task-oriented levels.
2. Common robot programming languages are described including VAL, a popular language developed for PUMA robots. A simple VAL program example to move grip and transport an object is provided.
3. Key concepts in robot kinematics like forward and inverse kinematics are explained, which relate joint angles to world coordinates and vice versa. Introduction to the robot operating system ROS is also given.
This document provides an overview of the history and development of the Unified Modeling Language (UML) and Foundational UML (fUML) standard for executable modeling. It discusses how UML evolved from its origins in object-oriented analysis and design in the 1980s-1990s to add formal execution semantics definitions. fUML and the Action Language for Foundational UML (Alf) provide a computationally complete subset of UML with a defined execution model, addressing UML's previous lack of precise semantics. The document outlines the key components and implementations of fUML and Alf and their role in specifying UML's structural and behavioral semantics formally.
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...Ivano Malavolta
The document discusses conducting experiments on the software architecture of robotic systems. It describes three experiments:
1) Identifying and evaluating "green" architectural tactics for energy-efficient robotics software by mining the ROS ecosystem.
2) Empirically exploring the performance and energy trade-offs of computation offloading for ground robots communicating over WiFi.
3) Analyzing how different 2D SLAM algorithms impact resource utilization in ROS-based systems, including metrics like energy consumption, CPU usage, memory usage, and map quality.
The slides of a short presentation I gave about my experience about working in the context of EU grants. It contains tips and tricks for the before/during/after phases of a EU project.
More Related Content
Similar to A family of Domain-Specific Languages for specifying Civilian Missions of Multi-Robot Systems
This document discusses robot programming methods. It describes different types of robot programming including joint-level, robot-level, and high-level programming. It also covers various robot programming methods such as manual, walkthrough, leadthrough, and offline programming. Specific programming languages and their applications are also summarized.
The document summarizes a Scala meetup discussing functional programming concepts and techniques. It covers topics like monadic IO, monad transformers, free monads, tagless final encoding, and domain specific languages. Sample code is provided demonstrating storing a file using monadic IO and rewriting it without side effects using equational reasoning.
This document discusses model executability within the GEMOC Studio. It provides an overview of the GEMOC initiative and projects, which aim to coordinate research on globalizing modeling languages. The GEMOC Studio allows users to design executable domain-specific modeling languages and edit, simulate, and animate heterogeneous models. Breakthroughs include defining modular and explicit semantics for modeling languages and integrating languages for heterogeneous model coordination. The document presents examples of debugging tools developed using the GEMOC Studio.
SiriusCon 2015 - Breathe Life into Your Designer!melbats
You have your shiny new DSL up and running thanks to the Eclipse Modeling Technologies and you built a powerful tooling with graphical modelers, textual syntaxes or dedicated editors to support it. But how can you see what is going on when a model is executed ? Don't you need to simulate your design in some way ? Wouldn't you want to see your editors being animated directly within your modeling environment based on execution traces or simulator results?
The GEMOC Research Project designed a methodology to bring animation and execution analysis to DSLs. The companion technologies required to put this in action are small dedicated components (all open-source) at a "proof of concept" maturity level extending proven components : Sirius, Eclipse Debug, Xtend making such features within the reach of Eclipse based tooling. The general intent regarding those OSS technologies is to leverage them within different contexts and contribute them to Eclipse once proven strong enough. The method covers a large spectrum of use cases from DSLs with a straightforward execution semantic to a combination of different DSLs with concurrent execution semantic. Any tool provider can leverage both the technologies and the method to provide an executable DSL and animated graphical modelers to its users enabling simulation and debugging at an early phase of the design.
This talk presents the approach, the technologies and demonstrate it through an example: providing Eclipse Debug integration and diagram animation capabilities for Arduino Designer (EPL) : setting breakpoints, stepping forward or backward in the execution, inspecting the variables states... We will walk you through the steps required to develop such features, the choices to make and the trade-offs involved. Expects live demos with simulated blinking leds and a virtual cat robot ! This talks presents also xCapella an industrial use case onwhich the Gemoc methodology was applied.
This talks was presented at SiriusCon 2015 in collaboration with Jérôme Le Noir from Thales.
The Arduino Designer documentation is available on : https://github.com/mbats/arduino/wiki/Documentation
The document provides an introduction to robotics, including definitions of key terms:
- A robot is an automatically controlled, reprogrammable device designed to perform tasks normally done by humans.
- Robots are classified based on their drive technology, work envelope/coordinate geometry, and motion control methods.
- Robotic systems have components like manipulators, end effectors, actuators, sensors, controllers, and software to allow various applications in manufacturing and other industries.
Simulation of robotic positions and programmingRachit Laharia
This document discusses simulation and programming of robotic positions. It describes using simulation software to test robotic systems virtually before implementing them in the real world. This allows exploring design options while avoiding risks to the physical robot. The document also covers different types of robotic programming including joint-level, robot-level, and high-level programming. It compares online and offline programming methods and discusses advantages and disadvantages of techniques like teach pendants and lead-through programming.
This document provides an overview of an introduction to robotics lecture. It outlines the course structure, which will include weekly live lectures and practical sessions. The first week will have a two-hour lecture and two-hour introductory practical session. Subsequent weeks will follow a regular schedule of one-hour lectures on Wednesdays and compulsory three-hour practical sessions on Wednesdays and Fridays. The document also provides summaries of key topics that will be covered over the course of the lectures, including robot motion, sensors, probabilistic robotics, localization, and simultaneous localization and mapping.
The document describes the RoboCupRescue 2006 Robot League Team from Iran called MRL. It discusses three rescue robots they have designed - two for indoor use and one for outdoor/rough terrain. Their goal is to develop practical rescue robots that can help with search and rescue operations during earthquakes, which frequently occur in Iran. Team members are from the Mechatronics Research Laboratory and are working on various research areas related to autonomous mobile robots like localization, mapping, navigation, and search algorithms.
The document discusses a cloud robotics platform called Rospeex that provides speech recognition and text-to-speech services to enable multilingual conversational abilities for robots, it has been used by over 40,000 developers, and analyzes usage data to identify opportunities to optimize the platform like introducing caching to reduce communication time for frequently used sentences.
The document discusses various methods of robot programming including manual programming, walkthrough programming, leadthrough programming, and offline programming. It also covers different robot languages such as VAL, AL, AML, MCL, and RAIL as well as features of a teach pendant and basic modes of robot operation including monitor, edit, and run modes. Common robot motions, sensors, and welding patterns are also explained.
Robot programming , accuracy ,repeatability and applicationvishaldattKohir1
This document discusses robot programming methods, accuracy and repeatability, and applications. It covers three main robot programming methods: lead-through programming, offline programming, and computer-like programming. It also defines resolution, accuracy, and repeatability as they relate to robot positioning. Finally, it outlines several common industrial robot applications including material handling, processing operations like welding and painting, and assembly.
PromoBox in Practice: A Case Study on the GISMO Domain-Specific Modelling Lan...Tom Mens
This document discusses applying the ProMoBox framework to the GISMO domain-specific modelling language (DSML). ProMoBox shifts verification tasks to the DSM level by generating separate sublanguages for the DSML. It was applied to GISMO by annotating and simplifying the metamodel. Properties written in the GISMO syntax could then be checked and counterexamples shown. Future work includes reducing verification time/space and broadening language support while minimizing simplification requirements.
Unit IV Solved Question Bank- Robotics EngineeringSanjay Singh
This Question Bank for Robotics Engineering is only for academic purpose and not for any commercial use. Students of Anna University and other Universities can use it for reference and knowledge.
This document discusses robotics technology and its various components and applications. It begins with defining robots and robotics. It then covers the different types of robots categorized by their general concept, application, locomotion/kinematics. The core components of robots like manipulators, end effectors, actuators, sensors and controllers are explained. Popular robot configurations and programming languages are also outlined. The wide range of applications of robotics technology in industries, household, medical, military, space and more are highlighted. Both the advantages like precision, endurance and disadvantages like costs, power needs are touched upon. The future developments in various domains like construction, rescue and caregiving are envisioned.
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Benoit Combemale
Talk given at the 8th ACM SIGPLAN Int'l Conf. on Software Language Engineering (SLE 2015), Pittsburgh, PA, USA on October 27, 2015. Preprint available at https://hal.inria.fr/hal-01182517
Unit IV.pptx Robot programming and LanguagesBalamech4
1. The document discusses robot trajectory planning, programming languages, and kinematics. It describes different levels of robot programming languages from microprocessor to task-oriented levels.
2. Common robot programming languages are described including VAL, a popular language developed for PUMA robots. A simple VAL program example to move grip and transport an object is provided.
3. Key concepts in robot kinematics like forward and inverse kinematics are explained, which relate joint angles to world coordinates and vice versa. Introduction to the robot operating system ROS is also given.
This document provides an overview of the history and development of the Unified Modeling Language (UML) and Foundational UML (fUML) standard for executable modeling. It discusses how UML evolved from its origins in object-oriented analysis and design in the 1980s-1990s to add formal execution semantics definitions. fUML and the Action Language for Foundational UML (Alf) provide a computationally complete subset of UML with a defined execution model, addressing UML's previous lack of precise semantics. The document outlines the key components and implementations of fUML and Alf and their role in specifying UML's structural and behavioral semantics formally.
Similar to A family of Domain-Specific Languages for specifying Civilian Missions of Multi-Robot Systems (20)
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...Ivano Malavolta
The document discusses conducting experiments on the software architecture of robotic systems. It describes three experiments:
1) Identifying and evaluating "green" architectural tactics for energy-efficient robotics software by mining the ROS ecosystem.
2) Empirically exploring the performance and energy trade-offs of computation offloading for ground robots communicating over WiFi.
3) Analyzing how different 2D SLAM algorithms impact resource utilization in ROS-based systems, including metrics like energy consumption, CPU usage, memory usage, and map quality.
The slides of a short presentation I gave about my experience about working in the context of EU grants. It contains tips and tricks for the before/during/after phases of a EU project.
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)Ivano Malavolta
The Green Lab allows students to measure real software products for industry-driven experiments focusing on energy efficiency, performance, and other areas. It provides infrastructure for experimenting on software, including a master course, platform, and collaboration platform. The lab contains a green computing cluster managed by Proxmox virtualization software, which hosts various virtual machines for running experiments. Hardware in the cluster includes servers, workstations, and a smartphone test farm for controlling Android devices remotely. Students use tools like Android Runner and wattsup meters to automate experiments measuring aspects like energy consumption of mobile apps. The Green Lab also serves as a learning environment where students conduct experiments for class projects and contribute to open source tools like Android Runner.
This document discusses software sustainability from Ivano Malavolta, an assistant professor. It discusses how ICT is unsustainable due to the large amounts of energy consumed by platforms like YouTube. It also discusses research on improving the energy efficiency of software, including a case study on the KPMG software platform. Additionally, it discusses experiments on the energy impact of progressive web apps and service workers. Finally, it proposes using design decision maps to help frame sustainability concerns when planning software projects.
Navigation-aware and Personalized Prefetching of Network Requests in Android ...Ivano Malavolta
Slides of my presentation at the NIER track of the 41th International Conference on Software Engineering (ICSE 2019).
The paper is available here: http://www.ivanomalavolta.com/files/papers/ICSE_2019_NAPPA.pdf
How Maintainability Issues of Android Apps Evolve [ICSME 2018]Ivano Malavolta
Slides of my presentation at the Research track of the 34th International Conference on Software Maintenance and Evolution (ICSME 2018).
The full paper is available here: http://www.ivanomalavolta.com/files/papers/ICSME_2018.pdf
Collaborative Model-Driven Software Engineering: a Classification Framework a...Ivano Malavolta
Slides of my presentation at the Journal first track of the 40th International Conference on Software Engineering (ICSE 2018).
The accompanying extended abstract is available here: http://www.ivanomalavolta.com/files/papers/ICSE_2018_JournalFirst.pdf
The original TSE paper is available here: http://www.ivanomalavolta.com/files/papers/TSE_2017.pdf
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
Modeling behaviour via UML state machines [Software Design] [Computer Science...Ivano Malavolta
This document provides an introduction to modeling behavior using UML state machines. It discusses key concepts like states, transitions, events, and state types. States represent when an object is active and can execute activities. Transitions change the object's state in response to events and can include actions. Event types include signals, operation calls, time-based and change events. The document also covers state machine notation including initial/final states, decisions nodes, parallel/orthogonal states, history states, and entry/exit points. An example state machine is provided and questions are asked to help understand state machine execution order and values.
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...Ivano Malavolta
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
Modeling and abstraction, software development process [Software Design] [Com...Ivano Malavolta
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
[2017/2018] AADL - Architecture Analysis and Design LanguageIvano Malavolta
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
[2017/2018] Introduction to Software ArchitectureIvano Malavolta
This document provides an introduction to software architecture concepts. It defines software architecture as the selection of structural elements and their interactions within a system. Common architectural styles are described, including Model-View-Controller (MVC), publish-subscribe, layered, shared data, peer-to-peer, and pipes and filters. Tactics are introduced as design decisions that refine styles to control quality attributes. The document emphasizes that architectural styles solve recurring problems and promote desired qualities like performance, security, and maintainability.
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.it/.
http://www.ivanomalavolta.com
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceIndexBug
Imagine a world where machines not only perform tasks but also learn, adapt, and make decisions. This is the promise of Artificial Intelligence (AI), a technology that's not just enhancing our lives but revolutionizing entire industries.
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
Infrastructure Challenges in Scaling RAG with Custom AI modelsZilliz
Building Retrieval-Augmented Generation (RAG) systems with open-source and custom AI models is a complex task. This talk explores the challenges in productionizing RAG systems, including retrieval performance, response synthesis, and evaluation. We’ll discuss how to leverage open-source models like text embeddings, language models, and custom fine-tuned models to enhance RAG performance. Additionally, we’ll cover how BentoML can help orchestrate and scale these AI components efficiently, ensuring seamless deployment and management of RAG systems in the cloud.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
3. Civilian missions today
• High costs
– team training and transportation
– operating costs
• Safety
– significant risks (e.g., fire, earthquake, etc.)
• Timing and endurance
– exhausting shifts
– activities stopped at night
4. Using robots for civilian missions [1]
Many civilian missions can be executed either by flying, ground or water robots
5. Multi-robots missions
Civilian missions can be executed by multiple robots
à lower mission completion time
à fault-tolerance w.r.t. mission goal fulfillment
à enables the use of highly-specialized robots
All the robots perform their actions to fulfil the common goal of
the mission
however...
common goal
6. Challenges
• On-site operators must be expert of all the types of used robots
– in terms of dynamics, hardware capabilities, etc.
• On-site operators have to simultaneously control a large number
of robots during the mission execution
• Robots provide very low-level APIs and very basic primitives
– error-prone development
– task-specific robots
– no reuse
These issues ask for
• abstraction
• automation
7. MDE for multi-robot missions
MDE allows all stakeholders to focus on models of the mission with
concepts that are:
• closer to the application domain
• independent from the specific robot technologies
• enabling automation à autonomous robots
http://mdse-book.com
9. The family of languages
Mission
Context
Map
MML
BL
Behavior
BL models synthesis
Robots
configuration
Mission
Execution Engine
RL
10. Principles
Mask complexity
à usable by non-technical experts
à domain-specific concepts
Independence w.r.t. the types of robots
Reuse of models
Robots must be autonomous
15. Involved stakeholders
Operator
in-the-field stakeholder specifying the mission
Robot engineer
– models a specific kind of robot
– develops the controller that instructs the robot on how to perform
BL basic operations
Platform extender
– extends the MML metamodel with new kinds of tasks
– develops a synthesizer for transforming each new task to its
corresponding BL operations
MML
RL + controller
MML + synthesizer
16. Extension for autonomous quadrotors
Special kind of helicopter with:
• high stability
• omni-directional
• smaller fixed-pitch rotors
à safer than classical helicopters
• simple to design and construct
• relatively inexpensive
image from http://goo.gl/FJFS5l
Issues
• require a trained pilot to operate them
• restricted to line-of-sight range
23. Future work
Extend the languages with timing constraints
Design a generic software architecture for
– mission editors, model transformations
– run-time engine for executing the mission
Safety and security as first-class elements both at mission
design-time and run-time
A more systematic language extension mechanism (like in [3])
Exercise the family of languages with other kinds of robot
(e.g., underwater missions)
24. References
[1] Skrzypietz, T.: Unmanned Aircraft Systems for Civilian Missions. BIGS policy paper.
Brandenburgisches Institut fur Gesellschaft und Sicherheit. BIGS (2012)
[2] Di Ruscio, D., Malavolta, I., Pelliccione, P.: Engineering a platform for mission planning of
autonomous and resilient quadrotors. In: Fifth International Workshop, on Software
Engineering for Resilient Systems , Springer Berlin Heidelberg (2013) 33–47
[3] Di Ruscio, D., Malavolta, I., Muccini, H., Pelliccione, P., Pierantonio, A.: Developing Next
Generation ADLs Through MDE Techniques. In: Procs. ICSE’10, ACM (2010) 85–94
25. + 39 380 70 21 600
Ivano Malavolta |
Gran Sasso Science Institute
iivanoo
ivano.malavolta@gssi.infn.it
www.di.univaq.it/malavolta
Contact