BRAHMS: Novel middleware for integrated systems computation

  • Authors:
  • Ben Mitchinson;Tak-Shing Chan;Jon Chambers;Martin Pearson;Mark Humphries;Charles Fox;Kevin Gurney;Tony J. Prescott

  • Affiliations:
  • Adaptive Behaviour Research Group, Department of Psychology, The University of Sheffield, Sheffield S10 2TN, UK;Adaptive Behaviour Research Group, Department of Psychology, The University of Sheffield, Sheffield S10 2TN, UK;Adaptive Behaviour Research Group, Department of Psychology, The University of Sheffield, Sheffield S10 2TN, UK;Bristol Robotics Laboratory, University of the West of England, Bristol BS16 1QD, UK;Adaptive Behaviour Research Group, Department of Psychology, The University of Sheffield, Sheffield S10 2TN, UK;Adaptive Behaviour Research Group, Department of Psychology, The University of Sheffield, Sheffield S10 2TN, UK;Adaptive Behaviour Research Group, Department of Psychology, The University of Sheffield, Sheffield S10 2TN, UK;Adaptive Behaviour Research Group, Department of Psychology, The University of Sheffield, Sheffield S10 2TN, UK

  • Venue:
  • Advanced Engineering Informatics
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Biological computational modellers are becoming increasingly interested in building large, eclectic models, including components on many different computational substrates, both biological and non-biological. At the same time, the rise of the philosophy of embodied modelling is generating a need to deploy biological models as controllers for robots in real-world environments. Finally, robotics engineers are beginning to find value in seconding biomimetic control strategies for use on practical robots. Together with the ubiquitous desire to make good on past software development effort, these trends are throwing up new challenges of intellectual and technological integration (for example across scales, across disciplines, and even across time) - challenges that are unmet by existing software frameworks. Here, we outline these challenges in detail, and go on to describe a newly developed software framework, BRAHMS, that meets them. BRAHMS is a tool for integrating computational process modules into a viable, computable system; its generality and flexibility facilitate integration across barriers, such as those described above, in a coherent and effective way. We go on to describe several cases where BRAHMS has been successfully deployed in practical situations. We also show excellent performance in comparison with a monolithic development approach. Additional benefits of developing in the framework include source code self-documentation, automatic coarse-grained parallelisation, cross-language integration, data logging, performance monitoring, and will include dynamic load-balancing and 'pause and continue' execution. BRAHMS is built on the nascent, and similarly general purpose, model markup language, SystemML. This will, in future, also facilitate repeatability and accountability (same answers ten years from now), transparent automatic software distribution, and interfacing with other SystemML tools.