Back to index of guitar pages by Donald Sauter.
Have we scratched the surface of putting computers to work in the area of arranging music for the guitar?
First is the problem of key selection. Fortunately for the arranger (but a shame for guitar music listeners and players), there are only a few good guitar keys worth checking out. Even then, it's a lot of trouble working up the same piece in even 3 keys - D, A and E - just to find the best one.
What is even more unthinkable is tinkering with the tuning of a string here and there to make other keys easy to play in. Geez, where would you start? The number of possible alternate tunings is huge. If we limit ourselves to raising and lowering strings only one or two half-steps, there are 11529 different tunings. (This doesn't include tunings which are simply transpositions of others. See calculation below.)
Is it so hard to imagine a computer program that would take a piece of music and fit it to the guitar fingerboard in a variety of keys and tunings in order to come up with the most faithful and playable transcription?
You might think that only a human could choose his fingerings, but our hands all work about the same. Sometimes I make a first pass by writing fingerings in the music at a table without the guitar in hand. There are many chords and passages where you know what the only sensible fingering is. Then I take up the guitar to complete the job. Very frequently I find myself thinking, "Come on, now, I should have been able to figure out that fingering even without the guitar!" A closer consideration of what fingers were in use, and where I was coming from and where I was going to would have yielded the only reasonable solution.
Given the characteristics of the human hand and the disposition of the strings and frets, the computer program would go through the piece trying all possible fingerings for each note and chord. It would choose the one with the lowest "difficulty rating" based on the amount of stretch, how many fingers had to be moved, how far they had to move, what's coming next, etc. It would calculate an "overall difficulty rating" for the whole piece.
It would also calculate a "faithfulness rating" based on the number of notes that had to be thrown out, the number of bass notes raised an octave, etc.
It would cycle through all the keys, and within each key it would cycle through all the tunings - or maybe just the most likely candidates for the given key. When it's finished, it would present the most playable, fully fingered transcription. Of course, you might want to try out several of the computer's top choices. And have no fear, there would still be plenty for a human to do, adding artistic and guitaristic touches.
I mean, I'm not gonna write this program, but it sure sounds a lot simpler than a chess program. Anybody out there need a computer or music dissertation project?
10 'This BASIC program COUNTS UP THE NUMBER OF UNIQUE TUNINGS for a 6-string 20 'guitar. We restrict each string to be within 2 half-steps above or below 30 'the normal tuning. Thus, each string may be tuned to 5 different pitches. 40 'We don't count tunings that are simply transpositions of others. This 50 'is accomplished by only counting tunings if at least one of the 6 strings 60 'is in its lowest tuning. (Otherwise, the tuning is a transposition.) 70 'We further speed up the looping within loops by noting that, if a string 80 'is in its lowest tuning, we can simply add the number of permutations 90 'of the tunings of the higher strings, rather than count them up one-by- 100 'one via nested loops. 110 ' 120 'The final answer is 11529, I'll betcha. 130 ' 140 'Variables S1, S2... are indexes that step through the 5 half-step tuning 150 'range of String 1, 2... 160 ' 170 TOTAL=0 180 FOR S1=0 TO 4 190 IF S1=0 THEN TOTAL=TOTAL+5^5 :GOTO 350 200 FOR S2=0 TO 4 210 IF S2=0 THEN TOTAL=TOTAL+5^4 :GOTO 340 220 FOR S3=0 TO 4 230 IF S3=0 THEN TOTAL=TOTAL+5^3 :GOTO 330 240 FOR S4=0 TO 4 250 IF S4=0 THEN TOTAL=TOTAL+5^2 :GOTO 320 260 FOR S5=0 TO 4 270 IF S5=0 THEN TOTAL=TOTAL+5^1 :GOTO 310 280 FOR S6=0 TO 4 290 IF S6=0 THEN TOTAL=TOTAL+5^0 :GOTO 300 300 NEXT S6 310 NEXT S5 320 NEXT S4 330 NEXT S3 340 NEXT S2 350 NEXT S1 360 PRINT "Total number of unique tunings = ";TOTAL 370 END
CLICK HERE to send me an email; view my guestbook; or sign my guestbook.
Back to my main page.
Back to the top of this page.
Parents, if you're considering tutoring or supplemental education
for your child, you may be interested in my observations on
Kumon.