This preview shows pages 1–3. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: 7.3 The Basic Idea of Learning Classifier Systems 241 Algorithm 7.3 : learningClassifierSystem() Input : P : the list of rules x i that determine the behavior of the classifier system Input : [implicit] generateClassifiers: a function which creates randomly a population P of classifiers Input : [implicit] readDetectors: a function which creates a new message list containing only the input messages from the detectors Input : [implicit] sendEffectors: a function which translates all messages concerning effectors to signals for the output interface Input : [implicit] selectMatchingClassifiers: a function that determines at most k classifiers from the matching set that are allowed to trigger their actions Input : [implicit] generationCriterion: a criterion that becomes true if new classifiers should be created Input : [implicit] updateRules: a function that finds new rules and deletes old ones Input : [implicit] t max ∈ N : the maximum number of iterations for the internal loop, avoids endless loops Data : t,i : counter variables Data : M,N,S : the message lists Data : X : a list of tuples containing classifiers and the (first) messages that satisfied their conditions Data : v : the strength values Data : x : a single classifier begin 1 P ←− generateClassifiers( s ) 2 foreach x ∈ P do v ( x ) ←− 1 3 while true do 4 M ←− readDetectors() 5 t ←− 6 repeat 7 X ←− () 8 foreach x ∈ P do 9 S ←− matchesConditions( M,C ( x )) 10 if len( S ) > then 11 X ←− addListItem( X, ( x,S [0] )) 12 N ←− () 13 if len( X ) > then 14 ( X,v ) ←− selectMatchingClassifiers( X,v ) 15 for i ←− up to len( X ) − 1 do 16 x ←− X [ i, 0] 17 N ←− addListItem( N, mergeAction( a ( x ) ,X [ i, 1] )) 18 M ←− N 19 t ←− t + 1 20 until (len( M ) = 0) ∨ ( t > t max ) 21 if len( M ) > then 22 sendEffectors( M ) 23 // distribute Payoffs if generationCriterion() then P ←− updateRules( P,v ) 24 end 25 242 7 Learning Classifier Systems The bucket brigade version of the selectMatchingClassifiersfunction introduced in Algorithm 7.3 then picks the k classifiers with the highest bids and allows them to write their messages into the new message list. They are charged with the payment part P ( x ) of their bids. The payment does not contain the condition specificitydependent part and also not the possible random addend. It is added as reward R ( y ) to the strength of classifier y that wrote the message which allowed them to become active. In the case that this was an input message, it is simple thrown away. The payment of classifiers that are not activated is null. P ( x ) = β ∗ v ( x ) (7.6) In some Learning Classifier Systems, a lifetax T ( x ) is collected from all classifiers in each cycle. It is computed as a small fraction τ of their strength....
View
Full
Document
This document was uploaded on 08/10/2011.
 Spring '11
 Algorithms

Click to edit the document details