[en] This bachelor thesis is based on the simulation of a concrete type of P-System that is called Spiking Neural P-Systems (SN P Systems). That type of computing system of membranes consists of a set of neurons that are connected uni- or bidirectionally between each other and contain a set of elements formed by one pre-stablished symbol, called spikes, that permit the evaluation of rules. Those rules have a specific condition about the number of the spikes that they contain in a specific cycle. If the condition of more than one rule is met, the system will choose one of them in a non-determined way, one of them will be chosen and executed. The computation of a rule will consume the number of spikes indicated by the rule and it will send spikes to the neurons with whom the cell shares a connection. With this format, by means of a synchronized flow of spikes along the system, it is possible to interpret the output of what would be the complete execution of the simulation. To process this simulation, a specific application using the programming language "R" has been developed, making use of the graphic library of "Shiny". By means of this platform it is possible to upload the design of a Spiking Neural System P from a file, with the goal of visualizing graphically its state, configurate the parameters of for the computation and proceeding with its simulation. The simulation will consist of the representation of the state of the whole system for every cycle, being able to compute step-by-step or by blocks of a concrete numbers of cycles. Therefore, through the realization of this bachelor thesis, a specific application that allows the simulation of Spiking Neural P Systems has been elaborated, which enables the user to follow through each step of the process. It offers the possibility of working with extended systems, which means that it employs spikes with a maximum lifetime or that they eliminate the content of the cell when they spike. Concerning the application of those systems, it has been possible to review their use in the simulation of gates and logic circuits and in algorithms of sorting. Apart from the application of SN P Systems in concrete areas, the simulator will be able to offer the user the possibility to verify certain theoretical results that can be applied to different fields of investigation (eg. Skeletonization of images, Neural networks, etc.)

[es] Este Trabajo Fin de Grado está basado en la simulación de un tipo concreto de P System, los denominados Spiking Neural P Systems (SN P Systems). Este tipo de sistemas de computación con membranas constan de un conjunto de neuronas que están conectadas uni o bidireccionalmente entre ellas y que contienen un conjunto de símbolos iguales, denominados spikes, que permiten la evaluación de una serie de reglas. Gracias a estas reglas, si se cumple cierta condición sobre los spikes que contiene la neurona en el ciclo de ejecución correspondiente, de una forma determinista o no, se elegirá una de las posibles reglas a evaluar y será ejecutada. La ejecución de una regla implicará el consumo de un número de spikes y el envío de spikes a las neuronas con las que presenta conexión la neurona que contiene la regla. De esta forma, a través del flujo síncrono de spikes a lo largo de todo el sistema, es posible interpretar la salida de lo que sería la ejecución completa de la simulación. Para llevar a cabo la mencionada simulación se ha desarrollado una herramienta utilizando el lenguaje R, haciendo uso de la librería gráfica de Shiny. Con esta plataforma es posible cargar desde un fichero el diseño de un Spiking Neural P System, con el fin de ver gráficamente su estado, configurar los parámetros de la computación y proceder a su simulación. Ésta consistirá en representar el estado de todo el sistema para cada ciclo de reloj que se ejecute, pudiendo llevarse a cabo de ciclo en ciclo o por bloques de un número concreto de ciclos. Por lo tanto, con la realización de este trabajo se ha desarrollado una herramienta que permite la simulación de Spiking Neural P Systems, bien para un número concreto de pasos, o bien para comprobar su funcionamiento paso a paso. La herramienta ofrece la posibilidad de usar sistemas extendidos, es decir, que emplean spikes con un tiempo de vida máximo, o que eliminan el contenido de toda la neurona cada vez que se ejecuta una regla. En cuanto a la aplicación de estos sistemas con el simulador, se ha podido comprobar su uso en la simulación de puertas y circuitos lógicos, y en algoritmos de ordenación. Al margen de las aplicaciones de los Spiking Neural P System, el simulador permitirá la comprobación real de ciertos resultados teóricos que pueden ser empleados en diferentes líneas de investigación.