# Evolutionary Optimization of Spiking Neural P Systems for Remaining Useful Life Prediction
## 1 Introduction  
Bio-inspired computing, that is the study of computing paradigms inspired from biological systems, is a well-established field within AI that over the years has proposed several efficient computing models and algorithms [1]. Membrane computing is a branch of bio-inspired computing that was initiated by [PERSON] in 1998 [2]. The goal of membrane computing is to perform computations by emulating nature at the _cellular_ level. In the area of membrane computing, researchers have focused on developing new computational models that have parallel and distributed computation capability. The resulting membrane systems are called P systems. Moreover, P systems can be coupled with the biologically plausible firing mechanism observed in neurons, which enables processing and exchanging information through spikes. In this sense, Spiking Neural P (in short, SN P) systems [3, 4] were proposed by incorporating the idea of spiking neurons (and spike trains) into P systems. One major difference with respect to other neural-like parallel computing systems [5] is that SN P systems use _time_ as a source of information in the computation, similarly to what happens in brains. Of note, it has been proved that SN P systems can simulate a Turing machine with a fairly small number of neurons [6, 7, 8]. However, their application to real-world tasks is still limited, because it requires a remarkable expertise for humans to design such systems. Although few methods have been proposed for mitigating this problem [9, 10], the lack of automatic design methodologies is still a _bottleneck_ in the development of the field. Driven by this motivation, and following up on our previous work [11], here we employ a well-known neuro-evolutionary algorithm, namely the Neuro-Evolution ofAugmenting Topologies (NEAT) [12], to automatically design SN P systems for a predictive maintenance (PdM) task. More specifically, we customize the vanilla NEAT algorithm to adjust the parameters of a specific type of SN P systems by increasing the number of parameters encoded in the genotype (i.e., the candidate solutions handled by NEAT) and adapting them to the parameters of the neurons in the SN P systems. One important advantage of our proposal is that it requires little human knowledge on the design of SN P systemscompared to other approaches from the literature; for instance, the automatic design methods introduced in [9; 10] need to fix either the topology or the parameters of the rules used in each neuron (see Section 2). On the other hand, our approach allows us to optimize all the parameters simultaneously except for the number of rules. With this further automation, the need for experts capable of designing such systems is reduced; in turn, this may enhance the applicability of SN P systems. To verify our approach applied to PdM, we evolve SN P systems as predictors for the remaining useful life (RUL) of industrial components. PdM is a growing trend in research and industry that has the potential to provide benefits in terms of costs and performance by optimizing maintenance. As a matter of fact, RUL prediction is one of the essential elements for efficient and robust PdM. Given the historical data of condition monitoring signals for a target component until its end-of-life, RUL prediction can be considered as solving a regression problem by leveraging the relation between the degradation patterns in the historical data and their RUL. Various machine learning (ML)-based methods based on traditional backpropagation-neural networks (BPNNs) have been introduced for RUL prediction. One of the earliest approaches, discussed in [13], uses a multi-layer perceptron (MLP) and a convolutional neural network (CNN) for performing RUL prediction in the case of aircraft engines. In [14], instead of extracting convolutional features, recurrent neural networks (RNNs) such as long short-term memory (LSTM) have been used to directly recognize temporal patterns in the data used for prediction. Recently, Ref.