Roel Wuyts

dblp:12/196 · DBLP profile ↗
← Back
34ranked-venue papers
2as first author
2since 2021 · last 2022
0000-0003-4236-995XORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 19 · 2 first-authorArtificial intelligence and machine learning · 7 · 1 since 2021Systems, architecture and hardware · 5Applied, interdisciplinary, general and emerging computing · 2 · 1 since 2021Graphics, computer vision, multimedia, augmented reality and games · 1Theory of computation · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
3 papers
Programming languages and type systems · 52% Runtime systems and virtual machines · 16% Requirements engineering and software design · 12%

Topics — the 7 heaviest of 10, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems › language design
language mechanisms
0.112009
Executing code in the past: efficient in-memory object graph versioning · OOPSLA 2009
Requirements engineering and software design › inconsistency management
conflict resolution
0.112007
User-changeable visibility: resolving unanticipated name clashes in traits · OOPSLA 2007
Software maintenance and evolution
code reuse
0.112006
Traits: A mechanism for fine-grained reuse · ACM Trans. Program. Lang. Syst. 2006
Programming languages and type systems
inheritance
0.112006
Traits: A mechanism for fine-grained reuse · ACM Trans. Program. Lang. Syst. 2006
Programming languages and type systems › object-oriented programming
traits
0.112006
Traits: A mechanism for fine-grained reuse · ACM Trans. Program. Lang. Syst. 2006
Program analysis › dynamic analysis
program tracing
0.012009
Executing code in the past: efficient in-memory object graph versioning · OOPSLA 2009
Programming languages and type systems › object-oriented programming
multiple inheritance
0.012007
User-changeable visibility: resolving unanticipated name clashes in traits · OOPSLA 2007

Methods — techniques the papers use, named apart from their topics

smalltalk implementation · 0.1data structure design · 0.1compile-time transformation · 0.1bytecode manipulation · 0.1refactoring · 0.1formal model · 0.1
YearPublicationVenuePosition
2022 AI privacy preserving robots working in a smart sensor environment
abstract
For enhanced safety, autonomous Guided Vehicles (AGV) in warehouses complement their local sensors with data from environmental sensors to improve the detection of humans not in view of the AGV. The problem with many existing approaches is that they broadcast all environmental data in plain, leading to both privacy and bandwidth issues. In our privacy-preserving amalgamated machine learning approach, the environment sensors do data pre-processing and only send abstracted features to the AGVs, solving both privacy and bandwidth problems. The AGVs use these abstracted features in an internal machine learning model to quantify the safety-level of the environment. We have implemented a physical demonstrator using minimal hardware, following this principle. Our demo AGV ran positioning, navigation and the safety inference in real time on a simple Raspberry Pi, solely relying on the amalgamated features to avoid both static and dynamic objects. By only broadcasting abstract features, the safety level can be maintained, the privacy is preserved, and the used bandwidth is reduced by more than 2 orders of magnitude, compared to sharing all video streams.
Imen Chakroun, Geert Vanmeerbeeck, Roel Wuyts, Wilfried Verarcht
ICMLA3
2021 Distributing intelligence for object detection using edge computing
abstract
Object detection plays an important role in many artificial intelligence applications such as autonomous driving and video surveillance. However, running object detection models on small edge devices remains computationally expensive and time consuming. In this paper, we present a distributed cloud-edge version of the YOLOv3 model based on split learning. By keeping the data local and sharing only part of the model, both computational and privacy requirements were met. The definition of the cut layer was set by means of a comprehensive analysis of the model architecture. Validation of correctness was established using the COCO dataset and performance comparison was made with client-server basic distribution and federated learning.
Imen Chakroun, Tom Vander Aa, Roel Wuyts, Wilfried Verachtert
CLOUD3
2020 Using Unsupervised Machine Learning for Plasma Etching Endpoint Detection
Imen Chakroun, Thomas J. Ashby, Sayantan Das 0003, Sandip Halder, Roel Wuyts, Wilfried Verachtert
ICPRAM5
2018 GPU-accelerated CellProfiler
Imen Chakroun, Nick Michiels, Roel Wuyts
BIBM3
2018 A high-level library for multidimensional arrays programming in computational science
abstract
Summary This paper describes ExaShark, a hybrid n‐dimensional array toolkit offered as a high‐level library for scientists to compute large‐scale simulations. It offers a global‐array–like interface while its runtime can be configured to use shared memory threading techniques, inter‐node distribution techniques, or combinations of both. ExaShark takes advantage of the latest HPC technologies, helping to scale to future generation systems. It has been used to develop several scientific applications including stencil codes, solvers, and matrix factorization algorithms. These applications are used to demonstrate that it improves on the state of the art by providing a user‐friendly, generic API without sacrificing performance.
Imen Chakroun, Tom Vander Aa, Bruno De Fraine, Tom Haber, Pascal Costanza, Roel Wuyts
Concurr. Comput. Pract. Exp.6
2017 Scaling machine learning for target prediction in drug discovery using Apache Spark
Dries Harnie, Mathijs Saey, Alexander E. Vapirev, Jörg K. Wegner, Andrey Gedich, Marvin N. Steijaert, Hugo Ceulemans, Roel Wuyts, Wolfgang De Meuter
Future Gener. Comput. Syst.8
2015 Scaling Machine Learning for Target Prediction in Drug Discovery using Apache Spark
abstract
In the context of drug discovery, a key problem is the identification of candidate molecules that affect proteins associated with diseases. Inside Janssen Pharmaceutical, the Chemo genomics project aims to derive new candidates from existing experiments through a set of machine learning predictor programs, written in single-node C++. These programs take a long time to run and are inherently parallel, but do not use multiple nodes. We show how we reimplementation the pipeline using Apache Spark, which enabled us to lift the existing programs to a multi-node cluster without making changes to the predictors. We have benchmarked our Spark pipeline against the original, which shows almost linear speedup up to 8 nodes. In addition, our pipeline generates fewer intermediate files while allowing easier check pointing and monitoring.
Dries Harnie, Alexander E. Vapirev, Jörg K. Wegner, Andrey Gedich, Marvin N. Steijaert, Roel Wuyts, Wolfgang De Meuter
CCGRID6
2011 A probabilistic fuzzy approach to modeling nonlinear systems
Hengjie Song, Chunyan Miao, Zhiqi Shen 0001, Roel Wuyts, Maja D'Hondt, Francky Catthoor
Neurocomputing4
2011 An Extension to Fuzzy Cognitive Maps for Classification and Prediction
abstract
Fuzzy cognitive maps (FCMs), as an illustrative causative representation of modeling and manipulation of complex systems, can be used to model the dynamic behavior of the investigated systems. However, due to defects in expression and architecture, the traditional FCMs and most of their relevant extensions are not applicable to classification problems. To solve this problem, this paper presents an approach that directly extends the model by translating the reasoning mechanism of traditional FCMs to a set of fuzzy if– then rules. Moreover, the proposed approach fully considers the contribution of the inputs to the activation of the fuzzy rules and quantifies the causalities using mutual subsethood, which works in conjunction with volume defuzzification in a gradient descent-learning framework. In this manner, our approach enhances the capability of the conventional FCMs to automatically identify membership functions and quantify causalities. Despite the increase in the number of tunable parameters, experimental results show that the proposed approach efficiently extends the application of the traditional FCMs into classification problems, while keeping the ability for prediction and approximation.
Hengjie J. Song, Chunyan Miao, Roel Wuyts, Zhiqi Shen 0001, Maja D'Hondt, Francky Catthoor
IEEE Trans. Fuzzy Syst.3
2010 PinComm: Characterizing Intra-application Communication for the Many-Core Era
abstract
As the number of cores in both embedded Multi-Processor Systems-on-Chip and general purpose processors keeps rising, on-chip communication becomes more and more important. In order to write efficient programs for these architectures it is therefore necessary to have a good idea of the communication behavior of an application. We present a communication profiler that extracts this behavior from compiled, sequential or parallel C/C++ programs, and constructs a dynamic data-flow graph at the level of major functional blocks. In contrast to existing methods of measuring inter-program communication, our tool automatically generates the program's data-flow graph and is less demanding for the developer. It can also be used to view differences between program phases (such as different video frames), which allows both input- and phase-specific optimizations to be made. We will also describe briefly how this information can subsequently be used to guide the effort of parallelizing the application, to co-design the software, memory hierarchy and communication hardware, and to provide new sources of communication-related runtime optimizations.
Wim Heirman, Dirk Stroobandt, Narasinga Rao Miniskar, Roel Wuyts, Francky Catthoor
ICPADS4
2010 Design of fuzzy cognitive maps using neural networks for predicting chaotic time series
Hengjie Song, Chunyan Miao, Zhiqi Shen 0001, Roel Wuyts, Maja D'Hondt, Francky Catthoor
Neural Networks4
2010 Implementation of Fuzzy Cognitive Maps Based on Fuzzy Neural Network and Application in Prediction of Time Series
abstract
The fuzzy cognitive map (FCM) has gradually emerged as a powerful paradigm for knowledge representation and a simulation mechanism that is applicable to numerous research and application fields. However, since efficient methods to determine the states of the investigated system and to quantify causalities that are the very foundations of FCM theory are lacking, constructing FCMs for complex causal systems greatly depends on expert knowledge. The manually developed models have a substantial shortcoming due to the model subjectivity and difficulties with assessing its reliability. In this paper, we proposed a fuzzy neural network to enhance the learning ability of FCMs. Our approach incorporates the inference mechanism of conventional FCMs with the determination of membership functions, as well as the quantification of causalities. In this manner, FCM models of the investigated systems can automatically be constructed from data and, therefore, operate with less human intervention. In the employed fuzzy neural network, the concept of mutual subsethood is used to describe the causalities, which provides more transparent interpretation for causalities in FCMs. The effectiveness of the proposed approach in handling the prediction of time series is demonstrated through many numerical simulations.
Hengjie Song, Chunyan Miao, Roel Wuyts, Zhiqi Shen 0001, Francky Catthoor
IEEE Trans. Fuzzy Syst.3
2009 Fast type reconstruction for dynamically typed programming languages
abstract
Type inference and type reconstruction derive static types for program elements that have no static type associated with them. They have a wide range of usage, such as helping to eliminate the burden of manually specifying types, verifying whether a program is type-safe, helping to produce more optimized code or helping to understand programs. While type inference and type reconstruction is an active field of research, most existing techniques are interested foremost in the precision of their approaches, at the expense of execution speed. As a result, existing approaches are not suited to give direct feedback in development environments, where interactivity dictates very fast approaches. This paper presents a type reconstruction algorithm for variables that is extremely fast (in the order of milliseconds) and reasonably precise (75 percent). The system is implemented as a byte-code evaluator in several Smalltalk environments, and its execution speed and precision are validated on a number of concrete case studies.
Frédéric Pluquet, Antoine Marot, Roel Wuyts
DLS3
2009 Executing code in the past: efficient in-memory object graph versioning
abstract
Object versioning refers to how an application can have access to previous states of its objects. Implementing this mechanism is hard because it needs to be efficient in space and time, and well integrated with the programming language. This paper presents HistOOry, an object versioning system that uses an efficient data structure to store and retrieve past states. It needs only three primitives, and existing code does not need to be modified to be versioned. It provides fine-grained control over what parts of objects are versioned and when. It stores all states, past and present, in memory. Code can be executed in the past of the system and will see the complete system at that point in time. We have implemented our model in Smalltalk and used it for three applications that need versioning: checked postconditions, stateful execution tracing and a planar point location implementation. Benchmarks are provided to asses the practical complexity of our implementation.
Frédéric Pluquet, Stefan Langerman, Roel Wuyts
OOPSLA3
2009 Traits at work: The design of a new trait-based stream library
Damien Cassou, Stéphane Ducasse, Roel Wuyts
Comput. Lang. Syst. Struct.3
2008 Implementing Partial Persistence in Object-Oriented Languages
abstract
A partially persistent data structure is a data structure which preserves previous versions of itself when it is modified. General theoretical schemes are known (e.g. the fat node method) for making any data structure partially persistent. To our knowledge however no general implementation of these theoretical methods exists to date. This paper evaluates different methods to achieve this goal and presents the first working implementation of partial persistence in the object-oriented language Java. Our approach is transparent, i.e., it allows any existing data structures to become persistent without changing its implementation where all previous solutions require an extensive modification of the code by hand. This transparent property is important in view of the large number of algorithmic results that rely on persistence. Our implementation uses aspect-oriented programming, a modularization technique which allows us to instrument the existing code with the needed hooks for the persistence implementation. The implementation is then validated by running benchmarks to analyze both the cost of persistence and of the aspect oriented approach. We also illustrate its applicability by implementing a random binary search tree and making it persistent, and then using the resulting structure to implement a point location data structure in just a few lines.
Frédéric Pluquet, Stefan Langerman, Antoine Marot, Roel Wuyts
ALENEX4
2008 Stateful traits and their formalization
Alexandre Bergel, Stéphane Ducasse, Oscar Nierstrasz, Roel Wuyts
Comput. Lang. Syst. Struct.4
2008 Creating sophisticated development tools with OmniBrowser
Alexandre Bergel, Stéphane Ducasse, Colin Putney, Roel Wuyts
Comput. Lang. Syst. Struct.4
2007 User-changeable visibility: resolving unanticipated name clashes in traits
abstract
A trait is a unit of behaviour that can be composed with other traits and used by classes. Traits offer an alternative to multiple inheritance. Conflict resolution of traits, while flexible, does not completely handle accidental method name conflicts: if a trait with method m is composed with another trait defining a different method m then resolving the conflict may prove delicate or infeasible in cases where both versions of m are still needed. In this paper we present freezeable traits, which provide an expressive composition mechanism to support unanticipated method composition conflicts. Our solution introduces private trait methods and lets the class composer change method visibility at composition time (from public to private and vice versa). Moreover two class composers may use different composition policies for the same trait, something which is not possible in mainstream languages. This approach respects the two main design principles of traits: the class composer is empowered and traits can be flattened away. We present an implementation of freezable traits in Smalltalk. As a side-effect of this implementation we introduced private (early-bound and invisible) methods to Smalltalk by distinguishing object-sends from self-sends. Our implementation uses compile-time bytecode manipulation and, as such, introduces no run-time penalties.
Stéphane Ducasse, Roel Wuyts, Alexandre Bergel, Oscar Nierstrasz
OOPSLA2
2006 Inter-language reflection: A conceptual model and its implementation
Kris Gybels, Roel Wuyts, Stéphane Ducasse, Maja D'Hondt
Comput. Lang. Syst. Struct.2
2006 Co-evolving code and design with intensional views: A case study
Kim Mens, Andy Kellens, Frédéric Pluquet, Roel Wuyts
Comput. Lang. Syst. Struct.4
2006 Traits: A mechanism for fine-grained reuse
abstract
Inheritance is well-known and accepted as a mechanism for reuse in object-oriented languages. Unfortunately, due to the coarse granularity of inheritance, it may be difficult to decompose an application into an optimal class hierarchy that maximizes software reuse. Existing schemes based on single inheritance, multiple inheritance, or mixins, all pose numerous problems for reuse. To overcome these problems we propose traits , pure units of reuse consisting only of methods. We develop a formal model of traits that establishes how traits can be composed, either to form other traits, or to form classes. We also outline an experimental validation in which we apply traits to refactor a nontrivial application into composable units.
Stéphane Ducasse, Oscar Nierstrasz, Nathanael Schärli, Roel Wuyts, Andrew P. Black
ACM Trans. Program. Lang. Syst.4
2005 Classboxes: controlling visibility of class extensions
Alexandre Bergel, Stéphane Ducasse, Oscar Nierstrasz, Roel Wuyts
Comput. Lang. Syst. Struct.4
2005 Introduction
Noury Bouraqadi, Roel Wuyts
Comput. Lang. Syst. Struct.2
2005 Uniform and safe metaclass composition
Stéphane Ducasse, Nathanael Schärli, Roel Wuyts
Comput. Lang. Syst. Struct.3
2005 Parcels: A fast and feature-rich binary deployment technology
Eliot Miranda, David Leibs, Roel Wuyts
Comput. Lang. Syst. Struct.3
2005 A data-centric approach to composing embedded, real-time software components
Roel Wuyts, Stéphane Ducasse, Oscar Nierstrasz
J. Syst. Softw.1
2004 Composable Encapsulation Policies
Nathanael Schärli, Stéphane Ducasse, Oscar Nierstrasz, Roel Wuyts
ECOOP4
2004 Ordering Broken Unit Tests for Focused Debugging
abstract
Current unit test frameworks present broken unit tests in an arbitrary order, but developers want to focus on the most specific ones first. We have therefore inferred a partial order of unit tests corresponding to a coverage hierarchy of their sets of covered method signatures: When several unit tests in this coverage hierarchy break, we can guide the developer to the test calling the smallest number of methods. Our experiments with four case studies indicate that this partial order is semantically meaningful, since faults that cause a unit test to break generally cause less specific unit tests to break as well.
Markus Gälli, Michele Lanza 0001, Oscar Nierstrasz, Roel Wuyts
ICSM4
2004 Editorial: Smalltalk Language
Stéphane Ducasse, Roel Wuyts
Comput. Lang. Syst. Struct.2
2004 Unanticipated integration of development tools using the classification model
Roel Wuyts, Stéphane Ducasse
Comput. Lang. Syst. Struct.1
2002 Components for embedded software: the PECOS approach
abstract
Software is more and more becoming the major cost factor for embedded devices. Already today, software accounts for more than 50 percent of the development costs of such a device. However, software development practices in this area lag far behind those in the traditional software industry. Reuse is hardly ever heard of in some areas, development from scratch is common practice and component-based software is usually a foreign word. PECOS is a collaborative project between industrial and research partners that seeks to enable component-based technology for a certain class of embedded systems known as "field devices" by taking into account the specific properties of this application area. In this paper we introduce a component model for field device software. Furthermore we report on the PECOS component composition language CoCo and the mapping from CoCo to Java and C++.
Thomas Genssler, Alexander Christoph, Michael Winter 0007, Oscar Nierstrasz, Stéphane Ducasse, Roel Wuyts, Gabriela Arévalo, Bastiaan Schönhage, Peter Müller 0006, Christian Stich
CASES6
2002 Supporting software development through declaratively codified programming patterns
Kim Mens, Isabel Michiels, Roel Wuyts
Expert Syst. Appl.3
2001 Supporting Software Development through Declaratively Codified Programming
Kim Mens, Isabel Michiels, Roel Wuyts
SEKE3