Karplus-Strong Algorithms
In 1983 the Karplus-Strong [236] and Extended Karplus-Strong
(EKS) [207,428] algorithms were published (in the
same issue of the Computer Music Journal). Kevin Karplus and Alex
Strong were computer science students at Stanford trying out wavetable
synthesis algorithms on an 8-bit microcomputer. The sounds were
rather boring, as any precisely periodic sound tends to be, so Strong
had the idea of filtering the wavetable by a two-point average,
,
on each reading pass (which requires no multiplies), in order to
change the timbre dynamically. The result sounded curiously like a
string, almost no matter what initial table was used. After some
experimentation, they settled on random numbers as the standard
excitation. Strong played in a string quartet with David Jaffe, a
CCRMA Composition PhD student, and Jaffe decided to use the algorithm
in his piece ``Silicon Valley Breakdown'' (1982) which became a tour
de force demonstration of the EKS algorithm. In preparation for the
piece, Jaffe approached the author regarding how to obtain better
musical control over tuning, brightness, dynamic level, and the like,
and the resulting extensions were described in
[207,428]. Having studied the McIntyre-Woodhouse
papers, the author recognized the filtered-delay-loop in the
Karplus-Strong algorithm as having the same transfer function as that
of an idealized vibrating string [428]. This equivalence later
led to deriving the Karplus-Strong algorithm as a special case of a
digital waveguide string model (see Chapter 6 up to
§9.1.4 for the derivation). When viewed as a digital waveguide
model, the musical quality and expressivity of the EKS algorithm
suggested (ca. 1985) that extremely simplified traveling-wave models
with sparsely lumped losses and dispersion could capture the necessary
dimensions of musical expressivity at very low computational cost.
Next Section:
Digital Waveguide Models
Previous Section:
String Models