Swarm Intelligence is a meta-heuristic methodology used to solve numerical optimization problems by simulating swarm behaviors found in nature. These techniques demonstrate the desirable properties of interpretability, scalability, effectiveness, and robustness. There is a certain similarity between bio-inspired systems and routing in networks, especially in Wireless Sensor Networks (WSNs). We are working on the design for a Swarm Intelligence (SI) based routing protocol capable of being deployed on large-scale WSNs to ensure efficient energy usage and prolonging the network lifetime.
optimizationBenchmarking.org was the successor project of our TSP Suite. It is a software for rigorously analyzing and comparing the performance of arbitrary combinatorial and numerical optimization algorithms (or machine learning algorithms) implemented in arbitrary programming languages on arbitrary optimization problems. This tool can do more than drawing nice diagrams over your full experimental data or over groups of your data: It combines several machine learning techniques to find the reasons for algorithm behaviors and problem hardness. It generates reports which contain basic statistics and nice diagrams in HTML and LaTeX (also compiled to PDF and ready for re-use in your publications) or exports the data into formats which can be loaded by MatLab, R, etc. Our goal is to provide one central tool which can
- support researchers in optimization and machine learning to fully understand their algorithms and optimization/machine learning problems in order to develop better and more robust algorithms, as well as
- support the practitioner in an application field to understand which optimization/machine learning methods work best for her particular needs.
Although we are currently developing this open source software, you can already use an alpha version, either as Java program or as a Docker container which does not require any additional installation or software. Both versions provide a browser-based graphical user interface (GUI) and do not require any programming skills from your side. The software allows you to download several example experiments and evaluator setups from the GUI and also provides extensive help on how to use it.
The most recent release of our software is version 0.8.9.
In 2014, we published TSP Suite, a Java experimentation framework for the Traveling Salesman Problem (TSP), the classical and most important logistic planning problem. The TSP Suite follows a holistic approach: It supports researchers in implementing and JUnit testing their algorithms, running experiments in a parallel and distributed fashion, and has an evaluator component which can compare the performance of different algorithms over time according to several different statistical measures automatically.
With our work on this topic, we want to make it easier for other researchers to run comprehensive experiments and to statistically rigorously evaluate algorithms. We believe that if we want to do good research in the domain of optimization, we need sound experiments and clear and comprehensive algorithm comparisons. This, however, costs a lot of work and thus, tool support is needed. Our holistic concepts in the TSP Suite approach are the right idea for this. We later extended this concept to allow for comparing the performance of arbitrary optimization algorithms implemented in arbitrary programming languages applied to arbitrary problems in form of the optimizationBenchmarking.org framework.
Service-oriented Architecture (SOA) is a flexible software design paradigm for enterprises. The workflows of a company are implemented as services which can be arranged, updated and managed at runtime without interfering with ongoing business. Service management aims at providing undisturbed access to services. Its efficiency strongly depends on a fast response time in the case of a failure. This is hard to achieve since the relations between applications and services require comprehensive knowledge and lack transparency for administrators. Self-organizing approaches promise a solution by automating service discovery.
Dr. Weise has contributed to the fields of web service discovery and composition, of semantic service description, and service/QoS monitoring mainly in the late 2000s and early 2010s. His maybe most important contribution to the field was the joint development of a system which enabled service compositions from semantic descriptions stored in a knowledge base. This systems therefore utilized multiple composition algorithms from which the most appropriate set was dynamically selected and applied according to the size of the knowledge base and the available processors. The functionality of our system, which won several awards in the international web service challenges from 2006 to 2008, was made available through Web Services interface itself. We thus showed that web service composition could be provided as component in self-organizing service management systems with any number of services and ontologies. Due to the success of the system, Dr. Weise later became one of the co-organizes of the web service challenge himself.
When thinking about distributed systems, we usually either think about the applications and services they can offer to us or technological aspects, protocols like TCP/IP. Distributed algorithms, however, are an extremely underrated topic. They offer services such as leader election, mutual exclusion, or data aggregation, which are usually located somewhere "under the hood" in radio networks, network shares, or sensor networks. Roughly from 2005 to 2015, Dr. Weise has actively researched the question "Can we automatically synthesize such algorithms?" or, more generally, "Can a computer invent an actual, non-trivial program?"
In other words, this strand of our research is focused on Inductive Program Synthesis, i.e., the automatic generation of programs which can compute exactly the wanted outputs for a set of specified input examples. Genetic programming (GP) is a type of evolutionary algorithm, i.e., an optimization method, whose name implies that it might be suitable for this. Yet it has been applied mainly to different problems – or very coarse interpretations of the term "program." In his work, Dr. Weise investigated several improvements of GP, including new representations and special fitness assignment procedures. The work led to his award-winning PhD thesis, but was later also extended to the synthesis of exact integer mathematical algorithms. It led to the automatic evolution of real, non-trivial, complex algorithms, containing loops and conditionals. Without any "cheating" such as gently guiding the optimization procedure into the right direction.