Proceedings ICMC|SMC|2014

14-20 September 2014, Athens, Greece

AutoRhythmGuitar: Computer-aided Composition for Rhythm Guitar in the
Tab Space
Matt McVicar
National Institute of Advanced
Industrial Science and Technology(AIST). Tsukuba, Japan
mattjamesmcvicar@gmail.com

Satoru Fukayama
National Institute of Advanced
Industrial Science and Technology(AIST). Tsukuba, Japans.fukayama@aist.go.jp

Masataka Goto
National Institute of Advanced
Industrial Science and Technology(AIST). Tsukuba, Japanm.goto@aist.go.jp

Training tablature and chords

ABSTRACT
We present AutoRhythmGuitar, a simple computer-aided
composition model which algorithmically composes realistic rhythm guitar tablature. AutoRhythmGuitar takes as
input a downbeat-synchronised chord sequence and generates a digital score in both traditional notation and tablature.
Our model is data-driven, trained from digital tablatures
obtained from the internet. By varying this training data,
we are able to model individual rhythm guitarists’ rhythmic
and melodic styles. Algorithmic evaluation of our system
reveals that it effectively models style, whilst a qualitative
analysis by the authors conﬁrms that the resulting tablatures
are realistic and, for the most part, playable.

F F Am Am
Dm Dm F FG G G G...
Transposition
G
G#, A, ...
Bm7
Cm7, Bm7, ...

State distancematrix...
State n-gram models2...

In this paper, we consider the problem of computer-aided
composition for the guitar. In popular music, guitar parts
can broadly be split into rhythm parts (mostly outlining themain harmony and rhythmic pulse) and lead parts (mostly
melody lines and solo breaks) – we focus on compositionof rhythm guitar parts in the current paper. The main data
ﬂow and processes of our system are outlined in Figure 1.

Structural analysis
A A B B A

s1

1. INTRODUCTION

INPUT: Chords

Rhythmic clusteringx xx x x
xxxxxxx x
x xx
x
x

xx

OUTPUT: MusicXML digital tablature

1.1 Motivation
Our motivation for investigating this problem is two-fold.
First, we wish to investigate if an analysis of guitarist performance reveals signiﬁcant musician-speciﬁc trends inrhythmic and melodic devices. Furthermore, we believe
automatic generation of guitar parts in a particular style
could be used as a pedagogical aid, to help amateur musicians learn different approaches to playing over a given
chord sequence. It is worth noting at this point that thegeneration of complex rhythm guitar parts, in the style ofa given player, is a non-trivial task (see Sub. 2.2) and also
currently beyond the capabilities of software such as ‘Bandin a Box’ 1 .
1 http://www.pgmusic.com/bbwin.htm

cCopyright: 2014
Matt McVicar et al. This is an open-access article distributed
under the terms of the Creative Commons Attribution 3.0 Unported License, which
permits unrestricted use, distribution, and reproduction in any medium, provided
the original author and source are credited.

- 293 -

Figure 1. AutoRhythmGuitar’s main processes. The system takes as input a downbeat-synchronised chord sequenceand conducts a structural analysis. The detected segments
are then combined with rhythms from a set of training tablatures and clustered into an appropriate number of groups.
Meanwhile, n−gram models and state distances are calculated from the training data. The output of these three
processes are then used to construct a digital tablature inMusicXML format.

1.2 Challenges and proposed solutions
There are many obstacles to overcome when devising analgorithmic composition method for the guitar. The ﬁrst
challenge is that unconstrained algorithmic compositionis extremely challenging given the variety and complexity of music, and even with human aid (Computer-Aided
Composition, CAC) developing methods which generaliseProceedings ICMC|SMC|2014

14-20 September 2014, Athens, Greece

well to unseen situations remains problematic. We tackle
these challenges in the current work by having users of AutoRhythmGuitar input a chord sequence to the model (seeFigure 1), and by using resources from the web, transposing the data to maximize the generalisation potential (seeSubsections 4.4 and 5.1).
Second, we are not currently aware of any CAC systems
which are guitar-speciﬁc. If existing general–purpose CAC
models are used for our task, the resulting piece may not beplayable on the guitar, owing to sudden jumps around theneck. This would therefore necessitate an arrangement of
the piece (see 2.2 for a deﬁnition of this term). Furthermore,these systems do not incorporate appealing features of the
instrument such as hammer-ons, pull-offs, or slides. In thispaper, we identify these as guitar-speciﬁc challenges andsolve them by composing rhythm guitar music directly inthe tablature space (see 2.1). Furthermore, we use algorithmic means to ensure that the resulting music is playable(4.4), with models for the previously-mentioned ornaments
built into the model (4.5).
Finally, we observed (see 4.1) that professional rhythm
guitarists use a high degree of repetition within songs, andthat this repetition appears to be grouped into structures.
Without prior knowledge of musical structure, existing techniques would fail to replicate this behaviour. An analysisof the input chord sequence is therefore conducted in thiswork to make our output tablatures structurally consistent(see 4.5).
1.3 Paper structure
In Section 2, we discuss tablature notation and outline what
we believe to constitute a rhythm guitarist’s style. Section
3 then provides an overview of the relevant literature incomputer-aided composition and automatic guitar arrangement. Our compositional model is presented in Section
4, and evaluated and analysed in Section 5. Finally, conclusions and suggestions for further work are outlined in
Section 6.

2. BACKGROUND
2.1 Guitar tablature
The pitch ranges for guitar strings signiﬁcantly overlap, sothat for most pitches there exists no unique playing position(string and fret number) for a given note. This one-to-many
relationship means that guitarists must make a decision on
where best to fret each note on the instrument to minimise
overall fretting hand movement, which can be challenging
for beginner guitarists [1]. For this reason tablature notation(or simply ‘tab’, plural ‘tabs’), which explicitly speciﬁes
the strings and frets on which notes are to be played, wasdeveloped. Examples of tabs alongside traditional musicalnotation are shown in Figure 2. Due to its unambiguous
nature, tab is extremely popular amongst musicians, and it
is for these reasons and with our pedagogical motivation inmind that the current study focuses on producing tablature
output for rhythm guitar.

- 294 -

2.2 Styles of rhythm guitar playing
Despite the discussion above, it should be noted that the
many-to-one mapping of ﬁngering positions to musicalscore offers practitioners of the guitar great freedom in
hand positioning and note selection given an underlying
chord, and as such can be considered a creative beneﬁt of
the instrument. We postulate that professional guitarists develop a preference for certain chord shapes and ﬁngerboard
positions, and that this can be considered an aspect of theirstyle (see examples below).
To avoid confusion with existing terminology 2 , we introduce the term melodic voicing to mean the free choiceof notes and ﬁngerboard positions a guitarist makes when
composing a rhythm guitar part for a given chord. Illustrative examples showing the melodic voicings ﬁve popular
guitarists have taken to playing over a C major chord areshown in Figure 2.
In the ﬁrst measure, Eric Clapton plays a C ‘ﬁfth’ chord(no third) in third position followed by a melodic break in
the A minor pentatonic scale. The second measure shows
Jimi Hendrix adding a ninth to the chord in eighth position
with a leading melody to the D chord which follows (notshown). Jimmy Page takes a straightforward ‘hard rock’ approach in third position, whilst the last two guitarists (Keith
Richards, The Rolling Stones; Slash, Guns N’ Roses) opt
for open position melodic voicings, but show two distinct
approaches; the former strumming three or four note chords
with alternating bass, the latter arpeggiating the chord in a
typical rock ballad style.
It is precisely these aspects of rhythm guitar playing which
will be attempting to model and imitate in this work. We
next discuss the literature relevant to the current study.
3. EXISTING WORK
3.1 Computer-aided composition
Algorithmic composition can be described as the process ofusing a sequence of rules to combine musical parts into acomposition [2] and has a rich and varied research history(see, for example, [3, 4] or the survey [5]), of which aninteresting subset is Computer-Aided Composition (CAC)[6, 7, 8]. In this scenario, the compositional task is split
between the computer and a human expert.
In line with the increase in availability of digital musicalinformation, data-driven approaches to CAC have gained
popularity in recent years. Widmer [9], and Schwanauer
and Levitt [10] were both early adopters of the data-driven
approach in the harmonization of a given melody. Conklin et al. [11] examined the prediction and generation ofchorale music from examples. Dubnov et al. [12] investigated the modelling of musical style, learning from MIDI
input in a wide variety of styles. Pachet and various collaborators [13, 14] have investigated the use of Markov chainsfor generation of novel content, with constraints to avoid
plagiarism.
2 ﬁngering decision: mapping a score to tab, arrangement: minimallymodifying a piece initially not written for guitar to make it playable [1].

Proceedings ICMC|SMC|2014

14-20 September 2014, Athens, Greece

Figure 2. Examples of rhythm guitar styles taken by ﬁve professional guitarists when faced with a C major chord measure.
Musical score is shown above, tablature below. Samples are taken (left to right) from “Badge” (Clapton/Harrison), “Fire”(Hendrix), “Immigrant Song” (Page/Plant), “Wild Horses” (Jagger/Richards), “Knockin’ on Heaven’s Door” (Dylan, arranged
by Guns N’ Roses). Notation used: / = slide (glissando),  /  = hammer-on/pull-off, X = muted string

3.2 Automatic guitar ﬁngering and arrangement
Sayegh ﬁrst considered the problem of automatic arrangement for stringed instruments in 1989 [15], introducing
an optimum path paradigm solution to the ﬁngering problem, which was later extended by Radicioni et al. [16] tominimise phrase-level, rather than global, ﬁngering difﬁculty. The latter model was evaluated on a single classicalguitar piece of twenty-ﬁve measures, consisting of single
notes (no chord tones), and was judged to be similar to thearrangement provided by a musical expert.
The path difference learning algorithm was introduced by
Radisavljevic and Driessen [17], which learns the weightcosts of a particular playing style based on labelled tabs.
On a set of seven classical guitar pieces, the number ofﬁngering errors when compared to a human arrangement
dropped from 101 to 11 on the training set as the model
converged, but they noted that results did not generalise
well to unseen data due to a lack of training examples.
Genetic algorithms have been explored by Tuohy et al. [18,19] as a means of efﬁciently exploring the large search spacecreated in the ﬁngering decision problem, in which the
majority of the generated tablature coincided with humanmade annotations on selections from 34 guitar pieces ofvarying style. Recently, Yazawa et al. [20] also investigated
the transcription of synthesized MIDI audio into playable
guitar tablature by the use of playability constraints.
Finally, an Input-Output Hidden Markov Model has beensuggested by Hori et al. [1] to assign ﬁngerings to a given
piece, where the hidden states represented physical positions of the fretting hand, and the observed states represented the notes produced. Model output was compared tocommercial software on three pieces totalling seven measures, although no quantitative evaluation was performed.
4. MODEL DESCRIPTION
4.1 Coupling of rhythm and melody
To gain insight into how best to approach rhythm guitar
composition, we begun by investigating some examples
produced by professionals. We obtained digital guitar tabs
for a selection of guitarists from GuitarProTab.net 3 . Thesetabs were exported to MusicXML via the GuitarPro soft3 http://www.gprotab.net/index.php

ware 4 to facilitate computational analysis. The rhythm foreach measure was encoded as a length 16 vector r representing the note type at each sixteenth note. Measures whichcontained note durations shorter than this or tuplets wereomitted from analysis.
We classiﬁed each sixteenth note as either an onset; held(sustained) note; rest; or muted note, denoting these rhythmic states as [0, 1, 2, 3] respectively, so that r ∈ {0, 1, 2, 3}16 .
We then deﬁned rhythmic similarity between pairs r1 , r2
using the normalised Hamming similarity [21]:16

Srhythm (r1 , r2 ) =1 1(ri1 = ri2 ).
16 i=1

For melodic similarity, we collected the fretboard positionsof every note or chord into a list of (string, fret) pairs, calling
this a model state. For example, the state corresponding
to the ﬁrst quarter note in measure 1 in Figure 2 would be[(3, 5), (4, 5), (5, 3)]. Given that the number of states in ameasure may differ and we are interested in the overlapof states and not their order in particular, we opted for the
Jaccard index to deﬁne melodic similarity between two
measures M1 , M2 :Smelody (M1 , M2 ) =|M1 ∩ M2 |,|M1 ∪ M2 |where |·| indicates set cardinality and the intersection/union
for measures M1 , M2 is taken over states in the measures.
We then plotted the rhythmic and melodic similarities in a
Self Similarity Matrix (SSM), a selection of which can beseen in Figure 3. It can be see from Figure 3 that rhythm
guitar compositions typically feature a large amount of repetition, and that similarities in rhythm (below main diagonal)
and pitch (above main diagonal) are strongly correlated.
This coupling is easily understood from the perspective ofmusical structure: it seems that rhythm guitarists employ
distinct rhythmic and melodic patterns in sections such asverse, refrain, or chorus.
To this end, the ﬁrst stage of our processing is to perform
a structural analysis of the input chord sequence, which
we assume contains cues on the structural landscape of thetarget song. This information will then be used to assign
rhythms and melodic voicings (see Figure 1).
4 http://www.guitar-pro.com/en/index.php- 295 -

(1)

Proceedings ICMC|SMC|2014

14-20 September 2014, Athens, Greece
0

1

1

1

85

125

1

125
1

Measure number

1

150

1

Melodic
Similarity

150

Measure number

0

Figure 3. Self Similarity Matrices (SSM) for rhythmic (below main diagonal) and melodic (above main diagonal) similarity for a selection of three tabs. Top row: “Layla” (Clapton/Gordon), “Jumping Jack Flash” (Jagger/Richards). Bottom row: “Paradise City” (Rose, Slash, Stradlin/McKagen,
Adler). Dark areas indicate high similarity.

4.2 Chord segmentation algorithm
We employ a novelty-based approach to detecting structure in our input symbolic chord sequence, adapting theapproach by Foote [22]. Our algorithm takes as input a text
ﬁle of M lines – one for each measure in the song. Eachline describes the chords in a measure, which we assume
to be in common time (4,4) and at the sixteenth-note resolution. The ﬁrst stage of pre-processing is to label any
measures which contain only no chord (silence etc.) as aunique segment type.
An M × M self-similarity matrix S is then computed,
with similarity between the two length 16 vectors deﬁned
by Hamming similarity (Equation 1). We then pass an n×n
binary checkerboard matrix C through the diagonal of S,
with the novelty at time t calculated as
t+n/2

Novelty(t) =



t+n/2



32

48

Rhythmic
Similarity

Ci,j × Si,j .

i=t−n/2 j=t−n/2

The resulting novelty curve is then normalised to [0, 1], andvalues which exceed the σ th percentile selected as segment
boundaries.
In informal testing, we found that this technique had highrecall but poor precision, since the novelty in a close neighbourhood of true segment boundaries often exceeded theσ th percentile. To counteract this behaviour, we discarded
any segment boundaries at t which had another boundarywith higher novelty within [t−n/2, t+n/2]. Each segment
between boundaries was then labelled as a new segment.
Finally, we considered pairs of segments which werean integer multiple length of each other for merging (assigning the same segment label). We merged segments- 296 -

Novelty85

Measure number

16

1.0

0.0

0

16

32
Measure number

48

Figure 4. Example of our chord segmentation algorithm
on “Imagine” (Lennon). Top: self-similarity matrix, withdark shades indicating high similarity. Below: the resulting
novelty curve when passing an 8 × 8 checkerboard throughthe diagonal of this matrix. The segments as detected by
the algorithm in Subsection 4.1 are overlaid, with segmentsof the same label having the same shade.

s1 = [t1 , . . . , t1 + l] and s2 = [t2 , . . . , t2 + k × l] if eachof the k subsequences{[t2 , . . . , t2 + l], . . . , [t2 + (k − 1) × l, . . . , t2 + k × l}has Hamming similarity with s1 greater than τ . An example
of our algorithm for the chords to “Imagine” (Lennon) is
shown in Figure 4, where in this example and throughout
the remainder of this paper we set the parameters n = 8,
σ = 75, τ = 0.75. Our algorithm has labelled the ﬁrst andlast two measures as ‘No chord’ segments, and identiﬁed
ﬁve main segments, two of which (three and ﬁve) havebeen assigned the same label. These segments constitutecontiguous chorus and verses, which were unfortunately
not merged with the second main segment due to a segment
length difference of one measure (12 vs. 11). Improving
and evaluating this simple segmentation algorithm is partof our planned future work.
After segments in the target chord sequence have been
automatically analysed, the segments and labels are fed into
AutoRhythmGuitar’s two main processes: rhythm assignment and melodic voicing assignment. These are detailed
in the following two Subsections.
4.3 Rhythm assignment
As per the examples in Subsection 4.1, we assume time isdiscretized to sixteen-note resolution in common time, andProceedings ICMC|SMC|2014

14-20 September 2014, Athens, Greece

denote the rhythm of a measure as r ∈ {0, 1, 2, 3}16 (recall
the rhythmic states: note onset, held note, rest, muted note).
The total number of unique rhythmic measures under thismodel is 416 , although we believe the number of rhythmsof this type used by popular music guitarists to be far fewer
than this in practice. For this reason, in this paper we takean example-based approach to rhythm assignment. That
is to say, the generated rhythms will come directly fromour training data. However, the question remains as how
to assign one of the training rhythms to each of the test
measures.
In tackling this problem, we assume that guitarists havea number of rhythmic styles at their disposal, with eachstyle consisting of a set of similar rhythms. For example,
one rhythmic style might consist mostly of rests with theoccasional muted sixteenth note, whilst another might consist only of quarter and half note onsets. To discover thesegroupings, we therefore clustered our training rhythms.
To set the number of desired clusters c, we turn to our input
chord sequence, which we assume has been segmented intos distinct segment types via the algorithm in 4.2. It is clear
to us that in order to maximise the rhythmic distinction
between segments (thus emulating the behaviour seen in4.1), we should set c = s.
To see this, suppose c < s. Then there are fewer rhythmicclusters than distinct segments, and some segments would
have the same rhythmic style, which we consider undesirable. Conversely, if c > s then there are more rhythmicclusters than segments and some rhythmic styles would
have to be discarded. Furthermore, the rhythmic clusters inthis scenario will be less well separated than if c ≤ s.
The rhythms obtained from the training data were therefore clustered into s clusters. We opted for the spectralclustering algorithm, which takes an input an arbitrary distance measure between data points (for which we used theHamming distance, 1− Equation (1)). Seeing no other obvious way to proceed, we matched the resulting rhythm
cluster j to chord segment i randomly. However, in sampling from rhythm cluster j, we sample an example rhythmr from cluster j with probability proportional to the frequency of r in j. This ensures that more common rhythms
within a cluster are more likely to appear in the output.
4.4 Melodic voicing assignment
Through the processes in Subsections 4.2 and 4.3, we havesegmented the target chord sequence into labelled segments
and have assigned rhythms to each measure. Our task now
is to assign a state (recall: a model state is a list of string
and fret pairs) to each note onset.
4.4.1 n–gram modelling
Recall one of our goals is to create playable guitar tablature(see challenges, Subsection 1.2). To this end, whilst a chord
is constant within a measure we use n–gram modelling,a technique popular for modelling many time-dependent
stochastic processes including automatic speech recognition[23] and chord estimation [24].
For each chord in the training data, we therefore collected
initial and bigram counts for each state. A melodic voicing- 297 -

assignment for a chord y is then produced by ﬁrst samplingfrom the initial distribution for y, followed by a biased random walk on the state distribution for y. However, before
normalising our counts to form probability distributions, weﬁrst transposed our data, as detailed below.
4.4.2 Transposition
In order to maximally exploit the available training dataand our model’s generalisation potential, all training chords
and states (except those which contained open strings) weretransposed up and down the guitar neck to increase the number of state-to-state transitions witnessed. The underlying
assumption which facilitates this is that a guitarist’s melodic
voicing approach is pitch-independent. In other words, thateach of the ﬁrst three guitarists in Figure 2 would equally
likely play the same melodic patterns a fret higher if presented with a C major chord instead of C major chord,analogously for one fret down / B major chord etc.
We therefore transposed each state in the initial and bigram
counts for every chord down the neck until the lowest fretplayed was equal to 0, and up the neck until the highest
fret played was equal to a pre-deﬁned maximum, which
we set to be 12. The counts for the original state werethen added to the counts for the transposed chords. After
this was completed for every chord and state, the resulting
counts were normalised to sum to unity.
This ‘transposition trick’ means that data for chords inmore common guitar keys ( the ‘open’ keys: G, C, D for
example) may be used to train models for keys in which
there is likely to be less data (A, B etc. which do notfeature convenient open string pitches in standard tuning),
all the while meaning it is likely that each bigram with nonzero probability is playable (since it appeared at least once,
perhaps transposed, in the training data). Crucially, it also
allows AutoRhythmGuitar to generalise to chord labels notseen in the training data (addressing one of the challengesof this work, see 1.2), so long as the unseen chord type(major, diminished etc) appears at least once.
4.4.3 State-to-state distance
Using the above techniques we found that our model produced playable tab whilst a chord was constant, but thatbetween chords unplayable sequences were sometimes introduced, due to the model sampling from the initial distribution for the next chord with no knowledge of the current
hand position. To counteract this behaviour we introduced
a state-to-state distance inspired by Hori et al. [1].
The distance proposed in [1] takes into account the ﬁngering arrangements of both states as well as the time allowed
for the change, allowing for greater movement if time allows. They deﬁne the distance D to s2 from s1 given t(elapsed time) via a modiﬁed Laplace distribution:
1|I2 − I1 |exp −Dstate (s2 |s1 , t) =
2t
t
1
1
1
,
(2)
1 + I 2 1 + W2 1 + N2
where t indicates the time since the last note was fretted, I1
and I2 are the index ﬁnger positions of states s1 and s2 , W2

Proceedings ICMC|SMC|2014

14-20 September 2014, Athens, Greeceis the ‘fret span’ of s2 (max. fret minus min. fret), and N2
is the number of ﬁngers used in s2 .
We use Equation (2) as above with the following simpliﬁcations, given we had no ﬁngering data for our states. We
set I1 , I2 to be the minimum fret for each state. We assume
the number of ﬁngers used is equal to the number of nonopen string notes in the state. This assumption is valid forall single notes and most chords, except those which use
barres.
Finally then, we set the probability p of the ﬁrst state of achord y being s given a time lapse of t equal to a weighted
sum of the initial probability of s given y, Pini (s|y) and the
distance from to this state from the previous model state:p = αPini (s|y) + (1 − α)Dstate (s|previous state, t).
In our experiments for this paper we set α = 0.5 without
any attempt to optimise performance.
4.5 Guitar-speciﬁc ornaments
After the rhythms and states for our target chord sequence
have been assigned, we added guitar-speciﬁc ornaments
to enhance the realism of AutoRhythmGuitar’s output, addressing some of the challenges mentioned in Subsection
1.2. Speciﬁcally, we allow a hammer-on (note soundedby ‘hammering’ from one fret on a string to a higher fretwithout plucking/picking), pull-off (analogously) or slide(glissando) between states, with the probabilities of these
special transitions between states occurring learnt from thedata using the method detailed in Subsection 4.4 (includingtransposition). Note that these ornaments may be learnt inan artist-speciﬁc manner, using the exact same methodology as for the state transitions, by selectively sampling ourtraining data.
4.6 Structural consistency
Finally, if the current measure is part of a segment for which
content has already been generated, AutoRhythmGuitar
simply repeats this content. This is conducted to emulate
the behaviour seen in Figure 3, and to produce a structurally
consistent composition.
5. EXPERIMENTS
5.1 Training Data
We choose ﬁve well-known guitarists (Jimi Hendrix, Keith
Richards, Jimmy Page, Slash, Eric Clapton) to train ourmodel, and downloaded ten digital tabs (GuitarPro formatﬁles) for each guitarist (song titles available on our Vimeo
page, see Subsection 5.3). The guitarists and tabs werechosen according to popularity (measured by number ofavailable tabs) and quality (similarity to audio recording
and author knowledge) with songs chosen which were (atleast predominantly) in common time and standard tuning(or down one semitone, which is easily transposed). Where
more than one tab was available for a song, the most accurate or complete tab was chosen. Each digital tab was thenconverted to MusicXML format via GuitarPro for analysis.

- 298 -

Chord annotations and hierarchical beat structure (downbeat and main pulse) for each song were then obtained
automatically using the online service Songle [25] using
the ofﬁcial YouTube video as input, and were subsequently
checked and edited for correctness by an expert musician.
5.2 Algorithmic evaluation
In this Subsection, we investigate if our model is able tomodel rhythmic and melodic rhythm guitar styles. This isrealised by training models for our ﬁve guitarists of choiceand comparing summaries of the distributions obtained.
If the distributions are signiﬁcantly non-homogeneous, it
gives evidence that each model represents a different style(if indeed each guitarist has a unique style).
To this end, we trained ﬁve models and computed summary distributions as follows. Each rhythm r ∈ {0, 1, 2, 3}16
in the training set was converted to a categorical ‘1-of-4’
vector r̂ ∈ {0, 1}64 . These vectors per measure were thensummed over the songs and normalised per sixteenth note,
resulting in a vector for each artist which represents theprobability of a note onset, held note, rest, or muted noteat each of the sixteen metric positions. For each chord, we
computed the probability of each state associated with thischord occurring by simply counting and normalising.
Distributions P (x), Q(x) were then compared based on
the Kullback-Leibler (KL) divergence:  P (i) P (i).
(3)
DKL (P ||Q) =
ln
Q(i)
i
For rhythmic similarity, we used the symmetric KL-divergence:
DKL (P, Q) = DKL (P ||Q) + DKL (Q||P ).

(4)

For melodic similarity however, we conditioned Equation(3) on the probability of each chord occurring:  P (s|y) 
DKL (P (s|y)||Q(s|y)) =P (y)ln
P (s|y),Q(s|y)ys
where P (y) is the probability of chord y occurring and s
are the states for chord y. This divergence was then madesymmetric analogously to Equation (4). The results of theseexperiments can be seen in Figure 5. We see few areasof self-similarity and a fairly high degree of homogeneity,
indicating that the distributions are ‘far apart’, giving evidence that rhythm guitarists have a distinct style, which
AutoRhythmGuitar has effectively modelled. In both Subﬁgures the higher distances in row/column 4 suggest that
Keith Richards’ rhythmic and melodic style are the mostunique seen in the dataset (see also 5.3).
5.3 Qualitative analysis
Since our system outputs MusicXML, it can be easily imported into a variety of existing software packages for synthesis. To assess the quality and playability of the tabs our
system generates, we therefore trained one model for eachof the ﬁve guitarists listed above and imported our model’s
output into GuitarPro. We chose “Imagine” (Lennon) as aProceedings ICMC|SMC|2014
0.120
C

0.105
0.090

H

0.075
P

0.060
0.045

R

0.030
0.015

S
C

H

P

R

S

0.000

C

H

P

R

S

14-20 September 2014, Athens, Greece

5.4
4.8
4.2
3.6
3.0
2.4
1.8
1.2
0.6
0.0

Figure 5. Rhythmic/Melodic (left/right) KL-divergence
between guitarists. [‘C’, ‘H’, ‘P’, ‘R’, ‘S’] = Eric Clapton,
Jimi Hendrix, Jimmy Page, Keith Richards, Slash. The
difference in magnitude between the plots is due to the
melodic model having many more states than the rhythmic
model.

from measure 2 to measure 3. The chorus and second verseare both harmonically sound and also playable, and featurea major chord voicing not used by any other guitarists inour dataset (measure 20).
The advantage of using a state-to-state distance is clearlyhighlighted in measures 27-28, however: with hardly any
fretting hand movement, the player is able to provide a
melodic voicing for three distinct chords. The chord voicing
for the F chord in measure 26 with the additional ﬁfth noteon the top E string is also unique to Keith Richards in ourdataset, and is repeated over the E7 measures in this song.
The ﬁnal unique section (measures 37–45) feature a moreminimal rhythm guitar approach, with just single notes ordiads highlighting the underlying chords.
5.3.3 Jimmy Page

test case as it is a well-known song with an interesting arrayof chords which does not feature a guitar part.
We synthesized the output of our model in GuitarPro with
an appropriate backing track consisting of piano, drums,
melody line and cello, and selected an appropriate guitar
tone for each artist. The results are available for viewing
at our Vimeo page 5 , which we encourage the reader tovisit whilst reading the remainder of this Subsection. A
small number of examples can also be seen in Figure 6. Ourcomments on the output (which can also be found in thevideo descriptions) make up the remainder of the current
Subsection.

AutoRhythmGuitar’s output in the style of Jimmy Page
begins with melodic passages over the C chord and a challenging fretboard movement over the F chord, meaning thatsome manual tuning of the parameter α might be required
to increase playability for this piece. However, in the subsequent verse these issues are not seen, and the chorus shows
the ﬁrst case of Page’s arpeggio style (measure 26).
Measure 30 then introduces the non-diatonic B note, although the result is in fact harmonious. The concludingverse again uses arpeggios, this time over an entire measure(measure 37 and Figure 6). Note again AutoRhythmGuitar’s ability to select an appropriate F chord voicing (eighth
position) to closely match the previous measure’s ﬁnal state.

5.3.1 Jimi Hendrix

5.3.4 Slash

Jimi Hendrix’s unique rhythm guitar style appears to bemodelled effectively using AutoRhythmGuitar. Throughout
the ﬁrst verse we see partial chords (over the C chord, see
Figure 6) and melodic phrases using an added ninth (Fchord). An unexpected beneﬁt of implementing muted
notes also occurs in this verse: the muted note (measure 3)
allows the player time to move back to ﬁrst position. In thechorus, we see an A minor shape (measure 14) not exploitedby many guitarists, although AutoRhythmGuitar has used it
to minimise the amount of fretting hand movement required.
The remainder of the chorus features typical partial chords
and some interesting passing tones typical of his style.
Subsequent verses feature melodic phrases with many
guitar-speciﬁc ornaments such as slides (see Figure 6) andhammer-ons. The ﬁnal sections (from measure 26) feature extensive use of rapid muted notes (measure 31), his‘thumb over the top’ technique (measure 27) and more partial chords (measure 30).

Slash’s approach to rhythm guitar playing is typical of thehard rock style, and this is evident immediately from this
output. The rhythmic approach is exclusively eighth notesin the ﬁrst verse, with melodic voices consisting of either
a repeated root note or ﬁfth chord (see measure 2, Figure6). Note again that there are many ways in which these
melodic voices could be played, but that AutoRhythmGuitar
has selected a pair which involve minimal fretting hand
movement. The ﬁrst chorus then introduces some muted
notes in between this same basic approach (measure 16).
The second verse continues this theme, but unfortunately
contains an almost impossible jump from open position C
to two G notes an octave apart (measure 18). The refrain(beginning measure 30) features some slight dissonance (Cand B notes over a C major chord, measure 31) but this
could be an aspect of Slash’s playing, since it appears in
our training data. The ﬁnal unique section is very minimal,featuring single sustained root notes.

5.3.2 Keith Richards

5.3.5 Eric Clapton

Suspended chords are commonly used by Keith Richards,
and this is reﬂected from the outset in this model output(Csus4 over C chord, measure 2, see also Figure 6). The
slightly unusual jump from twelfth fret to ﬁrst position(measure 3) is a result of the α parameter too strongly
enforcing the fretboard locality constraint, when moving

The ﬁrst verse of this output features simple ﬁfth chords anddiads (see Figure 6), with some additional percussive muted
notes. In the chorus, the A minor chord is arpeggiated,
and there is a pleasant melodic line in harmonised sixths,
although some dissonance is introduced with the E overthe F chord. This we discovered was due to us incorrectly
labelling a dominant 7 chord as a major chord in the training
data.

5 https://vimeo.com/user25754596/videos- 299 -

Proceedings ICMC|SMC|2014

14-20 September 2014, Athens, Greece

Figure 6. Example AutoRhythmGuitar output, showing the different rhythm guitar styles our system is able to emulate.

The ﬁrst measure of the second verse is challenging to play
due to the jump to the tenth fret. In measure 30, we see aweakness of our system: it has ﬁlled the entire measure withan F ﬁfth chord, neglecting the underlying G chord which
follows. This is due to the dissociation of rhythm and pitchin our model, which assigns rhythms for a measure without
knowledge of the position of any chord changes contained
within. The remainder of the song is both harmonicallyconsonant and playable.
6. CONCLUSIONS AND FUTURE WORK
We presented AutoRhythmGuitar, a system which produces
realistic, structurally consistent and (for the most part)playable guitar tablature in the style of a given artist from achord sequence input. Our contributions in this work wereas follows. First, we used an input chord sequence to constrain the algorithmic composition problem, with models
per chord trained using data from the web. Second, we
created realistic and playable music by composing directlyin the tab space, using n−gram models, a state-to-state
distance and guitar-speciﬁc ornaments to increase the playability and realism of our output. Our ﬁnal contribution was
the segmentation of the input chord sequence, in order to optimally decide the number of training rhythms and produce
a structurally consistent composition.
In future work, we would like to explore ways of overcoming some of the limitations of our system, including:increasing the temporal resolution, improving and evaluating our segmentation algorithm, methods for optimising the
distance weight α, as well as methods for generating lead
guitar parts. We are also interested in developing our algorithms for use by amateur musicians in the general public,
possibly as part of a web service.
Acknowledgments
This work was supported in part by CREST, JST.
7. REFERENCES[1] G. Hori, H. Kameoka, and S. Sagayama, “Input-output HMM
applied to automatic arrangement for guitars,” Journal of Information Processing, vol. 21, no. 2, pp. 264–271, 2013.
[2] G. Papadopoulos and G. Wiggins, “AI methods for algorithmic
composition: a survey, a critical view and future prospects,” in
AISB Symposium on Musical Creativity, 1999, pp. 110–117.
[3] L. Hiller and L. Isaacson, Experimental Music; Composition
with an electronic computer. Greenwood Publishing Group
Inc., 1979.
[4] D. Cope, “A computer model of music composition,” in Machine models of music. MIT Press, 1992, pp. 403–425.

[5] C. Ames, “The markov process as a compositional model: asurvey and tutorial,” Leonardo, pp. 175–187, 1989.
Springer[6] G. Nierhaus, Algorithmic Composition.
Verlag/Wien, 2009, ch. 11.
[7] F. Pachet, “The continuator: Musical interaction with style,”
Journal of New Music Research, vol. 32, no. 3, pp. 333–341,
2003.
[8] S. Fukayama, D. Saito, and S. Sagayama, “Assistance fornovice users on creating songs from japanese lyrics,” in Proc.
ICMC, 2012, pp. 441–446.
[9] G. Widmer, “Qualitative perception modeling and intelligent
musical learning,” Computer Music Journal, vol. 16, no. 2, pp.
51–68, 1992.
[10] S. Schwanauer and D. Levitt, Machine models of music. MIT
Press, 1993.
[11] D. Conklin and I. Witten, “Multiple viewpoint systems formusic prediction,” Journal of New Music Research, vol. 24,
no. 1, pp. 51–73, 1995.
[12] S. Dubnov, G. Assayag, O. Lartillot, and G. Bejerano, “Using machine-learning methods for musical style modeling,”
Computer, vol. 36, no. 10, pp. 73–80, 2003.
[13] F. Pachet and P. Roy, “Markov constraints: steerable generation of Markov sequences,” Constraints, vol. 16, no. 2, pp.
148–172, 2011.
[14] A. Papadopoulos, P. Roy, and F. Pachet, “Avoiding plagarism
in Markov sequence generation,” in AAAI, 2014.
[15] S. Sayegh, “Fingering for string instruments with the optimum
path paradigm,” Computer Music Journal, vol. 13, no. 3, pp.
76–84, 1989.
[16] D. Radicioni, L. Anselma, and V. Lombardo, “A segmentationbased prototype to compute string instruments ﬁngering,”
in Proc. Conference on Interdisciplinary Musicology, Graz,
2004.
[17] A. Radisavljevic and P. Driessen, “Path difference learning for
guitar ﬁngering problem,” in Proc. ICMC, vol. 28, 2004.
[18] D. Tuohy and W. Potter, “A genetic algorithm for the automatic
generation of playable guitar tablature,” in Proc. ICMC, 2005,
pp. 499–502.
[19] D. Tuohy, “Creating tablature and arranging music for guitar
with genetic algorithms and artiﬁcial neural networks,” Master’s thesis, University of Georgia, 2006.
[20] K. Yazawa, D. Sakaue, K. Nagira, K. Itoyama, and H. Okuno,“Audio-based guitar tablature transcription using multipitch
analysis and playability constraints,” in Proc. ISASSP, 2013,
pp. 196–200.
[21] G. Toussaint, “A comparison of rhythmic similarity measures.”in Proc. ISMIR, 2004, pp. 242–245.
[22] J. Foote, “Automatic audio segmentation using a measure ofaudio novelty,” in Proc. Multimedia and Expo, vol. 1. IEEE,
2000, pp. 452–455.
[23] L. Rabiner, “A tutorial on hidden Markov models and selected
applications in speech recognition,” Proceedings of the IEEE,
vol. 77, no. 2, pp. 257–286, 1989.
[24] K. Yoshii and M. Goto, “A vocabulary-free inﬁnity-grammodel for nonparametric bayesian chord progression analysis.”in Proc. ISMIR, 2011, pp. 645–650.
[25] M. Goto, K. Yoshii, H. Fujihara, M. Mauch, and T. Nakano,“Songle: A web service for active music listening improved byuser contributions.” in Proc. ISMIR, 2011, pp. 311–316.

- 300 -