Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
167 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
42 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

An Integrated Toolbox for Creating Neuromorphic Edge Applications (2404.08726v1)

Published 12 Apr 2024 in cs.NE and cs.AI

Abstract: Spiking Neural Networks (SNNs) and neuromorphic models are more efficient and have more biological realism than the activation functions typically used in deep neural networks, transformer models and generative AI. SNNs have local learning rules, are able to learn on small data sets, and can adapt through neuromodulation. Although research has shown their advantages, there are still few compelling practical applications, especially at the edge where sensors and actuators need to be processed in a timely fashion. One reason for this might be that SNNs are much more challenging to understand, build, and operate due to their intrinsic properties. For instance, the mathematical foundation involves differential equations rather than basic activation functions. To address these challenges, we have developed CARLsim++. It is an integrated toolbox that enables fast and easy creation of neuromorphic applications. It encapsulates the mathematical intrinsics and low-level C++ programming by providing a graphical user interface for users who do not have a background in software engineering but still want to create neuromorphic models. Developers can easily configure inputs and outputs to devices and robots. These can be accurately simulated before deploying on physical devices. CARLsim++ can lead to rapid development of neuromorphic applications for simulation or edge processing.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (37)
  1. J. M. Nageswaran, N. Dutt, J. L. Krichmar, A. Nicolau, and A. V. Veidenbaum, “A configurable simulation environment for the efficient simulation of large-scale spiking neural networks on graphics processors,” Neural Networks, vol. 22, no. 5-6, pp. 791–800, 2009.
  2. L. Niedermeier, K. Chen, J. Xing, A. Das, J. Kopsick, E. Scott, N. Sutton, K. Weber, N. Dutt, and J. L. Krichmar, “Carlsim 6: An open source library for large-scale, biologically detailed spiking neural network simulation,” in 2022 International Joint Conference on Neural Networks (IJCNN).   IEEE, 2022, pp. 1–10.
  3. G. Metta, P. Fitzpatrick, and L. Natale, “Yarp: Yet another robot platform,” International Journal of Advanced Robotic Systems, vol. 3, no. 1, p. 8, 2006.
  4. P. Fitzpatrick, G. Metta, and L. Natale, “Towards long-lived robot genes,” Robotics and Autonomous Systems, vol. 56, no. 1, pp. 29–45, 2008. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S0921889007001364
  5. A. Paikan, V. Tikhanoff, G. Metta, and L. Natale, “Enhancing software module reusability using port plug-ins: An experiment with the icub robot,” in 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2014, pp. 1555–1562.
  6. A. Paikan, D. Domenichelli, and L. Natale, “Communication channel prioritization in a publish-subscribe architecture,” in 2015 IEEE 8th Workshop on Software Engineering and Architectures for Realtime Interactive Systems (SEARIS).   IEEE, Mar. 2015. [Online]. Available: http://dx.doi.org/10.1109/SEARIS.2015.7854100
  7. D. E. Domenichelli, S. Traversaro, L. Muratore, A. Rocchi, F. Nori, and L. Natale, “A build system for software development in robotic academic collaborative environments,” in 2018 Second IEEE International Conference on Robotic Computing (IRC), 2018, pp. 33–40.
  8. C. Brandli, R. Berner, M. Yang, S.-C. Liu, and T. Delbruck, “A latency global shutter spatiotemporal vision sensor,” IEEE Journal of Solid-State Circuits, vol. 49, pp. 2333–2341, 2014.
  9. T. Delbrueck, B. Linares-Barranco, E. Culurciello, and C. Posch, “Activity-driven, event-based vision sensors,” in Proceedings of 2010 IEEE International Symposium on Circuits and Systems, May 2010, pp. 2426–2429.
  10. D. Gamez, “Spikestream: A fast and flexible simulator of spiking neural networks,” in Artificial Neural Networks – ICANN 2007, J. M. de Sá, L. A. Alexandre, W. Duch, and D. Mandic, Eds.   Berlin, Heidelberg: Springer Berlin Heidelberg, 2007, pp. 360–369.
  11. M. Beyeler, N. Oros, N. Dutt, and J. Krichmar, “A gpu-accelerated cortical neural network model for visually guided robot navigation,” Neural networks : the official journal of the International Neural Network Society, vol. 72, 10 2015.
  12. F. Galluppi, C. Denk, M. C. Meiner, T. C. Stewart, L. A. Plana, C. Eliasmith, S. Furber, and J. Conradt, “Event-based neural computing on an autonomous mobile platform,” in 2014 IEEE International Conference on Robotics and Automation (ICRA), 2014, pp. 2862–2867.
  13. T. Schoepe, D. Gutierrez-Galan, J. P. Dominguez-Morales, A. Jimenez-Fernandez, A. Linares-Barranco, and E. Chicca, “Neuromorphic sensory integration for combining sound source localization and collision avoidance,” 2019 Ieee Biomedical Circuits and Systems Conference (Biocas 2019), 2019.
  14. S. Koul and T. K. Horiuchi, “Waypoint path planning with synaptic-dependent spike latency,” IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 66, no. 4, pp. 1544–1557, 2019.
  15. T. Hwu, A. Wang, N. Oros, and J. L. Krichmar, “Adaptive robot path planning using a spiking neuron algorithm with axonal delays,” IEEE Transactions on Cognitive and Developmental Systems, vol. 10, pp. 126–137, 2018.
  16. S. Koziol, S. Brink, and J. Hasler, “Path planning using a neuron array integrated circuit,” in 2013 IEEE Global Conference on Signal and Information Processing, 2013, pp. 663–666.
  17. K. D. Fischl, K. Fair, W.-Y. Tsai, J. Sampson, and A. Andreou, “Path planning on the truenorth neurosynaptic system,” in 2017 IEEE International Symposium on Circuits and Systems (ISCAS), 2017, pp. 1–4.
  18. “JupyterLab: A Next-Generation Notebook Interface,” https://jupyter.org/, 2024.
  19. M. Stimberg, R. Brette, and D. F. Goodman, “Brian 2, an intuitive and efficient neural simulator,” eLife, vol. 8, p. e47314, Aug. 2019.
  20. E. Yavuz, J. Turner, and T. Nowotny, “GeNN: A code generation framework for accelerated brain simulations,” Scientific Reports, vol. 6, no. 1, p. 18854, Jan. 2016.
  21. T. Bekolay, J. Bergstra, E. Hunsberger, T. DeWolf, T. Stewart, D. Rasmussen, X. Choo, A. Voelker, and C. Eliasmith, “Nengo: A Python tool for building large-scale functional brain models,” Frontiers in Neuroinformatics, vol. 7, 2014.
  22. R. de Schepper, J. M. Eppler, A. Kurth, P. Nagendra Babu, R. Deepu, S. Spreizer, G. Trensch, J. Pronold, S. B. Vennemo, S. Graber, A. Morales-Gregorio, C. Linssen, M. A. Benelhedi, H. Mørk, A. Morrison, D. Terhorst, J. Mitchell, S. Diaz, I. Kitayama, M. Enan, N. L. Kamiji, and H. E. Plesser, “NEST 3.2,” Zenodo, Jan. 2022.
  23. B. Golosio, G. Tiddia, C. De Luca, E. Pastorelli, F. Simula, and P. S. Paolucci, “Fast simulations of highly-connected spiking cortical models using gpus,” Frontiers in Computational Neuroscience, vol. 15, 2021. [Online]. Available: https://www.frontiersin.org/article/10.3389/fncom.2021.627620
  24. A. Glover, V. Vasco, M. Iacono, and C. Bartolozzi, “The event-driven software library for yarp with algorithms and icub applications,” Frontiers in Robotics and AI, vol. 4, 2018. [Online]. Available: https://www.frontiersin.org/articles/10.3389/frobt.2017.00073
  25. M. Quigley, K. Conley, B. Gerkey, J. Faust, T. Foote, J. Leibs, R. Wheeler, and A. Ng, “Ros: an open-source robot operating system,” ICRA Workshop on Open Source Software, vol. 3, 01 2009.
  26. P. Gon alves, P. Torres, C. Alves, F. Mondada, M. Bonani, X. Raemy, J. Pugh, C. Cianci, A. Klaptocz, S. Magnenat, J.-C. Zufferey, D. Floreano, and A. Martinoli, “The e-puck, a robot designed for education in engineering,” Proceedings of the 9th Conference on Autonomous Robot Systems and Competitions, vol. 1, 01 2009.
  27. L. Niedermeier and J. L. Krichmar, “Experience-dependent axonal plasticity in large-scale spiking neural network simulations,” in 2023 International Joint Conference on Neural Networks (IJCNN), 2023, Conference Proceedings, pp. 1–9.
  28. E. M. Izhikevich, “Which model to use for cortical spiking neurons?” IEEE Trans. Neural Netw., vol. 15, no. 5, pp. 1063–1070, Sep. 2004.
  29. “Boost,” https://www.boost.org/, 2023.
  30. “Qt 6,” https://www.qt.io/download-open-source/, 2023.
  31. “SWIG,” https://www.swig.org/, 2023.
  32. “Webots Goes Open Source,” https://www.cyberbotics.com/doc/blog/ Webots-2019-a-release, 2019.
  33. “Robotics simulation services,” 2023.
  34. A. E.-S. B. Ibrahim, “Wheeled mobile robot trajectory tracking using sliding mode control,” Journal of Computer Science, vol. 12, no. 1, pp. 48–55, Mar 2016. [Online]. Available: https://thescipub.com/abstract/jcssp.2016.48.55
  35. T. Lochmatter, P. Roduit, C. Cianci, N. Correll, J. Jacot, and A. Martinoli, “Swistrack - a flexible open source tracking software for multi-agent systems,” in 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2008, pp. 4004–4010.
  36. “CARLsim++ E-Puck Version 2 on UCI CARL YouTube Channel,” https://www.youtube.com/user/cognitiveroboticsuci/videos, 2024.
  37. “CARLsim++ Webots E-Puck on UCI CARL YouTube Channel,” https://www.youtube.com/user/cognitiveroboticsuci/videos, 2024.

Summary

  • The paper introduces CARLsim++, an integrated toolkit that simplifies creating neuromorphic edge systems using spiking neural networks.
  • It employs a user-friendly GUI, robust I/O interfaces, and an open-source plug-in architecture, demonstrated through a neurorobotic collision-avoidance task with the E-Puck robot.
  • The framework leverages established neuron models and C++ integration to bridge simulation and physical deployment for scalable neuromorphic computing.

An Integrated Toolbox for Creating Neuromorphic Edge Applications

The paper "An Integrated Toolbox for Creating Neuromorphic Edge Applications" presents a novel framework named CARLsim++, which aims to facilitate the development of neuromorphic applications, particularly Spiking Neural Networks (SNNs). SNNs offer advantages in efficiency and biological realism compared to traditional neural networks. CARLsim++ integrates tools to address the inherent complexities in building and operating SNNs, which can hinder their practical implementation, especially in real-time edge applications.

Key Features of CARLsim++

The authors introduce CARLsim++, which serves as an integrated toolkit designed to streamline the creation of neuromorphic systems engaging with sensors and actuators in real-time. Key components of this framework include:

  • User-Friendly GUI: A graphical user interface (GUI) enables users to create SNN models and interface them with devices without deep software engineering knowledge.
  • I/O Interfaces: These interfaces are crucial for connecting SNNs to real-world devices like robots and sensors, providing the ability to simulate and validate applications before physical deployment.
  • Plug-in Architecture: The open-source plug-in framework allows for modular design and extension, accommodating the addition of new features as required by the user community.

Practical Implementations

The paper demonstrates the capabilities of CARLsim++ using a neurorobotic application involving the E-Puck robot. The E-Puck is equipped with proximity sensors and wheel locomotion:

  • This application highlights real-time collision avoidance by mapping sensory neurons to motor outputs, allowing the robot to navigate and explore a constrained environment without collisions.
  • The synergy between simulation and physical deployment is showcased by seamlessly transitioning from a virtual model in Webots to the actual robot.

Mathematical Modeling and Tools

CARLsim++ supports well-established neuron models such as the Izhikevich model, ensuring both biological plausibility and computational efficiency. Furthermore, the integration of C++ libraries facilitates reduced complexity in application development. Notably, CARLsim++ also adopts YCM for build system management, essential for scalable and reliable application development.

Strategic Implications and Future Directions

CARLsim++ appears poised to enhance the practical application and accessibility of SNNs in neuromorphic computing. The integration of advanced features and user-friendly interfaces promotes a robust environment for deploying applications with minimal setup changes required for transitioning from simulation to the physical world.

Looking forward, the development and expansion of neuromorphic platforms like CARLsim++ can impel significant advancements in areas such as robotics, AI/ML, and sensor technology. Particularly, extending support to additional neuromorphic devices and accommodating more complex application scenarios could broaden the adoption of biologically inspired models across industries.

This paper reflects a coherent step towards bridging the gap from theoretical research to practical, large-scale applications in neuromorphic computing and offers a valuable resource for developers aiming to leverage the power and efficiency of SNNs in edge environments.

Youtube Logo Streamline Icon: https://streamlinehq.com