Creating Tablature And With Genetic Algorithms And Daniel R . - UGA

Transcription

Creating Tablature andArranging Music for Guitarwith Genetic Algorithms andArtificial Neural NetworksbyDaniel R. Tuohy(Under the direction of Walter D. Potter)AbstractThe methods described in this thesis address the problems of both music arranging andtablature generation for the guitar. Arranging is the process by which a piece of music isadapted so that it can be performed on an instrument for which it was not originally written.It is interpreted here as an optimization problem, the goal of which is to establish the mostdesirable set of notes from the original composition. In the pursuit of this goal, new methodsfor the automatic generation of guitar tablature were devised. Tablature is a notation systemfrom which the majority of western guitar players read music, and contains informationessential to determining the difficulty of a piece of guitar music. Genetic Algorithms areinitially employed to solve both the arranging and tablature problems, and an artificialneural network is introduced at a later stage as a faster and more accurate solution to thetablature problem.Index words:Guitar Tablature, Music arranging, Genetic Algorithms,Neural Networks

Creating Tablature andArranging Music for Guitarwith Genetic Algorithms andArtificial Neural NetworksbyDaniel R. TuohyB.S., The University of Georgia, 2004A Thesis Submitted to the Graduate Facultyof The University of Georgia in Partial Fulfillmentof theRequirements for the DegreeMaster of ScienceAthens, Georgia2006

c 2006 Daniel R. TuohyAll Rights Reserved

Creating Tablature andArranging Music for Guitarwith Genetic Algorithms andArtificial Neural NetworksbyDaniel R. TuohyApproved:Electronic Version Approved:Maureen GrassoDean of the Graduate SchoolThe University of GeorgiaMay 2006Major Professor:Walter D. PotterCommittee:Khaled RasheedRonald W. McClendon

AcknowledgmentsFirst, to my parents. You have managed to be proud of everything I do, no matter howinsignificant.To my grandfather, who is no doubt the basis for my interest in music and is in everyrespect what I aspire to become.To my friends at the AI Center (especially Brian, Julian, and Gopika), who made mytime here a lot more fun than it had any right to be. You also made me a far better researcherthan I would have ever been on my own.To my professors. Especially Dr. Potter, who in my last year as an undergraduateunearthed a drive in me that I did not know was there.And lastly, to Maria-Joon. Because of you, I have been far happier this year than everbefore.iv

Table of ContentsPageAcknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ivList of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .viii. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ix1Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12A Genetic Algorithm for the Automatic Generation of PlayableList of TablesChapterGuitar Tablature . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32.1Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .32.2Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42.3The Genetic Algorithm Approach for Tablature Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6Experiment Setup and Results . . . . . . . . . . . . . . . . .9Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .132.43Creating Guitar Tablature with LHF Notation via DGA and ANN 153.1Introduction: The Guitar Fingering Problem . . . . . . . .3.2TabGA: Finding Good Tablature with Distributed GeneticSearch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3.31517An overview of the TabGA Fitness Function for evaluating tablature difficultyv. . . . . . . . . . . . . . . . . . .21

vi3.4Improving fitness assessments with the Fitness FunctionMeta GA (FFMGA) . . . . . . . . . . . . . . . . . . . . . . . .3.522LHFNet: a Neural Network for Left Handed FingeringNotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .233.6Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .263.7Further Directions . . . . . . . . . . . . . . . . . . . . . . . .27Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .284GA-based Music Arranging for Guitar . . . . . . . . . . . . . . . .304.1Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .304.2Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . .314.3The Evaluation Function for Assessing an Arrangement .354.4Methods for Obtaining Arrangements . . . . . . . . . . . .394.5Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .414.6Conclusions and Further Directions . . . . . . . . . . . . .42Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .455An Evolved Neural Network/HC Hybrid for Tablature Creation in GA-based Guitar Arranging . . . . . . . . . . . . . . . . .485.1Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .485.2Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . .495.3Neural Network Model . . . . . . . . . . . . . . . . . . . . .505.4Implementing the Neural Network for Tablature Creation 525.5Using generated tablatures in arrangement evaluation .545.6Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .555.7Further Directions . . . . . . . . . . . . . . . . . . . . . . . .57Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .586Conclusion and Further Directions . . . . . . . . . . . . . . . . . .60

viiAppendix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61A.1 Generating a Tablature with a Neural Network . . . . .61A.2 Arranging an original composition via GA . . . . . . . . .67A.3 The Arrangement Evaluation Function . . . . . . . . . . .70B Sample Arrangements by Genetic Algorithm . . . . . . . . . . . .73B.1 Symphony No. 2 by Sergey Rachmaninoff . . . . . . . . . . . .73B.2 Arioso by J.S. Bach . . . . . . . . . . . . . . . . . . . . . . . . .74B.3 Jupiter by Gustav Holst . . . . . . . . . . . . . . . . . . . . . .75A Source Code

List of Figures2.1Four different fretboard positions for the 3rd octave “E”. . . . . . . . . . . .2.2Obtaining children from two parents. Music from “Stairway to Heaven” by4Jimmy Page and Robert Plant. . . . . . . . . . . . . . . . . . . . . . . . . .72.3Tablatures for an excerpt from ”As Time Goes By” by Herman Hupfeld. . .113.1Four different fretboard positions for the 3rd octave “E”. . . . . . . . . . . .163.2An overview of our system and it’s five components. (1) TabGA takes as inputmusic and creates tablature. TabGA’s operating parameters were set using (2)PMGA and the fitness function was optimized with (3) FFMGA. The resultingtablature is then used by (4) LHFNet to create left handed fingering notation.The architecture of LHFNet was discovered with (5) NNGA. . . . . . . . . .173.3Obtaining a child from two parents in a simple GA. . . . . . . . . . . . . . .194.1The creation of a child tablature from two parents in TabGA. . . . . . . . .344.2An excerpt from Rachmaninoff’s Symphony No. 2 that contains examples of5 of the 6 note categories that our system recognizes. . . . . . . . . . . . . .4.3The exponential decay function that determines the reward for each note ina chord. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4.43638An arrangement of an excerpt from Rachmaninoff’s Symphony No. 2 by oursystem. We use either a greedy hill-climber or genetic algorithm (in this case,the former) to generate an arrangement from the orchestral score. The tablature for the arrangement is produced by TabGA. . . . . . . . . . . . . . . . .5.15.243A tablature is created by neural network. The last note is “fixed” with localsearch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53Generating an arrangement from a score. . . . . . . . . . . . . . . . . . . . .56viii

List of Tables3.1Performance of 3 GAs on 11 musical excerpts. Number of times in 10 runs thebaseline solution was found. . . . . . . . . . . . . . . . . . . . . . . . . . . .ix26

Chapter 1IntroductionThe research described here grew out of a desire for software that can reliably producetablature for a given piece of guitar music. While the internet is a good source of tablaturefor popular music, there is a great deal of music for which it is still very difficult to find highquality tablature. Guitarists have the option of producing it themselves, but this can be verytricky for casual players. Commercial generators exist, but are notoriously unreliable. Webelieve that the methods put forth here are, if not ideal solutions, at least significant stepsin the right direction.Once we became satisified with the performance of the first method for producing tablature, a further application became feasible. We developed a genetic algorithm (GA) forgenerating arrangements of compositions not written for the guitar. When evaluating individual arrangements, the GA uses one of our methods for automatic tablature generation tocreate and evaluate the difficulty of the corresponding tablature. When combined with otherheuristics for evaluating arrangements, the GA demonstrates an ability to create from a setof notes and appropriate arrangement for the guitar.Our methods for tablature and arrangement generation are detailed over the course offour chapters corresponding to four different papers either published, soon to be published,or awaiting decision. In Chapter 1 we introduce a genetic algorithm for tablature generation.This chapter contains an overview of our tablature evaluation function, and an argument forthe advantage of a GA-based approach over alternative approaches to tablature generationthat have been employed in other research.1

2Chapter 2 provides a more detailed description of our evaluation function. A Meta-GA isused to improve the parameters of the function so that generated tablature is maximally consistent with published tablature. We also switch to a distributed genetic algorithm (DGA),which demonstrates superior search ability to the simple GA described in Chapter 1. Finally,we introduce a neural network for assigning Left-Handed Fingering (LHF) notation to tablature, which instructs the performer which specific finger to use for each note.In Chapter 3 we turn to arranging, developing both a genetic algorithm and a greedyhill-climber for the task. Both use the DGA described in Chapter 2 to generate tablature.The DGA’s evaluation function is used to assess the difficulty of arrangements based onthe corresponding tablature. The system produces encouraging results, but the arrangingprocess takes in excess of 15 minutes with the greedy hill climber and over an hour with theGA.The bottleneck for our arranging methods is the tablature generation, which takes severalseconds. In Chapter 4, we introduce a neural network for tablature generation, the outputof which is enhanced with a local heuristic hill-climber (HC). This hybrid approach provesto be far faster than the DGA, and the tablature it generates is slightly more consistentwith published tablature. Using this method for tablature generation, the arranging GA cangenerate arrangements in under a minute.The current model we employ uses the neural network/HC hybrid for tablature generationdetailed in Chapter 4. The heuristic used by the HC is the evaluation function introduced inChapter 1 and developed in Chapter 2. For generating arrangements, our system can usesthe GA described in Chapter 3.

Chapter 2A Genetic Algorithm for the Automatic Generation of Playable GuitarTablature2.1IntroductionThis chapter1 describes a method for mapping a sequence of notes to a set of guitar fretboardpositions (tablature). The method uses a Genetic Algorithm (GA) to find playable tablaturethrough the use of a fitness function that assesses the playability of a given set of fretboardpositions. Tests of the algorithm on a variety of compositions demonstrate an excellent abilityof the GA to discover easily playable tablature that maintains a high degree of consistencywith published tablatures transcribed by humans. The algorithm was also found to generallyoutperform commercial software designed for the same purpose. We conclude that the GAcan reliably produce good tablature for any piece of guitar music.Stringed instruments often require a great deal of experience and decision making onthe part of the performer. A given note on the guitar may have as many as five differentpositions on the fretboard on which it can be produced. Figure 2.1 shows a guitar fretboard,and four different fretboard positions on which the same “E” can be played. To play a pieceof music, the performer must decide upon a sequence of fretboard positions that minimizethe mechanical difficulty of the piece to at least the point where it is physically possible to beplayed. This process is time-consuming and especially difficult for novice and intermediateplayers and, as a result, the task of reading music from a page as a pianist would is limitedonly to very advanced guitar players. To address this problem, a musical notation known1 Tuohy,Daniel R., and W.D. Potter. 2005. In Proceedings of International Computer MusicConference. ICMC 2005 Reprinted here with permission of publisher.3

4{stringsEBGDAEGuitarBodyFretboardEEEFigure 2.1: Four different fretboard positions for the 3rd octave “E”.as tablature is used. Tablature describes to the performer exactly how a piece of music isto be played by graphically representing the six guitar strings and labeling them with thecorresponding frets for each note, in order.The goal of our research is to automatically discover very good tablature for any pieceof music. In the next section we will describe recent commercial and academic attempts toaccomplish the same feat. We will then describe our genetic algorithm approach and offeran explanation for why it is better suited for this problem2.22.2.1BackgroundCommercial SoftwareSeveral programs on the market today convert music into tablature. These programs are,however, notorious for producing unplayable or unnecessarily difficult tablatures[6]. This isbecause they often depend too heavily upon rules of music theory relating to harmony andguitar composition[12]. For example, “open” strings are considered to be easier to play onguitar because they do not require depressing the string on a fret. However, it is often easierfor a note to be played on a depressed string if that string happens to already be depressed

5at that point in the music. Software that we tested seems to take the inadvisable approach ofcreating tablature note by note, rather than devising a strategy for the piece as a whole. Thisapproach necessarily results in poor tablature for many pieces of music. For these reasons,current commercial software often depends upon the user to edit a tablature after it hasbeen generated[12].2.2.2Academic ResearchA method for discovering playable tablature was described by Samir I. Sayegh[11]. His“optimum path paradigm” describes a sequence of fretboard positions as a sequence ofhand states, the goal being to find the optimum path through the states. More recently,there have been algorithms that build upon Sayegh’s approach at the University of Torino[9]and the University of Victoria[10]. Both approaches have produced excellent tablatures forthe pieces on which they were tested, but both have limitations. The prototype from theUniversity of Torino cannot account for situations where more than one note needs to beplayed simultaneously (a chord). The program from the University of Victoria appears to bea “lazy learner” which improves its accuracy by requiring customized learning for each piece.Our algorithm aims to be able to generalize to any piece with a satisfactory degree of accuracy, though it will be difficult to assess which algorithm produces more desirable results.Another group from Doshisha University reports success in generating tablature superior tothat of commercial software, but once more the program is limited to producing tablaturefor melodies without chords[6]. It should be noted that the former two approaches includeLeft Handed Fingering notation, which instructs the player on which specific fingers to use.Our approach does not currently support this feature.

62.3The Genetic Algorithm Approach for Tablature Generation2.3.1The Genetic AlgorithmA Genetic Algorithm (GA)[7][8] is a stochastic search algorithm that aims to find good solutions to difficult problems by applying the principles of evolutionary biology. Evolutionaryconcepts such as natural selection, mutation and crossover are applied to a “population”of solutions in order to evolve a very good solution. Problems suited for a GA are thosewhose number of possible solutions (search space) is so large that finding good solutions byexhaustive search techniques is computationally impractical. The genetic algorithm is alsouseful for tackling search spaces with many scattered maxima and minima. This property ofGAs is essential in the search for tablature, as the search space can be quite large, generallyon the order of 3n where n is the number of notes.2.3.2ImplementationThe population for our GA is a collection of tablatures that are valid, though not necessarilydesirable, for a given piece of music. The initial population is generated randomly. A tablature“chromosome” is defined as a sequence of chords. A chord is a “gene” and consists of fretboardpositions for all the notes in that chord. A chord, in this sense, is any combination of notesthat are played simultaneously. Pieces are generally not evolved all at once, but rather shouldbe divided into logical excerpts and evolved separately. Evolving an entire piece is generallyundesirable as it would likely create a search space too large for a GA to search effectivelyin a reasonable amount of time.The parameters for the GA are those which have empirically led to convergence on themost fit individuals and were tuned manually. Our GA has a population size of 300 anduses binary tournament selection with two-point crossover. The crossover rate is set at 60%and the mutation rate (which mutates a single random chord) is set at 7%. To increasethe overall performance of the program, we found it useful to run the GA several times for

744MusicParent 1Parent 2CrossoverChild 22Parent 2 s Genes51310Parent 2 s Genes1264SecondCrossoverPointParent 1 s Genes7291511121310FirstCrossoverPointParent 2 s Genes13101011Parent 1 s GenesChild 257583922Parent 1 s Genes0131010224777Mutation ofChild 215RandomGene toMutate1701012675801310102477715Figure 2.2: Obtaining children from two parents. Music from “Stairway to Heaven” by JimmyPage and Robert Plant.100 generations and save all of the most fit individuals found. We then run the GA oncemore with a population composed predominately of these individuals. Very often this finalrun will produce an individual more fit than any other found so far. This is often the bestindividual ever found as defined by our fitness function. The chance that this individualis optimal varies with the length of the excerpt and the complexity of the correspondingsearch space. This “seeding” scheme is often necessary because of the deceptive nature ofthe problem. Deception arises because each piece of music has several globally competitivebut structurally divergent optima.

82.3.3Fitness FunctionOur function analyzes a tablature in many different ways to assess its playability. This assessment is partially informed by the analysis of finger-positioning complexity of Heijink andMeulenbroek[5]. Unfortunately, it has proven very difficult to accurately capture difficultyby simply keeping track of the movement of individual fingers and our approach is thereforesignificantly different from that of other academic tablature generators. We acknowledgethat an approach that assesses difficulty as a function of each finger’s movements is moreelegant and potentially more accurate, but we found implementation of such a scheme tobe impractical. We found it satisfactory, and far simpler, to devise a set of heuristics thatestimate difficulty by defining general properties to which good tablature tends to adhereand measuring tablature against these. The function can be thought of as calculating twoseparate classes of tablature complexity, difficulty of hand/finger movement and difficulty ofhand/finger manipulation.Hand MovementThese calculations essentially estimate the total amount of lateral hand and finger movementacross the fretboard that is necessary to perform a tablature by executing simple calculationson the fret numbers. The more movement that is required, the more the function penalizesthe tablature’s fitness. Fitness is penalized according to three factors in this category: Thetotal number of times that strings must be depressed, the number of frets that separateadjacent notes, and the number of frets that separate each note from the average fret of thesix surrounding notes in the piece of music. Fitness is rewarded proportionally to the numberof open notes, as they do not require any lateral movement by the left hand to be executed.A number is accumulated for each one of these factors and each has an associated scalingcoefficient that has been tuned so that generated tablature more accurately coincides withpublished tablature.

9Hand ManipulationThis portion of the fitness function attempts to analyze what the left hand itself is doingand assess the difficulty of the requisite hand positions. There are two predominant methodsby which a guitarist can finger multiple notes. The open chord method requires depressingstrings individually for each note. Alternately, one may place a finger across a fret over severalstrings and use the remaining fingers for any other notes on higher frets. This is known as abarre chord.After much manual analysis of the possible open and barre chords, we settled uponseveral heuristics that define valid chords of both types. At every note in a tablature, wecount how many notes can be played sequentially without violating one of these heuristics.This number is then penalized according to the difficulty of the chord. The difficulty of thechord is assessed by measuring how many fingers are involved, how far they must be spread,and so on. The heuristics that define valid chords and that determine the difficulty of thosechords are too numerous to enumerate here. It is also by no means true that our heuristicscapture the target concept defined by the mobility of the human hand, but rather that theyapproximate the concept well enough for our purposes.2.42.4.1Experiment Setup and ResultsExperiment SetupA common metric for establishing the success or failure of a tablature generator is the percentage of fretboard positions in the generated tablature that are consistent with a publishedtablature. Over a very large body of work this should provide a rough indication of the generator’s reliability, but the metric is not perfect. While playability is the main concern fora human when creating tablature, it is not the only concern. In cases where notes can beplaced on the fretboard in multiple positions without significant differences in playability,the position chosen by a professional could seem essentially arbitrary. Because each guitar

10string has a slight but noticeable difference in timbre, tone quality becomes a factor for noteswith more than one viable position. If differences in playability are very slight, the chosenposition could even be little more than the personal preference of the tablature creator.Consequently, our results do not lend themselves to numerical representation. Our metricfor success is simply that our generator never create a tablature significantly more difficultthan necessary. This is hard to accurately express statistically, since there is no entirelyreliable objective measure of difficulty. If there were, it would be our fitness function. We willinstead demonstrate a weakness of commercial tablature generators to which our approach isresistant. We tested several different generators including a few pieces of free software, andthe commercial applications TablEdit and GuitarPro 4. The TablEdit software generatestablature one measure at a time, and hence tends to make mistakes in phrases that cross barlines. The GuitarPro software uses an unknown algorithm that seemed to produce the mostprofessional tablatures and was used as the primary benchmark against which we subjectivelyevaluated our algorithm.2.4.2Results and ConclusionWe ran our GA on a wide variety of both popular and classical musical literature. In all,selections from 34 pieces of music were tested. The majority of tablature coincided withpublished tablatures and the algorithm never produced a tablature that was significantlymore difficult than the published tablature. We consider the GA a success because it reliablyproduces playable tablature even when departing from the published versions. Figure 2.3 isan example of the type of departure our generator never made. It is an excerpt from jazzstandard “As Time Goes By” by Herman Hupfeld.In this case the tablature generated by the GA is the same as the published tablature.The commercial generated tablature begins differently and as a result is probably unplayable.The first six notes are placed low on the fretboard and this results in a difficult jump fromthe second fret to the tenth fret between the second and third beats. The human professional

11excerpt fromAS TIME GOES BYHerman HupfeldPublished/GA Tablature:687 8 7779101009Commercial Generated Tablature:102 3 2 10323 4019unplayableFigure 2.3: Tablatures for an excerpt from ”As Time Goes By” by Herman Hupfeld.and the GA, however, account for the fact that the hand will have to be high on the fretboardand place early notes in the tablature in that area as well.The reason our approach does not make the same mistakes as the commercial generator isthe implicit parallelism with which the GA processes the tablature. While the GA evaluatesthe first six positions of the commercially generated tablature as fit when they are by themselves, when those positions are viewed in context the tablature’s fitness suffers and hencetablatures containing those positions are selected less often and eventually purged from thepopulation.There is a general property we noticed of generated tablatures which diverged from thepublished versions. We found that these tablatures were not necessarily more mechanicallydifficult, but were often more difficult to read from the page because they do not conform to

12a conventional practice of human tablature creators. This practice dictates that higher notesshould be played on higher strings, and lower notes should be played on lower strings. Ouralgorithm, and any algorithm that consults only finger-positioning in assessing difficulty, isunaware of this and in trying to minimize mechanical difficulty will occasionally violate thepractice. It would be reasonably simple to implement a fitness penalty for infractions of thisnature, but because our goal was to minimize mechanical difficulty rather than preciselymatch published tablatures we did not.Mistakes made by the commercial software usually only result in tablatures that areunnecessarily difficult but, as is shown in the example, sometimes create tablatures thatare unplayable. The advantage of our Genetic Algorithm over other approaches becomesapparent when creating tablature for sections of music that require knowledge of later sections to be transcribed correctly. Generated tablatures did not always maintain consistencywith the published tablatures, but deviations proved to be mostly inconsequential to overallplayability and never disastrous. We offer as evidence of the validity of our approach thatwe never encountered a piece of music for which the GA produced a tablature that wassignificantly more difficult than the published counterpart.

Bibliography[1] Colgan, B., Stang, A. Led Zeppelin: Acoustic Classics Vol. 1. Warner Brothers,Miami, 1995.[2] Colgan, B., Stang, A. The Solo Guitar Big Book. Warner Brothers, Miami, 2001.[3] Davis, L. The Handbook of Genetic Algorithms. Van Nostrand Reinhold, NewYork, 1991.[4] Guitar Pro. Guitar Pro 4 Demo. 2004[5] Heijink, H., Meulenbroek, R.G.J. ”On the complexity of classical guitar playing:functional adaptations to task constraints”, Journal of Motor Behavior. 34(4),339-351, 2002.[6] Miura, M., Hirota, I., Hama, N., Yanigida, M. ”Constructing a System for FingerPosition Determination and Tablature Generation for Playing Melodies on Guitars”, Systems and Computers in Japan. 35(6), 755-763, 2004.[7] Holland, J. ”Genetic Algorithms”, Scientific American. 267, 44-50, July, 1992.[8] Liepens, G.E., Potter, W.D. ”A Genetic Algorithm Approach to Multiple-FaultDiagnosis”, Handbook of Genetic Algorithms. 237-250, Van Nostrand Reinhold,New York, 1991.[9] Radicioni, D., Anselma, L., Lombardo, V. ”A segmentation-based prototype tocompute string instruments fingering”, Proceedings of the Conference on Interdisciplinary Musicology. Graz, Austria, 2004.13

14[10] Radisavljevic, A., Driessen, P. ”Path Difference Learning for Guitar FingeringProblem”, Proceedings of the International Computer Music Conference. Miami,USA, 2004.[11] Sayegh, S. ”Fingering for String Instruments with the Optimum Path Paradigm”,Computer Music Journal. 13(6), 76-84, 1989.[12] Wang, J., Tsai-Yen, L. ”Generating Guitar Scores from a MIDI Source”, International Symposium on Multimedia Information Processing. Taipei, Taiwan, 1997.

Chapter 3Creating Guitar Tablature with LHF Notation via DGA and ANN3.1Introduction: The Guitar Fingering ProblemThis chapter1 describes a system for converting music to guitar tablature. At run time, thesystem employs a distributed genetic algorithm (DGA) to c

A Genetic Algorithm for the Automatic Generation of Playable Guitar Tablature 2.1 Introduction This chapter1 describes a method for mapping a sequence of notes to a set of guitar fretboard positions (tablature). The method uses a Genetic Algorithm (GA) to find playable tablature