50,887 research outputs found
Bayesian Optimization Using Domain Knowledge on the ATRIAS Biped
Controllers in robotics often consist of expert-designed heuristics, which
can be hard to tune in higher dimensions. It is typical to use simulation to
learn these parameters, but controllers learned in simulation often don't
transfer to hardware. This necessitates optimization directly on hardware.
However, collecting data on hardware can be expensive. This has led to a recent
interest in adapting data-efficient learning techniques to robotics. One
popular method is Bayesian Optimization (BO), a sample-efficient black-box
optimization scheme, but its performance typically degrades in higher
dimensions. We aim to overcome this problem by incorporating domain knowledge
to reduce dimensionality in a meaningful way, with a focus on bipedal
locomotion. In previous work, we proposed a transformation based on knowledge
of human walking that projected a 16-dimensional controller to a 1-dimensional
space. In simulation, this showed enhanced sample efficiency when optimizing
human-inspired neuromuscular walking controllers on a humanoid model. In this
paper, we present a generalized feature transform applicable to non-humanoid
robot morphologies and evaluate it on the ATRIAS bipedal robot -- in simulation
and on hardware. We present three different walking controllers; two are
evaluated on the real robot. Our results show that this feature transform
captures important aspects of walking and accelerates learning on hardware and
simulation, as compared to traditional BO.Comment: 8 pages, submitted to IEEE International Conference on Robotics and
Automation 201
Deep Kernels for Optimizing Locomotion Controllers
Sample efficiency is important when optimizing parameters of locomotion
controllers, since hardware experiments are time consuming and expensive.
Bayesian Optimization, a sample-efficient optimization framework, has recently
been widely applied to address this problem, but further improvements in sample
efficiency are needed for practical applicability to real-world robots and
high-dimensional controllers. To address this, prior work has proposed using
domain expertise for constructing custom distance metrics for locomotion. In
this work we show how to learn such a distance metric automatically. We use a
neural network to learn an informed distance metric from data obtained in
high-fidelity simulations. We conduct experiments on two different controllers
and robot architectures. First, we demonstrate improvement in sample efficiency
when optimizing a 5-dimensional controller on the ATRIAS robot hardware. We
then conduct simulation experiments to optimize a 16-dimensional controller for
a 7-link robot model and obtain significant improvements even when optimizing
in perturbed environments. This demonstrates that our approach is able to
enhance sample efficiency for two different controllers, hence is a fitting
candidate for further experiments on hardware in the future.Comment: (Rika Antonova and Akshara Rai contributed equally
Featureless visual processing for SLAM in changing outdoor environments
Vision-based SLAM is mostly a solved problem providing clear, sharp images can be obtained. However, in outdoor environments a number of factors such as rough terrain, high speeds and hardware limitations can result in these conditions not being met. High speed transit on rough terrain can lead to image blur and under/over exposure, problems that cannot easily be dealt with using low cost hardware. Furthermore, recently there has been a growth in interest in lifelong autonomy for robots, which brings with it the challenge in outdoor environments of dealing with a moving sun and lack of constant artificial lighting. In this paper, we present a lightweight approach to visual localization and visual odometry that addresses the challenges posed by perceptual change and low cost cameras. The approach combines low resolution imagery with the SLAM algorithm, RatSLAM. We test the system using a cheap consumer camera mounted on a small vehicle in a mixed urban and vegetated environment, at times ranging from dawn to dusk and in conditions ranging from sunny weather to rain. We first show that the system is able to provide reliable mapping and recall over the course of the day and incrementally incorporate new visual scenes from different times into an existing map. We then restrict the system to only learning visual scenes at one time of day, and show that the system is still able to localize and map at other times of day. The results demonstrate the viability of the approach in situations where image quality is poor and environmental or hardware factors preclude the use of visual features
High-Performance and Tunable Stereo Reconstruction
Traditional stereo algorithms have focused their efforts on reconstruction
quality and have largely avoided prioritizing for run time performance. Robots,
on the other hand, require quick maneuverability and effective computation to
observe its immediate environment and perform tasks within it. In this work, we
propose a high-performance and tunable stereo disparity estimation method, with
a peak frame-rate of 120Hz (VGA resolution, on a single CPU-thread), that can
potentially enable robots to quickly reconstruct their immediate surroundings
and maneuver at high-speeds. Our key contribution is a disparity estimation
algorithm that iteratively approximates the scene depth via a piece-wise planar
mesh from stereo imagery, with a fast depth validation step for semi-dense
reconstruction. The mesh is initially seeded with sparsely matched keypoints,
and is recursively tessellated and refined as needed (via a resampling stage),
to provide the desired stereo disparity accuracy. The inherent simplicity and
speed of our approach, with the ability to tune it to a desired reconstruction
quality and runtime performance makes it a compelling solution for applications
in high-speed vehicles.Comment: Accepted to International Conference on Robotics and Automation
(ICRA) 2016; 8 pages, 5 figure
Pushbroom Stereo for High-Speed Navigation in Cluttered Environments
We present a novel stereo vision algorithm that is capable of obstacle
detection on a mobile-CPU processor at 120 frames per second. Our system
performs a subset of standard block-matching stereo processing, searching only
for obstacles at a single depth. By using an onboard IMU and state-estimator,
we can recover the position of obstacles at all other depths, building and
updating a full depth-map at framerate.
Here, we describe both the algorithm and our implementation on a high-speed,
small UAV, flying at over 20 MPH (9 m/s) close to obstacles. The system
requires no external sensing or computation and is, to the best of our
knowledge, the first high-framerate stereo detection system running onboard a
small UAV
DeepPicar: A Low-cost Deep Neural Network-based Autonomous Car
We present DeepPicar, a low-cost deep neural network based autonomous car
platform. DeepPicar is a small scale replication of a real self-driving car
called DAVE-2 by NVIDIA. DAVE-2 uses a deep convolutional neural network (CNN),
which takes images from a front-facing camera as input and produces car
steering angles as output. DeepPicar uses the same network architecture---9
layers, 27 million connections and 250K parameters---and can drive itself in
real-time using a web camera and a Raspberry Pi 3 quad-core platform. Using
DeepPicar, we analyze the Pi 3's computing capabilities to support end-to-end
deep learning based real-time control of autonomous vehicles. We also
systematically compare other contemporary embedded computing platforms using
the DeepPicar's CNN-based real-time control workload. We find that all tested
platforms, including the Pi 3, are capable of supporting the CNN-based
real-time control, from 20 Hz up to 100 Hz, depending on hardware platform.
However, we find that shared resource contention remains an important issue
that must be considered in applying CNN models on shared memory based embedded
computing platforms; we observe up to 11.6X execution time increase in the CNN
based control loop due to shared resource contention. To protect the CNN
workload, we also evaluate state-of-the-art cache partitioning and memory
bandwidth throttling techniques on the Pi 3. We find that cache partitioning is
ineffective, while memory bandwidth throttling is an effective solution.Comment: To be published as a conference paper at RTCSA 201
Quick and energy-efficient Bayesian computing of binocular disparity using stochastic digital signals
Reconstruction of the tridimensional geometry of a visual scene using the
binocular disparity information is an important issue in computer vision and
mobile robotics, which can be formulated as a Bayesian inference problem.
However, computation of the full disparity distribution with an advanced
Bayesian model is usually an intractable problem, and proves computationally
challenging even with a simple model. In this paper, we show how probabilistic
hardware using distributed memory and alternate representation of data as
stochastic bitstreams can solve that problem with high performance and energy
efficiency. We put forward a way to express discrete probability distributions
using stochastic data representations and perform Bayesian fusion using those
representations, and show how that approach can be applied to diparity
computation. We evaluate the system using a simulated stochastic implementation
and discuss possible hardware implementations of such architectures and their
potential for sensorimotor processing and robotics.Comment: Preprint of article submitted for publication in International
Journal of Approximate Reasoning and accepted pending minor revision
Designing a Robotic Platform for Investigating Swarm Robotics
This paper documents the design and subsequent construction of a low-cost, flexible robotic platform for swarm robotics research, and the selection of appropriate swarm algorithms for the implementation of a swarm focused predominantly on target location. The design described herein is intended to allow for the construction of robots large enough to meaningfully interact with their environment while maintaining a low per-robot cost of materials and a low assembly time. The design process is separated into three stages: mechanical design, electrical design, and software design. All major design components are described in detail under the appropriate design section. The BOM for a single robot is also included, along with relevant testing information
- …