Algorithm and Software Development

ARI creates robust, professional software systems solutions for complex problems in sciences and engineering by developing and optimizing cutting-edge algorithms and cyberinfrastructure.


Classifying Airplanes
Classifying Airplanes


  • Collect information from researchers and end-users to identify needs and processes in order to form collaborative approach to solution design
  • Leverage industry, academic, and research expertise in algorithm and software design to deliver innovative applications
  • Use standard software engineering methodologies to implement, test, validate, and maintain software
  • Integrate off-the-shelf devices and algorithms into novel solutions for solving complex problems
  • Architect robust, scalable cyberinfrastructure to support application deployment


Stitching Tracks
Stitching object tracks using probabilistic evolution of positional distributions based on local motion statistics and forming the joint position probability distribution function
  • Provide professional software practices to fundamental research
  • Implement and validate algorithms using industry standards
  • Employ artificial intelligence algorithms with application-driven goals
  • Bridge the gap between fundamental research and deployable code

Focus Areas

Simulating Terrain
Simulating natural terrain using Unreal Engine to support development of navigation algorithms for autonomous rovers


  • Simulations in support of machine learning training and hardware-in-the-loop testing
  • Artificial intelligence algorithms for object detection and classification, embodied signals for health and wellness, and control systems in manufacturing
  • Scientific data processing pipelines
  • Data management for artificial intelligence applications


To learn more, contact Nicole Johnson, ARI Managing Director.

Our Team

Principal Research Scientist
Senior Research Engineer
Senior Software Engineer
Senior Software Engineer
Staff Research Scientist
Staff Research Scientist
Senior Software Engineer
Senior Research Scientist
Staff Software Engineer
Senior Software Engineer