SlideShare a Scribd company logo
Modeling and AI: Friends or foes
Jordi Cabot
@softmodeling – jordicabot.com June 2019
About
SOM Research Lab
Software runs the world. Models run the software
Our mission
We are interested in the
broad area of systems and
software engineering,
especially promoting the
rigorous use of models and
engineering principles
while keeping an eye on the
most unpredictable element
in any project: the people.
Flickr/clement127
Software Modeling and Artificial Intelligence: friends or foes?
The AI subteam
Preliminaries
Model-Driven Engineering
https://mdse-book.com/
To model, or not to model, this is the WRONG
question
- Shakespeare
Artificial Intelligence
Cognification:
The application of knowledge
to boost the performance
and impact of a process
Cognification
Artificial
Intelligence
Machine
Learning
Deep Learning
© Prof. Dr. Andreas Vogelsang – TU Berlin
Why should you care?
Software Modeling and Artificial Intelligence: friends or foes?
Software Modeling and Artificial Intelligence: friends or foes?
Software Modeling and Artificial Intelligence: friends or foes?
Kai-Fu Lee
AI
Coder
Modeler
Software Modeling and Artificial Intelligence: friends or foes?
How can we be friends:
(1) MDE for AI
• Grady Booch – history of softwre engineering
The entire history of software engineering is that of
the rise in levels of abstraction
- Grady Booch
Also true for AI -> MDE is the
best tool for this evolution
AI is software, too! (and rather immature)
AI
landscape
Could
B from
DSLs
PIM/PSM
M2M
M2T
…
Modeling ML pipelines (data
preparation is more challenging
than the learning itself)
As expected, all players are moving in
this direction
• Key to get more users that will then become
users of their underlying infrastructure
Azure ML Studio
Orange
RapidMiner
IBM SPSS Modeler
Nvidia digits
Knime
Software Modeling and Artificial Intelligence: friends or foes?
Model-Driven Bot Development:
Xatkit
https://github.com/xatkit-bot-platform
Gwendal Daniel, Jordi Cabot, Laurent Deruelle, Mustapha Derras:
Multi-platform Chatbot Modeling and Deployment with the Jarvis
Framework. CAiSE 2019: 177-193
Let’s create a chatbot to help
newcomers to write issues on Github!
Alright! It’s just a set of questions &
answers, this will be pretty simple!
Narrator It wasn’t.
Once upon a time
What went wrong?
if(‘’ I have an issue’’) {
return ‘’In which
repository?’’
}
Chatbots are complex systems
Conversation
Logic
Text Processing
External Services
Messaging
Platforms
Deployment
Evolution
Maintenance
Tests
AI Chatbot
landscape
MDD of (chat)bots with Xatkit
• Raise the level of abstraction at what chatbots are
defined
– Focus on the core aspects of the chatbot
• Conversation and user interactions
• Action computations
– Independent from specific implementation technologies
• Automate the deployment and execution of the
modeled chatbot over multiple platforms
Chatbot dev – Example: Bots for OSS
Slack bot to help users open a well-described new issue on a GitHub
project
If the User Wants To Open Issue
Reply « In which repository? » on Slack
User Intent
Action Parameters Platform
Conversation
step
Intent language
Library example
intent OpenNewIssue {
inputs {
‘’I want to create an issue’’
‘’Open an issue’’
}
}
intent SpecifyRepository {
inputs {
‘’In repository MyRepo’’
}
outContext Repository {
name <- ‘’MyRepo’’ (@any)
}
}
Execution Language
Import library Example
Import platform Slack
Import platform Github
Listen to Slack
on intent OpenNewIssue do
Slack.reply(‘’Sure, I’ll help you to write
your issue! Which repository is for?’’)
on intent SpecifyRepository do
Slack.reply(‘Great, I’ll open an issue
related to repository {$Repository.name}.’’)
[… a few intents later with all the info …]
Github.openIssue({$Repository.name},
{$Issue.title}, {$Issue.content})
Platform Language
Abstract platform Chat
actions {
PostMessage(message, channel)
Reply(message)
}
}
Platform Slack extends Chat Platform Github
action {
openIssue(repository, title, content)
}
}
Xatkit Framework
Chatbot
Designer
Intent Recognition Providers
(platform-specific)
Platorm Package
Intent Package
Xatkit Modeling
Language Chatbot
User
Instant
Messaging
Platforms
Xatkit Runtime
Execution Package
uses
uses
Platform-independent
chatbot definition
External
Services
Deployment
Configuration
Platform
Designer
How can we be friends:
(2) AI for MDE
AI to simplify development
Smart Autocomplete
Smart Autocomplete
https://ai.facebook.com/blog/aroma-ml-for-
code-recommendation/
Also in MDE land....
Jordi Cabot, Robert Clarisó, Marco Brambilla, Sébastien Gérard:
Cognifying Model-Driven Software Engineering. STAF Workshops 2017: 154-160
Mendix Assist
OutSystems.ai
Many other useful applications to explore
Modeling bot as virtual assistant (kind of an “expert system”)
Model inferencer to discover schema of unstructured data
A code generator that mimicks a company programming style
A real-time model reviewer ( “pair-modeling” )
A morphing modeling tool that adapts to the user profile
(expertise, typical usage)
AI to skip modeling:
An ML-based approach to learn
model transformations
Loli Burgueño, Jordi Cabot and Sebastien Gerard. An LSTM-Based Neural
Network Architecture for Model Transformations
Model transformations chain
Original model
… CODE
Software code1 refinementst n refinementth
Model-to-model
Transformation
Model-to-text
Transformation
CODE
CODE
• Requires learning a new language (the MT Language)
• Time consuming
• Error prone
Let’s try to learn the MTs automatically
Input
Output
Training Transforming
ML Input OutputML
Machine Learning
Artificial Neural Networks
Deep Networks
Recurrent networks
LSTM
BPMN
Petri nets
BPMN Petri Net
MTs ≈ sequence-to-sequence arch
• Combine two LSTM for better results
• Avoids fixed size input and output constraints
Tree-to-Tree Encoder-decoder arquitecture
InputTree
EmbeddingLayer
Encoder
LSTM network
OutputTree
ExtractionLayer
Decoder
LSTM network
AttentionLayer
InputModel
OutputModel
• Pre- and post-processing required to…
• represent models as trees
• reduce the size of the training dataset by using a canonical form
• rename variables to avoid the “dictionary problem”
InputModel
(preprocessed)
InputTree
EmbeddingLayer
Encoder
LSTM
network
OutputTree
ExtractionLayer
OutputModel
(non-postprocessed)
Decoder
LSTM
network
AttentionLayer
InputModel
OutputModel
Preprocessing
Postprocessing
Complete picture ML is
NOT a
fast
learner!
AI for model management:
Model similarity
with Graph Kernels
Robert Clarisó, Jordi Cabot:
Applying graph kernels to model-driven engineering
problems. MASES@ASE 2018: 1-5
Software Modeling and Artificial Intelligence: friends or foes?
Model diversity for better testing
If I ask a
solver for
25
solutions, I
only get
three
REALLY
different
ones!
Graph-based ML for more diverse results
Feature-based methods
• Graphs summarized as feature vectors
• The choice of the features is key
• E.g. of features: number of vertices, edges,
avg/min/max degree…
Easy to use BUT loss of precision
Kernel-based methods
• Goal
– Polynomial times
– Capture relevant topological information
• How
– Compare graph structures: path, subtrees, cycles
– Different Kernel methods. E.g. random walks
Best Kernel depends on the problem!
Let’s
revisit this
problem
Kernels to
cluster the
solutions and
choose
representative
examples
Software Modeling and Artificial Intelligence: friends or foes?
The leader of a dept works
in a different dept (error?)
Might be missed by
feature vector encoding
(MDE <-> AI)
meta
A model-
based bot
used to
build
models
Also for
BPMN
models
Joint work with Josep Carmona’s team
(go to see From Process models to chatbots on Wed)
Smart
modeling
tools to
generate
smart apps
Open Challenges
All this is very
fancy and
fashionable
BUT
Software Modeling and Artificial Intelligence: friends or foes?
Where is my data?
Every few years, a new initiative to collect
models in a repo pops up but in the end…
Data augmentation techniques? (mutation, GANs,…)
• Size of the training dataset
• Diversity in the training set
• Computational limitations of ANNs
– i.e., mathematical operations
• Generalization problem
– predicting output solutions for input models very different from
the training distribution it has learnt from
Limits of Neural Networks
Models
Community
Modeling needs to
adapt
- AI is here to stay
- Let’s see it as an opportunity
- To showcase the benefits of
modeling
- To improve the modeling
experience and broaden its user
base
Models are not
enough
We need (smart)
processing
capabilities to get the
most out of themhttps://modelia.eu/
Summary
Exciting times to be a modeler!!
Let’s work
together
jordi.cabot@
icrea.cat
@softmodeling
modeling-
languages.com
Back-up slides
Model representation
MODEL
ASSOCOBJ
c
Class
ATTS
isAbstract name
false family
OBJ
a
Attribute
ATTS
multivalued name
false surname
OBJ
d
t
Datatype
ATTS
name
String
at
t
c a
ASSOC
typ
e
a d
t
Preliminary results
• Correctness
– Measured through the accuracy and validation
loss
Preliminary results
• Performance
1. How long does it
take for the training
phase to complete?
Preliminary results
• Performance
1. How long does it
take for the training
phase to complete?
2. How long it takes to transform an
input model when the network is
trained?
Software Modeling and Artificial Intelligence: friends or foes?

More Related Content

PPTX
Temporal EMF: A temporal metamodeling platform
Jordi Cabot
 
PPTX
Cognifying model-driven software engineering
Jordi Cabot
 
PDF
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Lionel Briand
 
PDF
From MDE to SLE (April 17th, 2015)
Benoit Combemale
 
PPT
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Jordi Cabot
 
PDF
Future Trends on Software and Systems Modeling
Jordi Cabot
 
PPTX
Low-code vs Model-Driven Engineering
Jordi Cabot
 
PDF
Breathe Life Into Your IDE
Benoit Combemale
 
Temporal EMF: A temporal metamodeling platform
Jordi Cabot
 
Cognifying model-driven software engineering
Jordi Cabot
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Lionel Briand
 
From MDE to SLE (April 17th, 2015)
Benoit Combemale
 
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Jordi Cabot
 
Future Trends on Software and Systems Modeling
Jordi Cabot
 
Low-code vs Model-Driven Engineering
Jordi Cabot
 
Breathe Life Into Your IDE
Benoit Combemale
 

What's hot (20)

PPTX
Lightweight Model-Driven Engineering
Jordi Cabot
 
PPTX
The secret life of rules in Software Engineering
Jordi Cabot
 
PDF
Lessons learned from building a commercial bot development platform
Jordi Cabot
 
PPTX
Towards a UML and IFML mapping to GraphQL
Jordi Cabot
 
PPTX
All Researchers Should Become Entrepreneurs
Jordi Cabot
 
PPT
Web technologies: Model Driven Engineering
Piero Fraternali
 
PDF
Model driven software engineering in practice book - chapter 7 - Developing y...
Marco Brambilla
 
PPTX
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...
Hugo Bruneliere
 
PPTX
Introduction to architectures based on models, models and metamodels. model d...
Vicente García Díaz
 
PPTX
01 mde principles
Ludovico Iovino
 
PDF
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Jordi Cabot
 
PPTX
Model Drift Monitoring using Tensorflow Model Analysis
Vivek Raja P S
 
PPT
01 introduction to_module
APU
 
PDF
GOF Design pattern with java
Rajiv Gupta
 
DOCX
Oa 4 month exp
Ganesh Thutte
 
PPT
Introduction to MDA
Orçun Dayıbaş
 
PPTX
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
Marco Brambilla
 
PDF
Meta-modeling: concepts, tools and applications
Saïd Assar
 
PDF
Applying Refactoring Tools in Practice
Ganesh Samarthyam
 
Lightweight Model-Driven Engineering
Jordi Cabot
 
The secret life of rules in Software Engineering
Jordi Cabot
 
Lessons learned from building a commercial bot development platform
Jordi Cabot
 
Towards a UML and IFML mapping to GraphQL
Jordi Cabot
 
All Researchers Should Become Entrepreneurs
Jordi Cabot
 
Web technologies: Model Driven Engineering
Piero Fraternali
 
Model driven software engineering in practice book - chapter 7 - Developing y...
Marco Brambilla
 
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...
Hugo Bruneliere
 
Introduction to architectures based on models, models and metamodels. model d...
Vicente García Díaz
 
01 mde principles
Ludovico Iovino
 
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Jordi Cabot
 
Model Drift Monitoring using Tensorflow Model Analysis
Vivek Raja P S
 
01 introduction to_module
APU
 
GOF Design pattern with java
Rajiv Gupta
 
Oa 4 month exp
Ganesh Thutte
 
Introduction to MDA
Orçun Dayıbaş
 
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
Marco Brambilla
 
Meta-modeling: concepts, tools and applications
Saïd Assar
 
Applying Refactoring Tools in Practice
Ganesh Samarthyam
 
Ad

Similar to Software Modeling and Artificial Intelligence: friends or foes? (20)

PPTX
Smart modeling of smart software
Jordi Cabot
 
PDF
Learn how to build your own open-source AI software for construction calculat...
CalcForge
 
PDF
Enterprise Trends for Gen AI - Berkeley LLM AI Agents MOOC
VincentLui15
 
PPTX
Applied AI Workshop - Presentation - Connect Day GDL
Marc Teunis
 
PPTX
Past, Present and Future of Generative AI
abhishek36461
 
PDF
Dato Keynote
Turi, Inc.
 
PDF
Kubernetes and AI - Beauty and the Beast - Tobias Schneck - DOAG 24 NUE - 20....
Tobias Schneck
 
PDF
Quick Overview of the Top 9 Popular LLMs.pdf
SOFTTECHHUB
 
PDF
AC Atlassian Coimbatore Session Slides( 22/06/2024)
apoorva2579
 
PDF
Machine learning from software developers point of view
Pierre Paci
 
PDF
Kono.IntelCraft.Weekly.AI.LLM.Landscape.2024.02.28.pdf
Anant Corporation
 
PPTX
AI hype or reality
Awantik Das
 
PDF
SHUBHAM AI PPT for grapsp about artificial intelligence.pdf
shubham21ece529
 
PPTX
Journey of Generative AI
thomasjvarghese49
 
PDF
Containers & AI - Beauty and the Beast !?! @MLCon - 27.6.2024
Tobias Schneck
 
PPTX
AI Pipelines - Phoenix Data Conference 2019
Crystal Taggart
 
PDF
Containers & AI - Beauty and the Beast!?!
Tobias Schneck
 
PDF
ITB 2023 - Chatgpt Box! AI All The Things - Scott Steinbeck.pdf
Ortus Solutions, Corp
 
PDF
ITB_2023_Chatgpt_Box_Scott_Steinbeck.pdf
Ortus Solutions, Corp
 
PPTX
How to Build an Intelligent AI Model: A Complete Guide
danielle hunter
 
Smart modeling of smart software
Jordi Cabot
 
Learn how to build your own open-source AI software for construction calculat...
CalcForge
 
Enterprise Trends for Gen AI - Berkeley LLM AI Agents MOOC
VincentLui15
 
Applied AI Workshop - Presentation - Connect Day GDL
Marc Teunis
 
Past, Present and Future of Generative AI
abhishek36461
 
Dato Keynote
Turi, Inc.
 
Kubernetes and AI - Beauty and the Beast - Tobias Schneck - DOAG 24 NUE - 20....
Tobias Schneck
 
Quick Overview of the Top 9 Popular LLMs.pdf
SOFTTECHHUB
 
AC Atlassian Coimbatore Session Slides( 22/06/2024)
apoorva2579
 
Machine learning from software developers point of view
Pierre Paci
 
Kono.IntelCraft.Weekly.AI.LLM.Landscape.2024.02.28.pdf
Anant Corporation
 
AI hype or reality
Awantik Das
 
SHUBHAM AI PPT for grapsp about artificial intelligence.pdf
shubham21ece529
 
Journey of Generative AI
thomasjvarghese49
 
Containers & AI - Beauty and the Beast !?! @MLCon - 27.6.2024
Tobias Schneck
 
AI Pipelines - Phoenix Data Conference 2019
Crystal Taggart
 
Containers & AI - Beauty and the Beast!?!
Tobias Schneck
 
ITB 2023 - Chatgpt Box! AI All The Things - Scott Steinbeck.pdf
Ortus Solutions, Corp
 
ITB_2023_Chatgpt_Box_Scott_Steinbeck.pdf
Ortus Solutions, Corp
 
How to Build an Intelligent AI Model: A Complete Guide
danielle hunter
 
Ad

More from Jordi Cabot (20)

PPTX
Who will create the languages of the future?
Jordi Cabot
 
PPTX
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
PPTX
¿Cómo será el programador del futuro? ¿Tendremos trabajo?
Jordi Cabot
 
PPTX
The low-code handbook - Chapter 1: Basic Low-code questions and answers.
Jordi Cabot
 
PPTX
Who is going to develop the apps of the future? (hint: it’s not going to be ...
Jordi Cabot
 
PPTX
Application of the Tree-of-Thoughts Framework to LLM-Enabled Domain Modeling
Jordi Cabot
 
PPTX
AI and Software consultants: friends or foes?
Jordi Cabot
 
PPTX
Model-driven engineering for Industrial IoT architectures
Jordi Cabot
 
PPTX
Modeling should be an independent scientific discipline
Jordi Cabot
 
PPTX
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
Jordi Cabot
 
PPTX
How to sustain a tool building community-driven effort
Jordi Cabot
 
PPTX
The Software Challenges of Building Smart Chatbots - ICSE'21
Jordi Cabot
 
PPTX
Ingeniería del Software dirigida por modelos -Versión para incrédulos
Jordi Cabot
 
PPTX
Chatbot Tutorial - Create your first bot with Xatkit
Jordi Cabot
 
PPTX
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Jordi Cabot
 
PPTX
An LSTM-Based Neural Network Architecture for Model Transformations
Jordi Cabot
 
PPTX
WAPIml: Towards a Modeling Infrastructure for Web APIs
Jordi Cabot
 
PPTX
Is there a future for Model Transformation Languages?
Jordi Cabot
 
PPTX
UMLtoNoSQL : From UML domain models to NoSQL Databases
Jordi Cabot
 
PPTX
Multi-Platform Chatbot Modeling and Deployment with the Xatkit Framework
Jordi Cabot
 
Who will create the languages of the future?
Jordi Cabot
 
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
¿Cómo será el programador del futuro? ¿Tendremos trabajo?
Jordi Cabot
 
The low-code handbook - Chapter 1: Basic Low-code questions and answers.
Jordi Cabot
 
Who is going to develop the apps of the future? (hint: it’s not going to be ...
Jordi Cabot
 
Application of the Tree-of-Thoughts Framework to LLM-Enabled Domain Modeling
Jordi Cabot
 
AI and Software consultants: friends or foes?
Jordi Cabot
 
Model-driven engineering for Industrial IoT architectures
Jordi Cabot
 
Modeling should be an independent scientific discipline
Jordi Cabot
 
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
Jordi Cabot
 
How to sustain a tool building community-driven effort
Jordi Cabot
 
The Software Challenges of Building Smart Chatbots - ICSE'21
Jordi Cabot
 
Ingeniería del Software dirigida por modelos -Versión para incrédulos
Jordi Cabot
 
Chatbot Tutorial - Create your first bot with Xatkit
Jordi Cabot
 
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Jordi Cabot
 
An LSTM-Based Neural Network Architecture for Model Transformations
Jordi Cabot
 
WAPIml: Towards a Modeling Infrastructure for Web APIs
Jordi Cabot
 
Is there a future for Model Transformation Languages?
Jordi Cabot
 
UMLtoNoSQL : From UML domain models to NoSQL Databases
Jordi Cabot
 
Multi-Platform Chatbot Modeling and Deployment with the Xatkit Framework
Jordi Cabot
 

Recently uploaded (20)

PPTX
TestNG for Java Testing and Automation testing
ssuser0213cb
 
PPTX
Maximizing Revenue with Marketo Measure: A Deep Dive into Multi-Touch Attribu...
bbedford2
 
PPTX
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
PPTX
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
PDF
Wondershare Filmora 14.5.20.12999 Crack Full New Version 2025
gsgssg2211
 
PDF
Build Multi-agent using Agent Development Kit
FadyIbrahim23
 
PDF
Why Use Open Source Reporting Tools for Business Intelligence.pdf
Varsha Nayak
 
PPTX
slidesgo-unlocking-the-code-the-dynamic-dance-of-variables-and-constants-2024...
kr2589474
 
PPT
Why Reliable Server Maintenance Service in New York is Crucial for Your Business
Sam Vohra
 
PDF
The Role of Automation and AI in EHS Management for Data Centers.pdf
TECH EHS Solution
 
DOCX
Can You Build Dashboards Using Open Source Visualization Tool.docx
Varsha Nayak
 
PDF
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
PDF
Jenkins: An open-source automation server powering CI/CD Automation
SaikatBasu37
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
PDF
Become an Agentblazer Champion Challenge
Dele Amefo
 
PDF
QAware_Mario-Leander_Reimer_Architecting and Building a K8s-based AI Platform...
QAware GmbH
 
PPTX
Explanation about Structures in C language.pptx
Veeral Rathod
 
PDF
Exploring AI Agents in Process Industries
amoreira6
 
PDF
49784907924775488180_LRN2959_Data_Pump_23ai.pdf
Abilash868456
 
PDF
49785682629390197565_LRN3014_Migrating_the_Beast.pdf
Abilash868456
 
TestNG for Java Testing and Automation testing
ssuser0213cb
 
Maximizing Revenue with Marketo Measure: A Deep Dive into Multi-Touch Attribu...
bbedford2
 
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
Wondershare Filmora 14.5.20.12999 Crack Full New Version 2025
gsgssg2211
 
Build Multi-agent using Agent Development Kit
FadyIbrahim23
 
Why Use Open Source Reporting Tools for Business Intelligence.pdf
Varsha Nayak
 
slidesgo-unlocking-the-code-the-dynamic-dance-of-variables-and-constants-2024...
kr2589474
 
Why Reliable Server Maintenance Service in New York is Crucial for Your Business
Sam Vohra
 
The Role of Automation and AI in EHS Management for Data Centers.pdf
TECH EHS Solution
 
Can You Build Dashboards Using Open Source Visualization Tool.docx
Varsha Nayak
 
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
Jenkins: An open-source automation server powering CI/CD Automation
SaikatBasu37
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
Become an Agentblazer Champion Challenge
Dele Amefo
 
QAware_Mario-Leander_Reimer_Architecting and Building a K8s-based AI Platform...
QAware GmbH
 
Explanation about Structures in C language.pptx
Veeral Rathod
 
Exploring AI Agents in Process Industries
amoreira6
 
49784907924775488180_LRN2959_Data_Pump_23ai.pdf
Abilash868456
 
49785682629390197565_LRN3014_Migrating_the_Beast.pdf
Abilash868456
 

Software Modeling and Artificial Intelligence: friends or foes?

Editor's Notes

  • #2: Thank you for the invitation. It’s an honour to be here. I’ll talk about the intersection between these two concepts and how they can help each other I’ll try to cover the state of the art but also to focused on some specific applications we’re working on in my team
  • #5: Similar to many of you
  • #6: We have a soft side
  • #7: They do the work, I take care of the marketing
  • #8: Before we talk about the relationship between modeling and AI, we should make sure we have a common understanding of these concepts
  • #10: I’ll skip the introduction to MDE since you’re all experts on this here.
  • #11: There is always a model and we all model, at least in our head, the real question is whether to make the models explícit And this is linked to a trade-off analysis of the cost of these models vs the benefits of having them explícit. As we’ll see, AI can reduce the cost and maximize these benefits
  • #13: We typically use the word AI or even just ML as these are the most fashionable concepts. And we’ll use those in this talk. But I prefer the word cognification, taken from these book.
  • #14: Todo tendrá la opción de funcionar con o sin cognificación.
  • #15: More than determining the exact limits of each circle the point is make clear that not everything can be reduced to Deep learning
  • #20: So we may even wonder whether there is a future for us
  • #21: Relationship between humans and AI depending on the type of tasks depending on two dimensions: compassion/empathy and creativity/optimization Best results always in the category where both have some kind of coooperation
  • #23: We need to have a better perspective of what AI is (and is not) and how we can use it as a valuable tool
  • #24: In fact they are very Good Friends that can help each other a lot. I’ll spend the rest of the talk describing how they can help each ohter.
  • #28: Plenty of complexity and heterogeneity. This is the typical scenario where modeling abstractions can help a lot. The AI landscape could beneffit from DSLs, PIM, transformations, …. We’re very Good at this. Huge opportunity for us to contribute to the AI world.
  • #29: The
  • #30: A way to facilitate the creation of ML models. The easier to use the tool, the more users they get for their infrastructure
  • #31: Still, typicall rather low-level and not integrated with the rest of the company Information System.
  • #36: Plenty of complexity and heterogeneity. This is the typical scenario where modeling abstractions can help a lot. The AI landscape could beneffit from DSLs, PIM, transformations, …. We’re very Good at this. Huge opportunity for us to contribute to the AI world.
  • #38: We need to define the potential intentions of the users, The actions / executions to be done in response And the platform (and services
  • #44: All of you old enough may have a feeling of deja vu
  • #45: A lot of initiatives going on in the programming IDEs domain
  • #46:  It shows a customary usage of InputStream in decoding bitmaps. Furthermore, this recommendation demonstrates a good practice to catch the potential IOException when opening the InputStream. If this exception occurs in runtime and is not caught, the app will crash immediately. A responsible engineer should extend the code using this recommendation and handle this exception properly.
  • #47: Even powerpoint has an asssitant
  • #50: Beyond an autocomplete similar to the Mendix Assist, they also offer another interesting type of suggestions for data models.
  • #51: We all can imagine several potential applications And many of these ideas are not really new. It’s just that they are now posible thanks to better data and tools With Antoni we had already a Project 2011 on this topic
  • #53: Typical MDD process
  • #54: In the end we choose LSTM (Long short Term memory networks) since they are able to remember more context (RNN already remember due to the backpropagation but LSTM remember more long distance) When transforming models you need to have this capacity of remembering parts of the models you’ve seen and matched before
  • #55: A typical sequence-to-sequence arch combines two LSTMs for better results especially regarding constraints on the input and output sizes.
  • #56: The encoder transform the sequence into a fixed size numeric vector. The decoder reverses the process
  • #57: We follow a variation that uses tree embeddings as this is closer to models
  • #59: AI can also help in managing and sorting models
  • #62: Which is clearly inefficient If we can somehow cluster the solutions and just take one of each type, we would get much more meaningful information!
  • #65: And you may even need to define your own
  • #66: Which is clearly inefficient
  • #67: And you may even need to define your own
  • #68: And you may even need to define your own
  • #72: I haven’t yet seen this combination much. E.g. apps that include facial recognition components
  • #73: More and more mixed. Following up on what we said before, we need lowcode tools to include ML component that help users include inteligent components in their apps
  • #74: Possibilites are endless but only if we manage to fix some important challenges first.
  • #75: More and more mixed. Following up on what we said before, we need lowcode tools to include ML component that help users include inteligent components in their apps
  • #76: We should talk about the elephant in the room
  • #77: There is no GitHub for models This makes any initiative related to ML difficult to implement with Good results. Also transfer learning could help here
  • #79: But if we only focus on the techniques we’re missing the most important aspect: the people building AND using those models - > social aspects of AI
  • #80: One way or the other, modeling needs to adapt to stay relevant
  • #81: If we want to move MDE forward we need more than just keep improving modeling techniques
  • #83: Need to understand a new community, difficulties in publishing…
  • #84: We’re always looking for collaborations. So get involved in our research or stop complaining about useless research done in academia!!!!
  • #87: The correctness of ANNs is studied through its accuracy and overfitting (being the latter measured through the validation loss). The accuracy should be as close as 1 as possible while the validation loss as close to 0 as possible. The accuracy is calculated comparing for each input model in the test dataset whether the output of the network corresponds with the expected output. If it does, the network was able to successfully predict the target model for the given input model. The accuracy grows and the loss decreases with the size of the dataset, i.e., the more input-output pairs we provide for training, the better our software learns and predicts (transforms). In this concrete case, with a dataset with 1000 models, the accuracy is 1 and the loss 0 (meaning that no overfitting was taking place), which means that the ANNs are perfectly trained and ready to use. Note that we show the size of the complete dataset but, we have split it using an 80% of the pairs for training, a 10% for validation and another 10% for testing.