  Reservoir computing is a machine learning paradigm that uses a
high-dimensional dynamical system, or \emph{reservoir}, to approximate and
predict time series data. The scale, speed and power usage of reservoir
computers could be enhanced by constructing reservoirs out of electronic
circuits, and several experimental studies have demonstrated promise in this
direction. However, designing quality reservoirs requires a precise
understanding of how such circuits process and store information. We analyze
the feasibility and optimal design of electronic reservoirs that include both
linear elements (resistors, inductors, and capacitors) and nonlinear memory
elements called memristors. We provide analytic results regarding the
feasibility of these reservoirs, and give a systematic characterization of
their computational properties by examining the types of input-output
relationships that they can approximate. This allows us to design reservoirs
with optimal properties. By introducing measures of the total linear and
nonlinear computational capacities of the reservoir, we are able to design
electronic circuits whose total computational capacity scales extensively with
the system size. Our electronic reservoirs can match or exceed the performance
of conventional "echo state network" reservoirs in a form that may be directly
implemented in hardware.
