A Fitness Function for Computer-Generated Music using Genetic ...

grandgoatAI and Robotics

Oct 23, 2013 (3 years and 10 months ago)

66 views

 
     
 

 

 
  
 

 !!
"#$%&&
'!("!
)*+,-!

./0/1!0/ !234"/


5  ! !1 5  0 2 2!5" 0! 5 " 2! 0" 1$
" 0  0 0 "  65 5 !"7 " ! / 800!!"1
!!!/5" !"2!!!'!5$05"5!/
 05" $052!5"5 !!1!2!/
 
'!$ "  2  0!" 5!$  2!5" " !
!0!2

5 6!9 5 1  ! 1$ 5
5 !$ 0
  52$
:;< !="1!)++)>+&-,*/
 

5"2!0"" 
  2 2"  !$ ! 0
! !!5  " !  65
'!5!$$!5!$19?&>@A/
 ! 2!   !  5 " 0
" B $" 1$" 0 0!""
5! C'  5! 2  $ 1$
5 1  1$" 0 " !
52 !2!""2?*>-A/
5  !  !27 5D 5  
!'  5! ! "  
1!!5!"!65
!  0 5!!    !
B !""!000!6$
0! !2"/ 5 5!  B 
5 !"7 " !  655 5
1" 505!0
5 2 2!5" 0!" 5 !2"
/ 5 0!5  !1 5 2
2!5" 6 5'  0!" 2!/ 
5 005  B5  6 !1 !
B !"65!65'" !50
 ! 6 !2 2  0! 00!
!"1 !! 0! 5 2
2!5"/ $ 5   ! !
 10!0!6!9/
 
  
 

$!5$5"  5!"$ ! ! 5
5! 0" " "/  5
B !" !0!"  5  ! 6 5
!! !' "$ '2 5
"2" 0!5$5"  5!"$  0!
1='/  5 6$ 6  0!2 1
00!!": !'<0
" 5"D  2 !0!"!
B2 "  2      
2' "/$0!0
" :< ! :!< 65
00! 25  ! !!2 
   !!!5$5" ! 
0!"!271/
 E!" 5 " 0 5  12
 5 .   8   3/ 5 !
! !" 5  !!   5
65 9$  5 / 5 19 9$  5
!!"00565
9$!5! !0/!"
0!2559$506659$
5!  9$ 65 5 !' 9$   0 9$/
  "0  $"1   
5659$":F!G! !
5! !

! >655! ! 0</5
!!!  0  "2 "
0'!9$1!?&+A/50!"
0!5! H50 I
5"0 55 
65! '!$ ! 0 6 = 9$ !
 ! 1$  50   "! 5! !/
6 ' 50   !   65
 / !" 00! 0!" 5 "$
2!  J  0 0  5! 
"$J00!"
!:5  !1 ! K"<
  B/ K6'!  5
B !"65!!5E! 
$>  5 " 0$2 5 !1"  = **
00! !1$50 /!'
"$ 1 0  5 "1! 0 50  
166/
!5'25:!"</
5! ! ' 00! ! 25:0!"
& !! 2    !   
&LM,<506555!155
B/ 5! " !D 65 50 C!!
C'! ">C'! C!!>C'!  50
C!!>C'!/ !" !  1
1 1$" 0  ! !/ 5
"   0 0   
5!25/
  0"  1! !  '!
00!1C'6$D
· E5 5 ! E! 1>"
2! 5 2!"/
· $   0 5!! !2D  !
! ! 1$ !:><  1$  
5! 0!1$GN2
5 25 0  1$  "1!:+ 6
! !  65  &  50   
</ 2  ! !' !"
25/   0 5 " 
5'5 !0!"$:!"
2 ! </ $ 5" 
! !650 !!2/
· $ "1!2:&  **< 5 5 0 5
 5  9$1!/ 5! "1!
! ! 5 25 0 5   
" 05"""0"/'
   0" 6 1  ! 0
2! !! !2   25/
 + 6! ! / $ 5
""$ 1! ! 1$" 0
!02! !/
· 5! 2 $" !   9  
! !"" !!!!2
$"65!65" !5
6'" 28O/
!B !"6! !"1$5
5!$"/
  
 


5 !5 0!  '!"! 5 1 0! 
2 "  0 5" 1=' 0 !
5!$/ 5 '1$ 0 5 "! 6
"9  1   $ 5 " 2!5" 
6$ 00! !2 !1" 5  5
00"B2C
0!5/
 !! 2 2!5"   0
   " ! 00! '
1=  " '  0$ 5"
!2  5! 2! 0    5
'!"/
"$  0 0 "  5
 0!" 5 ':!  0 
! !<!2/P 56
6  2!  "  5!"1 
7! $" 5$J  5  6 
1!  ! 0"!D  '
:! !2  " < 5  525 0 0
5!"$ 0! 65 :!"!< 0 5
7!P $" 5/ 5 !1"  56 
50!5!! '"!/

! !2$ 5! B  '! "!$
"! 5 ""!7  5 1 0!D
5   ?&&A/  
'!  5  5 65 $"!
"!  "  16 6 2'
1= 5 !"7 0!"  
"!  "  16 5 " 6
1=J 5      2  $ 5!
" 1"!/ 5 !"7 0!"
"5"$006D

( )
(
)
(
)
( ) ( )
 
  
 


65!
K
x
y
  5  Q"2!'
" B$ 0  !2
x
 2' !2
y
 65
'61525055! !2!"
:0!"'!"5<65565!
  !2
y    !2
x/
K
x
 5
2! 
K
x
 65!
 5 " $
!2J ?&)A 0!   B  0 5
 ! ! 2!5" 0!" 5!$/
0!$ 15 5   5
 " B 5   1
" 10/
?&OA  " 1 " 0 5 !"7
0!" !

( )
(
)
(
)
(
)
( ) ( )
 
  
 

R


E5!
C
x
  5 25 1 1$
" !2
x 65" !!
C
xy 
50
x

y
/
 5'
! ! 5 5"! 25! 65  !
251! !   0!  !0!"
"050:"!" B<2!5"0!
!2"1$2!?&,A/!!!!5!
5' ! !  2!   !2
9 65 5 ""!?&SA/ 5!
2255!"7" !
525  5'2 5 '!$ 0 
" 1 !! 6!9 6  B!
0!5!166" /
!"  5 5 " !!  
"
d
/  
  " 
C
 1$
2 5 "1! 0 19 2! 1$ 5
T@*" !2!5"?&MA0! 
/
!B !"6155T@*
 T@@ 2!5"  0 5 T@@
!0!"1!6552!65?&@AJ5!0!
T@@ 5 1   !!0! " !!
  5 B !"! !  5
 !/
!  
    
  

 ! 2 2!5" 2!"  
! 0 2! 5 5! 0!" !1 
)655 $00!! ! /
5   5 1 !0!"   
!2:5  0!"< 0!! !/ E
   5 0!  0 B !" 
 $ 5 2 2!5" $  5!'
5 0 5   5"$:// 6 $
!5!' 5' <2!25
1 55251!
6   5!U?&,A 22 5  2'
 0"!"!271 65 5
25 0   !!  1$!"
25 65 5   U 5 :5
 1" " $ !271 0 
 !!  1$ !"  65
"25!25</
5 !  2 2!5" 5"  6
!1/ !' !> ! 
"05062 !D
· !"!" !
!2!20!"2!/
!

"#
&

5

"15"6$
 !02!!11'/
· 5'5  !
5"6$52/
· 506200D
( )
( )


"



R
&

65!
(
)

R
60O/ $
"B"72
f
x
:""725"05
<6B "B"75"1!
0 0! 5! 1$ 5 ''2 '
65 5 2 / ! B"  0
 6!
5  0 7!P $" 5  '
65  525 0 5!"1:65
$<7!$" 5$/

5!"2 0522!5"!D
&/ 5 !2!"2!!"  0
M,'! 0  ! 0 2! 65!  
5 25 0 5 0!  0"  5
2/50!2!5 !5
?),,*A !' 5   5?&&MA
!'/5'!! !2$ /
)/ 50052$ " 5
  5 2 "! 1$"
05!"7" !/
O/ 5 2$  ! !! 1$ 5! !2
52/
,/ 0 5 2  5 1!5 5
!2!"  / 5   5 !2
2$  ! ! 65  0 0 5
25052 :</
S/ 5 &M 2$  65  0 !
!"'/ 5 &M 2$  65" 0
! !!"$/5 !2! !
0 5!  $ 05 !"0 1$
0!2 !/55!!
 5   "9 2 M,  5!
0"  )/
M/  O/
5 0! 2  !"  5
2!5"!D
· "1:   &++V 2!
2$ </5 2$  0 15 ! !
"1 2 00! !! 
2! 5 2$  0 5 !2$/
800!!"1 !! 5' 1
50B !"051
"1/
· :" 6    '!$
2! 2$  525 5!"$ 1
"0  00! B !"</  
0! 2!""05'!1$
!"2!5"!'/
· :    ! !2 0 5
2!2$ 655!B !"
6'!16S&+</52$ 
!  1$   0 0 65  
!"$ 1!9 0!" 5! 0 ! 
1!5!U2$ /
· :    ! !2 0 5
2! 2$   ! B !"
16)S</ 2!5'!:
!" <"/
5  6  ! 25! 65 "
!"1 !!62!!5!!
2$   1 1 0!" 5 !2 
"'!/

"  #  


 ! 0! B !" 6  5 " 
!"1 !!   5 00 0
'!$2 5 "1! 0 2   5
052!52505
51  /!652
 2  0" $ %
! !1$5062!2D
)) O)G,G,8G,,G,,8G, )G, O
G,G,8G,,GO,,G,G,8G,,G,,8
G,G,, )G,G, O,GOG,, )G,/ O
S/ )G,G,G, O,G,, )G,/GS/G,
G,OG,,G,/ OS/ )G,G,G, O,
G, )G,G, OG,,8G,GOGO
 5  5 0 0 6
!250!6!D51='6""75
!"7" !05'!0
 !' 0 5 ''2 '  5
!! 2'!  5 2 / 0!
 $2 5 2 2!5" 5  0
 1 6 "  1$ 2 25
0!"  5 062 6$D 5  6
2 5 25 0 5   5 "
  5 2 :5 2  6
5! ! !!$ B 0  
"9  5 " 25  5 2! 
655  1 5!! ! 2!</  '
B052!5"6100!
"  00!  0!" 5 2/ 
6 1!' 5  6! " 5
2!""!!271  5 ! 
!  5 2 / !  5
  5 2 0 5 062 2!
+/,OD
S O8G) )G) OG)G)8G))G))))
8)) )&8))8))8))G)))) ) O
) ) ) O8)& ))8G))/O/G))8G)G)
G))G)/O/G))8G&G)G)G)/ OO/G)
)G)G)G)G) O8G) ) O8G)G)
5 "1! 0 2!  !5 
2'   5 2    5 2
25  5!"    5
B !"  06   !B" 
!'  56  02! & 655! ! 5
!0B !"/
2!&/"1!02!!52'5!2/
 !  B !" 6  6
" 2 D &  &
'      15 1$ 
!!/  5  5 0 0  1
""7 6 5 " 0 5 !"7
" !05!'05
''2 '  5  !' 0 5
62 /
5 062! !  0 5! 6
1 655 5   1    0
+/M@0!"50!2 +/@)0!"5
 65 5 !"7 " !
16152 +/*&//5
2!  6 !!  15 2 5
5$!"25"'D
S OGO/8O/ )O/ OG&/GO/8GO/ )GO/ O
G& )GO/GO/8GO/8O/&8GO/GO/O/O/GO
/8G& OO/8O/O/8&O/O/ )GO/ O8G)) )
G& OO/ )GO/GO/G&G&GO/&/GO/ ,
O/ OO/&/GO/GO/8GO/&GO/O/O/ )O/
8G&GO/8GO/ OO/O/GO/G&8G))GO/&/
) O/ OGO/ )O/GO/G&GO/O/O/&&8
GO/ O&O/ )O/8O/GO/ O&8O/ )GO/GO/
8O/O/& O8O/)8G)&/8GO/GO/ )8GO/8G&
O/O/GO/ OO/ )&O/O/GO/O/ O/&8G
O/8GO/O/GO/ & O8GO/GO/GO/G&/O/8GO/
8GO/) ) & O8GO/O/ ) ) O) )&)G
O/GO/)/GO/O/8G)&8O/8GO/ O)8GO/GO/
8& ))GO/ OGO/G))G) ))& OGO/
)/ )GO/O/O/G&O/O/8GO/GO/ OG&/ )
G&GO/G&8GO/O/G)G)GO/G&8G)O8+
8G)O/8GO OO/8) ) )8G) OOOO/)
) +O/OO/ )/ OO/G&O/GO/GOGOO/
&/) )GO/GO/ OG+GO/ O/ + O/ )O
GO O/ O8O/8O/ )G& O8GOGO+GO/8GOO
O/O/O/G)GO ,O OOG)G+ )GO
GOGO/O/GO/ OG)GOOGOGO/G&8GO/
GO/O/ )GO/G+GO/ OO/ )GO/ OO/G+
8O/O/ )O/
 1 5 !2  6 "  5
 0  2! 1$ 5 2
2!5"655!C!250!"
5 062 6$D 5  6 2 5
'!2 25 0 5 6   5 "
562 :52 
6! 5! ! !!$ B "9
5"5"2552! </5
 !5 5   !' "! 5$
 2! 5 5  1 65 5
250$052 /
!5!B !"5  !"1!
,  @ 6!   " 2/ 5
! "  1   0 +/M&  +/@,
0!" 5 6 2  655 !  !
0!"5!1$0+/-M/525
0 5  6 2! 5" 6$  
5 !2B !"/" !6555
12266!91$
!!5$25!/
S OG)/ )G) O&/ )G& O+ OG&/ O
+ ) )/ O8G&/ OG& )G+ )G&/ )+ )
G)/ )&/ ))/ )) )+ ) &/ O) O8GO/
O8G)/ O8G)/ O8& OG)/ )G&/ )) )G+
)G) )& O)/ O) OO/ ) )/ O8)/ O
& ,)/ ,) )O )8+ )& )8G+ )& O
G&/ O) O)/ )G) ) &/ ) ) ) O/ )8G
, )G) )& )G& )) )G) )GO/ )G)
/ )G)/ )G& )G)/ )G) )O/ )G)/ O
G)/ O& ) ) ) ) OG)/ ) )/ O + O &
) )/ OG&/ O) O ) ) + OG&/ ) + O
G)/
$    
#
 
 
!B0B !"6500
05225!"1 !!1$
5 2 2!5"/ 5 062 !2
6!D
·
!2$&D2' !02$ :B
&
B
)
///
B

< :$
&
 $
)
/// $
"
< !" 2! 
2!  5 !'?+"W:"<A/  
1 / 5!2!"1 2$  !D
:B
&
B
)
///B
>&
$

$
G&
///$
"
<:$
&
$
)
///$
>&
B


B
G&
/// B

</ 5  5 1 :5 " 
!"1 !2$< 655 6   
5 B !" !1  5 !2
/
·
!2$)D2' !02$ :B
&
B
)
///
B

<:$
&
$
)
///$
"
<6!"2!!
2!5!'?+A:5"
 = X=<  5! 6  5 !'?+"A
:   5"  C XC</ 5!2
!"1 2$  !D:B
&
 B
)
/// B
>&
 $


$
G&
///$
C>&
B
=
B
=G&
YB

<:$
&
$
)
///$
>&
B


B
G&
///B
=>&
$
C
$
CG&
///$
"
</
·
!2$OD2' !02$ :B
&
B
)
///
B

< :$
&
 $
)
/// $
"
< 0!!" !!
2!!2!5!'?+A?+
"A0!5 !2$ /52$ 
5   5 0' !! 2 
655 ! 500 25!: 0 5" 
!'!</ 5 2$  0 5 !2$ !
11$20'05 
5500/
·
!2$,D "!  5 !2  1
$5!!"!!2!!
' 5 ! 2$   0! 
655!5=500:0!
  "<  2! 5 2$  0 5
!2$/
5 >  !2>'! !2$ & 5 5
! !$ 5 5 25 0 5 ! 2"
!'!!!"15 !2$/

"  9  5 25 0 5
2"$052/0
6   5  ! !2 B !"
0"'!0!2"65
 ""  655" 5 5
'! 0 ! 2 2!5" !1  5
!'  655 ! 65  2"
25   0!"  0 5 !2  0
"   2" 25 $!
1$  :"5< 0!" 5! '/

!2)O,56'! !2$
2"6525$C00!0!"
5 0 5! !:' 65 15 !
2"55"25<655 !'5
  65 "5 !2! 2" 25
'!$5!2$&/
0! !0!"2 '! B !" 6 
5512205'5
!"1 !2$ '!2"! C9$
6! 5 !2 1 0!  ! "1! 0
2!:$ 16 &S+  )++< 5
0!  0!5 !2 1" 1! 65
1$1S++2!0!5122
05 !50!!2$!$51/
1' &+++ 2! 5 0! 6 !2
'!2//1"!
520!5""1!02!/
5 1!25   ! 005  B5 !2
655 ! "  "1 0 5 0!
!11'D
·  5 0! &S+  )++ 2! 5
2!5"  5  !2$:5 6
!"1 !! 65 0!
00! !2>'!  16 15
!</8!25!"22!
5 0! !2$   :// 5 
!"1 !! 65  2
!2>'! 0!15 !</
·  5 0! )++ 2! 5 !2!" 
5  !2$J 16 2! )++
 S++  65  5 0!5 !2$ 
1'S++2!50!!2$/
5! 0 5 "1 !2 !"5
1! 5 5 0 $ 0 5 0! !2
   !$  56  1 &/   1
1!' 5 5 0!"B !2$!5 
= M++ 2! !2  "! 
5  1$ 5 0! 6 !2  '!
)S++2!/5" !'"05"B
!2  5!0! C " !'/  5
5! 6$ 5 6"B !2 
" !1!/
!/ 0
2!

!2$&
!2$)
!2$O
!2$, !"B
!2$
& +/-O+ +/-O+ +/-O+ +/-O+ +/-O+
&++ +/@*) +/@MM +/*+@ +/@-& +/@MM
)++ +/@O, +/@&+ +/@SM +/@,, +/M-@
O++ +/@&, +/M-) +/@,+ +/@&) +/M@M
,++ +/@+) +/M-) +/@)) +/@+, +/MS-
S++ +/M-+ +/M*- +/@)) +/@+, +/M,*
M++ +/M*& +/M*O +/@&M +/@+, +/M,O
&+++ +/MMO +/M*)   
&S++ +/MS* +/MMM   
)+++ +/MSM +/MS*   
)S++ +/M,, +/MS)   
1 &/  " ! 0 5 !0!" 0 0' 00!!"1 !2/

2! )/ " ! 16 5! 00!
!"1!2/

2!O/!0!"" !05!
B !"655"!"1!2/
2! ) 56  2! 5! ! 0 5
!/ 2! O 56 5! 0  00!
B !"655"5!!2/
 ! $ 0 5! 0! 5 15'!
65'"556550!
!2$ 5  !5  "! 2
'!1$ 65! 0'!1" 5' 
2!! !11$ 0  !2/  5 5!
5 5  !2$ 2! "5
2!! 2'!1$ 15 65!  
2" 25   65! 0'!1
" !"5 5!!  " 1$/ 5
" 5  5 2!2 5 0! !2$
56!91!556555
5! 5 2 0!! !2 5 0! !
0 5 ! 1$ ''2 "$ 
"$ !  2 6$ 00!
2"  5 " "/ 5 5"B
!2$"951015!"1
!!6555!0!2
!0!"/
%
   & '
E !' 5 5 !"7 " !
 !"2000!2
2!5"   "" 2!/

" 0 5  0" 5 2!
!"5$06>965! 0
5 0 5 5 0 0 $ 9 
 5!' 5 ' / !!
5' 1"5 1! 5 5 1
!'$6500!00?&*A/
 5 0! 6   "1 !!
65 5 0 5! 5!?&,>&SA    5
!2 0! 5 2 2!5"   ! 6
0"1$2'5!1!0
 1$ 5 " 5! 5 !$2   !
5$"!2!6$/E
"0$52!5"50!"1
!/
E 5  6!9 65  ! !5!
$"0"! !58/
(
?&A Z/ !"9:&--M</ !""!>1"
" / ) * %O/
?)AZ/ :&--,</Z"D2!5"
0! !2 Z77
 +  
,--. * ) ' 
 /&O&>&O@
!&--,/
?OA /  /  %/ !:)+++</

$5 K!"D   !5 "
" 1$" 0 ! "
/  !'/ OSD) / &SO>&S-
 !)++)/
?,A8/'Z/1!:&-@O</"$6!2
2!5" 2  0!" 22"
) 0   1 %/,DO>,
/&O*>&,*&-@O/
?SA /  / Q99!:&--,</ 
2!5"  
$ ! !
+   2 *333  
34 )  *S*>*M) !
!'/)&--,/
?MA8/K!67:&--,</!25$5"65
 2!5" +   * '
,--. /&,)>&,O!" !
[!5&--,/
?@A / Z1:&--S</ " 2 65 
2!5" +   ,--5
* ) '  /
,S)>,SS 00&--S/
?*A0/ !2/
#!7/:)++O</
!" !11$"D
B"   2$  6  
 0 +  ' 
) 0  &   & / /
!>%\%/!$!\! /
&&&>&)+/
D+,&S)-**S@/
?-A !2 / 1 85" / 0 /
:)++O</ !"" '  2 0!
!' 65  2' " *&' 7 
(  %4) %/,@D, /,*O>
,-OZ/)++O/
?&+A / ! 5 666'! 9$1!

5 DLL666/B"/"L]"2"L"L9$1!/5
"
/
?&&A/^/5^/ //%#$
:)++O</ 5 "!$"! +8 ,.  '

0*' 0 )  %  /
*MO>*@)/
?&)A /  / :&--O</  ! 
Q"2!' " B$    
0)
9/
?&OA/1!/%$:)++S</!2
1$ " ! *333 :8 *
: %/S&/, /&S)O>&S,S/
?&,A /   /
 :)++,</ $
0 2 
"!$ ! 1 
Q"2!' " B$ 0  '
)/
?&SA / 1!  / %$:)++,</
2!5" !2 0  +8 ; 
2 *8 8  < %4  '
=<3%3/'>0* ?@.A /,->M@  " !

$
D+/@M-S>)&S@>M/
?&MA Z/ T'  / " :&--@</  '!
2!5" 0! C  " ! *333
:  * :  %/)ODO
/OO@>O,O/
?&@A
//Q!=/7:&--@</
"
! 10!" >T'2!5"%
)  /,,M/
?&*A / !2 /
#57 0 /0
:)++)</ " "  0  1$
" 0 !"" '  _
_:
< %/ O)D, / &,*>&SS
Z/)++)/