<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>On the Use of Provalets in a Predictive Maintenance Use Case</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Freie Universitaet Berlin</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Germany paschke@inf.fu-berlin.de</string-name>
        </contrib>
      </contrib-group>
      <abstract>
        <p>In this paper we report on a predictive maintenance use cases using Provalet rule agents for implementing expressive rule-based streaming analytics and decision logic on top of online machine learning prediction models, which are dynamically applied to the streaming data coming from on-board asset monitoring sensors. Provalets are component-based mobile agents for rule-based inference analytics, which can be dynamically deployed as microservices into container environments via simple REST calls.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>permissions can be de ned in the agents metadata and policies, so that the
controlled Provalet container environment can enforce them and reject agents that
request permissions that cannot be granted.</p>
      <p>This paper will report on an industrial use case for Provalets in predictive
maintenance. In the manufacturing industry high value is associated with the
early discovery, warning, prediction, and prevention of anomalies by proactively
triggering optimized maintenance actions. In condition-based maintenance
sensors monitor the normal operating conditions of an asset and conduct
maintenance based on the conditions assessed by the sensors. This requires e cient
streaming analytics and continuous online machine learning of the prediction
models in combination with event-based reaction rules / logic. The data
processing and analytics should be done as close as possible to the IoT sensors
(and gateways), in order to address typical problems such as security, privacy,
scalability, reliability (e.g. o ine connection problems), etc.</p>
      <p>The further paper is structured as follows: In section 2 we begin by
explaining the background of machine learning and streaming analytics / event pattern
mining approaches in predictive maintenance. In section 3 we describe a
predictive maintenance use case. We then summarize the core principles of Provalets
in section 4 and describe the implementation in section 5. We summarize the
application in section 6.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Background</title>
      <p>In today's industrial processes real-time insights into the underlying data and
event streams to trigger optimal reactions and make situation-aware decisions are
crucial for the business competitiveness. While real-time reactions on detected
complex events are important, the goal is to predict critical event occurrences
before they actually happen and to trigger proactive actions. Figure 1 illustrates
this rapidly decreasing knowledge value of events.</p>
      <p>For instance, in maintenance the value, e.g. in terms of life time and
reliability of an asset/system, increases from pure reactive maintenance to preventive
maintenance and predictive maintenance and further to maintenance
optimization, as shown in gure 2.</p>
      <p>While reactive maintenance tries to detect and react to failures in real-time,
predictive maintenance foresees the breaking point of a system before it
actually occurs and a chain of preventive and service reactions are triggered
before expensive damages can occur. In more detail, the aims are to (1) reduce
maintenance costs, e.g. by avoiding the entire system from getting harmed
further by breakdowns (corrective / reactive maintenance), and by avoiding costs
caused by scheduled, interval-based, preventive replacement of still functioning
pieces (preventive maintenance), and (2) avoid breakdowns by triggering
predictive maintenance activities as they are necessitated by their predicted life time
or costs with respect to the actual conditions of the target system (predictive
maintenance). Condition-based maintenance sensors continuously monitor the
asset during normal operating conditions and a maintenance action is triggered
based on their assessment. Modular maintenance optimization can further
reduce costs and exploit synergy e ects, e.g. by replacing components during light
maintenance operations and thus bundling multiple predicted condition-based
maintenance actions into one.</p>
      <p>In contrast to reactions based on learned patterns from historic data, the
challenge in condition-based maintenance is to predict unknown complex event
patterns and abnormal episodes (anomaly detection) that did not occur in the
system's past before. Di erent approaches can be distinguished such as:
{ Supervised Anomaly Detection:</p>
      <p>The anomaly is an already known class and used to label the data records
for supervised learning of the anomaly classi cation model. This approach is
applied for recurring anomalies, but it cannot be used for unknown
anomalies.
{ Static Unsupervised Anomaly Detection:</p>
      <p>The underlying solution idea is to learn the normal classes / event patterns
from the monitored (sensor) data and detect anomalies as sudden occurrence
of an unrecognized patterns.
{ Dynamic Unsupervised Anomaly Detection:</p>
      <p>The system slowly deviates from past norms until an abnormal event is
triggered, e.g. by exceeding the norms threshold. For instance, reliability
measures, such as Mean Time Before Failure (MTBF), are used to scheduled
preventive maintenance activities, where the goal ist to keep it running as
long as possible, but avoid the system to break down completely, producing
even more damage.
{ Analysis of Time Series Data and Event Instance Sequences of the system:
Allows to learn (machine learning) possible asset degradation models from
time series data and detect anomalies with mined event patterns / episodes in
order to base maintenance on continuously monitored conditions
(conditionbased / predictive maintenance). The conditions can be simple thresholds
on a predicted decay trend, but can be also more complex event patterns
and rules, taking into account the current conditional situation and event
instance history.</p>
      <p>In this use case we focus on condition-based predictive maintenance. The
degradation models can be de ned by physical laws determining the correct
behavior of the asset or they can be learned from time series data by machine
learning approaches. A common approach for the latter is to perform a regression
analysis based on the data that comes from the sensors that are continuously
monitoring the asset conditions. Figure 3 illustrates a typical regression analysis
process.</p>
      <p>Splitting the dataset into a training set and a test set, and selecting the right
data has a direct impact on the quality of the nal regression model. Hence,
instead of random data selection the semantics and distribution topology of the
data can be used to select the right training data with respect to the observed
data events. Di erent (increasing) sizes of training data need to be tested (in
the example gure it is 50-50%) to achieve an accurate and statistical relevant
training model.</p>
      <p>
        Classical regression approaches [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] try to nd the best approximating
function which should be close to an unknown distribution function over an input
space and output space sampled from a set of training data D = (x1; y1); :::; (xn; yn).
The quality in terms of average di erence between the estimated and the actual
outcome is measured by a loss function in the training phase.
      </p>
      <p>Model selection then has the goal to select a nal model that does not
overor under t the given available data. Empirical risk minimization (minimization
of the empirical error) typically leads to over tting of the model. Costs functions
are used to optimize the tradeo between accuracy of the model and complexity
of computing the approximation function. By properly tuning one or more
hyperparameters in the tuning phase of the model selection the trade-o between
the over tting and under tting tendency are regulated. However, nding the
right values for the hyperparameters is problem-dependent and non-trivial.</p>
      <p>
        Various ML approaches, from basic linear regression, random forest
regression (RFR)[
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] to support vector machines for regression[
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], can be applied which
not just support single outputs, but also multi-outputs. This includes approaches
for transfer learning [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], multi-task learning [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] as well as solutions to decompose
the multi-output problem into several single-output problems. In the
Regularized Least-Squares (RLS) algorithm [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] the approximation function applies a
non-linear mapping allowing to still coping with linear models by exploiting the
representer theorem [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] and by reformulating the RLS problem using a kernel
function[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], such as a positive de nite Gaussian kernel (which is learning every
possible function). The complexity is measured, e.g. with Euclidean norm of
the set of weights describing the regressor. The loss function adopts, e.g. mean
squared error loss. An alternative to RLS for searching the approximation
function are Support Vector Models for Regression (SVMR) [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. In contrast to RLS,
where the solution is dense and the computational burden is high, the sparse
solution of SVMR can be described by using only a limited subset of parameters.
Accordingly it requires less training data and the computational burden is lower.
Similar to RLS the SVMR training problem is reformulated using a kernel
matrix formulation.
      </p>
      <p>For tuning the hyperparameters of RLS and SVMR either rule of thumb
heuristics or an exhaustive search for the optimal solutions is performed by solving
SVMR /RLS multiple-times with di erent hyperparameters values. By
estimating the generalization error of the regressor, e.g. using k-fold cross validation
(KCV), the best hyperparameter values are found and the nal model is trained
with the values.</p>
      <p>
        While these regression approaches are applied ex-post to the previously
collected batch data and the model is computed only once, in Online SVMR
(OSVMR) [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] the regression parameters are incrementally increased or decreased
each time a new sample is added. The model selection function is iteratively
tuning the hyperparameters and recomputing the KCV validation. In order to
balance the trade-o between expensive computational time and resources needed,
and the accuracy of the selected model, Fumeo et al.[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] suggest a meta-heuristic
optimization approach with an online KCV approach, which is exploiting the
assumption that the set of hyperparameters will not vary too much from the
previous computed best values, if the new updated data samples are not too
large.
      </p>
      <p>The (continuously) trained regression model acts as degradation model, which
can be applied for regression prediction, i.e. predicting e.g. a trend in the decay
of an asset. By de ning a threshold it becomes possible to predict and decide
when maintenance must be done, in order to avoid a breakdown. Figure 4 gives
an example line plot displaying the predicted trend evolution of an asset's decay
and de nes a threshold used to trigger a proactive maintenance activity in order
to avoid a breakdown.</p>
      <p>While this simple threshold-based maintenance trigger is an appropriate
approach for degradation models with a clear linear trend applied to one particular
component/asset, more sophisticated approaches are needed, if larger numbers
of components and situation-awareness needs to be considered. Here one single
occurrence of a threshold event might not be enough. A correlation between
multiple events, possibly based on conditional situations, is required for
predicting and triggering the predictive maintenance action. This leads to the need of
complex event patterns and conditional rules.</p>
      <p>
        Event Pattern Mining approaches learn patterns over time from event
instance sequences (EIS). EIS are analyzed according to their occurrence and
structure in order to mine, e.g. frequent patterns, association rules, time-series,
episodes, and many more. Traditional Pattern Mining can retrieve various sorts
of patterns as highlighted in Figure 5 and in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. These are split into basic,
multidimensional and extended patterns and rules.
      </p>
      <p>Basic
Association Rules
Frequent Patterns</p>
      <p>Closed/Max</p>
      <p>Patterns</p>
      <sec id="sec-2-1">
        <title>Patterns and Rules</title>
        <p>Multidimensional</p>
        <p>Multilevel
Multidimensional
High-dimensional/
Colossal Patterns
Discretization
Extended
Approximate</p>
        <p>Patterns
Uncertain Patterns
Compressed</p>
        <p>Patterns
Rare/Negative</p>
        <p>Patterns</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Predictive Maintenance Use Cases</title>
      <p>
        The use case is based on a data source3 from a numerical simulator of a naval
vessel (Frigate) characterized by a Gas Turbine (GT) propulsion plant,
consisting of components such as Propeller, Hull, GT, Gear Box and Controller. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
The data takes into account the performance decay over time of the GT
components such as GT compressor and turbines. The propulsion system behaviour is
described by the parameters:
{ Ship speed (linear function of the lever position lp).
{ Compressor degradation coe cient kMc.
{ Turbine degradation coe cient kMt.
2 The interestingness of a pattern is determined by means of the following criteria:
conciseness, coverage, reliability, peculiarity, diversity, novelty, surprisingness,
utility and actionability. These nine criteria can be further classi ed into objective and
subjective patterns.
3 http://archive.ics.uci.edu/ml/datasets/Condition+Based+Maintenance+of+Naval+Propulsion+Plants
      </p>
      <sec id="sec-3-1">
        <title>Research on Pattern Mining</title>
        <p>Mining Methods</p>
        <p>Extensions
and Application
Basic Mining</p>
        <p>Methods</p>
        <p>Mining Interesting</p>
        <p>Patterns</p>
        <p>Distributed, Parallel</p>
        <p>And Incremental</p>
        <p>Extended Patterns
Candidate</p>
        <p>Generation
Vertical Format
Pattern Growth</p>
        <p>Contraint-Based
Interstingness</p>
        <p>Exception</p>
        <p>Rules
Correlation</p>
        <p>Rules</p>
        <p>Distributed /
Parallel Mining
Incremental</p>
        <p>Mining
Stream Pattern</p>
        <p>Mining</p>
        <p>Sequential and</p>
        <p>Time-Series
Structural
Spatial</p>
        <p>Temporal
Image, Video,
Multimedia
Network</p>
        <p>Pattern-Based
Applications
Classification
Clustering
Semantic
Annotation
Collaborative</p>
        <p>Fitlering
Privacy
Preserving
so that each possible degradation state can be described by a triple (lp; kM t; kM c).</p>
        <p>The range of decay of compressor and turbine has been sampled with an
uniform grid of precision 0.001, discretized with a kMc coe cient within [1; 0.95]
and a turbine coe cient within [1; 0.975]. Ship speed is sampled in the range
of feasible speed from 3 knots to 27 knots with a granularity of representation
equal to tree knots. A 16-feature vector (features: e.g. ship speed, high pressure
turbine exit temperature, GT compressor inlet/outlet air temperature, ...) in the
dataset is measuring ships state of the system subject to performance decay. The
dataset is already clean, i.e. there are no missing data values (with two constant
data values for the Compressor Inlet Air Pressure and GT Compressor Inlet Air
Temperature).</p>
        <p>
          Pearson correlation shows that there are correlations between some of the
variables. By feature extraction 8 variables (HP Turbine exit pressure, Gas
Turbine shaft torque, GT Compressor outlet air temperature, HP Turbine exit
temperature, Turbine Injecton Control, Gas Generator rate of revolutions, Fuel ow,
GT Compressor outlet air pressure). An auto-regressive (AR) model is trained
on the data. By applying ML regression analysis (see section 2) di erent
degradation models are trained. In particular, Online Support Vector Machines for
Regression (OSVMR) [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] updates the trained regression function, whenever a
new data sample is added to and irrelevant ones are discarded from the
training set. This allows continuous OSVMR learning (with a Gaussian kernel and
a non-linear optimization with Karush-Kuhn-Tucker conditions [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ]) on the
updates from the (simulated) monitoring sensors. Instead of doing a k-fold cross
validation only once, the model selection (tuning the three hyperparameters of
the kernel) is iteratively applied in each update step following the heuristic
approach describe in [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] for optimizing the trade-o between the accuracy of the
OL-SVR models and the computational time and resources needed in order to
build them.
        </p>
        <p>These learned models are used to predict anomaly-free measure values, i.e.
"normal" behaviour. Some boundaries of normal functioning values are then
de ned around the average prediction error observed in training. As show in the
line plot in gure 4 the prediction is showing a trend for the compressor decay.
If the prediction error diverts from the boundaries, an alarm is triggered to alert
that is time to inspect the machinery. The following reaction rules recognize the
alarm situation and trigger a reaction:
PE(t)= abs(Prediction(t) x(t))</p>
        <sec id="sec-3-1-1">
          <title>On each Frequency Band, compressor part If PE(t) &gt; Mean(PE(t)) + K*stddev(MA(t)) Then alm(t)= PE(t) ELSE alm(t) = 0</title>
          <p>MA(t)= Moving Average(alm(t), N=25, backward window)</p>
        </sec>
        <sec id="sec-3-1-2">
          <title>IF MA(t) &gt; Threshold Boundary Do Alarm</title>
          <p>4</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Principles of Provalets</title>
      <p>
        Provalets have much in common with apps in modern application-stores for
mobile platforms. Details about underlying principles and the lifecycle of Provalets
can be found in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Here we brie y recapitulate the main principles.
      </p>
      <p>
        Provalets are location-independent (mobile) rule-based software agents [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]
which are deployed as microservices in component containers such as OSGi [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
The implementation of Microservices is a software architecture style designing
software applications as suites of independently deployable services providing
(agent) intelligence in the endpoints, and decentralized control of languages and
data. The Provalet microservices provide functional operations for rule-based
linked data access 4, processing, inference reasoning and reactive messaging
using Prova 5. Prova (Prolog + Java) is both a declarative rule-based programming
language and a Java-based rule engine. Provalets have a clear REST input and
4 Prova has various built-ins for rule-based data access such as Java object access, le
access, XML (DOM), SQL, RDF triples, XQuery, SPARQL
5 http://www.prova.ws]
output interface, speci cally an input URI and an output URI. They run in
a controlled and secure container environment (OSGi or Docker). Provalets
describe their functionality in terms of pre- and post-conditions on the sets of input
and output data.
      </p>
      <p>The container resource describes itself with metadata via a standardized API.
A user or agent receives information about a container resource by sending an
HTTP request to the container URI. For example, the container resource
describes which permissions it can grant. To use a container resource to execute a
Provalet the user sends an HTTP request adding three parameters to the
container URI: the Provalet URI, the input URI and the output URI. This way it
is straight forward to execute a Provalet from a standard Web client and lookup
the results afterwards, by receiving the HTTP response of the output URI. Each
Provalet has a unique URI that is resolvable via HTTP. Each Provalet is
congured with one input URI that it is allowed to read from and one output URI
that it is allowed to write to. Furthermore, the Provalet artifact address and
the executing container resource need to be de ned. The runtime environment
should control which data type formats and which data sources are accessible
by the Provalet including the control of permissions. The Provalet description
also contains semantic metadata about the Provalet including runtime
dependencies and policies such as permissions required on the runtime platform as
well as the description of the functionality it provides in the form of statements
about pre- and post-conditions over the sets of input and output data, de
nition of types, side-e ects, legal norms and policies, etc. This supports automatic
search of Provalets for their composition. The composition of Provalets is either
executed by chaining the input and output connections via a pipes-and- lter
streaming connections with a rule-based composition language or by a generic
injection of mobile Prova code and consumption of their fully processed output.
Typical work ow control constructs, such as sequential execution, parallel
execution, conditional alternatives and repetitions, are supported in the rule-based
composition language, as well as metareasoning and late binding capabilities.</p>
      <p>
        Using conditional Provalet connectors Provalets can be chained and
composed together, e.g. by splitting (on incoming input, multiple outgoing outputs)
or joining (multiple incoming, one outgoing output) them. The data ow, e.g. in
data pipelines, captures data dependencies between Provalet components. For
the data passing between components we use Prova's event messaging rules [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ],
which not only can act as \data processors", but also can be used a basis for
representing composite events, thereby implementing complex work ow patterns,
especially state-based work ow patterns. In contrast to other related
composition languages, we ground our rule-based composition language [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] on the
logic-based semantics of Concurrent Transaction Logic, CT R [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], which gives a
deductive database language, that integrates concurrency, communication and
database updates in a semantic framework with a sound and complete model
and proof theory.
      </p>
      <p>Provalets describe permissions they require as metadata that is read by the
runtime environment during deployment. By default Provalets are solely allowed
to see the data (streams) which are directly served by the con gured input URI.
Provalets may de ne additional required permission to access other data sources.
For example to access additional static URIs or crawl URIs that are visible in
the set of input data. The sources of data may be restricted by subnets,
domains, protocols or even types of data a Provalet is allowed to see. Provalet may
provide HTTP access credentials to the input and output resources upon
request. Provalets must request permission to use additional computing resources
on the machine they are executed. A Provalet may request harddisk space to
store intermediate results. Other resources include memory, CPU time, account
information, access to other web services. The latter can be used by a Provalet
to enforce license models through trusted providers. It is the task of the
runtime container of a Provalet to grant required permissions and allow access to
requested resources.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Implementation</title>
      <p>For the implementation of this use case we integrate Provalets into Knime data
analytics work ows by implementing an user-de ned Knime node for Provalets.
Knime 6 provides a visual work ow language for modelling data analytics pipelines.
We use this for the data preprocessing and AR - regression learning steps in the
work ow, as shown in gure7.</p>
      <p>For the abnormal event detection and reactions we de ne a Provalet that
implements the two alarm rules. Since the input data from the Knime nodes
are using the Predictive Modelling Markup Lanuage (PMML) an additional
translator node is speci ed in the work ow which translates from PMML into
Prova.</p>
      <p>Provalets themselves are Maven OSGi artifacts. To generate a new Provalet
in a Knime work ow a Maven archetype is used. An OntoMaven generated
Provalet project provides all necessary dependencies and mechanism. The
included Provalet class extends the AbstractProvalet from our ProvaletCore API
and must be lled with the Provalet functionalities. The ProvaletActivator class
extending the AbstractProvaletActivator serves as an OSGi entrance point to
the Provalet. During the Provalet development the developer has to keep
attention to only specify dependencies to APIs being OSGi capable. The artifact
speci cation can be found in the Provalet description.</p>
      <p>To execute the Provalet on the selected AR input resource (from the Knime
AR model) the user needs to call the URI of a Knime work ow container resource
(containerURI ) via an HTTP GET request providing the URI of the Provalet
(ProvaletURI ), the input (inputURI ) to the AR input resource and the output
URI (outputURI ), e.g. a REST call, as parameters:</p>
      <p>
        In the OSGi framework (Apache Felix) the Provalet container bundle is
started. It handles the Provalet call and answers the HTTP request with an
6 https://www.knime.org/
HTTP response message. First it resolves the Provalet characteristics by
calling the ProvaletURI and reading the Provalet description which also includes
the necessary artifact characteristics (groupId, artifactId, version and optionally
the repository). The Provalet artifact and all its dependencies are resolved and
downloaded to a local repository using the integrated Aether library [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ].
      </p>
      <p>The downloaded Provalet artifact are then deployed into the OSGi
framework of the OSGI container resource and the Knime input representation of the
inputURI is passed as an object to the working method of the Provalet. Finally
the container resource starts the installed Provalet bundle. After execution of
the working method the Provalet passed its resulting data back - the reaction
trigger message, to the container. The container checks the contend and enforces
restrictions on the Provalet execution and the output and writes the output
representation to the outputURI.</p>
      <p>Once the instantiated Provalet exists, veri cation of the Provalet constraints
and rules can be performed using Prova's inference mechanisms. The OSGi
bundle classloader is used to load the resources and instantiate a Provalet instance
as OSGi component with the translated Provalet rules describing the alarm
conditions and event pattern constraints.</p>
      <p>The Provalet working modes of container resources are de ned. Asynchronously
working containers immediately respond with a HTTP response code
indicating that the Provalet working method was successfully started. The user of an
asynchronously started Provalet has in principal two possibilities to work with
the results: (1) an agent polls the output URI after a de ned time and (2) the
agent uses a subscription mechanism to be informed about updates in the
output URI. In the synchronous working mode of a Provalet container the agent is
redirected to the output URI once the results have been successfully written to
the output URI. In this working mode the user can read the result immediately
after receiving the HTTP response.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Summary</title>
      <p>In this paper we reported on the use of Provalet microservices for predictive
maintenance, with the goal of combining online machine learning and rule-based
complex event processing / reaction logic. One advantage of Provalets is that
the mobile rule agents can be deployed directly into containers (OSGi, Docker)
running on the gateways or IoT monitoring sensors and hence can process and
analyze the streaming data where it is produced.
7</p>
    </sec>
    <sec id="sec-7">
      <title>Acknowledgments</title>
      <p>This work has been partially supported by the \InnoPro le-Corporate Smart
Content" project funded by the German Federal Ministry of Education and
Research (BMBF) and the BMBF Innovation Initiative for the New German
Lander - Entrepreneurial Regions.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>A.</given-names>
            <surname>Caponnetto</surname>
          </string-name>
          and E. De Vito.
          <article-title>Optimal rates for the regularized least-squares algorithm</article-title>
          .
          <source>Foundations of Computational Mathematics</source>
          ,
          <volume>7</volume>
          (
          <issue>3</issue>
          ):
          <volume>331</volume>
          {
          <fpage>368</fpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>A.</given-names>
            <surname>Coraddu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Oneto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ghio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Savio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Anguita</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Figari</surname>
          </string-name>
          .
          <article-title>Machine learning approaches for improving conditio-based maintenance of naval propulsion plants</article-title>
          .
          <source>Journal of Engineering for the Maritime Environment</source>
          , {({):{,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>N.</given-names>
            <surname>Cristianini</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Shawe-Taylor</surname>
          </string-name>
          .
          <article-title>An Introduction to Support Vector Machines: And Other Kernel-based Learning Methods</article-title>
          . Cambridge University Press, New York, NY, USA,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>T.</given-names>
            <surname>Evgeniou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. A.</given-names>
            <surname>Micchelli</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Pontil</surname>
          </string-name>
          .
          <article-title>Learning multiple tasks with kernel methods</article-title>
          .
          <source>J. Mach. Learn. Res.</source>
          ,
          <volume>6</volume>
          :
          <fpage>615</fpage>
          {
          <fpage>637</fpage>
          ,
          <string-name>
            <surname>Dec</surname>
          </string-name>
          .
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>E.</given-names>
            <surname>Fumeo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Oneto</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Anguita</surname>
          </string-name>
          .
          <article-title>Condition based maintenance in railway transportation systems based on big data streaming analysis</article-title>
          .
          <source>Procedia Computer Science</source>
          ,
          <volume>53</volume>
          :
          <fpage>437</fpage>
          {
          <fpage>446</fpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>A.</given-names>
            <surname>Liaw</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Wiener</surname>
          </string-name>
          .
          <article-title>Classi cation and regression by randomforest</article-title>
          .
          <source>R News</source>
          ,
          <volume>2</volume>
          (
          <issue>3</issue>
          ):
          <volume>18</volume>
          {
          <fpage>22</fpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>J.</given-names>
            <surname>Ma</surname>
          </string-name>
          , J. Theiler, and
          <string-name>
            <surname>S. Perkins.</surname>
          </string-name>
          <article-title>Accurate on-line support vector regression</article-title>
          .
          <source>Neural Comput.</source>
          ,
          <volume>15</volume>
          (
          <issue>11</issue>
          ):
          <volume>2683</volume>
          {
          <fpage>2703</fpage>
          ,
          <string-name>
            <surname>Nov</surname>
          </string-name>
          .
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>OSGI</given-names>
            <surname>Alliance. OSGi Service</surname>
          </string-name>
          <string-name>
            <surname>Platform</surname>
          </string-name>
          ,
          <source>Core Speci cation, Release 4, Version 4.2. Technical report</source>
          , OSGI Alliance,
          <year>Sept</year>
          .
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>S. J.</given-names>
            <surname>Pan</surname>
          </string-name>
          and
          <string-name>
            <given-names>Q.</given-names>
            <surname>Yang</surname>
          </string-name>
          .
          <article-title>A survey on transfer learning</article-title>
          .
          <source>IEEE Trans. on Knowl. and Data Eng</source>
          .,
          <volume>22</volume>
          (
          <issue>10</issue>
          ):
          <volume>1345</volume>
          {
          <fpage>1359</fpage>
          ,
          <string-name>
            <surname>Oct</surname>
          </string-name>
          .
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>A.</given-names>
            <surname>Paschke</surname>
          </string-name>
          .
          <article-title>Rules and logic programming for the web</article-title>
          .
          <source>In Reasoning Web. Semantic Technologies for the Web of Data - 7th International Summer School</source>
          <year>2011</year>
          , Galway, Ireland,
          <source>August 23-27</source>
          ,
          <year>2011</year>
          , Tutorial Lectures, pages
          <volume>326</volume>
          {
          <fpage>381</fpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>A.</given-names>
            <surname>Paschke</surname>
          </string-name>
          .
          <article-title>Provalets - osgi-based prova agents for rule-based data access</article-title>
          .
          <source>In On the Move to Meaningful Internet Systems: OTM 2015</source>
          Conferences - Confederated International Conferences: CoopIS, ODBASE, and
          <string-name>
            <surname>C</surname>
          </string-name>
          &amp;
          <article-title>TC 2015, Rhodes</article-title>
          , Greece,
          <source>October 26-30</source>
          ,
          <year>2015</year>
          , Proceedings, pages
          <volume>519</volume>
          {
          <fpage>526</fpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>A.</given-names>
            <surname>Paschke</surname>
          </string-name>
          .
          <article-title>Provalets - component-based mobile agents as microservices for rulebased data access, processing and analytics</article-title>
          .
          <source>Journal Business &amp; Information Systems Engineering</source>
          , 5,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>A.</given-names>
            <surname>Paschke</surname>
          </string-name>
          and
          <string-name>
            <given-names>H.</given-names>
            <surname>Boley</surname>
          </string-name>
          . Rule Responder:
          <article-title>Rule-Based Agents for the SemanticPragmatic Web</article-title>
          .
          <source>International Journal on Arti cial Intelligence Tools</source>
          ,
          <volume>20</volume>
          (
          <issue>6</issue>
          ):
          <volume>1043</volume>
          {
          <fpage>1081</fpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14. R. Schafermeier,
          <string-name>
            <given-names>A.-A.</given-names>
            <surname>Todor</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. La</given-names>
            <surname>Fleur</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Hasan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Einhaus</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Paschke</surname>
          </string-name>
          .
          <article-title>Corporate smart content evaluation</article-title>
          .
          <source>Technical Report TR-B-16-02</source>
          , Freie Universitat Berlin,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15. B. Scholkopf, R. Herbrich,
          <article-title>and</article-title>
          <string-name>
            <given-names>A. J.</given-names>
            <surname>Smola</surname>
          </string-name>
          .
          <string-name>
            <given-names>A Generalized</given-names>
            <surname>Representer</surname>
          </string-name>
          <string-name>
            <surname>Theorem</surname>
          </string-name>
          , pages
          <volume>416</volume>
          {
          <fpage>426</fpage>
          . Springer Berlin Heidelberg, Berlin, Heidelberg,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>B.</given-names>
            <surname>Scholkopf</surname>
          </string-name>
          and
          <string-name>
            <given-names>A. J.</given-names>
            <surname>Smola</surname>
          </string-name>
          .
          <article-title>Learning with Kernels: Support Vector Machines, Regularization, Optimization, and Beyond</article-title>
          . MIT Press, Cambridge, MA, USA,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>A. J.</given-names>
            <surname>Smola</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Scho</surname>
          </string-name>
          <article-title>lkopf. A tutorial on support vector regression</article-title>
          .
          <source>Statistics and Computing</source>
          ,
          <volume>14</volume>
          (
          <issue>3</issue>
          ):
          <volume>199</volume>
          {
          <fpage>222</fpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Sonatype</surname>
          </string-name>
          . Aether. http://aether.sonatype.org/,
          <year>June 2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>Z.</given-names>
            <surname>Zhao</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Paschke</surname>
          </string-name>
          .
          <article-title>Event-driven scienti c work ow execution</article-title>
          .
          <source>In Business Process Management Workshops - BPM 2012 International Workshops</source>
          , Tallinn, Estonia, September 3,
          <year>2012</year>
          . Revised Papers, pages
          <volume>390</volume>
          {
          <fpage>401</fpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <given-names>Z.</given-names>
            <surname>Zhao</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Paschke</surname>
          </string-name>
          .
          <article-title>A formal model for weakly-structured scienti c work ows</article-title>
          .
          <source>In Proceedings of the 6th International Workshop on Semantic Web Applications and Tools for Life Sciences, Edinburgh</source>
          ,
          <string-name>
            <surname>UK</surname>
          </string-name>
          , December
          <volume>10</volume>
          ,
          <year>2013</year>
          .,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <given-names>Z.</given-names>
            <surname>Zhao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Paschke</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Zhang</surname>
          </string-name>
          .
          <article-title>A rule-based agent-oriented approach for supporting weakly-structured scienti c work ows</article-title>
          .
          <source>J. Web Sem</source>
          .,
          <volume>37</volume>
          :
          <fpage>36</fpage>
          {
          <fpage>52</fpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>