525 research outputs found

    Computing with viruses

    Get PDF
    In recent years, different computing models have emerged within the area of Unconven-tional Computation, and more specifically within Natural Computing, getting inspiration from mechanisms present in Nature. In this work, we incorporate concepts in virology and theoretical computer science to propose a novel computational model, called Virus Ma-chine. Inspired by the manner in which viruses transmit from one host to another, a virus machine is a computational paradigm represented as a heterogeneous network that con-sists of three subnetworks: virus transmission, instruction transfer, and instruction-channel control networks. Virus machines provide non-deterministic sequential devices. As num-ber computing devices, virus machines are proved to be computationally complete, that is, equivalent in power to Turing machines. Nevertheless, when some limitations are imposed with respect to the number of viruses present in the system, then a characterization for semi-linear sets is obtained

    Families of languages encoded by SN P systems

    Full text link
    [EN] In this work, we propose the study of SN P systems as classical information encoders. By taking the spike train of an SN P system as a (binary) source of information, we can obtain different languages according to a previously defined encoding alphabet. We provide a characterization of the language families generated by the SN P systems in this way. This characterization depends on the way we define the encoding scheme: bounded or not bounded and, in the first case, with one-to-one or non injective encodings. Finally, we propose a network topology in order to define a cascading encoder.Sempere Luna, JM. (2018). Families of languages encoded by SN P systems. Lecture Notes in Computer Science. 10725:262-269. https://doi.org/10.1007/978-3-319-73359-3_17S26226910725Chen, H., Freund, R., Ionescu, M., Păun, G., Pérez-Jiménez, M.J.: On string languages generated by spiking neural P systems. Fundam. Inf. 75(1–4), 141–162 (2007)Chen, H., Ionescu, M., Păun, A., Păun, G., Popa, B.: On trace languages generated by spiking neural P systems. In: Eighth International Workshop on Descriptional Complexity of Formal Systems (DCFS 2006), Las Cruces, New Mexico, USA, pp. 94–105, 21–23 June 2006Csuhaj-Varjú, E., Vaszil, G.: On counter machines versus dP automata. In: Alhazov, A., Cojocaru, S., Gheorghe, M., Rogozhin, Y., Rozenberg, G., Salomaa, A. (eds.) CMC 2013. LNCS, vol. 8340, pp. 138–150. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-54239-8_11Ibarra, O.H., Leporati, A., Păun, A., Woodworth, S.: Spiking neural P systems. In: Păun, G., Rozenberg, G., Salomaa, A. (eds.) The Oxford Handbook of Membrane Computing, Oxford University Press (2010)Ionescu, M., Păun, G., Yokomori, T.: Spiking neural P systems. Fundam. Inf. 71(2–3), 279–308 (2006)Manca, V.: On the generative power of iterated transduction. In: Ito, M., Păun, G., Yu, S. (eds.) Words, Semigroups, and Transductions, pp. 315–327. World Scientific (2001)Manca, V., Martín-Vide, C., Păun, G.: New computing paradigms suggested by DNA computing: computing by carving. BioSystems 52, 47–54 (1999)Păun, G.: Membrane Computing. An Introduction. Springer, Heidelberg (2002). https://doi.org/10.1007/978-3-642-56196-2Păun, G., Pérez-Jiménez, M.J., Rozenberg, G.: Spike trains in spiking neural P systems. Int. J. Found. Comput. Sci. 17(4), 975–1002 (2006)Rozenberg, G., Salomaa, A. (eds.): Handbook of Formal Languages, vol. 3. Springer, Heidelberg (1997). https://doi.org/10.1007/978-3-642-59136-

    Extended Spiking Neural P Systems with White Hole Rules

    Get PDF
    We consider extended spiking neural P systems with the additional possibility of so-called \white hole rules", which send the complete contents of a neuron to other neurons, and we show how this extension of the original model allow for easy proofs of the computational completeness of this variant of extended spiking neural P systems using only one actor neuron. Using only such white hole rules, we can easily simulate special variants of Lindenmayer systems

    Brainlab: A Python Toolkit to Aid in the Design, Simulation, and Analysis of Spiking Neural Networks with the NeoCortical Simulator

    Get PDF
    Neuroscience modeling experiments often involve multiple complex neural network and cell model variants, complex input stimuli and input protocols, followed by complex data analysis. Coordinating all this complexity becomes a central difficulty for the experimenter. The Python programming language, along with its extensive library packages, has emerged as a leading “glue” tool for managing all sorts of complex programmatic tasks. This paper describes a toolkit called Brainlab, written in Python, that leverages Python's strengths for the task of managing the general complexity of neuroscience modeling experiments. Brainlab was also designed to overcome the major difficulties of working with the NCS (NeoCortical Simulator) environment in particular. Brainlab is an integrated model-building, experimentation, and data analysis environment for the powerful parallel spiking neural network simulator system NCS

    Computing with cells: membrane systems - some complexity issues.

    Full text link
    Membrane computing is a branch of natural computing which abstracts computing models from the structure and the functioning of the living cell. The main ingredients of membrane systems, called P systems, are (i) the membrane structure, which consists of a hierarchical arrangements of membranes which delimit compartments where (ii) multisets of symbols, called objects, evolve according to (iii) sets of rules which are localised and associated with compartments. By using the rules in a nondeterministic/deterministic maximally parallel manner, transitions between the system configurations can be obtained. A sequence of transitions is a computation of how the system is evolving. Various ways of controlling the transfer of objects from one membrane to another and applying the rules, as well as possibilities to dissolve, divide or create membranes have been studied. Membrane systems have a great potential for implementing massively concurrent systems in an efficient way that would allow us to solve currently intractable problems once future biotechnology gives way to a practical bio-realization. In this paper we survey some interesting and fundamental complexity issues such as universality vs. nonuniversality, determinism vs. nondeterminism, membrane and alphabet size hierarchies, characterizations of context-sensitive languages and other language classes and various notions of parallelism

    Membrane computing: traces, neural inspired models, controls

    Get PDF
    Membrane Computing:Traces, Neural Inspired Models, ControlsAutor: Armand-Mihai IonescuDirectores: Dr. Victor Mitrana (URV)Dr. Takashi Yokomori (Universidad Waseda, Japón)Resumen Castellano:El presente trabajo está dedicado a una área muy activa del cálculo natural (que intenta descubrir la odalidad en la cual la naturaleza calcula, especialmente al nivel biológico), es decir el cálculo con membranas, y más preciso, a los modelos de membranas inspirados de la funcionalidad biológica de la neurona.La disertación contribuye al área de cálculo con membranas en tres direcciones principales. Primero, introducimos una nueva manera de definir el resultado de una computación siguiendo los rastros de un objeto especificado dentro de una estructura celular o de una estructura neuronal. A continuación, nos acercamos al ámbito de la biología del cerebro, con el objetivo de obtener varias maneras de controlar la computación por medio de procesos que inhiben/de-inhiben. Tercero, introducimos e investigamos en detallo - aunque en una fase preliminar porque muchos aspectos tienen que ser clarificados - una clase de sistemas inspirados de la manera en la cual las neuronas cooperan por medio de spikes, pulsos eléctricos de formas idénticas.English summary:The present work is dedicated to a very active branch of natural computing (which tries to discover the way nature computes, especially at a biological level), namely membrane computing, more precisely, to those models of membrane systems mainly inspired from the functioning of the neural cell.The present dissertation contributes to membrane computing in three main directions. First, we introduce a new way of defining the result of a computation by means of following the traces of a specified object within a cell structure or a neural structure. Then, we get closer to the biology of the brain, considering various ways to control the computation by means of inhibiting/de-inhibiting processes. Third, we introduce and investigate in a great - though preliminary, as many issues remain to be clarified - detail a class of P systems inspired from the way neurons cooperate by means of spikes, electrical pulses of identical shapes

    A Framework for Coupled Simulations of Robots and Spiking Neuronal Networks

    Get PDF
    Bio-inspired robots still rely on classic robot control although advances in neurophysiology allow adaptation to control as well. However, the connection of a robot to spiking neuronal networks needs adjustments for each purpose and requires frequent adaptation during an iterative development. Existing approaches cannot bridge the gap between robotics and neuroscience or do not account for frequent adaptations. The contribution of this paper is an architecture and domain-specific language (DSL) for connecting robots to spiking neuronal networks for iterative testing in simulations, allowing neuroscientists to abstract from implementation details. The framework is implemented in a web-based platform. We validate the applicability of our approach with a case study based on image processing for controlling a four-wheeled robot in an experiment setting inspired by Braitenberg vehicles

    Design and test of a neural microprocessor

    Get PDF
    En aquest projecte, es dissenya un microprocessador neuronal per ser implementat en FPGAs. Aquesta tecnologia consisteix en un processador softcore basat en RISC-V descrit amb SystemVerilog que s'utilitza per controlar un coprocessador encarregat d'executar una xarxa neuronal spiking amb propagació directa descrita amb VHDL. El control es fa amb senyals que es generen a partir d'instruccions SIMD personalitzades definides en una extensió del conjunt d’instruccions RSIC-V. Per fer-ho, es modifica el processador de manera que pugui detectar i descodificar les noves instruccions emmagatzemades a la seva memòria de programa. Per facilitar la tasca de definir el contingut de la memòria del programa, s'utilitza un codi escrit en C i es desenvolupa un conjunt d'instruccions C personalitzades. Aquestes instruccions es basen en l'ús de macros i inline assembly, i la seva finalitat és facilitar i permetre l'ús de les instruccions personalitzades RISC-V en el codi d'alt nivell. Per demostrar el correcte funcionament del projecte, se simula el microprocessador neuronal i després es prova a l'FPGA d'una placa de desenvolupament Nexys 4, amb el coprocessador implementat per resoldre el problema XOR. La implementació del coprocessador es replica amb C i s'executa a l'FPGA utilitzant només el processador predeterminat sense modificar. Finalment, els resultats s'analitzen i es comparen per determinar les compensacions entre els dos enfocaments en termes de temps d'execució, consum d'energia i espai utilitzat.En este proyecto, se diseña un microprocesador neuronal para su implementación en FPGAs. Esta tecnología consiste en un procesador softcore basado en RISC-V descrito con SystemVerilog que se utiliza para controlar a un coprocesador encargado de ejecutar una red neuronal spiking con propagación directa descrita con VHDL. El control se realiza con señales que se generan a partir de instrucciones SIMD personalizadas definidas en una extensión del conjunto de instrucciones RSIC-V. Para ello, se modifica el procesador de forma que pueda detectar y descodificar las nuevas instrucciones almacenadas en su memoria de programa. Para facilitar la tarea de definir el contenido de la memoria del programa, se utiliza un código escrito en C y se desarrolla un conjunto de instrucciones C personalizadas. Estas instrucciones se basan en el uso de macros e inline assembly, y su finalidad es facilitar y permitir el uso de las instrucciones personalizadas RISC-V en el código de alto nivel. Para demostrar el correcto funcionamiento del proyecto, se simula el microprocesador neuronal y después se prueba en la FPGA de una placa de desarrollo Nexys 4, con el coprocesador implementado para resolver el problema XOR. La implementación del coprocesador se replica con C y se ejecuta en la FPGA utilizando sólo el procesador predeterminado sin modifcar. Por último, los resultados se analizan y se comparan para determinar las compensaciones entre ambos enfoques en términos de tiempo de ejecución, consumo de energía y espacio utilizado.In this project, a neural microprocessor is designed to be implemented in FPGAs. This technology consists of a RISC-V-based soft processor described in SystemVerilog that is used to control a coprocessor in charge of executing a feedforward spiking neural network described in VHDL. The control is done with signals that are generated from custom-designed SIMD instructions defined in a RISC-V ISA extension. To do it, the processor is modified such that it can detect and decode the new instructions stored in its program memory. To facilitate the task of defining the program memory contents, a code written in C is used and a set of custom C instructions is developed. These instructions are based on the use of macros and inline assembly, and their purpose is to facilitate and allow the use of the RISC-V custom instructions in the high-level code. To demonstrate the correct operation of the project, the neural microprocessor is simulated and then tested on the FPGA of a Nexys 4 development board, with the coprocessor implemented for solving the XOR problem. The coprocessor implementation is replicated with C and executed in the FPGA using only the default processor without being modified. Finally, the results are analyzed and compared to determine the trade-offs between the two approaches in terms of execution time, power consumption, and utilized space

    Frontiers of Membrane Computing: Open Problems and Research Topics

    Get PDF
    This is a list of open problems and research topics collected after the Twelfth Conference on Membrane Computing, CMC 2012 (Fontainebleau, France (23 - 26 August 2011), meant initially to be a working material for Tenth Brainstorming Week on Membrane Computing, Sevilla, Spain (January 30 - February 3, 2012). The result was circulated in several versions before the brainstorming and then modified according to the discussions held in Sevilla and according to the progresses made during the meeting. In the present form, the list gives an image about key research directions currently active in membrane computing
    corecore