Under the grid computing paradigm, large sets of heterogeneous resources can be aggregated and shared. Grid development and acceptance hinge on proving that grids reliably support real applications, and on creating adequate benchmarks to quantify this support. However, applications of grids (and clouds) are just beginning to emerge, and traditional benchmarks have yet to prove representative in grid environments. To address this chicken-and-egg problem, we propose a middle-way approach: create and run synthetic grid workloads comprised of applications representative for today's grids (and clouds). For this purpose, we have designed and implemented GrenchMark, a framework for synthetic workload generation and submission. The framework greatly facilitates synthetic workload modeling, comes with over 35 synthetic and real applications, and is extensible and flexible. We show how the framework can be used for grid system analysis, functionality testing in grid environments, and for comparing different grid settings, and present the results obtained with GrenchMark in our multi-cluster grid, the DAS.
Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...StormForge .io
Complimentary Live Webinar
Sponsored by StormForge
Analyzing the performance and behavior of applications run on Kubernetes is often challenging, making the need to optimize prior to production something that you must have. However, a problem has reared its head in the form of a question: How do you get an accurate measurement of application performance or other behavior without accurate testing or an accurate representation of how it will run in production? In this webinar, we will present and discuss a new fully Open Source tool for creating the needed tests with which to accurately measure your applications. We hope you will join us to learn more about this tool, and find out how you can help contribute.
This webinar is sponsored by StormForge and hosted by The Linux Foundation.
Speaker
Noah Abrahams, Open Source Advocate
Noah is an Open Source Advocate for StormForge, merging Open Source Strategy with Developer Advocacy. He has been involved in cloud for over 12 years, has been contributing to the Kubernetes ecosystem for 5 years, and has been up and down the business stack from DevOps and Architecture to Sales, Enablement, and Education. You will find him running meetups in Las Vegas and attending conferences, once those are both happening again.
Argumentation in Artificial Intelligence: From Theory to Practice (Practice)Mauro Vallati
Part on Practice of the IJCAI 2017 Tutorial titled "Argumentation in Artificial Intelligence: From Theory to Practice", from Federico Cerutti and Mauro Vallati
Saturn: Joint Optimization for Large-Model Deep LearningKabirNagrecha
Large models such as GPT-3 & ChatGPT have transformed deep learning (DL), powering applications that have captured the public’s imagination. These models are rapidly being adopted across domains for analytics on various modalities, often by finetuning pre-trained base models. Such models need multiple GPUs due to both their size and computational load, driving the development of a bevy of “model parallelism” techniques & tools. Navigating such parallelism choices, however, is a new burden for end users of DL such as data scientists, domain scientists, etc. who may lack the necessary systems knowhow. The need for model selection, which leads to many models to train due to hyper-parameter tuning or layer-wise finetuning, compounds the situation with two more burdens: resource apportioning and scheduling. In this work, we tackle these three burdens for DL users in a unified manner by formalizing them as a joint problem that we call SPASE: Select a Parallelism, Allocate resources, and Schedule. We propose a new information system architecture to tackle the SPASE problem holistically, representing a key step toward enabling wider adoption of large DL models. We devise an extensible template for existing parallelism schemes and combine it with an automated empirical profiler for runtime estimation. We then formulate SPASE as an MILP. We find that direct use of an MILP-solver is significantly more effective than several baseline heuristics.We optimize the system runtime further with an introspective scheduling approach. We implement all these techniques into a new data system we call Saturn. Experiments with benchmark DL workloads show that Saturn achieves 39-49% lower model selection runtimes than typical current DL practice.
Model-Based Testing: Concepts, Tools, and TechniquesTechWell
For decades, software development tools and methods have evolved with an emphasis on modeling. Standards like UML and SysML are now used to develop some of the most complex systems in the world. However, test design remains a largely manual, intuitive process. Now, a significant opportunity exists for testing organizations to realize the benefits of modeling. Adam Richards describes how to leverage model-based testing to dramatically improve both test coverage and efficiency—and lower the overall cost of quality. Adam provides an overview of the basic concepts and process implications of model-based testing, including its role in agile. A survey of model types and techniques shows different model-based solutions for different kinds of testing problems. Explore tool integrations and weigh the pros and cons of model-based test development against a variety of system and project-level factors. Gain a working knowledge of the concepts, tools, and techniques needed to introduce model-based testing to your organization.
Network performance testing for devices and systems can be a daunting task for vendors and end-users given the cost of test equipment and the investment that the companies have to spend in developing relevant tests and understanding the results. During the last couple years, a group of low cost computing systems have been introduced that are very capable from a functional point of view, but how well do they actually perform? Can they be used in a low-cost performance testing lab system to validate ICS devices before they go into production? Can end-users use them to capture live traffic in their network and get reliable performance results? This talk will discuss how and when different types of equipment can be used to develop a low-cost network performance testing lab. It will also show results from a series of performance tests conducted on some of the equipment and with different testing architectures.
We are entering a world where everything must be done quicker. You must deliver code faster. You must deploy faster. How can you deliver and deploy faster without compromising your professionalism? How can you be sure you are delivering what your client has asked you?
In short, testing is the only way to be sure you’re delivering what someone asked you to. Often we use BDD Tools such as FitNesse which gained popularity over the recent years
There are a number of integration / BDD test tools out there that help you deliver a high quality software through tests. Its easy to pick up any tool from just their tutorials and start writing tests. But as I found out the hard way, this can quickly spiral into a state where the tests are giving you and your team hell and are worth less than the value the tests are delivering.
Using FitNesse and Junit as examples, I will share things that I have learnt working on large enterprise and vendor systems and help you avoid your own path to hell.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Under the grid computing paradigm, large sets of heterogeneous resources can be aggregated and shared. Grid development and acceptance hinge on proving that grids reliably support real applications, and on creating adequate benchmarks to quantify this support. However, applications of grids (and clouds) are just beginning to emerge, and traditional benchmarks have yet to prove representative in grid environments. To address this chicken-and-egg problem, we propose a middle-way approach: create and run synthetic grid workloads comprised of applications representative for today's grids (and clouds). For this purpose, we have designed and implemented GrenchMark, a framework for synthetic workload generation and submission. The framework greatly facilitates synthetic workload modeling, comes with over 35 synthetic and real applications, and is extensible and flexible. We show how the framework can be used for grid system analysis, functionality testing in grid environments, and for comparing different grid settings, and present the results obtained with GrenchMark in our multi-cluster grid, the DAS.
Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...StormForge .io
Complimentary Live Webinar
Sponsored by StormForge
Analyzing the performance and behavior of applications run on Kubernetes is often challenging, making the need to optimize prior to production something that you must have. However, a problem has reared its head in the form of a question: How do you get an accurate measurement of application performance or other behavior without accurate testing or an accurate representation of how it will run in production? In this webinar, we will present and discuss a new fully Open Source tool for creating the needed tests with which to accurately measure your applications. We hope you will join us to learn more about this tool, and find out how you can help contribute.
This webinar is sponsored by StormForge and hosted by The Linux Foundation.
Speaker
Noah Abrahams, Open Source Advocate
Noah is an Open Source Advocate for StormForge, merging Open Source Strategy with Developer Advocacy. He has been involved in cloud for over 12 years, has been contributing to the Kubernetes ecosystem for 5 years, and has been up and down the business stack from DevOps and Architecture to Sales, Enablement, and Education. You will find him running meetups in Las Vegas and attending conferences, once those are both happening again.
Argumentation in Artificial Intelligence: From Theory to Practice (Practice)Mauro Vallati
Part on Practice of the IJCAI 2017 Tutorial titled "Argumentation in Artificial Intelligence: From Theory to Practice", from Federico Cerutti and Mauro Vallati
Saturn: Joint Optimization for Large-Model Deep LearningKabirNagrecha
Large models such as GPT-3 & ChatGPT have transformed deep learning (DL), powering applications that have captured the public’s imagination. These models are rapidly being adopted across domains for analytics on various modalities, often by finetuning pre-trained base models. Such models need multiple GPUs due to both their size and computational load, driving the development of a bevy of “model parallelism” techniques & tools. Navigating such parallelism choices, however, is a new burden for end users of DL such as data scientists, domain scientists, etc. who may lack the necessary systems knowhow. The need for model selection, which leads to many models to train due to hyper-parameter tuning or layer-wise finetuning, compounds the situation with two more burdens: resource apportioning and scheduling. In this work, we tackle these three burdens for DL users in a unified manner by formalizing them as a joint problem that we call SPASE: Select a Parallelism, Allocate resources, and Schedule. We propose a new information system architecture to tackle the SPASE problem holistically, representing a key step toward enabling wider adoption of large DL models. We devise an extensible template for existing parallelism schemes and combine it with an automated empirical profiler for runtime estimation. We then formulate SPASE as an MILP. We find that direct use of an MILP-solver is significantly more effective than several baseline heuristics.We optimize the system runtime further with an introspective scheduling approach. We implement all these techniques into a new data system we call Saturn. Experiments with benchmark DL workloads show that Saturn achieves 39-49% lower model selection runtimes than typical current DL practice.
Model-Based Testing: Concepts, Tools, and TechniquesTechWell
For decades, software development tools and methods have evolved with an emphasis on modeling. Standards like UML and SysML are now used to develop some of the most complex systems in the world. However, test design remains a largely manual, intuitive process. Now, a significant opportunity exists for testing organizations to realize the benefits of modeling. Adam Richards describes how to leverage model-based testing to dramatically improve both test coverage and efficiency—and lower the overall cost of quality. Adam provides an overview of the basic concepts and process implications of model-based testing, including its role in agile. A survey of model types and techniques shows different model-based solutions for different kinds of testing problems. Explore tool integrations and weigh the pros and cons of model-based test development against a variety of system and project-level factors. Gain a working knowledge of the concepts, tools, and techniques needed to introduce model-based testing to your organization.
Network performance testing for devices and systems can be a daunting task for vendors and end-users given the cost of test equipment and the investment that the companies have to spend in developing relevant tests and understanding the results. During the last couple years, a group of low cost computing systems have been introduced that are very capable from a functional point of view, but how well do they actually perform? Can they be used in a low-cost performance testing lab system to validate ICS devices before they go into production? Can end-users use them to capture live traffic in their network and get reliable performance results? This talk will discuss how and when different types of equipment can be used to develop a low-cost network performance testing lab. It will also show results from a series of performance tests conducted on some of the equipment and with different testing architectures.
We are entering a world where everything must be done quicker. You must deliver code faster. You must deploy faster. How can you deliver and deploy faster without compromising your professionalism? How can you be sure you are delivering what your client has asked you?
In short, testing is the only way to be sure you’re delivering what someone asked you to. Often we use BDD Tools such as FitNesse which gained popularity over the recent years
There are a number of integration / BDD test tools out there that help you deliver a high quality software through tests. Its easy to pick up any tool from just their tutorials and start writing tests. But as I found out the hard way, this can quickly spiral into a state where the tests are giving you and your team hell and are worth less than the value the tests are delivering.
Using FitNesse and Junit as examples, I will share things that I have learnt working on large enterprise and vendor systems and help you avoid your own path to hell.
Similar to Service Oriented Architecture for Adaptive Evolutionary Algorithms (20)
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
The Art of the Pitch: WordPress Relationships and Sales
Service Oriented Architecture for Adaptive Evolutionary Algorithms
1. Service Oriented Architecture for Adaptive
Evolutionary Algorithms: Implementation and
Applications
PhD Dissertation by
Pablo García Sánchez
University of Granada
Advisors
Jesús González Peñalver
Juan Julián Merelo Guervós
Alberto Prieto Espinosa
16/06/2014
domingo 15 de junio de 2014
2. Heterogeneous and dynamic environments
SOA
SOA-EA
OSGiLiath
Objective 4
Objective 2
Objective 1
Objective 3
Real
problem
Real
infrastucture
Heterogeneous and dynamic environments
SOA
SOA-EA
OSGiLiath
Real
infrastructure
Objective 4
Objective 2
Objective 1
Objective 3
Real
problem
domingo 15 de junio de 2014
5. Examples of adaptation in algorithms
• Adaptive Memetic Algorithms:
• Hyper-heuristics.
• Multimemes.
• Co-Evolving MAs.
• Adaptation to hardware.
5
GA SA
SA
LS
TS
Individual
...
?
domingo 15 de junio de 2014
6. Challenges in EA software (Parejo et al. 2012)
• Standardization.
• Interoperability.
• Dynamic and reflexive capabilities.
• High cost on switching from a framework to other.
• Open Science.
6
Algorithm::Evolutionary
MALLBA
jMetal
ECJ
DR-E-AMParadiseEO
HeuristicLab
METCO
jCLEC
gridUFO
domingo 15 de junio de 2014
7. Heterogeneous and dynamic environments
SOA
SOA-EA
OSGiLiath
Real
infrastucture
Objective 4
Objective 2
Objective 1
Objective 3
Real
problem
domingo 15 de junio de 2014
9. Service characteristics
• Differences with Object-Oriented paradigm.
• Discoverable and dynamically bound.
• Self-contained.
• Modular.
• Interoperable (different programming languages).
• Loosely coupled.
• Location transparent.
9
domingo 15 de junio de 2014
10. Technologies and methodologies for SOA
10
BCM
Specific Ontology
Navigation
Content Rendering
Transaction Handling
Business Processes
Collaboration
Agreements, MOA
Codelist subsetting Services;
Transaction Processing
Communities of Interests
- CoI
44
55
66
7788
99
1010
1111
!
Copyright (C) OASIS Open 2003-2006. All Rights Reserved.
UMM SOMA
Ali Arsanjani
https://www.ibm.com/developerworks/library/ws-soa-design1/
REST Web Services
domingo 15 de junio de 2014
11. SOA as a solution
• Development
• Integration
• Standardization
• Dynamism
11
SOA (abstract) GRID (infrastructure)
Web Services
Frameworks for
EAs
Evolutionary
Robotics
Cloud Computing
Globus
domingo 15 de junio de 2014
12. 25
Heterogeneous and dynamic environments
SOA
SOA-EA
OSGiLiath
Objective 4
Objective 2
Objective 1
Objective 3
Real
problem
Real
infrastucture
domingo 15 de junio de 2014
16. Step 1: Identification
• Problems to solve.
• Elements needed.
• Re-utilization.
• Operators.
• Extension points.
• Parameterization.
16
domingo 15 de junio de 2014
17. Step 2: Specification
• Inputs/Outputs.
• Operations of each services.
• Individual representation.
• Services usage.
• Order of execution.
• Multiple instances.
• Adaptation to machines.
17
domingo 15 de junio de 2014
18. Specification: Operators
• Flexibility: Recombination can receive more than two
individuals.
• Receive interfaces (generic representation).
18
Recombination
List of individuals
List of individuals
Crossover
mother, father son1, son2
domingo 15 de junio de 2014
19. Specification: Population, Parameters and Fitness
19
Population
- add Individuals
- get N Best Individual
- get N Worst Individuals
- get Size
...
Parameters
- get Parameter
- update Parameter
- get Parameter Labels
...
Fitness
Calculator
List of individuals
List of fitnesses
domingo 15 de junio de 2014
20. Specification of the flow
• Reduce the impact of future changes.
• Example of flow: Evolutionary Algorithm implementation
(generic evolutionary model).
• Automatic adaptation and binding of the elements.
• Services for hardware adaptation.
20
BitFlip
Mutation
Binary
Initialization
TPX
Recombination
Roulette
Selection
N Worst Rep.
Replacement
domingo 15 de junio de 2014
21. Steps 3 and 4: Implementation and deployment
• Local or remote services.
• Interfaces publication.
• Public or private services.
• Dynamism control.
• Overload of messages.
• Technology selection.
• Security, persistence, benchmarking and
monitoring.
21
domingo 15 de junio de 2014
22. Heterogeneous and dynamic environments
SOA
SOA-EA
OSGiLiath
Objective 4
Objective 2
Objective 1
Objective 3
Real
problem
Real
infrastucture
domingo 15 de junio de 2014
23. • Framework to develop SOEAs.
• Includes well-defined interfaces and implementations.
• Paradigm independent.
• Multiple technologies for distribution and discovery.
• Plug-in based.
• Automatic binding.
• Component-oriented.
OSGiLiath
23
domingo 15 de junio de 2014
29. Implementation: Why OSGi?
29
OSGi Web Services
Primary environment Local* Internet
Language Java* Any
Interfaces Java Interface* WSDL
Communication protocol Variable SOAP
Dynamism White-Board Explicit
Client creation Previously known Automatic
Extras Plug-in based WS-Extensions
* (by default)
domingo 15 de junio de 2014
30. SOA validation experiments
• Experiment 1: OSGi comparison.
• Experiment 2: Adaptive service binding.
• Experiment 3: Distribution and language independence.
• Experiment 4: Development time between frameworks
for EAs.
• Algorithm: canonical GA with same parameters.
• Problems: MMDP and OneMax.
• 30 times for configuration.
30
domingo 15 de junio de 2014
31. OSGi does not add overload
• Experiment 1: Performance using OSGi.
• Comparing the same EA.
• Solving OneMax problem with the same parameters.
• Stop criterion: fixed number of generations.
31
Average solution Average time (s)
OSGiLiath 612.26 ± 6.05 0.19 ± 0.02
OSGiLiath
(without OSGi)
613.36 ± 4.50 0.19 ± 0.02
domingo 15 de junio de 2014
32. Service adaptation improves the results
• Experiment 2: Adaptive service binding.
• Solve the MMDP problem.
• Static version vs. adaptive version.
• Stop criterion: optimum found.
32
Evolutionary Algorithm
Algorithm
List Population
Population
Selector Gatherer
Parent Selector
Asynchronous
Enabler Impl
Asynchronous Enabler
N Tournament
Parent Selector
Roulette
Parent Selector
domingo 15 de junio de 2014
33. Service adaptation improves the results (II)
33
Non−adaptive Adaptive
0e+001e+072e+073e+074e+07
Configuration
Evaluations
Number of evaluations to solve MMDP problem
domingo 15 de junio de 2014
34. OSGiLiath is independent of the programming language
• Experiment 3: Integration with other systems.
• Language independence: PHP and Java.
• Comparing different communication mechanisms: SOAP
and OSGi ECF generic.
• Different number of individuals: 250, 500, 1000, 2000.
34
domingo 15 de junio de 2014
35. OSGi ECF does not add overhead communication
35
500 1000 1500 2000
0.00.10.20.30.40.50.6
Number of individuals
Seconds SOAP
OSGi
domingo 15 de junio de 2014
36. SOA saves development time
• Experiment 4: Comparison with other frameworks.
• The same algorithm and parameter configuration in
different frameworks (solving OneMax).
36
Name Avg. Solution Avg. Time (s) Lines of Code
OSGiLiath 612.26 ± 6.05 0.19 ± 0.02 10
OSGiLiath
(without OSGi)
613.36 ± 4.50 0.19 ± 0.02 103
MALLBA 578.76 ± 7.48 0.16 ± 0.01 2073
ECJ 602.76 ± 6.08 1.40 ± 0.03 5
Algorithm::Evo-
lutionary
617.60 ± 12.92 7.78 ± 0.29 41
domingo 15 de junio de 2014
37. Heterogeneous and dynamic environments
SOA
SOA-EA
OSGiLiath
Objective 4
Objective 2
Objective 1
Objective 3
Real
problem
Real
infrastucture
domingo 15 de junio de 2014
38. Study on parameter adaptation
• There is not a central control node.
• The number of nodes participating is not limited.
• All nodes automatically bind the available distribution
services.
• The nodes must stop when the optimum is found.
• Services must be executed in heterogeneous machines
with different operating systems and architectures.
38
domingo 15 de junio de 2014
39. Automatic binding of nodes
39
Replacer
Basic
Replacer
Migrator
Migrator Ring
Buffer
Remote nodesLocal Node
Migrator
Migrator
...
domingo 15 de junio de 2014
40. Configurations
• Homogeneous Hardware (HoHa).
• Heterogeneous Hardware (HeHa).
• Homogeneous Size (HoSi): 256 individuals.
• Heterogeneous Size (HeSi): proportional to generations.
• Adaptive Size (AdSi):
40
domingo 15 de junio de 2014
41. Experimental setting
• Problems to solve: MMDP and OneMax.
• Stop criterion: optimum found.
• Topology: ring.
• Benchmark: number of generations.
• Algorithm: canonical steady-state genetic algorithm.
• The same parameter configuration in all nodes.
• 40 times per configuration.
41
domingo 15 de junio de 2014
42. Automatic adaptation improves results (MMDP)
42
HoHa
(Homogeneous Hardware)
HeHa
(Heterogeneous Hardware)
HoSi HeSi AdSi
5e+022e+031e+045e+042e+05
Configuration
Time(HeterogeneousHardware)
HoSi HeSi
5e+022e+031e+045e+04
Configuration
Time(HomogeneousHardware)
domingo 15 de junio de 2014
43. Average population sizes in AdSi solving MMDP
43
HeN1 HeN2 HeN3 HeN4
02004006008001000
Node
PopulationSize
domingo 15 de junio de 2014
44. Automatic adaptation improves results (OneMax)
44
HoHa
(Homogeneous Hardware)
HeHa
(Heterogeneous Hardware)
HoSi HeSi
80000100000120000140000
Configuration
Time(HomogeneousHardware)
HoSi HeSi AdSi
100000120000140000180000
Configuration
Time(HeterogeneousHardware)
domingo 15 de junio de 2014
45. Average population sizes in AdSi solving OneMax
45
HeN1 HeN2 HeN3 HeN4
02004006008001000
Node
PopulationSize
domingo 15 de junio de 2014
48. Adaption improves the results in time
• Adapting online or offline the sub-population size to the
computational power of each node yields significantly
better results in time.
• The same heterogeneous parameter setting could not
improve the results in homogeneous environments.
• The generations in each node is a possible benchmark
for parameter setting.
• Changing a parameter can affect all services of the
SOEA.
48
domingo 15 de junio de 2014
49. Heterogeneous and dynamic environments
SOA
SOA-EA
OSGiLiath
Objective 4
Objective 2
Objective 1
Objective 3
Real
problem
Real
infrastucture
domingo 15 de junio de 2014
50. Motivation
• RTS games (Planet Wars).
• Genetic Programming.
• Existing competitive (agents): GeneBot (G) and
ExpGenebot (E).
• Different node depth: 3,7, Unlimited.
• Validation of the bots in other maps.
50
domingo 15 de junio de 2014
52. Agent generation
• For each planet execute tree.
• Based in decisions and actions.
• Dynamic fitness: 5 combats vs
Genebot and ExpGenebot.
• Crossover/mutation of
branches/tags and rates.
52
actualMyShipsRatio>0.711
attackWeakestNeutralPlanet(0.3)
attackNearestEnemyPlanet(0.2)
attackEnemyBase(0.91)
myShipsLandedFlyingRatio>0.21
domingo 15 de junio de 2014
53. Obtained bots are competitive
• Each generated bot with different maximum depth (3, 7
and U) is tested vs. Genebot (G) and Exp-Genebot (E) in
100 maps.
53Percentage of victories Turns to be defeated
3G 7G UG 3E 7E UE
100200300400500
Configuration
Turnstobedefeated
3G 7G UG 3E 7E UE
10203040506070
Configuration
Percentageofvictories
domingo 15 de junio de 2014
54. A SOEA obtains competitive bots for RTS games
• A SOEA is used to generate agents for playing Planet
Wars RTS game without using human knowledge, using
Genetic Programming.
• EA and SOA requirements have been taken into
account.
• Obtained bots outperform the one generated by human
experts and optimized by a GA.
• Differences in maximum depth.
54
domingo 15 de junio de 2014
56. Conclusions
• EAs can be successfully migrated to SOA and take
advantage in dynamic and heterogeneous scenarios.
• The used SOA technology has a huge impact in several
issues.
• SOA not force to use distribution services.
• SOA paradigm can be applied successfully to EAs to
facilitate the integration, distribution, dynamism and
development in some scenarios.
56
domingo 15 de junio de 2014
57. Contributions (I)
• The Service Oriented Architecture paradigm has been proposed to
create distributed, heterogeneous, dynamic and standards-based
environments for Evolutionary Algorithms, as it provides
mechanisms for interoperability, integration and dynamic control.
• The requirements to develop EAs in the SOA paradigm have been
identified.
• These requirements have been taken into account to propose
SOA-EA, a methodology that is able to successfully adapt
evolutionary algorithms to distributed, heterogeneous, dynamic,
standards-based environments.
• Several steps to design all the elements in an EA have been
proposed inside this methodology.
57
domingo 15 de junio de 2014
58. Contributions (and II)
• The methodology has been validated using a specific
SOA technology: OSGi.
• A SOA-based implementation (OSGiLiath) of distributed,
dynamic, standards-based evolutionary algorithms has
been able to solve efficiently different problems.
• As an application of this methodology, two different
parameter adaptation schemes of island-based EAs to
heterogeneous hardware have been proposed, and an
algorithm to obtain competent bots for RTS games has
been obtained.
58
domingo 15 de junio de 2014
59. Future work
• New research line in automatic adaptation of parameters
and operators in dynamic and heterogeneous
environments under the SOA paradigm.
• More mechanisms to enable/disable services.
• Different benchmarking services.
• Comparison of communication mechanisms.
• Automatic service composition using other technologies.
• Extend the concept of SOEA to other fields.
• New modules and services to address new problems will
be added to OSGiLiath.
59
domingo 15 de junio de 2014
60. Publications related with this thesis
60
Total First author
Journals 5 2
LNCS 5 5
Other peer-reviewed
conferences
4 2
domingo 15 de junio de 2014
61. Open Science
• OSGiLiath: https://github.com/fergunet/osgiliath
• Thesis development: https://github.com/fergunet/tesis
• Web page: http://www.osgiliath.org
61
domingo 15 de junio de 2014
62. Thank you very much!
Questions?
domingo 15 de junio de 2014