Parallel Cooperative Classifier Systems

Learning and adaptation are essential capabilities for intelligent arti cial systems that operate autonomously in complex and uncertain environments. Classi er Systems (CSs) exploit genetic algorithms to learn behavioral strategies, in terms of a set of condition/action rules, from the direct interaction either with powerful simulations of the task environment or with the environment itself. Arti cial evolution is however a computationally expensive process, which may prevent the application of CSs to real world tasks. The wide availability of parallel architectures and parallel programming environments suggests parallelism as a viable approach to speed up learning. This thesis proposes and investigates a parallel model for CSs, Parallel Cooperative Classi er Systems (PCCSs), where a number of CSs learn in parallel the same task and cooperate by exchanging information. We discuss the di erences between a parallel implementation of a CS and parallel cooperative learning. We then focus on the new behaviors and learning capabilities resulting from parallel cooperative learning, and on the learning speed up induced by the parallel model with respect to a simple sequential model of reference. To study PCCSs, we identify a number of design choices, and explore their implications on the cooperation among the CSs as well as on the mapping of PCCSs on parallel architectures. The thesis emphasizes how the e ectiveness of the cooperation among the CSs strongly depends on its ability to integrate the knowledge acquired by distinct CSs, so that each CS can exploit what the other CSs have already learnt to focus its own learning. To improve cooperation, we de ne and experimentally evaluate a number of specialized cooperation mechanisms. We also show how a parallel CS model permits the use in CSs of more powerful learning mechanisms but with a large computational cost. An example is the Q-Credit Assignment, described and analysed in this thesis, which is able to evaluate rules whose application may have di erent outcomes depending on the context where they re. Acknowledgments First, I would like to thank my supervisor, Antonina Starita, for having introduced me to the eld of evolutionary computation and for her constant friendship, support, and encouragement during my undergraduate and graduate studies. I'm also greatly indebted to Fabrizio Baiardi, for always being ready to listen to, discuss, and suggest ideas, and for always having promptly read and improved my invariably late writings. We developed together most of the ideas and results in this thesis. I wish to thank Marco Vanneschi and Franco Turini, for agreeing to be supervisor and member of my thesis committee, respectively. Their comments and criticisms have undoubtedly contributed to improve this work and stimulated me to see my research in a wider perspective. I would like to express my gratitude to Stewart Wilson and Colin Reeves, who accepted to be my external referees, for their insightful comments and careful suggestions on a rst draft of this work. Furthermore, I sincerely thank the undergraduate students I've collaborated with and whose work has signi cantly contributed to this thesis: Paola Gambini, Marco Manetti, Massimiliano Porcu, and Andrea Sticca. I also wish to express my gratitude to all the people at the Computer Science Department who have made my doctoral years so enjoyable: all the technical and administrative sta , for their kindness in solving my uncountable problems; the colleagues with whom I've shared my room at the department and all the other graduate students, for their pleasantness and their always prompt answers to my technical questions; the friends of the Parallel Architectures Lab, for the merry hours we have spent together. A very special thank goes to Davide, for his invaluable support, his constant willingness to help me in whatever I needed, his always being an example to me for his reliability, integrity, and commitment. It's almost impossible to nd the words to thank my parents, Franco and Liliana. What I've done, what I am, I owe it to their dedication, love, and support in every sense. Thanks also to my little nephew Valentino, whose cheerfulness has been an enjoyable background music while I was working on this manuscript. Most of all, my greatest thanks go to Giuliano, for having always helped and supported me, for his faith in me, and for having put up with my ups and downs, with immeasurable friendship and love.