iridia.ulb.ac.beiridia.ulb.ac.be/iridiatrseries/iridiatr2005-014r001.pdf · building a simulator...

107
Université Libre de Bruxelles Institut de Recherches Interdisciplinaires et de Développements en Intelligence Artificielle Efficient Neuro-Evolution of Hole-avoidance and Phototaxis for a Swarm-bot Anders Lyhne Christensen IRIDIA – Technical Report Series Technical Report No. TR/IRIDIA/2005-014 October 2005

Upload: others

Post on 21-Apr-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Université Libre de BruxellesInstitut de Recherches Interdisciplinaires et de Développements en Intelligence Artificielle

Efficient Neuro-Evolution of

Hole-avoidance and Phototaxis for a

Swarm-bot

Anders Lyhne Christensen

IRIDIA – Technical Report Series

Technical Report No.

TR/IRIDIA/2005-014

October 2005

Page 2: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

������ � ������ ������ ���������� �������

�� ������ ��

������� �������� �� ������� ��������� ��������

�� �� ������ ������ �� ����������� ����������

��������� ���� �� ��������

�� �� �� ��������� � � !� �"#

� � $%�&������ $��'��(

)�*�+�*,� %�-�%� +�( �% )�"������". �� �

)�� �+/�%(,���+ -%������ �� ��� ���� %��-�+�� ����� �/ ��� ,����%� ,+� ���� +�� +�*���

�,%��� %�0�*� ��� �-�+��+ �/ ��� (�( �%� �/ ������� )�� ,����%� �,1� /��� %��-�+�, �����

/�% ,+� *�-�%�'�� %�,*��� ��,� (,� %����� /%�( -� ��*,���+ �/ ���� -,-�% �+ ��� ������

2 )�*�+�*,� ��-�%� ��%���� ������ �� +�� %��-�+�� �� /�% ,+� ��� ��,� (�'�� � (,��

�/ �,�, ,--�,%�+' �+ ���� -� ��*,���+�

Page 3: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

��������

� ���������� �

��� 3�������+,%� �� ���*� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

��. 4�,� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

��� 5��%���6 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

�� )�� �6,%(� ��� �%�7�*� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

���� �+ �� �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

���. � �6,%(� �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � #

��� ���,��� 8�%1 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � #

� ��������� ��������� �

.�� �%��9*�,� ���%,� ���6�%1� � � � � � � � � � � � � � � � � � � � � � � � � � � � �

.���� $,*1'%��+� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

.���. ��9+����+� ,+� ��%(�+���'� � � � � � � � � � � � � � � � � � � � � � � � � �

.���� �%��9*�,� ���%,� ���6�%1 )�-�� � � � � � � � � � � � � � � � � � � � � � � ��

.��� �%��9*�,� ���%,� ���6�%1� �+ �� ���*� � � � � � � � � � � � � � � � � � � �#

.�. 3�������+,%� !�(-��,���+ � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

.�.�� ��,%*��+' �+ !�(-��& �-,*�� � � � � � � � � � � � � � � � � � � � � � � � ��

.�.�. �+�%���*���+ �� 3�������+,%� !�(-��,���+ � � � � � � � � � � � � � � � � ��

.�� 3�������+,%� ��'�%���(�� ���%,� ���6�%1�� ,+� �� ��� � � � � � � � � � � � � � .�

.���� ���,+*�� ���%��3�������+ ��%,��'��� � � � � � � � � � � � � � � � � � � � .�

.���. � ��(-�� 3&,(-�� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � .�

.� ��((,%� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � .�

� ��� ��� � ���� ���� ��

��� :,7�% ��;��%�(�+�� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

����� 3&����+' ��(��,��%� � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

����. 8�� <�� �+����% ��(��,��%= � � � � � � � � � � � � � � � � � � � � � � � �.

��. ����'+ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

Page 4: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

��.�� )�� ��(��,��%� )6���� � � � � � � � � � � � � � � � � � � � � � � � � � � �

��.�. 3�������+� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

��� �����+' 3��%����+' )�'����% � � � � � � � � � � � � � � � � � � � � � � � � � � � �

�� $�+*�(,%1� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

��� ����%� 6�%1 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

��# ��((,%� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � �� !���� ��� "�

�� :��������'� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

���� �+��%��-�+��+*� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

���. ��((,%� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

�. 3&-�%�(�+�,� ����- � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

�.�� )�� �%�+, � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �#

�.�. )�� �� ��>� ��+��%� � � � � � � � � � � � � � � � � � � � � � � � � � � � � �#

�.�� ��++�+' 3�������+� � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

�.� ���+��� ��+*���+� ,+� ���,���+ � � � � � � � � � � � � � � � � � � � � � � ��

�.�� $,����+� ���� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

�� ���+��� ��+*���+ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � #

���� � ��(-�� ���+��� ��+*���+ � � � � � � � � � � � � � � � � � � � � � � � � � #

���. 3�*,-�+' , ?�*,� 5-��(�( � � � � � � � � � � � � � � � � � � � � � � � � #�

���� 4�+�%,���� ,+� )%,+�/�% �/ ��� !�+�%����% � � � � � � � � � � � � � � � � � #.

� ���%,� ���6�%1 )�-� ,+� ��%�*��%� � � � � � � � � � � � � � � � � � � � � � � � #�

��� ������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

�� ���%��3�������+ :����� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

���� ��,+�,%� 4� ��� [μ, λ] ��� !!4� � � � � � � � � � � � � � � � � � � � � � ��

���. �+*%�(�+�,� 3�������+ � � � � � � � � � � � � � � � � � � � � � � � � � � � �

���� 3�����+' ���%,� �%%,�� � � � � � � � � � � � � � � � � � � � � � � � � � � �#

��� !�+*�����+ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

�# )��� �+ �����*,� �� ��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

�#�� ������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

�� ���*�����+ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

" !�� ���� �"

��� ����%� 8�%1 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � #

��#������ ��

��

Page 5: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

������������������

)��� �3� ������ �� �+ ��� �� 7�*� �/ ������+' *�+�%����%� /�% *��-�%,���� (� ��� %� ���� 8�

������ *�+�%����%� /�% , �-�*�9* �,�1� +,(��� �����,����,+*� ,+� -�����,&�� /�% , '%��- �/

-����*,��� *�++�*��� %� ��� �,*� 6��� ��(���� ��+��+' *,-, �������� ����� /%�( ��� �,�1 �����/ 6�

,%� *�+*�%+�� 6��� ������+' *,-, �� *�+�%����%� �+ ,+ �@*��+� (,++�%� )��%�/�%�� 6� �&-��%�

,+� *�(-,%� , +�( �% �/ ��A�%�+� +��%����������+ ��*�+�;��� ,+� �����+� , (��������'� /�%

������+' %� �� *�+�%����%�� �+ ��� %�(,�+��% �/ ���� *�,-��% 6� ���*��� ��(� �/ ��� ,��,+�,'��

,+� ���,��,+�,'�� �/ ��������+,%� %� ���*�� 6� �+�%���*� ��% %�/�%�+*� �,%�6,%� -�,�/�%(� ���

�� ��� ,+� 6� ���*��� ��(� �/ ��� 6�%1 -%�������� *�+��*��� �+ ���� -�,�/�%(�

��� ��������� �������

�� ���*�� ��������+,%� ,�'�%���(�� ,+� +��%,� +��6�%1� ,%� �,*� 6�������, ������ %���,%*� 9����

�+ ����% �6+ %��-�*�� B3�������+,%� %� ���*�C �� ��� +,(� /%�;��+��� ���� /�% %���,%*� �+ ���

�� %�� 9��� *�( �+�+' ��� ��%��� �+ ���� 9��� ��� '�,� �� �� ��� ��������+,%� *�(-��,���+ ��

������ %� �� *�+�%����%� ,��� �+ ,%��9*�,� +��%,� +��6�%1�� ���� , +,��%���+�-�%�� ,--%�,*� /�%

������-�+' *�+�%����%� /�% ,���+�(��� %� ���� 5+� �/ ��� (,7�% ,��,+�,'�� �/ ���� ,--%�,*� ��

��,� ,%��9*�,� ��������+ *,+ 9+� �������+� ��,� , ��(,+ ������-�% 6���� +�� �,�� *�+����%�� �%

-%���*���� 8��+ , %� �� �� ����,��� �+ ,+ �+��%�+(�+�� �������+� /��+� � ��������+ *,+ �&-����

/�,��%�� �+ ��� �+��%�+(�+� �� ���� ��� ������� ��� ��� ��� � � ��� ���� �� �� ����� , '���+

�,�1� 6��%�,� , ��(,+ ������-�% �� ��(� ��'%�� 6��� � ��(���� � ��� �% ��% �+��%��,+��+' �/

��� �,�1 ,+� -���� �� �������+� D���9 ,+� ���%�,+�� . E� )��%�/�%�� ,+ ��������+,%� ,--%�,*�

*,+ 9+� ��(-��%� (�%� %� ���� '�+�%,�� ,+� �*,�, �� �������+� �� +���� �,�1� *�(-,%�� �� �,+��

6%����+ *�+�%����%�� :�%����%� %���,%*��%� ,+� �(-��(�+��%� ,%� /%��� /%�( 6%���+' *�+�%����%�

� �,+� ,+� *,+ ��� ��������+ 9+� '��� �������+��

�%�( ��� -,%,'%,-� , ��� �� *���� ���( ��,� ��������+,%� %� ���*� �� , �+���%�,� (����� /�%

������-�+' *�+�%����%� /�% ,���+�(��� %� ��� ,+� ,��1�� F�6���%� ���%� �� ,� ��,�� �+� (,7�%

����� 6��� ���� ,--%�,*�� +,(��� ��,� ����'+�+'� �(-��(�+��+'� ,+� �����+' �,%���� ��������+,%�

����-�� +��%,� +��6�%1 ��%�*��%��� ,+� �� �+ �� , ������� ,+� ��(��*�+��(�+' -%�*���� 3�����+'

*�+�%����%� �+������ , '%�,� ��,� �/ �%�,��,+���%%�% ,+� �+�� *�+�%����%� /�% %��,������ ��(-�� �,�1�

�,�� ��+ ������� �� /,%� )��� *,+ � ��� �� -%� ��(� %��,��� �� ��������+ �����%,--�+'�

9�+��� /�+*���+ ������-(�+�� ,+� �/ *��%�� %�++�+' ��� ��������+� ���(������� �+ ��(� *,����

��������+ *,+ � -�%/�%(�� ��%�*��� �+ -����*,� %� ���� DG%����+' �� ,��� . .E� D���9 �� ,���

�E� �� �/��+ ��������+� ,%� %�+ �+ ��/�6,%� ��(��,��%�� �*,��� �/ ��� �-���� +� %��1 �/

�,(,'�+' �,%�6,%�� ,+� ��� �,�� �/ *�,+'�+' ����-� H��'� ��� �+��%�+(�+�� ��� +�( �% �/

%� ��� ,+� �� �+I� 3��+ �/ ��������+� ,%� %�+ �+ ��/�6,%�� ���� *,+ ��(���(�� �*�(� *�(-��&

�� ��� ��'%�� 6��%� �� �,1�� ����%,� �,�� ,+� 6��1� �/�%� %������ ,%� � �,�+��� ���+ 6��+ %�+

Page 6: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

1.1 Evolutionary Robotics Introduction

�+ (���%,+'� �! *�����%�� )�� *�(-��&��� ,%���� /%�( ��� +��� �/ ��(��,��+' ��� ��+,(�*� �/

, ��%��,� 6�%�� �� , 9������ ,+� 6��� ,+ ,**�%,*� ��*� ��,� ��� �+-��� ,+� ��� ���-��� �/ ���

%� ��H�I ,%� ��@*��+��� �%�� �� ��� %�,� 6�%�� ,+� ��� %� �� �,%�6,%� �� ,���6 /�% ��� �������

*�+�%����%� �� � �%,+�/�%%�� �� %�,� %� ����

��+��+' , ����, �� 9�+��� /�+*���+ ��,� ,���%�� ��� *�%%�*� ��������+,%� -%����%� /�% ,�� �� ���

��(-���� �,�1� *,+ � , +�+��%���,� �A�%�� ��% �+��,+*�� ,���(� ��,� 6� %�;��%� , %� �� ��

-�%/�%( �����,����,+*� 6���� (���+' ,%��+� �+ ,+ �+*����� ,%�+, ��,� *�+�,�+� �����J ��% 9%��

���, �+ , 9�+��� /�+*���+ *���� � ��,� 6� ��(-�� -�+,��K� �+������,�� 6�� /,�� �+�� ������ ��*�

, ��%,��'� �� ��1��� �� /,��� ��6���%� �*,��� , %� �� 6��*� ���� +�� (��� ,� ,�� ���� +�� /,��

�+�� ,+� ������ )���� ,+ �((� ��� %� �� (,&�(�K�� ��� 9�+��� /�+*���+ �� ���� +�� -�%/�%(

��� �,�1 ��,� 6� �,� �+ (�+�� � %������ 9�+��� /�+*���+ *���� *�+�,�+ , *�(-�+�+� %��,���

�� (���(�+� �/ ��� %� ��� )���� ��� (�%� , %� �� (���� ��� ��'��% ��� 9�+��� �� %�*������

6���� ����� ��+' -�+,��K�� /�% /,���+' �+�� ������ )�� ,(��+� �/ (���(�+� �/ ,+ �+������,�

*,+ � *�(-���� �,���� � �,1�+' ��� ��( �/ ��� ����,+*�� *���%�� /%�( �+� *�+�%�� *�*��

�� ��� +�&�� )�� %������ 9�+��� /�+*���+ �&-%����� ��% � 7�*������ :��� ,+� �� +�� /,�� �+��

������ F�6���%� �+� ��1��� ���*�(� �/ ,+ ��������+ *���� � ��,� ��� ��� �+������,�� (���

,%��+� �+ *�%*���� ���%� � (�+�(�K�+' ����% *�,+*�� �/ /,���+' �+�� ������ 6���� (���+' ,� /���

�-���� ���%� � (,&�(�K�+' ��� 9�+��� /�+*���+� )�� �,��� �/ ��� 9�+��� *�(-�+�+� %��,��� ��

(���(�+� /�% ��*� ,+ �+������,� 6���� � *���� �� (,&�(�( ��+*� ��� -,�� *���%�� ��6��+

�+������,� *�+�%�� *�*��� �� ,�(��� ��+�,% H,���(�+' ��,� ��� *�+�%�� /%�;��+*� �� ��@*��+��� ��'�

,+� ��,� ��� ��,(���% �/ ��� *�%*��,% -,�� �� ��@*��+��� �,%'�I� �� ���� �&,(-�� ���6�� �� *,+

�,1� ��(� �&-�%�(�+�,���+ �/�%� ��% ���,� �&-%����� �+ +,��%,� �,+'�,'� *,+ � �%,+��,���

�+�� , 9�+��� /�+*���+ ��,� ,���%�� ��� ��������+,%� -%����%� 6� �,� �+ (�+��

�%��9*�,� +��%,� +��6�%1� *�(� �+ (,+� 0,��%� ,+� ���� �,�� ��(� ����%, �� -%�-�%����� +,(���

��,� ���� ,%� �+���%�,� ,--%�&�(,��%� ,+� ��%�,����� $,��*,���� ,+� /�+*���+ *,+ � ,--%�&�(,���

6��� ,% ��%,%� -%�*����+ � ��(� +��%,� +��6�%1� �������+,���� +��%,� +��6�%1� *,+ � �&��+���

6��� (�(�%� � �+�%���*�+' %�*�%%�+� *�++�*���+�� F�6���%� ,�� �/ ���� -�6�% *�(�� ,� ,

-%�*�� ��% , '���+ �,�1 ���%� �� +� 6,� �/ ,+,����*,��� ����%(�+�+' ��� ��� �% ���+ , '���

+��%,� +��6�%1� ,+� �/��+ , ����, �� �+� (��� � /��+� �&-�%�(�+�,����

�+ ��� ���+� ��,� , '��� +��%,� +��6�%1 �� /��+� ,+� ��,� 6��'��� ,%� ������� �+��% , 9�+���

/�+*���+ ��,� ��,-�� ��� ��,���% ,� 6� �&-�*���� 6� (�'�� 6,+� �� ,�� (�%� ��+��%�� ,*��,��%�

�% *�,+'� ��(� ����% ,�-�*� �/ ��� %� ��� ��� �+��%�+(�+� �% ��� �,�1� �+ ��,� *,�� 6� *���� �

�+ , ����,���+ 6��%� 6� 6���� -%,*��*,��� �,�� �� ��,%� /%�( �*%,�*� � 6��� , ��A�%�+� ,%��9*�,�

+��%,� +��6�%1� , ��A�%�+� 9�+��� /�+*���+ ,+�"�% , ��A�%�+� ��������+ ��%,��'��

4���+ ��� ��(��*�+��(�+' +,��%� �/ %�++�+' ��(��,���+� ,+� '���+ ��� ,(��+� �/ �%�,��,+���%%�%

�+������ �+ 9+��+' , ����, �� 9�+��� /�+*���+ ,� 6��� ,� , '��� ,%��9*�,� +��%,� +��6�%1 /�% ���

�,�1 ,� �,+�� ��������+,%� %� ���*� *,+ �,%��� � *�+����%�� , �+���%�,� (����� /�% ������-�+'

*�+�%����%� /�% ,���+�(��� %� ���� ),1�+' ����� ��%���� �+�� ,**��+� �+� *���� ,%'�� ��,�

��������+,%� %� ���*� �� (�%� ,%� ��,+ �*��+*�� ��',%����� �/ 6�����% 6� ,%'�� /�% �% ,',�+��

���� ���6� �� �� *��,% ��,� , (������*,� ,--%�,*� �� ������+' %� �� *�+�%����%�� �/ ��*� *,+ �

������-��� 6���� � �+�9*�,�� ��+*� ���� ��(� 6���� � �-�+� �+ �%�,��,+���%%�% ,+� (�%� �+

�*��+*��

Page 7: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Introduction 1.2 Goal

�+ ���� ����� 6� 6��� -,� ,���+���+ +�� �+�� �� ��� %������ � �,�+�� � ��� ������� *�+�%����%�

�� ,��� �� ��� -%�*��� ,� , 6����� 8� ��''��� ,+� ���*��� , (��������'� /�% ������+' %� ��

*�+�%����%� ,+� 6� �&-��%� ��� -�%/�%(,+*� �/ �,%���� +��%����������+ ��%,��'���� ��*� ,� '�+���*

,�'�%���(� D4��� �%'� ��E� D4��� �%'� . .E� D:��*����� �#E� *��-�%,���� *���������+,%�

'�+���* ,�'�%���(� D�����% ,+� �� L�+'� �E� D�����% ,+� �� L�+'� . E� [μ, λ] ��������+,%�,�'�%���(� D�*�6�/��� ��E� �+*%�(�+�,� ��������+ DF,%��� �� ,��� �E� D���9 �� ,��� �E�

D4�(�K ,+� :��11��,�+�+� ��E� ,+� ������+' +��%,� ,%%,�� D!�% ,�M+ ,+� ?,+K,%�+�� . �E�

�� �� +�� ��% ,( ����+ �� 0��� ��� , *�(-���� %�*�-� /�% ������+' %� �� *�+�%����%� ,��� �+

,%��9*�,� +��%,� +��6�%1�� ��(� � -���� �� (,7�% � -,%�� �/ ��������+,%� %� ���*� ,%� ��1��� ��

,�6,�� ��-�+� �+ , '%�,� ��,� �/ �&-�%�(�+�,���+� 5+ ��� *�+�%,%�� ��% ,( ����+ �� �� �,1� ���

9%�� �(,�� ���-� �+ ��� %�,� ��,��+' �� , (�%� ��%�*��%�� ,+� (������*,� ,--%�,*� /�% ������+'

*�+�%����%� /�% ,���+�(��� %� ���� �+ �%��% �� (��� �+ ��� ��%�*���+ �/ , ��%�*��%�� ,--%�,*�

�� ������+' *�+�%����%�� 6� �,�� *����+ , +�+��%���,� �,�1� 6��*� , �6,%(� �� ������ -�%/�%(�

� ���*%�-���+ �/ ��� �,�1 *,+ � /��+� �+ ��� /����6�+' ��*���+�

��� ����

)�� '�,� �/ ���� ����� �� �� ������- %� �� *�+�%����%� ,��� �+ ,%��9*�,� +��%,� +��6�%1� ���+'

��������+,%� (������� )�� *�+�%����%� ������ �+, �� , �6,%(� �� �� -�%/�%( -�����,&�� 6����

,�����+' ������ :�%����%� ��A�%�+� ,--%�,*��� /�% ������+' ��*� *�+�%����%� ,%� �+�����',����

)��� �+*����� ����'+�+'� %�++�+'� ,+� �����+' ��A�%�+� ��������+,%� ����-�� ��A�%�+� ,%��9*�,�

+��%,� +��6�%1 ��%�*��%��� ,+� ��A�%�+� +��%����������+ (������� � �6,%(� �� *�+�����+'

�/ (����-�� �� ��� �� ���� ,� ��� �,%�6,%� -�,�/�%(� )�� ���*�(� �/ ���� -%�7�*� ������ � ,

*�+�%����% 6�%1�+' �+ %�,� %� ��� ,+� ,+ �����+� �/ , '�+�%,� (��������'� /�% ������+' *�+�%����%�

/�% %� ����

��� �������

)��� �3� ������ �� �%',+�K�� ,� /����6�� �+ ��� /����6�+' ��*���+ 6� -%����� ,+ ���%���6 �/ ���

�6,%(� ��� -%�7�*� 6��� /�*�� �+ ��� %� ��� �,%�6,%� -�,�/�%( ,+� ��� *,-, �������� )��� ��

/����6�� � , ��*���+ �+ %��,��� %���,%*� ,+� ������� ��+� 6����+ ��� *�+��&� �/ ��� �6,%(� ���

-%�7�*�� �+ !�,-��% . 6� -%����� , %��/ �+�%���*���+ �� ,%��9*�,� +��%,� +��6�%1�� ��������+,%�

*�(-��,���+� ,+� ��������+,%� %� ���*�� �+ ���%���6 �/ ��� *����(� ���� ��/�6,%� ��(��,��% ��

-%������ �+ !�,-��% �� �+ !�,-��% 6� ��''��� , (��������'� /�% ������+' %� �� *�+�%����%�

,+� ,--�� �� �� � �,�+ *�+�%����%� /�% ��% (,�+ �,�1� +,(��� -�����,&�� ,+� �����,����,+*� ,�

���*%� �� �+ ��*���+ ��.� ��+,���� , ��((,%�� *�+*����+' %�(,%1�� ,+� /���%� ��%�*���+� ,%�

/��+� �+ !�,-��% ��

��� ��� ���������� �������

)�� (,�+ � 7�*���� �/ ��� �6,%(� �� -%�7�*� �� �� ������ ����'+� ,+� �(-��(�+� ���/��%',+�K�+'

,+� ���/�,���( ��+' ,%��/,*��� )�� -%�7�*� *�(-%���� ��%�� (,�+ ,*���������

Page 8: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

1.4 The Swarm-bots Project Introduction

�� F,%�6,%� � , +�( �% �/ (� ��� %� ��� *,���� ��� ����

.� ��(��,���+ � , ��/�6,%� ��(��,��% *,���� �6,%( ����� �,� ��+ *�+��%�*�����

�� !�+�%�� ��/�6,%� � ��� ��/�6,%� ��,� *�+�%��� ��� %� �����

)�� -%�7�*� /�*���� �+ ������+' +���� ,--%�,*��� �� ��� ����'+ ,+� �(-��(�+�,���+ �/ ���/�

�%',+�K�+' ,+� ���/�,���( ��+' ,%��/,*��� :�*� �/ ��� 6�%1 6����+ ��� -%�7�*� �,� ��+ *�+�

*�%+�� 6��� ��� *�+��%�*���+ ,+� *�+�%�� �/ , +�( �% �/ �(,��� (� ��� %� ���� *,���� ��� ���

3,*� �� ��� �� �;��--�� 6��� , ��� ������� 6��*� *,+ � ���� �� -����*,��� *�++�*� (����-��

�� ��� ,+�"�% ����% � 7�*��� �+ ���� 6,� , +�( �% �/ �� ��� *,+ ,���( �� �+�� , ������

� �� �+�-�%�� � �+��*�� ,+� ����% �6,%(�+' ,+�(,�� �,%���� �,�1� �,�� ��+ ������� ��*� ,�

*��%��+,��� (����+ D)%�,++� �� ,��� . E� -%���%��%���,� D?, ���, �� ,��� . ,E� *��-�%,����

�%,+�-�%� D4%�N ,+� ��%�'�� . E� *�,�+ /�%(,���+ D����,+ ,+� ��%�'�� . E� ,���+�(���

���/�,���( �� D)%�,++� �� ,��� . *E� ,+� ,�,-���� �,�1 ,���*,���+ D?, ���, �� ,��� . E�

$���6 6� -%���+� ��� �,%�6,%� -�,�/�%(� 6���� �+ !�,-��% � 6� �,1� , *����% ���1 ,� ��(��,���+

������� ��% /�%���% �+/�%(,���+ �+ ��� �6,%(� ��� -%�7�*� ,+� ��� � 7�*������ ��� ��� /����6�+'

6� -,'�� http://www.swarm-bots.org�

����� �� ���

� -���� �/ ,+ �� �� �� ���6+ �+ ��'�%� ���� �+ �� �� �� (� ��� ��� �� ��� *�( �+�� �%,*1�

,+� 6����� �, ���� ��������� ������ �© ����� )�� �%���� ,%� ,��,*��� �� ��� ������ � ������

*�+�,�+�+' ��� (,7�%��� �/ ��� ��+��%� �� (��+��� ,��- ��� *�,���� ,+� *,+ %��,�� �+��-�+��+���

�- �� �# ��'%��� /%�( �+� �&�%�(� �� ��� ����%�� )�� %�'�� '%�--�% �� ��*,��� �+ ��� ��%%��

,� *,+ � ���+ �+ ��'�%� ��� �+ ��� +�&� -,'�� )��� '%�--�% �� ;���� -�6�%/�� ,+� �+, ���

+�,%�%�'�� *�++�*���+� ��6��+ �� ���� )�� �� �� �,� , *,(�%, ��*,��� ,� ��� ��6�% �+� �/ ���

�%,+�-,%�+�� -�,���* �� � -��+��+' �-6,%�� ,+� , (�%%�% �� ����,��� �+ ��� �--�% �+� �/ ��� �� �

-%�����+' ��� �� �� 6��� �(+����%�*���+,� �����+�

��� ��+��%� ,+� ,*��,��%�� ������ �+ ), �� ���� (,1� ��� �� �� , ��%� 0�&� �� -�,�/�%( /�% �������

�+ ����%,� ��-�*� ,+� ,���6 %���,%*��%� �� �&-�%�(�+� 6��� ��A�%�+� ,--%�,*��� �� �����+' �,%����

�,�1�� F�6���%� +� ��+'�� ����� �,� ��� ���� ,�� �/ ��� *,-, ������� �/ ,+ �� �� ,� �+*� H,+� 6�

�� +�� �+��+� �� �� �� �+ ���� 6�%1 �����%I� )��%�/�%�� 6� 6��� ���*%� � �+�� ����� ��+��%� ,+�

,*��,��%� ���� �+ ��� ,--%�-%�,�� ��*���+� �,��% �+ ���� �3� ������� 6���� 6� %�/�% ��� %�,��% ��

�+� �/ ��� /����6�+' -� ��*,���+� � :�+�,�, �� ,�� D. E ,+� :�+�,�, �� ,�� D. �E ,�,��, ��

�+ ��� �6,%(� ��� -%�7�*� 6� -,'�� /�% , (�%� ���,���� ���*%�-���+ �/ ��� �� �� �,%�6,%��

1��� ������� ��2��� �� ���� � �� � �� ��3��� ��� ������ ����� �� ��� �� ������ ��� � ��� http://www.swarm-bots.org4�� �� ��� ��� �������� �� ��� ��� ������ �� ��� �� �������� ����� �!" ������ ���� ������� �� ��� �� ����# ����$�� � ���� ����� ��� ��� �� ��� �� � ���� ��� � � � ��# �� �������� ������$�� �� �!" ������

Page 9: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Introduction 1.4 The Swarm-bots Project

Figure 1-1: �� ����� ����� �� � ����� ������ ���� �� ������� �� �� ����� ����� ���

��������� ������

)%���� !,(�%,:���%�K�� %��,���+ �/ ��� ��%%�� ���% (�*%�-��+��4%�--�% )%,*���+ ��+��%�)6� ������-�,1�%� F�(����� ��+��%�&� *���%�� ���� )�(-�%,��%� ��+��%���&� �� ,%( H�-���+,�I �+/�%%�� -%�&�(��� ��+��%�

�+/�%%�� '%��+� ��+��%��**���%�(���%4%�--�% ��%;�� ��+��%���,�� ��%;�� ��+��%)%��� ��%;�� ��+��%?�'�� ��+��%�

Table 1-1: Overview of the sensors and actuators installed on each s-bot.

Page 10: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

1.5 Related Work Introduction

����� � �� ����

8��+ , +�( �% �/ ,���+�(��� �� ��� ,%� -����*,��� *�++�*� ���� *�(-��� ,+ ,%��/,*� %�/�%%��

�� ,� , ������� �� �+ �6,%(� �� /�%(,���+ (����-�� �� ��� *,+ *��-�%,�� ��%�*��� �+ �,�1�

��,� ��,+��,��+� �� ��� *,++�� ������ /�% �+��,+*� -,���+' ���% , ',- 6���% ��,+ �+� %� �� ,+�

�%,+�-�%��+' ��,�� � 7�*��� �+ ��(� �������� ��1� ���� �+�� ��� �� ��� ,%� �+ �6,%(� �� /�%(,���+

/%�( ��� �'�++�+' ���� ��� �+� �/ ,+ �&-�%�(�+�� 6���� �+ ����% ������� �+� �% (�%� �6,%(� ���

,%� /�%(�� ,� +������� ��'�%� ��. ���6� , �6,%(� �� *�(-���� �/ � ,���+�(��� �� ����

Figure 1-2: � ��������� ��� ���� �� � ���������� �������

�� ������! "��#�+ ���� �3� ������ 6� *���% , +�( �% �/ ����%���*,� ,+� -%,*��*,� ��-�*�� +,(��� +��%,� +���

6�%1��� ��������+,%� *�(-��,���+�� ��(��,���+ ,+� *�+�%����% �%,+�/�%� ,+� , +�( �% �/ +��%��

��������+ ��%,��'���� 8�%1 %��,��� �-�*�9*,��� �� ����� ��-�*� ,%� /��+� �+ ��� ,--%�-%�,��

��*���+� �/ ��� ������� $���6 6� %��0� ���*%� � ��(� �/ ��� 6�%1 %��,��� �� ��� �� �� -�,��

/�%( ,+� 6�%1 *�+*�%+�� 6��� -�����,&�� ,+�"�% �����,����,+*�� � '�+�%,� �+�%���*���+ ��

��������+,%� %� ���*� *,+ � /��+� �+ D���9 ,+� ���%�,+�� . E�

�+ ��� *�+��&� �/ ��� �6,%(� ��� -%�7�*� , ��� �/ %���,%*� �+ ������+' ,%��9*�,� +��%,� +��6�%1

*�+�%����%� ��*� ,� D$,��,��,%%� �� ,��� . .E ,+� D)%�,++� �� ,��� . �E �,� ��+ ��+�� :�%����%�

5%��� ������ ������� �� �� ������ ���� ���� � ��� � # ��� ������ �� � � �� ������� ��������� ����� ��

&'�� ��� �� �# �""�(6��� ������� ��7��� ������� ��8��� �� ���� �9��� ������� ��� � ������� )

Page 11: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Introduction 1.5 Related Work

�-�*�9* ������� �+ ������+' *�+�%����%� /�% *��%��+,����(����+ ,+� �����,����,+*� �,� ��+

-�%/�%(��� ��� /�% �+��,+*� D)%�,++�� . �E ,+� D)%�,++� �� ,��� . �E� )�� ���� ,����,+*�

������� -�%/�%(�� �� �,�� �,�� +�� �+*����� (���+' ��6,%�� , �-�*�9* �,%'�� ��*� ,� , ��'��

���%*�� �� �+�� �+ *��%��+,��� (���(�+� 6���� ,�����+' ������ F�6���%� ����% �������� ��*� ,�

D4%�N ,+� ��%�'�� . ,E ,+� D4%�N ,+� ��%�'�� . *E� �,�� ��+ *�+*�%+�� 6��� *����*����

�%,+�-�%� �/ ,+ � 7�*� ��6,%�� , ��'�� ���%*�� ,� ��� �+ � ��,*���/%�� �+��%�+(�+��� )����

*�( �+�� -������,&�� ,+� �����,����,+*� �,� +�� ��+ ,���(-��� /�% �6,%(� ��� -%��% �� ���

����� -%���+��� �+ ���� �������

:�'��+� �� ,�� D��E �,� ������� ��������+ �/ +��%,� +��6�%1 *�+�%����%� /�% , G�-��%, %� ��

�;��--�� 6��� , ��%�*���+,� *,(�%, ,+� -%�&�(��� ��+��%�� )�� %� �� ������ (��� /%�( ���

�+���,� ��*,���+ ��6,%�� , ��'�� ���%*� �+ ,+ ,%�+, 6��� 6,���� )�� ��'�� *���� ,�6,�� � ���+

� ��� *,(�%, �/ ��� %� �� 6,� /,*�+' �+ ��%�*���+ �/ ��� ��'��� ���+ �/ 6,��� 6�%� ��*,��� �+

��6��+ ��� ��'�� ,+� ��� %� ��� )�� 6,��� 6�%� -�,*�� �+ ��*� , 6,� ��,� �� 6,� +�*���,%�

/�% ��� %� �� �� �,1� , �����% ,+� (�(�+�,%��� ����� ��'�� �/ ��� �,%'�� �+ �%��% �� '� ,%��+�

���(� )�� ,����%� /��+� ��,� , %�*�%%�+� +��%,� +��6�%1 ������ ��� �,�1 ����% ��,+ , ��(-��

-�%*�-�%�+J ��6���%� '���+ ����% %��,������ ��(-�� ����- ,+� �(,�� ,%�+, H��& *(I �� �� �,%�

�� �%,6 '�+�%,� *�+*�����+� ,��� �+ ����% �&-�%�(�+�,� %�������

������'� ��� ����� � :�'��+� �� ,�� D��E ,%�� ��(� %���( �,+*� �� ��� �,�1 ��,� 6� ,%�

�%��+' �� ������ ���%� ,%� ��(� /�+�,(�+�,� ��A�%�+*��� 8� �-�%,�� 6��� , �6,%( �/ %� ���

��,� �,�� �� ��,%+ �� *��-�%,�� �+ �����+' ��� �,�1� 5�% %� ��� ,%� -����*,��� *�++�*��� ,+�

, %� �� *,+ ���,��� �+�� ��+�� ��� -%���+*� �/ , ���� �+*� �� �� ��%�*��� , ��� ��� )��� (�,+�

��,� , %� �� 6���� �+ (,+� *,��� /,�� �+ �/ �� 6,� +�� /�% ��� ����% �� ��� �+ ��� �6,%(� ���

:�%����%� 6� �� +�� ��� , ��%�*���+,� *,(�%,� �� �+���,� , +�( �% �/ ��'�� ��+��%� 6��*� ��+��

��'�� /%�( ,�� ��%�*���+�� ,+� ���%� �� �� *,+ ,�6,�� ��+�� ��� ��%�*���+ �/ ��� ��'�� ���%*��

��',%��+' ��% ��*�+�,%� � 7�*����� +,(���� ������+' , (������*,� ,--%�,*� /�% �+'�+��%�+'

%� �� *�+�%����%� ��%��'� ,%��9*�,� ��������+� 6� �,�� ��+ �+, �� �� 9+� ,+� %��,��� 6�%1�

)�� %�,��+ /�% ���� �� ��1��� ��,� ��������+,%� %� ���*� �� , %��,������ +�6� �� %�� 9��� ,+� ��,�

�+�� ������ �� 1+�6+ , ��� ��� ��+,(�*� �/ ��������+,%� ,�'�%���(� ,--���� �� ����,���� �( �����

%� ����

Page 12: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure
Page 13: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

���������� �����������������

�+ ���� *�,-��% 6� '��� , %��/ �+�%���*���+ �� ��� ����%� ���+� ,%��9*�,� +��%,� +��6�%1� ,+�

��������+,%� ,�'�%���(� ,� 6��� ,� �� ��6 ����� ��*�+�;��� ,%� ,--���� �+ ��������+,%� %� ���*��

8� ������ ��� (,7�%��� �/ ��� *�,-��% �� ��� *�+*�-�� ,+� (������ ���� �+ ��� %�(,�+��%

�/ ��� %�-�%�� ���%�/�%� ���� �� +�� (�,+� �� � , '�+�%,� �+�%���*���+ �� +�����% �/ ��� 9�����

��,��%� �+/,(���,% 6��� ����� ��-�*� ,%� ,������ �� ���1 �+�%���*��%� (,��%�,� ����6��%�� ��*� ,�

DF,�1�+� ��E� D�,������ �E� D4��� �%'� ��E ,+� D!����� ��E� ��*���+ .�� ,+� ��*���+ .�.

�+ ,%��9*�,� +��%,� +��6�%1� ,+� ��������+,%� ,�'�%���(�� %��-�*������� *,+ �,/��� � �1�--�� �

, %�,��% /,(���,% 6��� ����� ��-�*�� ��*���+ .�� ���*��� �+ (�%� ,��,+*�� +��%����������+

��*�+�;��� ��*� ,� ������+' +��%,� ,%%,��� ���3� ��4� ,+� !!4��

��� $��%��� &����� &�����#�

�%��9*�,� +��%,� +��6�%1� %�-%���+� ,+ �+/�%(,���+ -%�*����+' -,%,��'( ��,� �� �+�-�%�� � ���

6,� ����'�*,� +�%���� �����(�� ��*� ,� ��� %,�+� -%�*��� �+/�%(,���+� )�� 1�� ���(�+� �/

���� -,%,��'( �� ��� +���� ��%�*��%� ,+� ��(,+��* �/ �+��%*�++�*��� +���� �% ���� ��� �%��9*�,�

+��%,� +��6�%1� �� , ��%�,���� ,+� %� ��� -,%,��'( /�% -%�*����+' +���� �+-���� ��*� ,� �����

-%���*�� � �(-�%/�*� %� �� ��+��%� ,+� /�% ,'�+�� 6�� +,��',�� �+ �+��%�+(�+�� ��,� *�+�,�+

���(�+�� �/ %,+��(+��� ,+�"�% �+*�%�,�+���

$���6 6� '��� , %��/ �+�%���*���+ �� ��� �����%� �/ ,%��9*�,� +��%,� +��6�%1�� �&,(-��� �/

��A�%�+� +��6�%1 ��%�*��%��� ,+� �� ��� ,--��*, ����� �/ +��%,� +��6�%1� �+ %� ���*��

����� � �������

)�� �����%� �/ +��%,� +��6�%1� �',+ �+ �� 6��+ :*!����*� ,+� ����� -� ������ , (,����

(,��*,� (���� �/ , +��%�+ D:*!����*� ,+� ������ ��E� �+ ����% (����� , +��%�+ �� , ��+�,%

��%������ *�(-���+' �+�� 6��� (����-�� �+-��� ,+� , ��+'�� ���-�� �/ �����% � �/ ��� +�%�� *���

%�(,�+� �+,*����� �% �� �/ ��� *��� ����� 8���� ��(� ����� ��� �+,%� +��%�+�� (,+� %���,%*��%�

�+ %� ���*� ���,� ��� , (�%� ��-�����*,��� 9%�+' �*��(�� 6��%� ��� ���-�� �� , *�+��+����

/�+*���+ �/ ��� +��%�+>� �+-���� �+ ��� �,�� �� � ,+� �,%�� �# � ��� 9%�� ,%��9*�,� +��%,�

+��6�%1� 6��%� �(-��(�+��� �+ , *�(-���% D����+ �,��� ��E ,+� D����+ �,��� �#.E� )��

*�(-��,���+,� ��(��,���+�� �/ ��� 9%�� *�,�� �/ ,%��9*�,� +��%,� +��6�%1�� ������� ��� 6��%� +��

���%*�(� �/�%� ��� �� �� � +�6 ��-� �/ ,%��9*�,� +��%,� +��6�%1 6,� -%�-���� ,+� F�%+�1

�� ,�� D��E ���6�� ��,� ����� +��6�%1�� %�/�%%�� �� ,� ������������ ������� ��� ,%� �+ /,*�

�+���%�,� /�+*���+ ,--%�&�(,��%�� �/��% ���� ���*���%� +�6 +��6�%1 ��%�*��%�� ,+� �&��+���+�

1* ���������� � ���� ��������� ��������� ����� ������ �� ��� ���� ��� ��� � ���# ���� �� ��� ���� ��� ���� ��� ������ �� �+�����$���� ,-./0 �������� &1���2� � 3 ����# ��!�(

Page 14: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

2.1 Artificial Neural Networks Theoretical Foundations

�,�� ��+ ��''����� ,+� ������� ,+� ��� 9��� �,� ,��%,*��� , ��� �/ �+��%��� /%�( %���,%*��%� �+

�,%���� ���*�-��+��� �� , %����� ,%��9*�,� +��%,� +��6�%1� ,%� ���,� ���� �+ (,+� ��A�%�+� ,%�,�

��*� ,� -,���%+ %�*�'+����+� *�+�%��� ����*���+� ,+� -%���*���+�

����� �������� �� ��������

�+ ���� ��*���+ 6� 9%�� '��� , /�%(,� ��9+����+ �/ , +��%�+ ,+� ���*��� '�+�%,� -%�-�%���� ,%��9*�,�

+��%,� +��6�%1� H����I�

��$���� � � ���� �

� ���� �� n� � ������ � ������ x1 . . . xi� ��� �� ����� y� ��� ���� � ��� ���� xi � �

����� wi� � �� ��� w0 ������ ��� ����� � � ����� �,� ���� x0 = 1�

��� ,*���,���+� an� � n � ���� �� ��� � �� ��� � ����� �!

an =∑

i

wixi H.��I

��� ������ y� � � ���� � � ������ ����� � �� ����� �� an!

y = f(an) H.�.I

"� ��� f ��� ���� ��� ,*���,���+ /�+*���+ ���� y � ����� ��� ���� ��� ,*�������

y

x1

w0

x2xixi−1

w1 w2 wi−1 wi

1

f(∑

i wixi

)

Figure 2-1: � ��� ��� �� ���������� �� � ������� � ������ �� � ������ �� � ���x1, . . . , xi� ��� � ���� ��� � ��� x0 = 1� ��� ��� ��� ��� y� �� ��������� �� �� ������ � �� ��� �� �� � ��� ���� ��� � ��� ��� �����������

� '%,-��*,� %�-%���+�,���+ �/ , +��%�+ �� ���6+ �+ ��'�%� .��� )�� 6��'�� w0 �+ ��� �,� �+-��

/�% ��� +��%�+ ,+� ����%(�+�� ��� ��%������ /�% ��� ,*���,���+ ,+� ,���6� ��� +��%�+ �� ���-��

, �,��� ��A�%�+� /%�( f(0) �+ *,�� ,�� �&��%+,� �+-��� x1, . . . , xn ,%� ,�� �

��

Page 15: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Theoretical Foundations 2.1 Artificial Neural Networks

� +��%�+>� ,*���,���+ /�+*���+ *,+ � /%���� *����+� F�6���%� /�% , +��%,� +��6�%1 �� �

, �� �� %�-%���+� +�+���+�,% /�+*���+�� �� �� +�*���,%� �� ��� +�+���+�,% ,*���,���+ /�+*���+��

:�%����%� ��(� ��,%+�+' ��*�+�;���� ��1� ,*1�-%�-,',���+� %�;��%� ��� ,*���,���+ /�+*���+ ��

� ��A�%�+��, ��� 3&,(-��� �/ ��%�� -�-��,% ,*���,���+ /�+*���+� ,%� ���6+ �+ ��'�%� .�.�

)�� ��+�,% ,+� ��� ��-�% ���* �,+'�+� ,%� *�,���* (,���(,��*,� /�+*���+�� 6���� ��� ��� �

����� � ���� �� 6��*� 6� ���� �� '���+ � ��� /����6�+' �&-%�����+�

f(an) =1

1 + e−anH.��I

−1−0.5

0 0.5

1

−1 −0.5 0 0.5 1

linear

−1−0.5

0 0.5

1 1.5

−4 −2 0 2 4

tanh

0

0.5

1

−4 −2 0 2 4

sigmoid

Figure 2-2: !����� ������ �������� ���������

� +��%,� +��6�%1 *�+����� �/ �+� �% (�%� *�++�*��� +��%�+�� ��(� �% ,�� +��%�+� ,%� *�++�*���

�� ,+ �&��%+,� �+��%�+(�+�� ��%��'� ����� ,+� ������� )�� +��%�+� ,%� *�++�*��� � �����+'

��� ���-��� �/ ��(� +��%�+� /�+*���+ ,� �+-��� /�% ����%�� �+ ���� 6,�� , +��%,� +��6�%1 /�%(�

, ��%�*��� '%,-�� ��% 6�,� �� *,���� ������ ����� ���� �#� ��*� , '%,-� �� ,*�*��*� 6���� /�%

�������� ���� �#� ��*� , '%,-� *�+�,�+� *�*���� ��(� �/ ��� �+-��� /�% �+� +��%�+ *,+ *�(�

/%�( ��� �+��%�+(�+� ,+� ��� ���-��� /%�( ��(� +��%�+� *,+ � ���-�� �� ��� �+��%�+(�+��

��% %� �� *�+�%����%� ,��� �+ ���� ��� �+��%�+(�+�,� �+-��� ,%� ���,��� ��+��%� %�,��+'��

6���� ��� ���-��� *�+�%�� ��� %� ��>� ,*��,��%��

� *�((�+� /�%(,� ��9+����+ /�% ,�� ��-�� �/ ,%��9*�,� +��%,� +��6�%1� ���� +�� �&��� �� ��%

1+�6���'� ,+� 6� ��,�� +�� ,���(-� �� ��,�� �+� ��%�� 8� �+���,� -%���+� ��(� �/ ��� *�((�+

��-�� �/ ���� ��,� 6� 6��� ��� �+ �,��% *�,-��%�� )�� �,%���� ��-�� �/ +��6�%1 ��A�% �+ ��%(�

�/ ����% ��%�*��%� ,+� 6��� %��-�*� ����% ������ ����� ��+*� ��� �%��% �+ 6��*� ��� +��%�+�>

,*�������� ,%� *�(-�����

����� ������ � ���� � ����� �� ��

)�� 9%�� ��-� �/ ��� -%�-���� 6,� *,���� , ������� �� ��%*�-�%�+� ���+' �� ��� *�,�� �/

���� *,���� ������ ����� ���� �#��

��$���� � � $����� ����� ���� �#

%�� ��� ���� �� �� � � ������ ���� �# �� ��� � ��� � � ������ ��� ��� ����� � ��&�� �����

��������� � ������ ���� � �� �� � ��� �������� ���� � � ��� ���� � ������ ��� �����

���� � ������ ���� �# � ����� � ������ ����� ���� �# � ��� ��� � ��� � ����� � ����

��

Page 16: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

2.1 Artificial Neural Networks Theoretical Foundations

����������

� -�%*�-�%�+ *�+����� �/ �6� ������� �+ �+-�� �,��% ,+� ,+ ���-�� �,��%� 3,*� �+-�� /%�( ���

�+��%�+(�+� �� %�*����� � �+� ,+� �+�� �+� +��%�+ �+ ��� �+-�� �,��%� �+ ��%+ ,�� +��%�+� �+ ���

�+-�� �,��% ,%� *�++�*��� �� ,�� ��� +��%�+� �+ ��� ���-�� �,��%� �+ �&,(-�� �/ , -�%*�-�%�+

�� ���6+ �+ ��'�%� .��� )�� +��%�+� �+ ��� �+-�� �,��% �/ , -�%*�-�%�+ ,%� �-�*�,� �+ ��� ��+��

��,� ����% ,*�������� ,%� ��� �&��%+,���� �+ ���� 6,� �,*� +��%�+ �+ ��� �+-�� �,��% 6�%1� ,� ,

��-,%,�� �+-�� �� ��� -�%*�-�%�+�

Input 1

Output 1 Output 2 Output 3

Input 2 Input 3 Input 4

Input layer

Output layer

Figure 2-3: �� ���� �� �� � ���� ����� �� � ��� ���� �� ���������� ����� ��������" ����� �� ������� � �� ������ �� ��# �� � �� �� ��� ��� �� �� �� � ���� ��������� �� �� ��� �� �� ��� ���� � ��� ������ ��� � �� �� �� ��� ��� � �� ��� �"���� ���� � ��� ��� �� ������ ������ �� �� ������"$� ��� ����

)�� �-�,�� %��� /�% -�%*�-�%�+� �� ��%,�'���/�%6,%�� )�� ,*�������� �/ ��� �+-�� +��%�+� ,%� ���

,+� ��� ,*�������� �/ ��� ���-�� +��%�+� ,%� *�(-���� ,+� ���-�� �� ��� �+��%�+(�+�� )����

-�%*�-�%�+� ,%� �-�,��� �+ ���*%��� �+-��"���-�� *�*����

��� ������ ����������

��%*�-�%�+� �,�� ��(� ,��* ��(��,���+�� ��% �+��,+*�� ���� *,++�� %�-%���+� ��� /�+*���+

�&*��������% HO5�I�� )���� ��(��,���+� *,+ -,%��� � ���%*�(� � ,���+' �+� �% (�%� �����

������ �/ +��%�+�� 3,*� +��%�+ �+ , �����+ �,��% %�*����� ��� ���-��� �/ ��� +��%�+� �+ ���

-%������ �,��% ,+� -%������ �+-��� �� ��� +��%�+� �+ ��� +�&� �,��%� )���� ��� +��%�+� �+ ,

�����+ �,��% �� +�� %�*���� �+-�� ��%�*��� /%�( ��� �+��%�+(�+� ,+� ����% ���-��� ,%� �+��

*�++�*��� �� ����% +��%�+� ,+� +�� �� ��� �+��%�+(�+�� )�� +��%�+� �+ ��� �����+ �,��% ,%�

,��� *,���� ����� ���� ��� �����/�%6,%� +��6�%1� 6��� �+� �% (�%� �����+ �,��%� ,%� *,����

���������� ������� �� '(%)* �% '�+�%,��� ���������� ������ ���� �#�� �+ �&,(-�� �/ , :?�

�� ���6+ �+ ��'�%� .��

������'� (�����,��% +��6�%1� *,+ �,�� (����-�� �����+ �,��%� �� �� �+*�((�+ �� ��� +��6�%1�

6��� (�%� ��,+ �6� �����+ �,��%��

21��� ����� ���# ���� � ���� ������� �� ����� � ��������# ����� �� ��� ���� ��� ��� � ���

��

Page 17: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Theoretical Foundations 2.1 Artificial Neural Networks

Input layer

Hidden layer

Output layer

Input 1 Input 2 Input 3 Input 4

Output 1 Output 2

Figure 2-4: �� ���� �� �� � %����� �� &���� ���� '%(&)� �� %(& �� � �� �� �� � ���������� ��� �� ���� �� ��� �� ���� �������� ��� ��� �� �� �� ��� ����������

����*� ��,� ��� +�( �% �/ +��%�+� �+ �+� �,��% *,+ � *����+ �+��-�+��+��� �/ ��� +�( �% �/

+��%�+� �+ ��� ����% �,��%�� 3�'� ��� +�( �% �/ +��%�+� �+ ��� �+-�� �,��% *�%%��-�+�� �� ���

+�( �% �/ ��+��%� %�,��+'�� ��� +�( �% �/ ���-�� +��%�+� *�%%��-�+� �� ��� ,*��,��% *�+�%����

6���� ��� +�( �% �/ �����+ +���� *,+ � *����+ ,% ��%,%�����

)�� �-�,�� %��� /�% :?� �� ��(��,% �� ��,� �/ -�%*�-�%�+�� )�� ,*�������� �/ ��� +��%�+� ,%�

*�(-���� �+ , ����(��- /,����+� ��� ��'�%� .��

��������� ������ �������

8���� ��+'�� ,+� (�����,��% -�%*�-�%�+� ,%� ��@*��+� �� %�-%���+� ��,��* /�+*���+�� (,+� �+�

��%����+' -%� ��(� %�;��%� ��� ��� ��'� �� %�*�'+�K� ��(-�%,��� �&��+��� -,���%+� �+ �+-��

��;��+*�� �+ /�% �+��,+*� �-��*� %�*�'+����+� :�(�%� �� �(-��(�+��� �+ +��%,� +��6�%1� �

�+�%���*�+' , +�6 ��-� �/ +��%�+ 1+�6+ ,� , ��� � ��� �% ��� �� ���� � +�( �% �/

�&��+���+� �� :?�� �,�� ��+ -%�-����� ��*� ,� + ���� ���� �#� ,+� ,���� ���� �#�� ���

DL�%�,+� � E ,+� D3�(,+� � E� %��-�*������� �+ L�%�,+ +��6�%1� �,*� ���-�� +��%�+ �,� ,

*�%%��-�+��+' ��� � ��� �� 6��*� ��� ���-�� �� *�-��� ,/��% �,*� ��,��,���+� )�� �,��� �/ ���

3'�� ������ �� �� �� �� �� ��4������ ��� ������� ��� �� � *55� * ������ ������2# ���� ���� ��� �� ���������# ����� ��� �� �������� ������ �� ��������� ��$�� �������� ���� ��6����� ���� �� ,�� �� � � ��������� ��� �������0# ����� ��� ��$���� �� ���� ��� ������2 ���� ��� � �� �� �� �� ��# ����� �� � � ������

��$�� ������� *� ����� � �� $ �� �� �� ����� ������2 ���� ��� � �� �� �� �� �� � ���� ��������� �� �� ����� � ��� � �� 7� ���� ��� ������� ,�� �� ��� ������20 ��� ���� ������+ ������2� ��$�� ��� ����� ���� ��� ������ �� ������� ������� �� ���� ������+ ������2

��

Page 18: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

2.1 Artificial Neural Networks Theoretical Foundations

Context Units

Input 1 Input 2 Input 3 Input 4

Output 1 Output 2

Copy

Figure 2-5: �� ���� �� �� � *����� ������"� � *����� ������" �� ��������� ����������� ���� �� ��� �� ������� �� ��� ������ � �� ���� �� ���

*�+��&� �+��� �� ���+ ���� ,� �+-��� �� ��� �����+ �,��%H�I �+ ��� +�&� �+-��"���-�� *�*��� �+

���� 6,� *�+��&� �+��� 6�%1 ,� , (�(�%� � �,��+' ��� ���-�� ��,�� �/ , +��%,� +��6�%1 ,*%���

*�+��*����� ��(� ���-�� ��'�%� .�� ���6� ,+ �&,(-�� �/ , L�%�,+ +��6�%1� � �,��% �/ *�+��&�

�+��� *,+ ���+ � ,���� /�% ��� *�+��&� �+��� ���(������ H���/�%�*�%%�+� *�++�*���+�I� 6��*�

,���6� /�% 9+�% *�+�%�� ���% ��� ��*,� �/ ��� +��6�%1>� (�(�%�� 8������ ��*� ���/�%�*�%%�+�

*�++�*���+� ��� +��6�%1 %,-���� /�%'��� -%������ ��,��� DL�%�,+� � E�

3�(,+ +��6�%1� ���� �+ ��� �,(� *�+*�-�� F�6���%� �+���,� �/ *�-��+' ��� ,*������ �/ ���

���-�� +��%�+�� ��� �����+ �,��%H�I ,%� *�-��� �+�� , ��� �/ *�+��&� �+���� �+ �&,(-�� �/

,+ 3�(,+ +��6�%1 6��� �+� �,��% �/ �����+ +��%�+� H,+� ���%�/�%� �+� ��� �/ *�+��&� �+���I

�� ���6+ �+ ��'�%� .�#� �**�%��+' �� 3�(,+ D� E ��� %�*�%%�+� *�++�*���+� �+ ��� �����+

�,��%H�I ,���6 /�% , +��6�%1 �� ���� �+��%+,� %�-%���+�,���+� �/ '�+�%,��K,���+� 6��+ , +��6�%1

�� �%,�+���

)�� �-�,�� %��� /�% %�*�%%�+� +��%,� +��6�%1� �� ����(��- ,� /�% :?��� F�6���%� ��� *�+��&�

�+��� ,%� �+�� �-�,��� ����� ,�� ����% +��%�+� �,�� ��+ �-�,���� �+*����+' ���-�� +��%�+��

,+� ���� 1��- ����% ,*������ ��6��+ �+-��"���-�� *�*����

����� � ������ �������

�� /,% 6� �,�� �+�� ���*����� ���*%������(� +��6�%1�J ��,� ��� , +��6�%1 %�*����� ��(� �+-��

,� ��(� ���- ti ,+� *�(-���� ��� ���-��� /�% ��,� ��(� ���-� �� ��(� ���- ti+1 ��� +��6�%1

%�*����� , +�6 ��� �/ �+-��� ,+� *�(-���� , +�6 ��� �/ ���-���� �+ *,�� ��� �+-�� �� �/ ,

���*%��� /�%(� /�% �+��,+*� , ��%�+' �/ �����%� �% , ��%�,( �/ ��(-�%,��� ���+��-,*�� �,(-����

��

Page 19: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Theoretical Foundations 2.1 Artificial Neural Networks

Input 1 Input 2 Input 3 Input 4

Output 1 Output 2

Copy

Context Units

Figure 2-6: �� ���� �� �� �� +���� ������"� �� +���� ������" �� ��������� ����������� ���� �� ��� �� ������� �� ��� ������ � �� ���� �� ���

���� (���� 6�%1� 9+� ��+*� ��� ��� +��6�%1 ,+� ��� �+��%���+' -��+�(�+�+ ,%� �+��%�+���

���*%����

:,+� -��+�(�+, ,%�� ��6���%� +�� ���*%��� �+ ����% +,��%� ,+� ��� -�,�� , *�+�%,� %����

����(�� /�% �+��,+*�� ��,� , %� ��>� *,(�%, �+-�� �� -%�*����� ,��+*�%�+����� 6��� %��-�*� ��

��� ��*����+�(,1�+' *�+�%����% ,+� ��,� +�6 �+-�� �� ,�,��, �� ,� �%%�'��,% �+��%�,�� ��-�+��+'

�+ ��� *�(-��&��� �/ ,+ �(,'� ,+�6��%� ��6��+ ���%� . �� � (������*�+��� �/ 6� %�;��%�

��� ��� *�+�%����% �/ ��� %� �� �� �%,*1 , (���+' � 7�*� ,+� �� ,*� ,**�%��+'��� 6� +��� ��

�,1� ��� ��(-�%,� ��(�+���+ �+�� ,**��+� ,� ��� ���-�� ������ ��-�+� �+ ��� ��(� ��,� -,����

��6��+ �,*� �+-���

$� %�-�,*�+' ��� ,*���,���+ /�+*���+� �+ ��% +��%�+� 6��� ��(����-�+��+�� ��A�%�+��,� �;�,���+�

6� � �,�+ , *�+��+�������(� +��%,� +��6�%1 D<,(,�*�� ,+� $��%� �E� D$��%� ��E� )��

,*������ �/ , +��%�+ �� *�(-���� �+ ��� /����6�+' 6,��

an(0) = 0, H.�I

dan(t)dt

=1τn

(− an(t) +

∑i

wixi

)H.��I

6��%� an(t) �� ��� ,*���,���+ �/ +��%�+ n ,� ��(� t� τn �� , ��(� *�+��,+� �-�*�9* �� +��%�+

n� wi ,+� xi ,%� ��� 6��'��� ,+� �+-���� %��-�*������� /%�( ����% +��%�+� H�+*����+' ��� �+-��

+��%�+�I�

�+ ���� (,++�%� -�%*�-�%�+�� (�����,��% -�%*�-�%�+�� ,+� %�*�%%�+� +��%,� +��6�%1� *,+ �

�&��+��� 6��� *�+��+���� ��(� ,� , -,%,(���%� ��*� +��6�%1� ,%� 1+�6+ ,� ����� ������

��

Page 20: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

2.1 Artificial Neural Networks Theoretical Foundations

���� �#� �% ���� ������ ������ ���� �#��

)�� �-�,�� %��� �+ , ��+,(�* +��6�%1 �� �/��+ ��(��,% �� ��,� �/ ��� +�+���+,(�* *��+��%-,%� �

�+ ���� *,�� �� �� *,���� , ����� � �� ���� �#� �+ ����% *,��� +��%�+� ,%� �-�,��� ,� ��A�%�+�

��(�� ,+� ��� +��6�%1 �� ���+ *,���� ,+ ������ � �� ���� �#�

����� ������ ������� ����

� +�( �% �/ ����% ��� ��%�*��%�� ,+� ��-�� �&���� 6��*� 6� �,�� +�� ���*��� �-�+ ��%��

)���� �+*���� F�-9��� +��� DF�-9���� ��.E� ���/��%',+�K�+' (,-� DG���+�+� . �E� ,+� ?�+'

���%��)�%( :�(�%� +��6�%1� H?�): +���I DF�*�%����% ,+� �*�(���� �%� �#E� ������'�

�� *���� � �+��%����+' �� ����� ��� ,--��*, ����� �/ /�% �+��,+*� ?�): +��� �+ ���� 6�%1� 6�

*�+����% ���� ,� ��+' ������� ��� �*�-� �/ ���� ������ 8� ���%�/�%� %����� ��� ��(-�,���+ �/

'��+' �+�� /�%���% ���,��� 6��� ����� �,%�,+���

����� ������ � ���� � ������ �� !����

���� �� ,+ �+��%����+' -,%,��'( /�% %���,%*��%� �+ ��� 9��� �/ ,���+�(��� %� ���*�� ��+*� %� ���

�,�� �� ,*� �+ , +�+�����%(�+����* 6�%�� -�%*����� ��%��'� +���� ��+��%� ,+� +��%,� +��6�%1�

,%� �+ '�+�%,� ;���� %� ��� ,',�+�� +����� � *�(-���� *�+�%����% *,+ *�+���� ��(-�� �/ , +��%,�

+��6�%1� 6��%� ��� ��+��% %�,��+'� *�%%��-�+� �� ��� �+-��� �/ ��� +��6�%1 ,+� ��� ���>�

���-��� *�+�%�� ��� ,*��,��%� �/ ��� %� ���

�/ 6� 6,+� �� ��� ���� /�% %� �� *�+�%����%� H�% /�% ,+� ����% -%� ��("�,�1I� 6� �,�� ��

����%(�+� ��� ��-� �/ +��%,� +��6�%1 �� ���� ��� ��%�*��%� ,+� 6��'���� � '%�,� ,(��+� �/

%���,%*� �,� ��+ ����*,��� �� ���� -%� ��(� 6��*� �/��+ �+������ �%,�+�+' ���� *�+�����+' �/

, +�( �% �/ �+-��� ,+� *�%%��-�+��+' ���-��� H��-�%����� ��,%+�+'I� �% ��(-�� , ��� �/ �+-���

H�+��-�%����� ��,%+�+'I� )���� �%,�+�+' ���� ,%� ���+ ,--���� �� �,%���� ��-�� �/ +��%,� +��6�%1�

6��� ��A�%�+� ��%�*��%��� )�� ��%�*��%� (�%� *,-, �� �/ '�+�%,��K�+' ���% ��� �%,�+�+' ���H�I

6��� %��-�*� �� ��(� �+*�(,%1 �� ���+ *����+� F�6���%� ����� -�-��,% ��,%+�+' (������

�� +�� *�%%�+��� ���( ,--��*, �� �+ ,���+�(���� (� ��� %� ���*�� ,� �%,�+�+' ���� ,%� �,%� ��

*�+��%�*�� )�� %�'�� ���+' �� �� 6��+ /,*�� 6��� *�%�,�+ ��+��%� �+-��� �� +�� ,�6,�� � ������

���+ �� ��(,+�� )��%�/�%�� 6� �%�,� ���� ,� ,+ �-��(�K,���+ -%� ��( ,+� ,--�� ��������+,%�

,�'�%���(� �+ �%��% �� �� ��� ����, �� �����

��

Page 21: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Theoretical Foundations 2.2 Evolutionary Computation

��� ��������� '��(�����

�+ ���� ��*���+ 6� 9%�� '��� , ��9+����+ �/ 6�,� ,+ �-��(�K,���+ -%� ��( �� ,+� ���*��� �,%����

��%,��'��� /�% �����+' ��*� -%� ��(�� 8� ���+ ���*%� � ��� �-��(�K,���+ -%� ��( 6��*� 6�

6,+� �� ����� � �-��(�K�+' 6��'��� �+ +��%,� +��6�%1� *�+�%����%� � ,+� '� �+�� ��-�� 6��� ���

���%����* 6��*� 6� ,��-�� +,(��� ��������+,%� *�(-��,���+� �+*����+' �&��+���+� ,+� *�((�+

�������

����� �� ��"��� �� #� ��$ � ���

�+ �+��,+*� �/ ,+ �-��(�K,���+ -%� ��( *,+ � ��9+�� �+ ��� /����6�+' 6,��

��$���� � � -���&�� � )� ����

$ ������� �� �������� � �� ����������� ����� � � ��� (S, f) ����� S � � ����� ���

� � ��� �� ����� ��� /�,�� ����� �-,*� ��� f : S → R � � ���� � ���� ��� ���� � *��� �

��� � ��� �� ��� �� ���� � � ��� � s̄ ∈ S � � ���!

f(s̄) ≤ f(s) � � ��� s ∈ S. H.�#I

.�� �� ������� s̄ � ����� �� �-��(,� �������+ � ��� ���� ��������

�� � �� ������ � ��� �� �� ����!

s̄ = arg mins∈S

f(s), H.��I

����� ��� /arg min0 �� ��� �� ��� ������� � ��� ��� S � � ��� ��� ����� � ���������

5-��(�K,���+ -%� ��(� *,+ � '%��-�� �+�� *�,����� ��*� ,� ���*%���� *�( �+,��%�,� �-��(�K,�

���+ -%� ��( H'%,-�� +��6�%1� �*������+'� ��*� ���,��� /,�� �+ ���� *,��'�%�I� ,+� '�+�%,� �+*�+�

��%,�+�� -%� ��(� 6��%� , '�� ,� (�+�(�( H�% (,&�(�(I �/ , +�+���+�,% /�+*���+ ���% %�,�� ��

���'���

� +�( �% �/ (������ �,�� ��+ ������-�� /�% �����+' �-��(�K,���+ -%� ��(�� )���� (������

*,+ � ������� �+�� �6� *,��'�%���� +,(��� � �� ���� �� ,+� ������ ����������

����� ������

3&,*� (������ '�,%,+��� �� 9+� , '�� ,� �-��(�( 6����+ ��� /�,�� ����� �-,*�� �/ ��� *���

/�+*���+ �� ��A�%�+��, �� ��� '�� ,� �-��(�( *,+ �+ ��(� *,��� � ����%(�+�� ,+,����*,����

:������ %����+' �+ ���� ��*�+�;�� ,%� *,���� ������������� 5���% �&,*� (������ �+*����

4�� � ���� ��� �� ��� ���� ���� ������� ����� � ������8 ���� ��������� ������ ��� ��� ������� �����

(S, f) ��� �� ������� �� ���� � ��� ������� ����� (S, g) �� � �� ���������� g = −f ��� �������� ���

��������� �� �������� �� � �� ��� ���� �� � ��� ���� ��� �������� g ���� � $ ��� �� ���� ������ �� S�5!���� ��� �� ����� ���� S � ���� ��� ��� � �� f �� S ��� ����� �� ��� ���� ��� �� ��� �� S������ ��� ��� � �� � ����"����� #���� ��� � ������

Page 22: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

2.2 Evolutionary Computation Theoretical Foundations

�+�(�%,���+� %,+*� ,+� ��+�� $,����,+ ��,%*� ,�'�%���(�� ��**������ ,--%�&�(,���+� ,+�

��(���-�� !�((�+ �� ,�� 1+�6+ �&,*� (������ �� ��,� ���� ,%� �(-%,*��*,� �� ,--�� �+����

�����% ��� /�,�� ����� �-,*�� S� �� ��@*��+��� �(,�� �% ��,� ��� ��%�*��%� ,+�"�% ��,���% �/ ���

*��� /�+*���+� f � �� 1+�6+ ,+� *,+ � �&-�������

���� � � ������ �

P+��1� �&,*� (������� ���%����* ��%,��'��� �� +�� '�,%,+��� �� 9+� , '�� ,� �-��(�( �/ , '���+

*��� /�+*���+� �+���,� ���� ,�( ,� 9+��+' � � �������+� /�% -%� ��(� �� 6��*� �&,*� (������

,%� +�� -%,*��*,��� ,--��*, ��� F��%����* (������ �,�� -%���+ ��**���/�� /�% (,+� ����%���*,� ,+�

%�,��6�%�� -%� ��(�� ?�1� ��(� �/ ��� �&,*� (������� ��*� ,� %,+*� ,+� ��+� ,+� $,����,+

��,%*�� ���%����*� �/��+ �,�� �� � ,�,-��� �� , -,%��*��,% *�,�� �/ �-��(�K,���+ -%� ��(� �+ �%��%

�� -�%/�%( 6���� F��%����* ��%,��'��� �+*���� (������ ��*� ,� ��(��,��� ,++�,��+'� �, ����,%*��

,+��*���+� �-��(�K,���+� ,+� ��������+,%� *�(-��,���+�

��� � � �� �� �� ���

)�� �-��(�K,���+ -%� ��( ��,� 6� ,%� /,*�� �� �� 9+� '��� ���� �/ 6��'��� /�% ,%��9*�,� +��%,�

+��6�%1�� ������'� 6� 6��� ��,��,�� ��A�%�+� ��� ��-�� ,+� ��%�*��%��� 6� 6��� +�� *�+����%

��� +�( �% ,+� ��-�� �/ +��%�+� ,+� *�++�*���+� ,� -,%,(���%� �/ ��% �-��(�K,���+ -%� ��(

,+� ��% /�*�� �� �+ �-��(�K�+' ��� 6��'��� �+ ����� )���� �+ ���� ����� 6� 6,+� �� �-��(�K�

��� 6��'��� �/ , +��%,� +��6�%1 /�% �� ��� 6��*� (��� ,%��+� �+ , ��%��,� ,+� %�,� 6�%��� )��

�,��� *��� /�+*���+ /�% ��(� ��� %�0�*�� ��� -�%/�%(,+*� �/ , '%��- �/ �� ��� *�+�%����� �

��� ��� �+ , ��%��,� 6�%�� 6��� %��-�*� �� ��(� -�%/�%(,+*� *%���%�,� ��'� ��6 *���� �� ���

�� ��� '�� �� ��� �,%'�� ,%�,�

)�� +�( �% �/ ��A�%�+� ��,���� �/ ��� ��%��,� 6�%�� �� -%,*��*,��� ����� ,+� -,%��� � ��

��������� ��+*� +���� �� ,���� �� ��+��%� ,+� ,*��,��%�� :�%����%� ��� ��%��,� 6�%��� ,+�

���%�/�%� ,��� ��� *��� /�+*���+� �,*1� , 6������9+�� ��%�*��%�� 6��*� *,+ � �&-������ � ,+�

1+�6+ �&,*� (������ )�� -%� ��( �� �/ %��,������ ��'� ��(�+���+,����� ��,� �� �+� ��(�+���+

/�% �,*� 6��'�� 6� 6,+� �� �-��(�K�� ,+� ��� ��K� �/ ��� /�,�� ����� �-,*� ���%�/�%� (,1�� ���

��� �/ �&,*� (������ �(-%,*��*,��

5/ ��� ,�,��, �� ���%����* ��%,��'��� 6� �,�� *����+ ��������+,%� *�(-��,���+ ��+*� �&��+����

%���,%*� �,� ��+ ��+� �+ ,--���+' ���� (����� �� ��� ��������+ �/ ,%��9*�,� +��%,� +��6�%1��

�+ ��*���+ .�� 6� ���*��� ��(� �/ ���� %���,%*� �+ (�%� ���,��� 6���� �+ ��� +�&� ��*���+ 6� '���

,+ ���%���6 �/ ��������+,%� *�(-��,���+�

����� %������� &'���� �� #� � ��

)�� *�+*�-� ���+� ��������+,%� *�(-��,���+ �� �+�-�%�� � +,��%,� ����*���+� �,��%,� ����*���+

-%��*%� �� ��,� ��� 9���% �+��*��� -�,+��� ,+�(,�� ,+� ��(,+� �,�� ����% *�,+*�� �/ %�-%���*�+'

*�(-,%�� �� �����% 9� �-�*�(�+�� )���� 9���% �-�*�(�+� %�,% (�%� �A�-%�+' ��,+ ���� 9�

6* �� �� �� ��� $���� � ���� �� �7�� �� ��� ���������# ������ �����# ���������# � ���7��� ����� �� ���������# � ����� ������� � ����� ��� ���� ����� ��� ������ �� �9����� ������������� ��� ����� � � ������ ����7���� ��� �� �� ���� � ��������# �� ����� �� ��� ������ �� �� ��� ��7����

��

Page 23: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Theoretical Foundations 2.2 Evolutionary Computation

�-�*�(�+�� 8��+ �+������,�� %�-%���*� +�6 *�( �+,���+� �/ ����% '�+���* (,��%�,� ,%� *%�,����

6��*� (,� ��,� �� +�6 ��+��+' �/ '��� '�+��� 6��*� %������ �+ ���+ 9���% �+������,��� :�%����%�

'�+���* (��,���+� �+ �+������,�� *,+ ��,� �� �(-%���(�+�� �% %�'%�����+� ��,� �+ ��%+ %����� �+

��'��% ,+� ��6�% *�,+*�� �/ %�-%���*���+� %��-�*������� �+ ���� 6,� �-�*��� �+��%'� *�+��,+�

*�,+'�� 6��%� ��� 9����� (�( �%� ,%� /,��%�� � �,��%��

3�������+,%� *�(-��,���+ �� ���� ,%��+� ���� ���, ,+� ���� ,%� �� �,%���� ��'%��� �+�-�%��

� ��� �+��%���+' ����'�*,� (�*�,+��(� '���%+�+' %�-%���*���+� )�� ,��* *�+*�-� ���+�

��������+,%� *�(-��,���+ *,+ � ��,��� ,� /����6��

%�� � � ����� � � �������� � ��� � ���� �� ���� ��� ��� �� �� �������� �� � ���

��� ���# ���� � �� ��� ���� � � � ��� � ����� �� %�� ��� �� ��� ����� ���� � ��

������� � ���� � � �������

)�� ��%(�+,���+ *%���%��+ *,+ /�% �+��,+*� � ��,� +� �(-%���(�+� �,� ��+ ���+ /�% , +�( �%

�/ ��**������ -�-��,���+� �% ������� ��� , �������+ �/ , ��@*��+� ��'� ;�,���� �� %�,*���� �%

��(-�� ��,� , *�%�,�+ +�( �% �/ '�+�%,���+� �,�� ��+ ��,��,����

3�������+,%� (������ �/��+ %��� �+ ��(� *�(-,*� %�-%���+�,���+ �/ ,+ �+������,�� �+�-�%�� �

��� %��� ,+� /�+*���+ �/ ��� �+ �,��%�� 3,*� ��� �/ *�%�(���(��� -%���+� �+ ���%� *��� �/ ���

���%� ����+' �%',+��(� �� , *�(-,*� ����-%�+� /�% ��� �+��%� ��+'� �+ �,��%� ��� �+/�%(,���+

*�+�,�+�� �+ , *�%�(���(� �� 6%����+ �+ , /��%������% ,���-,�% ,�-�, ��� {A,T,G,C}� �+

��������+,%� *�(-��,���+ , ��A�%�+� �+*���+' �*��(� �� �/��+ *����+ /�% ��� �;���,��+� �/

*�%�(���(��� ��*� ,� ��� ,�-�, �� {0, 1}� � ��%�+' �/ � ,+� �� *,+ ��%�� ,� , *�(-,*�

%�-%���+�,���+ �/ ,+ B�+������,�C� ���� , *,+���,�� �������+ �� , -,%��*��,% -%� ��( ��*� ,� ,

��� �/ +��%,� +��6�%1 6��'��� /�% , %� �� *�+�%����%� �+ ��� �,(� 6,� ,� , '�+� �� , ��*���+ �/

*�+��*����� ���(�+�� �+ ��� ��� �������& ��� (���*��� �+ ����+' �%',+��(�� , ��� �/ *�+��*�����

�����%� �+ ��% ��%��,� *�%�(���(� *��� /�% , ������� �/ ��� �������+� )���� ��% ��%�+' �% ��%��,�

*�%�(���(� 6�%1� ��%� (�*� ��1� ��� �+ ��(,+�� ,+�(,�� ,+� �+��*��� )�� %�-%���+�,���+ ��

'�+�%,�� �� ��� ��*���+' �/ , -,%��*��,% ��*���+ �� -%� ��(���-�+��+� H�-�*�����-�+��+�I� �

/�,��%� *�+�����+' �/ , ��+'�� ���(�+� �+ ��% ��%�+' *���� /�% �+��,+*� *��� /�% ��� -%���+*� �%

, ��+*� �/ ,+ ��'� �+ , '%,-�� ��� +�&� /�,��%� �+ ��� ��%�+' *���� *�+���� �/ �# ���(�+�� H�%

���I ,+� *���� � �+��%-%���� ,� , 0�,��+'�-��+� 6��'�� �+ ��� ��'��

��������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������

��������������������������������

1 2 17 21

Gene 1 Gene 3 Gene 4

18 22 25

Gene 2

boolean 16 bit floating point 4 bit integer 4 bit integer

Figure 2-7: �� ���� �� �� � ������ ���� �� �� ���� {0, 1}� ,� �� ���� �� ������� �� � ����� �� -� ��� ������� ���� ����� �� ��������# .�� �������'����/�����)� ��� ������ ��� ������ ��� ��� ��������

�+ �&,(-�� �/ , ��%�+' �� ��-�*��� �+ ��'�%� .��� �+ ���� �&,(-�� ��� ��%�+' ���% ��� ,�-�, ��

{0, 1} �,� , ��+'�� �/ .� ���(�+��� 6��*� �+*���� /��% /�,��%��� 5+� ����,+ H�%��"/,���I �+�

Page 24: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

2.2 Evolutionary Computation Theoretical Foundations

0�,��+' -��+� �,���� ,+� �6� �+��'�%�� ��% ,+����% �-��(�K,���+ -%� ��( 6� *���� �,�� *����+

, ��A�%�+� ��+'�� /�% ��� ��%�+' ,+� ,+����% ��*���+'� F�6���%� �+*� 6� �,�� , ��%�+' �/ ���

*�%%�*� ��+'�� 6� *,+ ��*��� ,+� ��,��,�� �� /�% , -,%��*��,% -%� ��(� ��% �+��,+*�� 6� *,+

��,��,�� ��� ��+'�� �/ ��� ���% �� ���*%� �� �/ 6� ,%� �-��(�K�+' ,+ �+��,+*� �/ ��� �%,����+'

�,���(,+ -%� ��(� �% �+ ��% *,��� 6� *,+ ��� ��6 6��� , %� �� -�%/�%(� , *�%�,�+ �,�1 6��+

��� ��%�+' �� �+��%-%���� ,� , ��� �/ 6��'��� /�% , +��%,� +��6�%1 *�+�%����%� �+ ���� 6,� 6� *,+

,���'+ , ������ ����� H�% ��(-�� , ������I �� �,*� ��%�+'��

5+*� ,�� ��%�+'� �+ , -�-��,���+ �,�� ��+ ��,��,���� 6� 1+�6 ��6 ��� �������+ �+*���� �+ �,*�

��%�+' -�%/�%(�� ,+� 6� *,+ ����*� ��� ��� ��%�+'� /�% %�-%���*���+� ����%,� ����*���+ �*��(��

�&���� /�% �+��,+*� %������� 6���� ����*���+ 6��%� �,*� �+������,� �,� , *�,+*� -%�-�%���+,� ��

��� 9�+��� �/ '����+' ����*��� /�% %�-%���*���+� � %,+��( +�( �% '�+�%,��% B�-�+� ��� 6����C�

��% �,*� ��%�+' �+ ��� +�6 -�-��,���+ �6� -,%�+� ��%�+'�� P1 ,+� P2� ,%� ����*��� ,+� ����%

��%�+'� ,%� *�( �+�� ��%��'� ��� �-�%,���+ 1+�6+ ,� � �� ��� � � -������+� x� ��6��+ �6�

���(�+�� �+ �+� -,%�+� ��%�+' �� %,+��(�� *����+ ,+� ��� +�6 ��%�+'� C� �� *�(-���� �/

���(�+�� e1 . . . ex /%�( P1 6���� ���(�+�� ex+1 . . . el ,%� *�-��� /%�( P2� �+ ���� 6,� C �� ,

*�( �+,���+ �/ �������+� P1 ,+� P2� $������ *%������%� 6� �+�%���*� ����� � �� ��,� �,*�

���(�+� �/ �+ C �,� , �(,�� -%� , ����� �/ ��+' %,+��(�� ����*��� /%�( ,�-�, �� �+���,� �/

�+� �/ ��� -,%�+� ��%�+'�� :��,���+ �+��%�� ��,� +�6 �������+� ,%� �&-��%�� /%�( ��(� �� ��(��

8��+ �+��'� �+������,�� �,�� ��+ *%�,��� , +�6 '�+�%,���+ �� ,�,��, �� /�% ��,��,���+� )�

��((,%�K� ���� ��-� �/ ��������+,%� *�(-��,���+� 1+�6 ,� , ����� ��� ���� H4�I� ��� -������

*��� /�% , '�+�%,� 4� �� ���6+ ���6�

� ������ ��� ������ ���������∗ P� Evaluate,P0

� ����� ,��� ������� ��������� ��� ��0

P ′ = ∅

) ��� ���� ��������� �� �� �������

! P1, P2 : SelectParents(P); C : Crossover(P1,P2)

< Mutate(C)

� P ′ ← C

�" ����

�� P = P ′

�� Evaluate,P0

�� ������

∗'�� ����� � ����� ���� �� ��� ��� � � ���� ����� ��

7�� ��� � �� �� ��� �� $������ � ���� � ������� � �� � � � �� �������� � � � ���� �� ������ ������� � $ ������������ ��� �� ��� =� ���� �� �� � ��������> ��� �������# ��� ������ �� ��������� ��������# �� ��� ������ � # �� �� ��� �� �� ��� ��������� � �� ����� ���� $ ���� �� � ������ �� ��� $��� � �� �� �� ��� �� � ����� �����

��

Page 25: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Theoretical Foundations 2.2 Evolutionary Computation

)�� -������*��� ���6+ , ��� ������%,��� ��� ,��* *�+*�-� ���+� 4��� )�� ,��* -%�+*�-��

���+� 4�� �� /,�%�� ��(-��� ��� �� ���� ��(-��*��� ,+� ��� �� 4�� '�+�%,����� ���� ,%� 6�����

���� /�% *�( �+,��%�,� ,+� '�+�%,� �-��(�K,���+ -%� ��(� ,��1� �+ ��� �+����%� ,+� %���,%*��

:,+� �,%�,���+� ,+� �&��+���+� �,�� ��+ -%�-����� ��*� ,�� ��-������ �+��%���+ ,+� %��%��%�+'

��%,��'���� (������ 7�*���� ��������+� ������(� ��*� D4��� �%'� ��E� D4��� �%'� . .E� D:��*�����

�#E� D:�*�,��6�*K� �E� DQ���� �E� ��%���%(�%�� /�% ��(� -%� ��(� (�%� ��, �%,��

/�,��%� �+*���+' �*��(�� ,+� �,%�, �� ��+'�� ��%�+'� ,%� ����� /�% �+��,+*� /�% -%� ��(� 6��%�

'%,-� ��%�*��%�� ,%� �������� �+ ��*� *,���� ��� *%������% ,+� (��,���+ �-�%,��%� �/��+ �,��

�� � (���9�� �� �+��%� (�,+�+'/�� �A�-%�+'� ��% �+��,+*�� ��� *%������% �-�%,��% *���� ����*�

�� �'%,-�� /%�( �,*� -,%�+� ,+� 7��+ ���( �+ , -%� ��(��-�*�9* (,++�%� 6���� ��� (��,���+

�-�%,��% *���� ,�� �% %�(��� ��'�� ,+� +�����

! ��� "�������

)�� ������ �������� �� , (��,-��%�*,� ��%( ���� �� ���*%� � ��� ,--�,%,+*� �/ ��� �,+��*,-�

��9+�� � ��� 9�+��� /�+*���+ 6��+ /�+*���+ �,���� ,%� �+��%-%���� ,� B���'���C� ��*� ,

�,+��*,-� �/��+ �,� ����%,� �,����� ,+� -�,1�� �+ �&,(-�� �/ , 9�+��� �,+��*,-� /�% , �+��

��(�+���+,� 9�+��� /�+*���+ �� ���6+ �+ ��'�%� .��� �/ 6� ��,%� 6��� , %,+��( -�-��,���+� ���

��,%��+' -��+�� 6��� � �-%�,� (�%� �% ���� ���+�� �+ ��� 9�+��� �,+��*,-�� � 4� 6��� ��,%� (���+'

��� ��%�+'� �+ ��**������ '�+�%,���+� �-���� ��6,%�� -�,1� � *�+��+������ /,��%�+' �+������,��

-�,*�� ��'��% �+ ��� 9�+��� �,+��*,-�� ��% �&,(-��� �+ ��'�%� .�� �+������,�� �+ ��� �,���� � ,%�

+�� ,� ��1��� �� � ����*��� /�% %�-%���*���+ ,� �+������,�� �+ ��� ���� ��6,%�� ! �% 3� $�*,��� �/

*%������% ,+� (��,���+ ���%� �� , *�,+*� ��,� �+� �% (�%� ��%�+'� ,%� *%�,��� ��,� ,%� /�%���%

�- ��� ���� ��,+ �+ ��� -%������ '�+�%,���+�

A

C

D

E

B

10

Figure 2-8: �� ���� �� �� � 0����� ������� � �� ������� ��"� ��� ����� �� � � ������� ������� ������ 1 � �"�� �� ����� ������� ������� ! ���/�� +�

�� �� +�� �+*�((�+ /�% , 9�+��� �,+��*,-� �� �,�� (����-�� -�,1�� )��� -��+�(�+�+ -���� ,

*�((�+ %��1 ,���*�,��� 6��� ��� ��� �/ 4�� ,+� ���%����*� �+ '�+�%,�J +,(���� ��� *�,+*� �/

9+��+' , ��*,� �-��(�( /%�( 6��*� ��������+ *,++�� ��*,-�� �+ ��'�%� .�� ��� -�,1 3 �� ���

'�� ,� �-��(�(� �� ��+*� ��� ��*���+ �/ ��� 9�+��� �,+��*,-� ,%��+� �� $� ,+� ! �+ '�+�%,� �,�

, %��,������ ��'� 9�+���� ���%� �� , *�,+*� ��,� , 4� 6���� ��,%� *��( �+' ��� 6%�+' ����� 3��+

����'� *%������%� (��,���+� ,+� ��� ����*���+ �*��(� ,�� *�+�%� ��� �� -�-��,���+ ����%���� ,+�

��

Page 26: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

2.2 Evolutionary Computation Theoretical Foundations

�+��%� ��,� +�6 �������+� ,%� �&-��%��� ���%� �� +� '�+�%,� (����� /�% ,�����+' '����+' ���*1

�+ , ��*,� ,+� +�� '�� ,� �-��(�(�

�+����% -%� ��( *,+ ,%��� �+ *,�� ��� 9�+��� �,+��*,-� �,� /�6 ,+�"�% +,%%�6 -�,1�� �+

���� *,�� �� *,+ � ��@*��� /�% , 4� �� 9+� , ���� �� ��,%� *��( �+'� )��� �� 1+�6+ ,� ���

� ��������� �� ����� )�� 9�+��� �,+��*,-� �+ ��'�%� .� ������%,��� ���� -%� ��(� �/ +�+� �/

��� ��%�+'� �+ ��� �+���,� -�-��,���+ ,%� �+ , ���� ��,��+' �� , -�,1� ,�� ��%�+'� 6��� %�*���� %��'���

��� �,(� 9�+���� ,+� �� �� ���%�/�%� �(-���� �� /�% , 4� �� ���� 6��*� �+������,�� ,%� *����% �� ,

'��� �������+� )�� %����� �� ��,� �+ ����� *,��� ��� 4� 6�%1� ,� ,+ �+�@*��+� %,+��( ��,%*��

Figure 2-9: �� ���� �� �� � 0����� ������� � �� ��� ��� ��"� 2������� ��'������ � 3� �� ���� ������� ������ ��������) ��� �� � ������ � ������ ���� �� ���� ���������� �� ��" � �� 0����� ������� � � ������ ���� ����

)��%� ,%� , +�( �% �/ -%� ��(���-�+��+� ��%,��'��� /�% ���%*�(�+' ��� �����%,--�+' -%� ��(�

8� %���%+ �� ����� �+ �,��% *�,-��%��

��

Page 27: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Theoretical Foundations 2.3 Evolutionary Algorithms, Neural Networks, and Robots

��� ��������� $�)������* &����� &�����#�* �! ������

���%,� +��6�%1� ,+� ��������+,%� *�(-��,���+ *,+ � *�( �+�� �+ �� ������ *�+�%����%� /�% ,��

��+�(��� %� ���� �+ ��(� *,��� ��� ��� ��%�*��%�� ,*���,���+ /�+*���+� ,+� 6��'��� ,%� �������

� ��������+,%� ,�'�%���(�� 8� 9%�� -%���+� /��% %�*�+��� -%�-����� ,��,+*�� +��%����������+

��%,��'���� /����6�� � , ��(-�� �&,(-�� �+ 6��*� +��%,� +��6�%1� ,+� '�+���* ,�'�%���(� ,%�

���� �+ *�+7�+*���+�

����� ��' ���� �����&'���� �� �����

�+ ��� -%������ ��*���+ 6� �,6 ��6 ,+ ��������+,%� ,�'�%���( *���� %��,���� �,���� 9+� , '���

��� �/ 6��'��� /�% ��� -�%*�-�%�+� ,���6�+' , %� �� �� 9+� ,+� (��� ��6,%�� , ��'�� ���%*��

��% , ��(-�� �,�1 ,+� , ��(-�� ���� , ��%,�'���/�%6,%� ,--%�,*� *,+ � ��@*��+�� ��% (�%�

*�(-��& �,�1� �� �� �+/�%��+,���� +�� ,�6,�� ��� ������ %��,��� �� �����%,--�+' ,+� -%�(,��%�

*�+��%'�+*� �� ��*,� �-��(, *�( �+�� 6��� ��� ,(��+� �/ -%�*����+' %�;��%�� �� ��,��,�� �,*�

�+������,� �,�� �-,%1�� %���,%*� �+ (�%� �@*��+� ��%,��'��� /�% ������+' %� �� *�+�%����%� ,���

�+ ����� $���6 6� ���� /��% ��*� ��%,��'����

# $ % #��� � ������ �� $���� � ���� ���

��4� �� ,+ �&��+���+ �/ *�,���* '�+���* ,�'�%���(� 6��%� ��� ��(�+���+,���� �/ ��� ��,%*� �-,*�

�� �+��% ��������+,%� *�+�%�� DF,%���� �.E� )�� /�+�,(�+�,� -%�+*�-�� ���+� ��4� �� �� ���

,+ ��������+,%� ,�'�%���( �-��(�K� +�� �+�� 6��'��� �� ,��� ��%�*��%� ,+� ��K� �/ ����� )���

�� ��+� � �����+' �,%�, �� ��+'�� ��%�+'� �+*��� ��� (�%-����'� ,� 6��� ,� 6��'��� �/ +��6�%1��

��4� �� ,+ �+*%�(�+�,� ��������+ ��%,��'�� 6��%� ��� 9%�� '�+�%,���+� *�+���� �/ %��,������

��(-�� ����� �� �� �- �� ��� ��������+ �� -%���*� �+*%�,��+'�� (�%� *�(-��& +��6�%1� �/ ���� ��

���/�� �� ����� ��� �,�1 �+ ;������+� )�� �+*%�(�+�,� ��%,��'� *,+ ���- ����� ��� �����%,--�+'

-%� ��( �*,��� ��� ��,%*� �-,*� �� %��,������ ��(���� ��%�+' ��� �+���,� '�+�%,���+� ,+� �+��

'%�6� 6��+ ,+� �/ ��������+ 9+�� ,+ ,��,+�,'���� 6,� �/ ���+' ���

�+ DF,%��� �� ,��� �.E ��� ,����%� ,--�� ��4� �� ��� -%� ��( �/ %� �� +,��',���+ �+ ,+

�+��%�+(�+� *�+�,�+�+' � ��,*���� �+ ���� *,�� �,*� �,%�, �� ��+'�� ��%�+' �,� �6� 9&�� ��*�

���+�J �+� /�% ��� �+-�� +��%�+� ,+� �+� /�% ��� ���-�� +��%�+�� 6���� ��� ��*���+ �/ ���

��%�+' *�%%��-�+��+' �� ��� �����+ +���� �� �/ �,%�, �� ��+'��� )�� ,����%� ��� +�+��,��%���

*�+��+�������(� %�*�%%�+� +��%,� +��6�%1�� 6��� ��� �&*��,���+ ,+� �+�� ���% ��+1� ,+� 6��%�

+���� �� ,���� �� ��� ,*���,���+ �/ �,*� +��%�+� ������'� ����� ���� ,%� %,���% *�(-��&� ���

��4� ,--%�,*� *���� �,���� � ,�,-��� /�% ��(-��% ��-�� �/ +��6�%1�� ��*� ,� ����� �+�%���*��

�+ ��*���+ .���� �+ -,'� ���

# ��% #��& �� �' ���� (� �������(���� ��

�� /,% 6� �,�� �+�� ���*����� '�+���* ,�'�%���(� 6��%� �,*� ��%�+' ��9+�� ,+ �+��%� ���� �

(����� 1+�6+ ,� ��( ����*� ��,-���� ���%��3�������+ H���3I �,1�� , ��A�%�+� ,--%�,*��

+,(��� ��,� �,*� -�-��,���+ (�( �% %�-%���+�� �+�� , -,%��,� �������+ D:�%�,%�� ,+� :��11��

�,�+�+� �#E� �+ ���3 �,*� ��%�+' *�%%��-�+�� �� � ����� ���� � �+ , :?�� ��,� ��� �,*� ��%�+'

��9+�� , ��� �/ *�++�*���+� ,+� 6��'��� /%�( ��� �+-�� +��%�+� ,+� �� ��� ���-�� +��%�+��

��

Page 28: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

2.3 Evolutionary Algorithms, Neural Networks, and Robots Theoretical Foundations

���+��� ��,��,���+ �,1�� -�,*� � *�+��%�*��+' , :?� 6��%� ��� �����+ �,��% +��%�+� ,+� ����%

*�++�*���+� �� ��� ���-�� �,��% ,%� ��9+�� � , +�( �% �/ ��%�+'� ����*��� /%�( ��� *�%%�+�

-�-��,���+� �+ ���� 6,� (����-�� ��%�+'� ,%� ��,��,��� ,� ��� �,(� ��(� ,+� ���� ,%� ���%��

/�%� %�6,%��� /�% ����% '�+�%,����� 3,*� ��%�+' -,%��*�-,��� �+ , +�( �% �/ ��A�%�+� +��6�%1�

*�+��%�*��� �+ ���� (,++�% ,+� ��� 9�+��� �� ��� ,��%,'� -�%/�%(,+*� �/ ����� +��6�%1��

��+*� , :?� 6��� �+�� , ��+'�� ��-� �/ �����+ +��%�+ �����( �� ��@*��+� �� ����� , -,%��*��,%

�,�1� ���3 %������ �+ -�-��,���+� 6��%� ����%,� �-�*�,��K�� �� �'%��-� �(�%'�� �+ ���� 6,�

���3 %������ �+ �(-��*�� +�*��+' ,+� �� ���%�/�%� +�� ,� -%�+� �� -%�(,��%� *�+��%'�+*� ,�

*�,���* +��%����������+ ��%,��'���� �+ :�%�,%�� ,+� :��11��,�+�+ D�#E ��� ,����%� ���6 ��,�

/�% ��(� -%� ��(� ���3 *,+ 9+� ����% �������+� /,���% ��,+ ����% -�-��,% %��+/�%*�(�+�

��,%+�+' ��%,��'����

))$ % )������� (� )��(���� ����� $���� � ���� ���

�����% ,+� �� L�+' D�E ,+� �����% ,+� �� L�+' D. E �,�� ��''����� , ��( ����* ��������+

��%,��'� (�*� ��1� ���3 ���*%� �� , ���� F�6���%� �+���,� �/ �����+' �-�*�,��K�� �� '%��-�

/�%( �(-��*����� !!4� ������� �-�*�,��K�� +��%�+� �+ , ��� �/ ���,+��� 6���� (�( �%� ,%�

+�� �+��% %�� 6��� (�( �%� /%�( ����% ���,+��� )�� %,���+,�� �� ��,� ���� ,���6� /�% /,���%

��������+� ��,+ 6��� ���3� �*,��� �,-�,%K,%�� � ����%�*���� %�*�( �+,���+� ��6��+ (�( �%�

�/ ��A�%�+� �-�*�,��K,���+� � ,%� ,������� )�� ���,��,+�,'� �� ��,� ��� +�( �% �/ ���,+�� ,+�

���%�/�%� �-�*�,��K,���+� �� ��*���� , -%��%�� 6��%�,� �+ ���3 �(-��*�� �� -�-��,���+� ,%� /�%(��

� ��� ��������+� �����% ,+� �� L�+' D��E �,�� ��''����� , (����� /�% ,�7����+' ��� +�( �%

�/ �-�*�,��K,���+� ,��� �+ *�,+'�� �+ 9�+���� �/ ��������+ ��,'+,��� ,+� ���%� �� +� �(-%���(�+�

�+ 9�+��� ���% , *�%�,�+ +�( �% �/ '�+�%,���+�� , +�6 ���,+� H,+� ���� , +�6 �����+ +���I ��

�+�%���*���

4���+ ��,� ��� !!4� ,+� ���3 �,1� , �������,+��*�+;��% ,--%�,*� �� +��%����������+� ���%�

,%� ��-�� ��,� ����� (������ 6��� ,���6 /�% ��������+ �/ +��6�%1� /�% -%�������� �+�%,*�, ��

*�(-��& �,�1��

�� % �(��( �� ������ ����

3�����+' +��%,� ,%%,�� 6�%� -%�-���� � !�% ,�M+ ,+� ?,+K,%�+� D. �E ,� , +���� (�*�,+��(

/�% ��,%+�+' *�(-��& ,*���+� ��;��+*��� )�� -%�+*�-�� ���+� 3�����+' ���%,� �%%,�� �� ;����

��(-��� �+���,� �/ �,��+' �+� *�(-��& +��%,� +��6�%1 �� ����� , �,�1� , +�( �% �/ :?�� ,%�

���� �� ����� �,%���� �� ��,�1�� F�+*�� 3�� �� , �������,+��*�+;��% ,--%�,*� �+ , ��A�%�+�

����� ��,+ ���3 ,+� !!4��

� ��� �/ ���� ,%� �%',+�K�� �+ ,+ �%��%�� ���� *,���� , +��6�%1 ,%%,�� NA = (Nn,Nn−1, . . .N1)�3��%� Ni �,� ��� �,(� �+-�� ,+� ��� �,(� ���-�� +��%�+�� 5+� ���-�� +��%�+ �/ �,*� ��� ��

8?/������������ �� ����� �� �� ����� �� � �� �@��� �� � � ���� ����� �� ������@�� � �� � +���8� ������� ���� � ���� � '�� �� ���� �� ��� ��� ����� ������ �� � 2�# � �� ���� ����� �� � ����� �� �����# ��� ����� ���� ����$�� ����� ������ ���� ��� ���� ��� � �� ������ ���� �� ��� ���� ����������� � �� ��������� ���# ������ � � 9��� ��� ���� ��� ���� � �� ��� � ��� ��� ��� ��+� ���� ���� � # ������� �� �# �������=���� ��� � � '���� ��� �� � ����������@��� �� � ������ �� ��� � �� �� ��� � @ �� ��� ��� ���������� �� ������������� �� ����� �� ������������� �� �����A &������ � � ���# ���<(

��

Page 29: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Theoretical Foundations 2.3 Evolutionary Algorithms, Neural Networks, and Robots

�-�*�,�� �� %�-%���+�� ��� +��6�%1� *�+9��+*� �+ �,+���+' ��� *�%%�+� ����,���+ ��9+�� � ���

�+-���� )�� ���� �+ ��� +��6�%1 ,%%,� ,%� ��,��,��� �+ , ��/�����%�'�� �%��% �+��� , +��6�%1�

Ni� ���-��� , *�+9��+*� , ��� ��(� ��%������ ,+� Ni>� ����% ���-��� ,%� ,--���� �� %� ���

,*��,��%�� �+ *,�� ��� %�'���(��� ��� �� ��� ����� N1� �� %�,*��� ��� ���-��� ,%� ����� )����

��� N1 ��9+�� ��� ��/,��� ��,���% �/ +� ����% +��6�%1 ���-�,� , *�+9��+*� ��'� �+��'� ��

�,+��� ��� *�%%�+� ����,���+�

)�� ��������+,%� ,�'�%���( ���� 6��� 3�� �-�%,��� �+ , ��,'�� (,++�%� 6��%� ��(� �,�1� t� ��

�-��� �+�� (����-�� �� ��,�1�� t1 . . . tl� 3,*� ��,'� Si �*�%�� �+������,�� ,��� �+ ����% , ����� ��

����� ��� �,�1 t′ *�(-%���� �/ t1, . . . , ti� �� ��,'� Si ���%� ,%� �&,*��� i ���� �+ ��� +��6�%1

,%%,�� 8��+ ��������+ (���� /%�( �+� ��,'� �� ��� +�&�� , +�6 +��6�%1 �� �+��%��� ,� ��� 9%��

��� �+ ��� +��6�%1 ,%%,�� ,+� �+�� ��� +�6�� �+��%��� +��6�%1 �� �������� )�� �+��%���+ �%��%

�� ���+ ��� �+��%�� �/ ��� ��,��,���+ �%��%� ,+� , +�6�� �+��%��� ��� (��� B��,%+C �� ����',��

-%�������� ��,%+� �,�1� �� ��� ����% +��6�%1� �+ ��� ,%%,��

)�� ,����%� �,�� *�(-,%�� ��� 3�� (����� �� ���3 ,+� ���6 ��(� �(-%������ %������ �+

D!�% ,�M+ ,+� ?,+K,%�+�� . �E� 6��%� ���� ������ %� �� *�+�%����%� /�% � ��,*�� ,����,+*� ,+�

�,%'�� %�,*��+' �+ , (,K����1� �+��%�+(�+�� F�6���%� �+��1� ���3� 3�� �� ,+ �+*%�(�+�,�

��������+ ��%,��'� ��,� %�;��%�� , �,�1 �� � %�1�+ �+�� �� ��,�1�� 6��*� (,1�� ��� ��*�+�;��

-%� ��(���-�+��+� ,+� ���%�/�%� ��@*��� �� '�+�%,��K��

����� � ��� �� &$ � ��

����(� ��,� 6� �,�� , %� �� 6��� ��'�� ��'�����+��%� -��+��+' �+ ���+�� ����%� ���� ��%�*���+� �+

��� ��%�K�+�,� -�,+� ,+� �6� ���� �/ 6������ �+� �+ ��� ��/���,+� ���� ,+� �+� �+ ��� %�'����,+�

���� �/ ��� %� ��� %��-�*������� ,+� ��,� 6� 6,+� �� ������ , *�+�%����% ��,� (���� ��� %� ��

��6,%�� , ��'�� ���%*�� �/ 6� 6,+� �� ������ , +��%,� +��6�%1 *�+�%����% /�% ���� �,�1� 6�

(�'�� *�+��+*� ��%������ ��,� , -�%*�-�%�+ �� ��@*��+� �� ����� ��� �,�1� )�� ��+��% %�,��+'�

*�%%��-�+� �� -�%*�-�%�+>� �+-��� 6���� ��� -�%*�-�%�+>� �6� ���-��� *�+�%�� ��� 6����� �/ ���

%� ��� ��� ��'�%� .�� �

�+ ���� *,�� ��� -�%*�-�%�+ �,� �� 6��'��� �� �-��(�K���� 8��+ , ��%�+' �� ��,��,���� 6�

�%,+��,�� �� �+�� ��� �� 6��'��� ,+� ��� , %� �� (��� ,%��+� �+ , ��%��,� ,%�+, 6��� , ��'��

���%*�� 8� 1��- �%,*1 �/ ��� ���%���� ����,+*� ��� %� �� %�,*��� 6����+ , *�%�,�+ ,(��+� �/

��(�� t� ,+� ��� ��� 9�+����

fitness(s) =Dstart − Dshortest

DstartH.��I

6��%� Dstart �� ��� �+���,� ����,+*� /%�( ��� %� �� �� ��� ��'�� ���%*�� ,+� 6��%� Dshortest ��

��� ���%���� ����,+*� ��6��+ ��� %� �� ,+� ��� ��'�� ���%*� %�*�%��� ��%�+' t� ��� ��'�%� .����

9B � ��� ��� ���������� ��� ���� ������ � �2 �� ��2��� �� �� ���� ��� � ���� � � ���� �� � �$��$��� ��� ����� ��� $���# ��� ���� �� ��� �� � ������ �+ ����

10'���� �� �< ������� ����� � �� ����� �� �������� �� ���� ������� , ��� � �� �! �����������0 ���� ���� �� ��������� ������� � $� �� � ������ ,C�0 '�� ����� �� �� � ��� � $� �� �������� ������� � ����� ���$����� ��� ������� �� ��� ��$�������� ,�� �� ������ $ ����0

��

Page 30: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

2.3 Evolutionary Algorithms, Neural Networks, and Robots Theoretical Foundations

left right

2

3

4

81

5

6

7

1 2 3 4 5 6 7 8

Robot seen from above

shownwith the directions of the 8 light sensors

wheels

The perceptron controller. Each of thelight sensors is connected to the two

wheel wheelleft right

Figure 2-10: � ����� �� � ��� �������� ��� ������ ��� � ���� ���� �����������

Initial position

Minimum distance

Light source

Final position

Figure 2-11: �� ����� ������ � �� ���� ����� ��� ��� ����� ������ �� �������� 0����� �� �� ����� � ��� ���� ����� �� �� ��� �� �� ��������� �� ��� ������� �� �������� ��� �������� � � �������� ����������� �� ����� ��� ������������� ��� �0����

��

Page 31: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Theoretical Foundations 2.3 Evolutionary Algorithms, Neural Networks, and Robots

)��� �� %�-�,��� /�% , +�( �% �/ ��(�� 6��� ��� %� �� �+���,��� �%��+��� �+ ��A�%�+� ��%�*���+�

6��� %��-�*� �� ��� ��'�� ���%*�� )�� %�,��+ /�% -�%/�%(�+' (����-�� �,(-��� �� ��,� 6� 6,+�

�� ������ *�+�%����%� 6��*� ,%� '�+�%,�� ��'� *,+ (��� ��6,%�� , ��'�� ���%*� +� (,���% 6��%�

��� ��'�� �� *�(�+' /%�( 6��� %��-�*� �� ��� %� ��� �/ 6� �+�� -�%/�%( 9�+��� ��,��,���+�

6��%� %� ��� �+���,� �%��+�,���+ ,+� -������+ ,%� 9&��� 6� ,%� ��1��� �� ������ , *�+�%����% ��,�

�� �-�*�,��K�� /�% ��,� -,%��*��,% ����,���+� ���� -�%*���� ��� ��'�� ���%*� �+ ��+��% � ,+� ��

��%+�%�'�� ,+� ���+ (��� /�%6,%�� 6������ ��+' , �� �� ��� �/ ,+� ����% ��+��%� %�,��+'� /�%

*�(-����+' ��� �,�1�

)�� %������ �/ �+� ��������+ ,%� ���6+ �+ ��'�%� .��.� )�� 9'�%� ���6� ��� 9�+��� �/ ��� ���

��%�+' �/ �,*� '�+�%,���+� �� *,+ � ���+� ��� 9�+��� %�,*��� -�,1� ,� '�+�%,���+ .� �� ,+�

�/�%� %�,*��+' ��� (,&�(�( ,� '�+�%,���+ �� ,+� ���+���� )���� -�,1� ,%� ��1��� ���

�� ��� %,+��(�K,���+ �/ ��� �+���,� -������+ ,+� �%��+�,���+ �/ ��� %� ��� 6��*� *,+ '��� ��(�

�+������,�� �+ �,%�� '�+�%,���+ , ��'� 9�+��� � *�,+*����

Generation

Fitness

0

0.2

0.4

0.6

0.8

1

0 5 10 15 20 25

Fitness of the best string

Figure 2-12: �� 0����� �� �� ���� ������� � ��� ����������

)���� �+*�%�,�+���� *�( �+�� 6��� ��� ������ (�+���+�� �+ ��� -%������ ��*���+ %�',%��+' ���

4� '����+' ���*1 �+ ��*,� �-��(, ,+� �����%,--�+' (�,+� ��,� ��������+� �/��+ �,�� �� �

%�+ , +�( �% �/ ��(�� 6��� ��A�%�+� �+���,� -�-��,���+� �/�%� ,+� *�+*�����+� *,+ � �%,6+�

11%� ��� ��� �$������� �������� ���� ��� �"""�� ����� ���� � �� ���� ����� � ������ �� ���� �� ��� 7������� ��� ���� �� �$� � � ���� ����� ���� ))� �� ))�# ���� �� � ��� 7����� �� ����8� ���� "�� � ��

12�� ����� ������ ��$�� ��� ��$��� ��� ���� ����� �� )"D �� ��� �� � ��� �� E������ � 2�� �� ������ �� ��� ����������� �� � ��� ����� � �������� F����������# �� �� �� �� ��� �� ��� � ���� ,�� � ���� � � ����0 ��� ����� ������ � ��$�� ���� � ,� �2� � 0 ��� ���� 7����� �� �����$�� ��� ��� ��4��� ��� � � �� ���$�� ��� � �2 �� ����� �#��� ������ ������ ����

Page 32: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

2.4 Summary Theoretical Foundations

��� ������

�+ ���� *�,-��% 6� �+�%���*�� �,%���� ��-�� �/ ,%��9*�,� +��%,� +��6�%1�� , +,��%���+�-�%�� �+�

/�%(,���+ -%�*����+' -,%,��'(� �+ 6��*� ����%,� ,%��9*�,� ���� �� �% +���� ,%� *�++�*��� ��

�,*� ����% ,+� �� ��� �+��%�+(�+� /%�( ,+� �� 6��*� �+-�� ,+� ���-�� �� -%������� 8� �,6

��6 ,+����% +,��%���+�-�%�� ,--%�,*�� +,(��� ��������+,%� *�(-��,���+� *,+ � ���� �� 9+�

�������+� �� �-��(�K,���+ -%� ��(�� ��*� ,� ��� -%� ��( �/ ,���'+�+' ����, �� 6��'��� �� ��'��

��6��+ +��%�+� �+ ,%��9*�,� +��%,� +��6�%1� /�% , '���+ �,�1� ��+,���� 6� ���*����� ��(� %��

*�+��� ������-�� (������ /�% *�( �+�+' +��%,� +��6�%1� ,+� '�+���* ,�'�%���(�� %����+' �+

�������,+��*�+;��% ��%,��'���� ��������+ �/ 6��'��� ,� 6��� ,� (�%-����'���� ,+� ��� ��� �/

�+��%� ,%%,�� �/ +��%,� +��6�%1� �+ %� �� *�+�%����%� ��(���,+�������

��6 ��,� 6� �,�� ���*����� ��� ����%���*,� /��+�,���+� /�% ��% ����� 6� 6��� (��� �+ �� ��(�

�/ ��� -%,*��*,� ������ %��,��� �� ��������+,%� %� ���*�� �+ ��� +�&� *�,-��% 6� 6��� -%���+� ,

*����(� ���� ��(��,��% ��,� ,���6� �� �� -�%/�%( %,-�� -%�����-�+' �/ ���,� ,+� �� ���� �,%����

��������+,%� ����-��

��

Page 33: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

������ � ����������������

�%��9*�,� ��������+ �/ *�+�%����%� �� �/��+ ��+� �+ ��(��,���+ /�% -%,*��*,� %�,��+�� �� �� +�� �+�

*�((�+ ��,� �����,+�� �/ ��%�+'� H�% �+������,��I �,�� �� � ��,��,��� �/�%� , '��� �������+

�� /��+� ,+� ���+' �� �+ ��/�6,%� *,+ � �%��%� �/ (,'+����� /,���% ��,+ �+ %�,� %� ���� ��%�

���%(�%�� ���%� �� +� %��1 �/ �,(,'�+' �,%�6,%�� +� +��� �� %��*,�� %,�� ��+��%� ,+� ,*��,��%��

,+� %� ��� �� +�� %�+ ��� �/ ,���%�� �+ ��(��,���+�

3�����+' *�+�%����%� �+ ��/�6,%� ��(��,��%� �� +�� , -�%/�*� �������+� ��6���%� ��+*� �%,+�/�%%�+'

*�+�%����%�� 6��*� �,�� ��+ ������� �+ ��/�6,%� ��(��,��%�� ��**���/���� �� -����*,� %� ��� ��

, +�+��%���,� �A�%�� �+ ������� *�+�%����% (�'�� %��� �+ �� ��� *��� ,+� ��((��%��� -%���+�

�+ , ��(��,��� �+��%�+(�+�� 6��*� ,%� ���'���� ��A�%�+� �+ ��� %�,� 6�%��� %�,� ��+��%� ,+�

,*��,��%� ,%� +�� ���,�� (�,+�+' ��,� ���� ,%� +�� ,�6,�� ,� ,**�%,�� ,� �+� *���� ��-� /�%�

,+� 9+,��� ��� *�(-��& ��+,(�*� �/ ��� %�,� 6�%�� *,++�� � ��(��,��� -�%/�*���� ��� �����

,�-�*�� �,�� �� � �,1�+ �+�� ,**��+� �/ ��� *�+�%����%� ������� �+ ��/�6,%� ,%� (�,+� �� �

���� �+ -����*,� %� ���� P+/�%��+,����� ���%� �� +� '�+�%,� (����� �� �+��%� ��,� *�+�%����%�

������� �+ ��/�6,%� ��(��,���+ ,%� �%,+�/�%, �� �� -����*,� %� ���� �+ � ����� ,--%�,*� �� ��

�%� �� (,1� ��� ��A�%�+*�� ��6��+ %�,���� ,+� ��(��,���+ ,� �(,�� ,� -���� ��� ���� �� ������-

�% ��� *�(-��& ��/�6,%� ��,� ,���(-�� �� ��(��,�� %�,���� /,���/����� )��� �� ��-�*,��� ��+� �

(�����+' ��� �� ��� �+ ��'� ���,�� ,+� � ���+' , ��/�6,%� ��+,(�*� �+'�+�� ��*� ,� Q�%��&

,+� 5-�+ ��+,(�*� 3+'�+� H5�3I� �� ��(��,�� ��� ��,���% ,+� �+��%,*���+ ��6��+ ��%��,�

� 7�*���

� *�(-��(�+�,%� ,--%�,*� �� �� ��� ��+��%� %�,��+'� �,(-��� /%�( -����*,� %� ���� ��% ��(�

��+��%�� ��1� /�% �+��,+*� �+/%,�%�� -%�&�(��� ��+��%�� �� �� -���� �� �� %�*�%� %�,��+' /�% �,%����

*�+�����+�� ��*� ,� ,+'��� ,+� ����,+*�� �� � ��,*���� ,+� �� ��;��+��� ��� ����� �+ ��(��,���+�

F�6���%� ���� �� ��1��� �� �+����� �������� �%%�%�-%�+�� (,+�,� 6�%1 �+ �%��% �� � �,�+ , ��@*��+�

+�( �% �/ �,(-��� ,+� ��� ,--%�,*� %�;��%�� ��,� ��+��%� �� ��,�� �+ ��� �&,*� �,(� 6,�

,� 6��+ �,(-��� 6�%� %�*�%��� ,/��% ��� *�+�%����% �,� ��+ �%,+�/�%%��� :�%����%� �/ (����-��

%� ��� ,%� ����� ���� (�'�� � ���'���� ��A�%�+� ,+� ���+ �/ �+�� %� ��� /%�( 6��*� �,(-���

�,�� ��+ %�*�%��� ,+� ���� �+ ��(��,���+ ,%� �(-����� �+ �&-�%�(�+��� ��� *,�� %,���+ �/

��� ��+��%� (�'�� �,�� �%�/��� �% *�,+'��� ��% ��(� ��+��%�� ��1� , *,(�%, ��+��%� �� *,+ �

-%,*��*,��� �+/�,�� �� �� ��� %�,� �,(-��� /�% ��(��,���+�

�+����% 6����� ����� %��,������ �+�&-�+����� ��%,��'� /�% �,��+' ��� �%,+�/�% �/ *�+�%����%� /%�(

��(��,���+ �� %�,���� �+������ ,���+' +���� �� ��+��%� %�,��+' ,+� �� ,*��,��% ���-��� DL,1� ��

��E� D:�'��+� �� ,��� ��E� )�� �A�*� �/ ,���+' +���� �� �6��/���� ��,� ��+��%� ,+� ,*��,��%�

1G�����# �� ������# ��� � ����� ����� �� �� ���� ��� ��� ����������� ����� �$��$� � ��������� �� �� ���� �+�������� �� ����� ��> ��� ���� ��� �� ����� ����� �� �� �� ��$� �� ����� � �� �� ���� ��� ���� ��� � �������$�� ���� ���

Page 34: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.1 Major Requirements Building a Simulator

,%� +���� � +,��%� ,+� *�+�%����%� ������ � %� ��� �+��'� �� �,+��� ����J /�%���%(�%�� ���'��

��A�%�+*�� ��6��+ ��� ��(��,��� ,+� %�,� ��%���+� �/ ��� ��+��%� ,+� ,*��,��%� ,%� �(�����+��

� ��� +����� 8���� ,���+' +���� �� ��+��%� ,+� ,*��,��%� ���� +�� �+0��+*� ��� -�%/�%(,+*�

�/ ��(��,��%� ��'+�9*,+���� ��� ��� �/ ���,���� %� �� ,+� �+��%�+(�+� (����� ,+� %�'�� ���

��(��,��%� �,� , ��'� �(-,*� �+ ��� +�( �% �/ !�P *�*��� %�;��%�� /�% %�++�+' ��������+ �+

��(��,���+�

��%�+' ��� ��/����(� �/ ��� �6,%(� ��� -%�7�*� , +�( �% �/ ��(��,��%� �,�� ��+ ���� ,+� ,

;��*1 6� ��,%*� ���6� ��,� ����%,� '�+�%�* ,+� ,%*����*��%���-�*�9* (� ��� %� �� ��(��,��%�

�&���� <�� 6� ,%'�� ��,� +�+� �/ ����� ,%� ���,� /�% ��% -�%-��� ,+� ���%�/�%� 6� ������- ,

*����( ��(��,��%� �+ ���� *�,-��% 6� -%���+� , *����( ���� ��(��,��% /�% -�%/�%(�+' �,%����

+��%����������+ �&-�%�(�+�� �+ ��(��,��� �� ����

��� +���� ��,�������

$���6 6� ���� ,+� ���*��� ��(� �/ ��� (,7�% %�;��%�(�+�� /�% , ��/�6,%� ��(��,��%�

����������% � ��(��,��% �� +����� /�% ������+' +��%,� +��6�%1 *�+�%����%�� )�� ��(��,��%

������ ,���6 �� �� *�(-,%� ��A�%�+� +��%����������+ ��%,��'��� /�% ������+' , *�+�%����%�

6��*� ������ ��� �,�1 �/ (���+' , �6,%(� �� /%�( ,+ �+���,� -������+ �� , �,%'�� 6����

,�����+' ������

������� ��&��������% �+ �%��% �� �&-�%�(�+� 6��� ��A�%�+� ��������+,%� ,--%�,*��� �+�

�/ ��� (��� �(-�%�,+� %�;��%�(�+�� �� ��,� ��� ��(��,��% �� ��%�,����� ��,� ��� �� ������

� -���� �� H,+� �,��I �� *�,+'� �� �� /�,��%��� ,%�+, �,����� ��������+,%� ,�'�%���(�

*�+�%����% ��-��� ,+� �� �+� �/ /�% �+��,+*� �� �� +�*���,%� �� ��,��,�� ��6 ,+ �+������,�

������� �+ �+� ,%�+, -�%/�%(� �+ ,+����%� �� ������ � �,�� �� �� ��� (�,+�+' ��,�

�� ������ +�� �+����� %�*�(-��,���+� �% *�,+'�+' *�+9'�%,���+ 9���� ?�1�6���� �%��+'

�� ������ *�+�%����%� ���+' ��A�%�+� 9�+��� /�+*���+� ,+� 6��� ��A�%�+� +��%����������+

(������ ������ +�� %�;��%� %�*�(-��,���+ �����%� 4���+ ��,� , �,%'� ,(��+� �/ �%�,��

,+���%%�% �� +�*���,%�� �� �� �(-�%�,+� ��,� �������+� ,� �,%���� ��,'�� *,+ � ����,��K��

H��'� ��� ��� %� ��H�I (��� ,%��+� �+ ��� ��%��,� 6�%��I� ����� �+ ��+��%� ,+� ,*��,��%�

,+� -���� �� ����% /�,��%�� �/ , ��(��,��% ��-�+� �+ , %,+��( +�( �% '�+�%,��%� ��

�� �(-�%�,+� ��,� ��� %,+��( '�+�%,��% *,+ � *�+�%����� �� ��,� , ��(��,���+ %�+ ��

����%(�+����*� )��� (�,+� ��,� �/ �6� �% (�%� ��(��,���+� ,%� ��,%��� 6��� ���+��*,�

�+���,� *�+�����+� H�+*����+' ���+��*,� %,+��( �����I� ���� ,�6,�� -%���*� ��� �&,*� �,(�

%��������

'�(#������ ��&��������% ��+*� 6� ,%� +�� �+�� �+��%����� �+ , *�+�%����% ��,� -�%/�%(�

��� �,�1� �� �+��+� �� *�(-,%� ��A�%�+� +��%����������+ ��%,��'���� ��� -�%/�%(,+*� �/

��� ��(��,��% �� �(-�%�,+� �*,��� , �,%'� +�( �% �/ ��������+� ,%� +�*���,%� �+ �%��%

�� ���6 ��,�����*,� ��'+�9*,+*� �/ ��% %������� ��� �� ��� -�%/�%(,+*� %�;��%�(�+�� H,+�

2'��� ��=�������� ����� ��8�� �� ������ �$��������# ���� �� � �$�������� �� ��� ���� ��� � �� ����� � ��� ����������� �� �� ��� ��� �+ ���� ��� � �� �������

��

Page 35: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Building a Simulator 3.1 Major Requirements

'��� ��/�6,%� �+'�+��%�+' -%,*��*�� �+ '�+�%,�IJ �� �� �(-�%�,+� ��,� ��� ��(��,��% *,+

� *�(-���� ,+� %�+ �+ �,%���� -�,�/�%(� ,+� %�+ �+ *�����%� ,+� '%���� �� ,���6 /�%

�����K,���+ �/ �,%���� *�(-���+' %����%*��� )�� (,7�%��� �/ ����� ,%*����*��%�� %�+ ��(�

0,��% �/ P��O� ,+� 6� ���%�/�%� %�;��%� ��,� ��� ��(��,��% ,� ��,�� *�(-���� ,+� %�+� �+

, �5��O�� *�(-��,+� �-�%,��+' �����(��

)*���� ��&��������% 8� �� +�� ��� �+��%�+(�+�� H,%�+,�I 6��� %��'� ��%%,�+ �% � ��,*����

5�% %�;��%�(�+�� /�% , ��(��,��% �+ ��%(� �/ �+��%�+(�+� (������+' ,%� ���%�/�%� ��(����

�� -�,�+ �+��%�+(�+�� *�+�,�+�+' ������ 8� �� +�� +��� �� �,+��� �� ��"�� �� *�������+�

+�% �� ��"6,�� *�������+�� F�6���%� '���+ ��,� ��� �� ��� ,%� ,���( ��� �+ �6,%(� ��

/�%(,���+ ��� ��(��,��% �,� �� (���� ��� ��+,(�*� �/ ��*� , ��� *�%%�*���� )�� ���-��

�/ ��� �%,*���+ ��+��%� 6��*� ,���6� �� ��� �� ����*� /�%*�� ,*��+' �+ ��� ��%%�� �+ ���

��%�K�+�,� -�,+�� �� ��-�+��+� �+ ��6 ��� ��+,(�*� ,%� *�(-����� )�� �%,*���+ ��+��%

-�,�� , *�+�%,� %��� �+ �+, ��+' �� ��� �� (��� *��%��+,���� �+ �6,%(� �� /�%(,���+�

3,*� �� �� *,+� /�% �+��,+*�� ,��'+ �����/ �� ��� (����+ �/ ��� %��� �/ ��� '%��- ���+' ���

%�,��+'� �/ ��� �%,*���+ ��+��% D)%�,++� �� ,��� . E�

)��� �,& %�;��%�(�+� *�+*�%+�+' ��� ��+,(�*� %�-%���+�� , ��%�+' ��(��,���+ �+ ��%(� �/

��� ��-� �/ �&-�%�(�+�� /�% 6��*� ��� ��(��,��% *,+ � ����� F�6���%� ��(� �/ �����

��(��,���+� *,+ �,���� � ���%*�(�� 3&��+��+' ��� ��(��,��% 6��� *�������+� ������ �

��%,�'���/�%6,%� ,+� ��� %�,��+ ���+� �� +�� ��+' �+*����� ��%� �� ��,� *�������+� ,%�

+�� %����,+� /�% ��% ������ ��--�%� /�% %��'� ��%%,�+� �+ ��� ����% �,+�� �� +�� , -%��%���

,� ���� ��,'�� ��+*� (,+� %� �� -�,�/�%(� �� +�� ��--�%� ��*� ,+� ��(���+' ��� ��(��,��%

�+ ���� 6,� �� ��1��� �� �,�� , ��'+�9*,+�� -������� �(-,*� �+ ��� -�%/�%(,+*��

)���� 6�,� �� +����� �� , 0�&� ��� ��'� -�%/�%(,+*� ��(��,��% *,-, �� �/ %�++�+' ��������+� �+

P��O ,+� ?�+�& (,*��+��� )�� ��(��,��% -%������ /�,��%�� /�% ����,��K,���+ �/ ��� -�%/�%(,+*�

�/ ������� *�+�%����%� ,+� �� ������ ,���6 /�% �&-�%�(�+��+' 6��� �,%���� ����-� ,+� ��������+,%�

,�'�%���(��

����� &$����� ����� ��

)�� %���,%*� *�+��*��� �+ ��% �, %��,��� ��� �� ��� -�,�/�%( �,� �-�+ �A , +�( �% �/ ��A�%�+�

��(��,��%�J ��(� ,%� ���� �+ ��- �/ Q�%��&� , *�((�%*�,� %�'�� ��� ��+,(�*� ��(��,��%� ,+�

, (�%� %�*�+� ��(��,��% �� ,��� �+ 5-�+ ��+,(�*� 3+'�+� H5�3I ,+� /%��� �-�+����%*�

,���%+,����� )���� ��(��,��%� ,�( ,� '�+�%,���� ,+� *�%%�*�+��� �+ ��%(� �/ -����*,� ��+,(�*

��,���% ,+� %��-�+�� �/ ��%��,� � 7�*��� ����%,� ��%���+� �/ ����� ��(��,��%� �&���� '��+' /%�(

(�+�(,� ��(��,��%�� �+ 6��*� �,*� �� �� �� (������� ,� , �& �+ 6������ �� (�%� *�(-��&

����-�� 6��%� ���%� (,7�% -,%� ,+� ��%��,��� ,�� 7��+�� �/ ���%� �� �� ,%� (������� �+ ���,���

��� �� ����% '�+�%,����� ��� *�+9'�%,���+ ,+� ����- �,�1 �� %��,������ �������J , +�( �% �/

-,%,(���%� /�% ���%� � 7�*� �+ ��� ��%��,� 6�%�� �,�� �� � �-�*�9��� ��*� ,� 6��'��� (,��%�,��

/%�*���+� -������+� ��*� ��% ��� �&����+' ��(��,��%� ���� �� *�%%�+��� ��+� � �,+�������+' (����-��

��6������ *�+9'�%,���+ 9��� HO:?I�

�� ��� ����% �+� �/ ��� �*,�� , *��-�� �/ ��(-��� �-�*�,��K�� ��(��,��%� �,�� ��+ ������-��

6��%� �+� �% /�6 �� ��� (��� ,%��+� �+ , .� 6�%��� )���� ��(��,��%� �,+��� 0,� ��%%,�+ ,+�

��(� ���+ �� ��"�� �� *�������+��

��

Page 36: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.1 Major Requirements Building a Simulator

)��%� �&��� , (�������� �/ /%���� ,�,��, �� %� �� ��(��,��%� ������-�� � �,%���� ,*,��(�*

�+��������+�� :,+� ,%� �-�*�9* �� *�%�,�+ %� ��� ,+� *�%�,�+ ��-�� �/ %� ���� ��*� ,� ���

G��-�%, %� �� ,+� �+����%�,� %� ���� %��-�*������� � /�6 ��(��,��%� ,�( ,� ��+' '�+�%,� /�%

(� ���� *��-�%,���� %� ���*�� 5+� �/ ��� (�%� 6����1+�6+ �� ��,��%"��,'�� 6��*� �� ,+ �-�+

���%*� -%�7�*��� 6��� *�+�%� ���%� /%�( -%����'���� �+��������+� ��*� ,� ��,+/�%� P+���%���� ,+�

P+���%���� �/ ������%+ !,��/�%+�,� ��,��%"��,'� ,*��,��� *�+����� �/ �6� ��-,%,�� �� �+��%�

�-�%, �� -%�7�*���

��,��% �� , %� �� ����*� �+��%/,*��

)����� �� ���� � ���� �# ������� � � ������ � � � � ��� ���� � ���������

)������� ����1������ � ��� ��� �� � � � ��� � �� ����� � �� ������ �

��� �� ������� �������� ��� � ��� � ��� ������ ��� � ���� �# ��

��� � � ��� � � �� )����� ���� ��� ������� ������� ���� ���� ��

� ������ ������ ��� � ������� � � ��������� ��� ���� ����� ������

��� ��� �� )����� ���� ��� � ��� ������ � � ��� � � �� ��� ���� ����

playerstage.sourceforge.net

8���� ��,'� �� , (�����%� �� ��(��,��%�

.���� �������� � � ����� � � � ��� � � �� � ��� � ��� ������ � �� �

����� ��� �������� ���� ������ 2�� �� ���� � � ���� ��� �� �����

������ � ���� ������ ����� ����������� ��������& � ����� ��� � �

�� � ����� � ��� � ������ .���� ����� ������� � �������� )����� ��

������ � ��� � � ������ ��� ��3���� � � �� ������� ������ � ���

��������� .������ ��� ����� ������� � .���� ���� ���� ��� �������� �

� �# � ���� � � ���

playerstage.sourceforge.net

�%�( ��� ��*���+� , ���� ��,��%"��,'� ���( �� (��� (��� ��� %�;��%�(�+�� /�% ��� ��(��,��%�

��6���% ��,'� ���� +�� -%����� ��� ��+,(�*� ��,� 6� %�;��%� ,+� ��� ��(��,���+ ��'�* �/ ,+

�� �� ,+� ��� ��+��%� ,+� ,*��,��%�� 6���� +��� �� � �(-��(�+��� �+ ���� ��(��,��%� )����

�� 6���� �,1� , ��'+�9*,+� ,(��+� �/ 6�%1 �� ,�� ����� /�,��%�� �� ��,��%"��,'� ,+� ���%�

6���� � ,+ ���%��,� ,���*�,��� 6��� ��+��+' ��+��%� %�,��+'� ,+� *�+�%�� ,*���+ ��%��'� ���

+��6�%1 -%���*�� ��,*1� :�%����%� ���+ ����'� ��,'� *,+ ��(��,�� (����-�� %� ���� �,*� %� ��

�,� �� *�++�*� �� ��,'� ��-,%,����� (,1�+' ��� ��(��,���+ ����- *��� ;���� ��'� H%�(�( �%

��,� ��+*� 6� 6,+� �� %�+ ��������+� 6� �,�� �� ����- , +�6 ��(��,���+ ,� ��,�� �+*� /�% �,*�

�+������,� ��,� 6� 6,+� �� ��,��,��I�

����� ("� )� ��"�� ����� �*

8� �,�� *����+ �� ������- ,+ �+��%��� +�6 ��(��,��% /�% (����-�� %�,��+�� ��� �6� (,7�% �+��

��+' ���� ����� ,+� 4� ����� 8��+ ��� 6�%1 ���*%� �� �+ ���� ������ �',+ , +�( �%

�/ ��(��,��%� 6��%� ������� 8�� /�% �+��,+*�� ��,��,��� �+� �/ ��� (�%� (,��%� ��(��,��%�

*,���� (5.. 6��*� ���� ��� Q�%��& ��+,(�*� �+'�+�� F�6���%� 6��� ��� ,�,��, �� �,%�6,%�

��

Page 37: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Building a Simulator 3.1 Major Requirements

%����%*��� ,+ ,��%,'� ��,��,���+ *�+�����+' �/ � �+������,�� -�% '�+�%,���+� �,*� ��,��,���

/�% *�+�%�� *�*��� H ��*�+��I� /�% � '�+�%,���+�� �,1�� ,+ ,��%,'� �/ � ��. ���%�� ��6

�+ �%��% �� �%,6 ,+� '�+�%,� *�+*�����+� �+ ��� /�,�� ����� �/ , '���+ ��������+,%� ����-� �� ��

+�*���,%� �� %�+ (����-�� ��������+� 6��� ��A�%�+� �+���,� %,+��( ������ ��++�+' ,� ��,�� �

,+� �/��+ . �% (�%� ��������+� �� *�((�+ -%,*��*� �+ ��� ����%,��%�� 6��*� (�,+� ��,� , '���+

��������+,%� ��%,��'� �,1�� (,+� �,�� �� ��,��,��� �/ �+�� /�6 ��%,��'��� +��� �� � ��,��,����

���� �� +�� , (,7�% -%� ��(� F�6���%� , ��'+�9*,+� ,(��+� �/ �%�,��,+���%%�% �� �/��+ +�*���,%�

�+ �%��% �� ��,-� ��������+ �� ��,� ��� �������+� /��+� ,%� �,���/,*��%� ,+� ���� ��� ��,��,���+

��(� (,1�� ��� 6���� -%�*��� ��������

����%+,������� ��� �-�*�,��K�� .� �� �� ��(��,��%� -�%/�%( �%��%� �/ (,'+����� /,���% ��,+ ,+� �/

��� ��(��,��%� ���� �+ ��+,(�*� ��(��,��%�� �� ���� ,%� �-�*�,��K�� /�% -,%��*��,% -�%-���� ,+�

���%�/�%� ���� �,*1 (,+� �/ ��� /�,��%�� ,+� ��� 0�&� ����� ��,� 6� %�;��%�� 5+� �/ ��� ��(-��%

��(��,��%� *���� � ,�,-��� �� ��% +����� �� ��� ,�,-�,���+ 6���� ��1��� �,1� ,� ��+' �% ��+'�%

��,+ ������-�+' , ��(��,��% /%�( �*%,�*�� :�%����%� +�+� �/ ��� ��(-�� ��(��,��%� (��� ��%

%�;��%�(�+�� /�% ��+,(�*� %��,��� �� (���(�+� �+ �6,%(� �� /�%(,���+ ,+� �� *�(-��,���+

�/ �%,*���+ ��+��% %�,��+'��

�+ , 9%�� ,���(-� �� ������- ��% �6+ ��(��,��% 6� �%��� �� *�( �+� ��� 0�&� ����� ,+� *�%%�*�

��+,(�*� �/ (�%� *�(-��& ��(��,��%� ,��� �+ -����*� �+'�+�� 6��� ��� -�%/�%(,+*� �/ ���

��(-��% .� ��(��,��%�� 8� �%��� �,%���� �*��(�� /�% �-��(�K�+' ��� ��� �/ , ��+,(�*� �+'�+�

� �&-�����+' ��� /,*� ��,� 6� �+�� +��� 0,� ��%%,�+ 6��� ����� ,+� ��,� �� ��� ,%� ,�6,��

,���( ��� �+ �6,%(� �� /�%(,���+� �/ 6� (,1� ����� ,���(-���+� �,*� �+������,� �� �� +����

+�� �� � %�-%���+��� �+ ��� �6+� ��-,%,�� *�������+ �-,*�� �� �+���,� , 6���� �6,%(� �� *,+

� %�-%���+��� ,� , ��+'�� *�(-��+� � 7�*� �+ ��� �6+ *�������+ �-,*�� 6��*� '%�,��� %���*��

��� *�(-��,���+,� *�(-��&��� /�% ��� ��+,(�*� �+'�+�� ��(��,%��� �+�� 6�%1�+' 6��� 0,� ��%%,�+

6��� ����� �-�+� /�% ��(� �-��(�K,���+ -���� ������� ,� , �6,%(� �� �+�� +��� �� %��,�� �+ �6�

��(�+���+� H�+���� �� �� /,���+' �+�� , ����� �� �+ ���� *,�� 6� *,+ ���- ��� ��(��,���+� �� 6�

7��� +��� �� ����%(�+� 6��+ , %� �� 6���� /,�� �+�� , ���� ,+� +�� �� ��(��,�� ��� ,*��,� /,��I�

)�� %������+' ��(��,��% ���6�� -%�(���+' -�%/�%(,+*� %������ 6��+ ��(��,��+' /�6 HR�I %� ����

, ��� . �� � ��(�� /,���% ��,+ :���� F�6���%� ��� �*,�, ����� �/ ��� ,--%�,*� -%���� -��%� )��

%�,��+ /�% ��� �*,�, ����� ������ �� ��,� �,*� *�++�*���+� ��%��'� *�������+� ,+�"�% 7��+��� ��6��+

����� H�% � 7�*��I %�-%���+�� , *�+��%,�+�� ,+� /�% m *�+��%,�+�� ��� �&,*� ,�'�%���( ���� �

5�3 %�;��%�� O(m2) �-,*� ,+� O(m3) ��(� /�% �,*� *�*��� 3��+ 6��+ ��� +�( �% �/ 7��+�� ��

(�+�(�K�� � �����+' ,+ �+��%� �6,%(� �� � %�-%���+��� � , ��+'�� ��� 6��� (����-�� 6������

��� -�%/�%(,+*� ,+� �*,�, ����� 6,� ����� 6,� +�� �,���/,*��%�� 8� �%��� �,%���� ,--%�&�(,���+

�*��(�� ���� �+�� 5�3� ��6���%� ��(��,���+� �*,(� �+��, ��� 3��+ , *�( �+,���+ �/ ���

�&,*� (����� ,+� �,%���� ,--%�&�(,���+ �*��(�� -%���� �+��**���/���

)��%�/�%�� , ��*����+ 6,� (,�� �� �(-��(�+� , .� ��(��,��%� )6����� 6��� , *����( %�'�� ���

�+'�+�� �-�*�,��K�� �� �,+��� �+�� ��� ��+,(�*� /�% , �6,%(� �� �+ 0,� ��%%,�+ 6��� ������ 4���+

��,�� ���+ �+ ��(� �/ ��� (�%� *�(-��& ��(��,��%�� *�++�*���+ ��6��+ �� ��� ,%� ,���(��

3*$ �� ��� � � � �� ���������� �) ������ *1H *����� �<""��<""C �� �� � �! � � .������ �< IB8 �� ���� �� ������� ��� ���� ������ �� ��� � � J���� ��� �� � �� �� ��� ��������� �� � �� � $� �+�����$� ������� ��� ���� �� ��� ���������� �����# �� � ��# �! �3G�

��

Page 38: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.2 Design Building a Simulator

�� � %�'��� ��� �+��%� �6,%(� �� *,+ � �%�,��� ,� , ��+'�� ��� �+ 6��*� �,*� �� �� �&�%��

, /�%*�� )��� %���*�� ��� *�(-��,���+,� %����%*�� +�*���,%� /�% *�+��*��+' ��(��,���+� ,+�

��������+� ��'+�9*,+���� ,+� �(-%���� �*,�, ����� �*,��� ��� ��(� *�(-��&��� �*�(�� O(n)�6��%� n �� ��� +�( �% �/ �� ���� �+ ��� +�&� ��*���+ 6� -%���+� ��� ����'+ ,+� ��(� �/ ���

/�,��%�� �/ ��% ��(��,��%�

��� -��)�+ ���� ��*���+ 6� -%���+� ��� (,7�% ���,� ���+� ��� ��(��,��% ,+� ��� �(-��(�+�,���+ �/

��������+,%� ,�'�%���(�� )��� ��*���+� ��'����% 6��� ��� ���%*� *���� ������ -%����� , %�,��%

0��+� �+ !SS 6��� ,+ ���%���6 ��@*��+� �� (,1� *�,+'�� ,+� ,������+� �� ��� ���%*� *����

)�� ����'+ ,� ��+ ������� �+�� ��%�� ��*���+�� +,(��� �+� �+ ��� ��(��,��%� �+� �+ ��� ����'+

�/ ��� ��������+,%� ,�'�%���(� *�(-�+�+�� ,+� �+� �+ ��� ���%,�� -%�+*�-��� ,+� ��� 9+�����

-��*� �/ ��/�6,%� � ,+ �@*��+� �&-�%�(�+�,� -�,�/�%( /�% +��%����������+ �/ *��-�%,����� (� ���

%� �� *�+�%����%��

)�� *��� �� 6%����+ �+ � 7�*���%��+��� !SS �+ F�+',%�,+ +��,���+� �� *�(-���� ,+� %�+� �+

�5��O�� *�(-,�� �� �-�%,��+' �����(� ��*� ,� ?�+�&� ,+� 6��� %��,������ /�6 *�,+'� �� ������

� *�(-��, �� ,+� %�++, �� �+ ����% �-�%,��+' �����(� ��*� ,� :�*%���/� 8�+��6�� ,�����'�

���� ��� �� � ������� ����*�+/ ,+� ,���(,1� /%�( ��� 4�P ��������� ,%� ���� /�% ��-�+��+*�

*��*1�+' ,+� ���� (,+,'�(�+�� g++ ��%���+ ��� /%�( ��� 4�P !�(-���% !����*���+ �� ���

*�(-���% ��,� �,� ��+ ���� ��%�+' ������-(�+��

����� �"� ����� �+ �����

)�� '�,� �/ ��� ��(��,��% �� �� ��(��,�� , ��%��,� 6�%�� ,+� ��� �+��%,*���+ ��6��+ , +�( �%

�/ �� ��� ,+� ��,��* � 7�*�� �+ ,+ ,%�+,� !�+�%�� -%�'%,(� %�++�+' �+ -����*,� %� ��� �/��+

�-�%,�� �+ ���*%��� *�*���� �+ �,*� *�*�� ��+��%� �+-��� ,%� %�,�� ��� *�+�%����% ��*���� ��6

�� ,*� ,+� ���� ��� ,*��,��%� ,**�%��+'��� ?�1� (,+� ����% ��(��,��%�� )6���� /����6� ����

���*%��� ��+���,*���-�,�� -,���%+ ,� ,+ ,--%�&�(,���+ �/ *�+��+���� ��(�� )�� ��(��,���+

*�*�� �� ���6+ �+ ��'�%� ���J 9%�� ��� ��%��,� 6�%�� �� ��� �-� ���+ , *�*�� �� �+��%�� 6��%� 9%��

��� ��+��%� %�,��+'� ,%� *�(-���� ,+� /�� �� ��� %� �� *�+�%����%� 6��*� �+ ��%+ ����%(�+�

��� ,*���+� �/ ��� %� ���� )�� ��,�� ,+� ��(� �/ ��� ��%��,� 6�%�� �� ���+ �-�,��� � (���+'

� 7�*�� ,**�%��+' �� ��� /�%*�� *�%%�+��� ,*��+' �+ ���(�� ��+,���� ��� ��,�� �/ ��� ��%��,� 6�%��

*,+ � ����,��K�� �/ ��� ���% �� %�++�+' ��� ��(��,��% �+ �+��%,*���� (���� )�-�*,��� �� ��� %�+

, *�+�%�� *�*�� ���%� 0.1 ��*�+��� ���� -�% ��/,��� �+� ��(��,���+ *�*�� *�%%��-�+�� �� 0.1��*�+�� �/ ��%��,� ��(� �� ��� *�+�%�� /%�;��+*� *,+ � ,�7������ 3,*� �-�,�� �/ ��� ��%��,�

6�%�� �� %�/�%%�� �� ,� , ������ � �����

#��������

�+��%+,��� ��� ��(��,��% *�+����� � , +�( �% �/ � 7�*�� �/ *�,���� %�-%���+��+' �+������ ��*�

,� ��� ��,��* -,%�� �/ ��� ��%��,� 6�%�� H��� ,%�+,I� �� ���� ��+��%�� ,+� ,*��,��%�� ��� *�,����

4�� �� ����� �� � ������ �� ����� �� ������� �� �� ������ '��� �� ��� � ��������� � � �� ����� �� �� ���� ������� ��2� .HJ � K����+

��

Page 39: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Building a Simulator 3.2 Design

Set up the virtual world

Draw frame

Sense and act

Update world state

Figure 3-1: �� �������� � ������ � ������� � ���� ���� ������ ������ ���������� ��� ���� ��� ������ ��� ��������� �� ����� �� �� ������ ����� �� ����� ��� �� ������ � '� ������ ) �����4���

�&*�-� /%�( %�+��%�%�� 6��*� ,%� %��-�+�� �� /�% ����,��K�+' ��� ��(��,���+� �+��%�� /%�( , %���

*�,�� *,���� CSimObject� )�� *�,�� CSimObject *�+�,�+� , /�6 *�+��+��+� (������ ,+�

,���6� ,�� � 7�*�� �� � �,''�� 6��� , ��%�+' ��+���+' , ��(,+ %�,�, �� +,(�� (�*� ��1� ���

toString() (����� �+ L,�,� ��%���%(�%�� ��+*� � 7�*�� �/ ��� ��-� CSimObject *,+

� ,���� �� ����% CSimObject � 7�*�� ,� *����%�+� ,+ � 7�*� �%�� *,+ � ����� )��� ��

*�+��+��+� /�% -,���+' ���+��� ��*� ,� ��� ��,%� �/ , +�6 ��(��,���+ *�*��� ���% �+��%,*���+� ,+�

�*%��+ %�/%����� �� ,�� � 7�*�� 6������ %����+' �+ ��(� �+���� �,��+' , '�� ,� ���6 �/ ��� �+��%�

�����(� ��*�+�%,��K,���+ �+ '�+�%,� �� , '��� ��/�6,%� ����'+ ��%,��'� 6��+���% -���� ��� ��+*�

(,+� *�,+'�� ,+� ,������+� *,+ � 1�-� ��*,� ,+� �� +�� %�;��%� *�(-����� '�� ,� 1+�6���'��

5 7�*�� �/ ��� *�,�� CSimObject �,� /��% �(-�%�,+� (������ ���6+ ���6�

CSimObject::

virtual void AddChild(CSimObject* pc_child);

virtual void SimulationStep(unsigned int n_step_number,

double f_time,

double f_step_interval);

virtual void Draw(CRenderer* pc_render);

virtual void Keypressed(int n_keycode);

)�� 9%�� (������ AddChild()� ,�� , *���� �� ��� *,���� � 7�*�� ��� CSimObject � 7�*�� ,%�

%��-�+�� �� /�% /�%6,%��+' ���+�� �� ����% *����%�+� (�,+�+' ��,� 6��+ SimulationStep()

�� *,���� �+ ,+ � 7�*�� �� ������ *,�� ��� SimulationStep()(����� �+ ,�� ��� *����%�+� )���

�� ��+� ,���(,��*,��� � ��� (������ �(-��(�+��� �+ CSimObject� ���� , +�6 *�,�� �+�� �,�

�� �&-��*���� /�%6,%� ���+�� �� *����%�+ /�% ��� (������� 6��*� �� ���%%�����

��

Page 40: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.2 Design Building a Simulator

SimulationStep() �� *,���� �,*� ��(� ��� ��(��,���+ �,1�� , ���-� 5 7�*�� �+ )6����

,%� %��-�+�� �� /�% �-�,��+' ����% �6+ -������+� ��*� ,+� ���� ������ �� �� � ���%%���+'

��� SimulationStep() (����� ,+� -�%/�%( ����% ,*���+� �,*� ��(� �� �� *,����� )��

-,%,(���% n_step_number %�/�%� �� ��� ��'�*,� +�( �% �/ ��� *�%%�+� ��(��,���+ ���-�

6���� f_time ��+���� ��� ��%��,� ��(� �+ ��*�+�� /%�( ��� �'�++�+' �/ ��� ��(��,���+� ,+�

f_step_interval ��+���� ��� ��%��,� ��(� �+��%�,� ��6��+ ��(��,���+ ���-��

)�� (����� Draw() �� �+�� *,���� 6��+ ��� ��(��,��% �� %�++�+' �+ �+��%,*���� (���� ,+� �� ��

*,���� 6��� %�/�%�+*� �� ��� %�+��%�% ��,� ������ � ����� � %�+��%�% �/ ��� ��-� CRenderer

�,� (������ /�% �%,6�+' ��'������� -%�(������ ��*� ,� �� ���� ,%�+,�� ,+� ��'����

Keypressed() �� *,���� 6��+ ��� ���% -%������ 1�� �,%� �+-��� 8��+ ��� ��(��,��% ��

%�++�+' �+ ����,��K,���+ (���� ��� 1�� �,%� *,+ /�% �+��,+*� � ���� �� *�+�%�� �+������,� ��

���� /,���/�%6,%��+' ��� ��(��,���+���(�� ,���+' ,+� %�(��� ��'��� ��*� �*��,���� ��+*� ,��

�+��,+*�� �/ ��� *�,�� CSimObject ,%� +���9�� ���%� ��(� ��� ���% -%����� , 1��� �+��%,*������

*,+ � ,���� �+ ,+� -,%� �/ ��� ��(��,��% 6��� ������ �A�%��

������'� ��� ���, , ��� �,��+' , %����� *�,�� ���%,%*�� 6��� ��+'�� ��-�%�*�,�� 6��� (������

%,+'�+' /%�( �%,6�+'� �� �,+���+' ���% �+-��� ,+� �� *�+�%����+' ��� ��(��,���+ (�'�� ���(

*�(-��&� ��� ���,� *��� �+ ��� *�,�� ,(��+�� �� ���� ��,+ � ��+�� �/ *���� F�+*�� ��� *�+*�-�

�� ;���� ��(-��� ��� -�6�%/�� '���+ ��,� �� %����� �+ ��*�+�%,��K,���+ ,+� ��� %�*�%���+� )�

������%,�� ����� 6� -%����� ,+ �&,(-��� ����(� ��,� 6� +��� �� �%,6 , /%,(�J ��� %�+��%�%

*,��� Draw() (����� �+ ,+ � 7�*� �/ ��� *�,�� CSimulator� ��% (,�+ *�+�,�+�% /�% ,�� ����%

� 7�*�� �+ ��� ��(��,���+ H��� ��'�%� ��.I� �/ ��� ��(��,��% +���� �� -�� ��(� ��,��� �+/�%(,���+

�+ ��� /%,(�� ��1� , ��(��,���+ ��(�%� �� ���� �� ,+� ���+ *,��� ��� Draw() (������ �+ ,��

��� *����%�+� )�� B*����%�+C �/ ,+ � 7�*� ��+���� ��� ��� �/ � 7�*�� ��,� ��� � 7�*� ,''%�',����

6��*� �+ ��� ��(��,��%>� *,�� �� ,+ ,%�+,� , +�( �% �/ �6,%(� ���� -���� �� ��'��� ,+� �� �+�

8��+ ��� Draw() (����� �/ ,+ �� �� �� *,����� ��� �� �� �%,6� �����/� �% %,���% *,��� ���

%�+��%�% �� �,�� ��� �� �� �%,6+� ,+� *,��� ,�� �/ ��� *����%�+>� Draw() (������� )�� *����%�+

�/ ,+ �� �� ,%� ��+��%�� ,*��,��%�� , *�+�%����% ,+� ,+� ����% �� �*�,�� �/ CSimObject� 6��*�

(�'�� � *�+��+��+� �� �,�� ,� , *���� �/ ,+ �� ��� ��6 ,���(� ��,� 6� ,� ��(� -��+� +��� ��

,�� , ��(����� ���%*� �� ��% ��(��,��% ,+� ��,� �� ������ � �%,6+ 6��+���% ��� ��(��,��% ��

%�+ �+ ����,��K,���+ (���� �+ �%��% �� �� ��� 6� ��(-�� (,1� ��% ��(����� ���%*� *�,�� �+��%��

/%�( CSimObject ,+� ,�� �� ,� , *���� �� ��% ��(��,��% H�% �� ��� ,%�+, �/ 6� -%�/�%I� �/ 6�

���%%��� ��� Draw()� Keypressed()� ,+� SimulationStep() (������ �+ ��� ��(�����

���%*� *�,�� 6� *,+ *�+�%�� ��� ,--�,%,+*� ,+� ��,���% �/ ��� ���%*�� �� *�,+'�� ,%� +�����

�+ ��� ��(��,��% *�,�� �����/� ,� �� ���� , ��(����� ���%*� ,� ,+� ����% CSimObject � 7�*��

)�� *�,�� ��,'%,( �/ ��� ,��* ��%�*��%� �� ���6+ �+ ��'�%� ��.� )�� %��� *�,��� CSimObject�

,+� , /�6 ,�&���,%� *�,���� �,�� ��+ �(����� /�% %�,�, ������ �� ��� ��- �/ ��� 9'�%� ��%��

*�,���� ,%� ���6+� CRenderer� CSimulator ,+� CFitnessFunction� )�� �,���% ��

�%,6+ �+ �,���� ��+�� ��+*� ��� 9�+��� /�+*���+ �� ��'�*,��� -,%� �/ ��� ��������+,%� ,�'�%���(�

*�(-�+�+� ,+� +�� ��� ��(��,��%� �� '���+ ��,� ��� 9�+��� �*�%� �� *�(-���� ,��� ��� ,+

�+������,�>� -�%/�%(,+*� �+ ��(��,���+� ��� 9�+��� /�+*���+ +���� ��%�*� ,**��� �� ��� ��,�� �/

��� ��(��,��%� )�� CSimulator *�,�� �+*,-���,��� ,+ �+��%� ��(��,���+ ,+� *�+����� �/ ,+

,%�+, �+ 6��*� , +�( �% �/ �6,%(� ��� (���� )�� *�,�� �� %��,������ ���+ ,+� ������ /%�(

��

Page 41: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Building a Simulator 3.2 Design

CFitnessFunction

1 1 1 0..*

1 0..*

1..*

0..* 0..* 0..*

GetNumberOfOutputsSetOutputComputeReadings

GetNumberOfInputsGetType

HasFallenIntoAHoleAssembleSwarmBotGetVelocity

m_fMomentumm_fMomentOfInertiam_vForcem_vVelocity

DrawSbotDrawArenaDrawLight

GetType

m_fTimem_fTimeLimitm_fStepInterval

TakeSimulationStep

GetTime

CSimulator

GetArenaSetStepInterval

HasEnded

AddSwarmBot

EndSimulation

SetStepInterval

AddLight

GetHeightGetResolutionGetSizeAddSoundGetSounds

GetLight

CSwarmBot

GetSbots

CSbot

GetTreelForceGetChassisRotationSetColor

AddSensorAddActuatorSetController

CNNControllerCPerceptronControllerCMultileyerControllerCElmanControllerCKeyboardController

CTractionSensorCRotationSensorCGroundSensorCLightSensorCSoundSensor

CTreelsActuatorCSoundActuator

CProgrammedArena

GetFitness

CSimpleDrawStuffRenderer

CNullRenderer

CPrintfDebugSensor

CNoisySensor

CLesionSensor

CNoisyActuator

CPrintfActuator

CRenderer

CArena

CActuatorCController CSensor

Figure 3-2: � 5%( ������ �� �� ��������� �� 0���� ���� �� ��� ������� ������� �� ��� � ����4������ ��� ������� ���� � ���� CRenderer �������� �� CSimObject ����� �� �������� � �� �����

Page 42: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.2 Design Building a Simulator

1��-�+' �%,*1 �/ ��(� ,+� ��� ��,�� �/ ��� ��(��,���+ H�����% %�++�+' �% +�� %�++�+'I� �� ��

��(-�� , *�+�,�+�% /�% ��� � 7�*�� �+ ��� ��(��,���+�

)�� , ��%,*� CRenderer *�,�� ��9+�� , ��� �/ (������ /�% ����,��K�+' ��(��,���+�� 3,*�

��(� , /%,(� ������ � �%,6+ ��� %�+��%�% *,��� ��� Draw() (����� �+ ��� ��(��,��%� 6��*�

�+ ��%+ *,��� ��� �%,6 (����� �+ ,�� ��� *����%�+ %�*�%������ ,� ���*%� �� , ���� ��+*� ���

CRenderer �+�� ��9+�� ��'������� -%�(������ ��1� DrawSbot() ,+� DrawArena() ,+� +��

��6������ -%�(������ /�% �%,6�+' �%�,+'���� %�*�,+'��� �% ,��1�� �(-��(�+�,���+� *,+ %,+'� /%�(

.� �� �� ,+� /%�( ��&�� ,��� �� /���� ��6+ '%,-��*� ����,��K,���+� �� ��� ��(� �/ 6%���+'�

��%�� �(-��(�+�,���+� �/ %�+��%�%� �&���� � +��� %�+��%�%� ,+ 5-�+4? %�+��%�% ,��� �+ ���

�%,6���A �� %,%�� 6��*� �� , -,%� �/ 5�3� ,+� , '+�-��� %�+��%�%�

����

)�� ��,��* -,%�� �/ , ��%��,� 6�%��� %�/�%%�� �� ,� ��� ,%�+,� ,%� �+*,-���,��� �+ ��� *�,��

CArena� �%�+,� ,%� �6����(�+���+,� ,+� �,*� -��+� �/ ��� ,%�+, ��%/,*� *,+ �,1� ��%��

�,���� H�% ���'���I� ��%(,�� ����� ,+� � ��,*���

�+ ,%�+, �,� , ��K� ,+� , %��������+� )�� ��K� *�%%��-�+�� �� ��� -����*,� ��K� 6����+ ��� ��%��,�

6�%�� H�+ (���%�I� 6���� ��� %��������+ ��+���� ��6 (,+� -��+�� ���%� ,%� �+ �,*� ��(�+���+

�+ *,�� �/ ���*%��� ,%�+,�� !�+��+���� ,%�+,� �,�� �+9+��� %��������+�� ,+� ���� ,%� ���,���

��9+�� ,+,����*,��� H���� �� *�+��+��+� �/� /�% �+��,+*�� ,+ ,%�+, 6��� , *�%*��,% ���� �,� �� �

(�������I� 6���� ���*%��� ,%�+,� ,%� �-�*�9�� ,� , �6����(�+���+,� ,%%,� �/ -��+��� 6��*� �,*�

-��+� *�%%��-�+�� �� ��� ���'�� �/ , %�*�,+'��,% ���� �+ ��� ,%�+,� �+ ,%%,� �/ -��+�� *,+ /�%

�+��,+*� � �-�*�9�� � ,+ ,%%,� �/ *�,%,*��%�� 6��%� �+� ��-� �/ *�,%,*��% H, 6���� �-,*�I

�-�*�9�� ��� -%���+*� �/ , ���� �+ , -,%��*��,% ����� 6���� ,+����% HBXCI ��+���� ,+ � ��,*���

��*� ,� , 6,�� ,+� 9+,��� , *�,%,*��% /�% ��� -,%�� �/ ��� ,%�+, �+ 6��*� %� ��� *,+ (���

HB#”I� �+ �&,(-�� �/ ���� �*��(� �� ���6+ ���6 /�% ,+ ,%�+, *�+�����+' �/ �&�� ������

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

X#######################################X

X## ### # # ##### ##### ##X

X## ### # ##### ##### ##### ## ##X

X## # ### ##### ##### ## ##X

X## ### # ##### ##### ##### ## ##X

X## ### # # # # ##X

X#######################################X

X## ### # # # ##### ###X

X## ### # ## # ## # ##### ## ##X

X## ### # ## # ## ##### ## ##X

X## # # # ## # # ## ##### ## ##X

X### ## # ## # # ###X

X#######################################X

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

��

Page 43: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Building a Simulator 3.2 Design

)�� ,%�+, *�+�,�+� ��� �6� 6�%�� BF3??5C ,+� B85�?�C 6%����+ �+ ���� ����� /%,(�� � ,

6,��� )�� *�%%��-�+��+' �� %�+��%�� ��%���+ �/ ��� ,%�+, *,+ � ���+ �+ ��'�%� ����

Figure 3-3: �� ���� �� �� � ������� ����� �������� � 61�

)�� -����*,� ��K� �/ ,+ ,%�+, �� �+��-�+��+� �/ ��� %��������+� �+ ��% �&,(-�� , ���� 6� �,��

*����+ ��� ,%�+, �� �,�� ��� -����*,� ��(�+���+ &� (���%�J ��6���%� 6� *���� �,�� *����+

��+'�� ,+� 6���� ,% ��%,%����

)��� 6,� �/ �-�*�/��+' ,%�+,� ,���6� ��� ���% �� %,-���� �%� �,%���� ,%�+,� 6������ �,��+' ��

�-�*�/� , ��� �/ (����� ,+� ����% �� *��%��+,��� �+ O:? 9��� ,� �� �� ��� *,�� 6��� ��(� ����%

��(��,��%�� �*��,���� *�+��%�*��+' ,+ ,%�+, ��1� ��� �+� ���6+ �+ ��'�%� ��� 6���� � , �������

�,�1 6������ ��� ,�� �/ ��(� �� (������+' ���� �/ ,�� *��%��+,��� �,� �� � *,�*��,��� ,+�

��-�� �+ � �,+��

�+����% �+�9� �/ *�+��%�*��+' /%�( , +�( �% �/ �;�,������K�� ����� 6��� ��A�%�+� ���'���

,%%,+'�� �+ , �6����(�+���+,� '%�� �� ��,� ,�(��� ,�� *�(-��,���+� %��,��� �� %� ��",%�+,

�+��%,*���+ ,+� ,%�+, ;��%��� �+ '�+�%,� *,+ � ��+� �+ *�+��,+� ��(�� ��% �+��,+*�� �+ �%��% ��

����%(�+� �/ �+� �/ ��� �%���� �/ , %� �� �� �+ ��� ,%�+, ��%/,*� �% �/ �� �� *�%%�+��� ���% , �����

�� �� �+��'� �� (,1� , *�+��,+� ��(� ���1�- �+ ��� *�,%,*��% ,%%,� ��9+�+' ��� ,%�+,�� )����

��� ��(� *�(-��&��� �/ %�++�+' ��(��,���+� �� +�� ,A�*��� � ��� *�(-��&��� �/ ��� ,%�+,� )��

*�(-��&��� �/ ��� ,%�+, �+�� ,A�*�� ��� %�+���(� �+ *,��� 6��%� 6� ��� ��+��%� ��-�+��+� �+

%,��*,���+' H��'� , *,(�%,I�

#�����*��' �&��' ����������' ����' ��� ��������

)�� CSwarmBot ,+� CSbot *�,���� �(-��(�+� ��� ��'�* *�+*�%+�+' �6,%(� ��� ,+� �� ����

%��-�*������� )�� CSwarmBot *�,�� �(-��(�+�� ��� ��+,(�*� /�% �6,%(� ���� � �6,%(� ��

5�� ���� ����� � �H ����� ���� �������� ��E���� ����� � $� �� �� ����2� # ����� ���� � �� �� ����� ����� ���� �� �2 ����� �7�� ��������� ��� ��� ��� # ����� �� '��H�� �� ���� ����� �� ���� ���� �����

Page 44: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.2 Design Building a Simulator

*,+ *�+���� �/ �+� �% (�%� �� ����� )�� CSbot *�,�� �(-��(�+�� ��� *�+*�-� �/ , ,%�� �+��

�� �� �� 6��*� , +�( �% �/ ��+��%� ,+� ,*��,��%� ,� 6��� ,� , *�+�%����% *,+ � ,����� F�+*�� ,�

��*� ��� CSbot *�,�� �(-��(�+�� ��� '��(��%�*,� -%�-�%���� �/ ,+ �� ��� 6���� ��� *,-, �������

,%� ,���� ,� *����%�+� )��%�/�%�� �� �� +�� +�*���,%� �� �,�� �,%���� �-�*�,��K,���+� �� ���

��-�+��+' �+ 6��*� ��+��%�� ,*��,��%� ,+� *�+�%����% �+� 6����� �� ���J ��� *,-, ������� �/ ���

�� �� *,+ � ����%(�+�� ,+� ,�7����� ,� %�+���(��

:����-�� *�+�%����%� �&���J �+� ��,� ,���6� ��� ���% �� *�+�%�� �+� �% (�%� �� ��� �+��%,*������

��, ��� 1�� �,%� ,+� ����%,� ,%��9*�,� +��%,� +��6�%1 *�+�%����%� �-�*�,��K�� /�% ��A�%�+� ��-��

�/ +��6�%1�� � +�( �% �/ ��+��%� ,+� ,*��,��%� �,�� ,��� ��+ �(-��(�+��� ��'����% 6���

��������� �� ,+� ���������� ��� 6��*� ,��� /�,��%�� ��*� ,� �� �''�+' ,+� +���� �� �&����+'

��+��%�� ��� ��'�%� ��.�

#�����*�� ����� �

)�� *����( -����*� �(-��(�+��� �+ )6���� �� ,��� �+ ��,+�,%� .� %�'�� ��� -����*� 6������

7��+��� 8� ��(-�� �%�,� , 6���� �6,%(� �� ,� , ��+'�� ��� ,+� ��� �,*� �/ ��� �� ��� � ,

/�%*� �+ ��� ���� )�� ��( �/ ��� /�%*�� ,+� ��%;�� �+ ��%+ ����%(�+�� ��� ,**���%,���+ ,+�

��� ,+'��,% ,**���%,���+ �/ ��� 6���� �6,%(� ��� )��� /�+�,(�+�,� ����'+ *���*� �,� �+�

�(-�%�,+� *�+��;��+*�� !�++�*���+� ��6��+ �� ��� ,%� ,���(�� �� � *�(-������ %�'�� ,+�

�+9+����� ��%�+'� 5 �������� ���� �� , *%��� ,--%�&�(,���+ ��+*� ��*� *�++�*���+� ,%� �(-���� ��

�+ -%,*��*�� )�� %�'�� '%�--�% ,*��,��� ���� (��� , ������ ��� ��%�K�+�,��� ,+� ��%��*,��� 6���

%��-�*� �� ��� '%�--�� �� �� 6��+ *�++�*��� �� ��� (��� ,%��+�� F�6���%� ��(� �/ ���

����% (�%� *�(-��& ��(��,��%� (,1�� ���� ,--%�&�(,���+ ,� 6���� ,+� ���+ ��(��,��%� 6��%�

��� '%�--�% �� (������� ,� , ��� �/ (����� ,+� 6��%� *�++�*���+� ,%� �(-��*�� ��%��'� (���

*�������+�� �� +�� ��(��,�� %�,���� *������ ��� �� ��� *�+��+���� ,+� *�(-��& +,��%� �/ ���

-����*,� �+��%,*���+� %��-�+�� �� /�% ��� *�++�*���+� ��6��+ �� ����

� *�+*���� ��� ���%��'�� �+�%���*���+ �� %�'�� ��� ��+,(�*� *,+ � /��+� �+ F�*1�% D�#,E�

F�*1�% D�# E� F�*1�% D��,E ,+� F�*1�% D�� E� $���6 6� -%���+� ,+� ���*��� (,���(,��

�*,� /%,(�6�%1 ��,� 6� ��� �� *�(-��� ��� ��+,(�*� �/ �6,%(�$��� �+ )6�����

+���� ,����

?�� r ��+��� ��� .� -������+ ��*��% �/ , '���+ � 7�*�� ,+� ��� v � ��� � 7�*�� ����*���� �/ 6�

��� t ��+��� ��(�� ���+ ��� ����*��� �� ��� ��%��,���� �/ ���-�,*�(�+��

drdt

= v H���I

)�� %��,���+���- ��6��+ ,**���%,���+� a� ,+� ����*��� �� ��(��,%�

dvdt

= a H��.I

�**���%,���+ �� �+ ��%+ ����%(�+�� � ��� (,��� m� �/ ,+ � 7�*� ,+� ��� /�%*��� F� ,*��+' �+ ���

6���� ����� ���������� ���� �� � �� ���� � 2� � �� �� ��� ������ �� ���� �� ������# ����$��# �� ����� ��8��� ��� ����� ��� �� �� � �� ������ � � ��� ������� �� ������ ����� �� �� �� �� � ��� �� ��� ���� ������� ������� �� ���� ��� �� ��� ����� ���# ����� ������ �� ���� ��� �� �� �������

��

Page 45: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Building a Simulator 3.2 Design

a =Fm

H���I

�/ 6� 1+�6 ��� -�6�% �/ ��� ���*�%�* (���%� �%���+' ��� �%���� �/ ,+ �� ��� ��� �%��+�,���+ �/ ���

*�,���� ,+� ��� (,�� �/ ,+ �� ��� 6� *,+ ��(��,�� ��� (���(�+� �/ ,+ �+��%� �6,%(�$�� �

��((�+' ��� /�%*�� ,*��+' �+ ��� *�(-���+' ��� ,**���%,���+� ����*��� ,+� 9+,��� ���-�,*�(�+��

�� 6���� � ��%,�'���/�%6,%� �� �(-��(�+� , ��+,(�*� �+'�+� �/ ��+�,% (����+ 6,� ,�� ���%� 6,�

�� ��� ��6���% �6� �(-�%�,+� *�(-�+�+�� ,%� (����+'� +,(��� �%��+�,���+ ,+� /%�*���+�

-��������

�����*,� � 7�*�� %,+'�+' /%�( ���(�+�,%� -,%��*��� �� ��,%� �-�+ ,%��+� ���(������� )�� ��

����� � �/ ,+ � 7�*� ,+� ��� ;�,+������ ������� ��� ��� ������� ������� �� ,+� � �3�� ,%�

%��,��� �� ���� ��-� �/ (����+� 6��*� �� *�(-��(�+�,%� �� ��+�,% (����+� !�,+'�� �+ �%��+�,���+

,%� ��1� *�,+'�� �+ ���-�,*�(�+� ��-�+��+� �+ ��� /�%*�� ,*��+' �-�+ ��� � 7�*�� )�� ��-�

�/ (����+ %������+' /%�( , '���+ /�%*� ��+' ,--���� ��-�+�� �+ ��� -��+� �/ ,--��*,���+ ,+�

��� ��%�*���+ �/ ��� /�%*�� )%� /�% �+��,+*� �� -��� , -�+ �+ ��� ���1 �+ /%�+� �/ ���� �/ ���

-��� �� H,--�� , /�%*�I -�%-�+��*��,%�� *���� �� �+� �/ ��� �+��� �� ��(-�� %��,���� �� �/ ���

-��� �� �+ ��� (����� ��� 6���� -�+ (���� ��+�,%��� 8� +��� �� ��(��,�� ��� ��-�� �/ 1�+���*

;�,+������� ��+*� �� ��� (���+' �+ �6,%(� �� /�%(,���+ ��+� �� �/��+ *�,+'� ����% �%��+�,���+�

6��� %��-�*� �� �+� ,+����%�

��+*� 6� �+�� +��� �� ��,� 6��� ��+,(�*� �+ �6� ��(�+���+� ��� �%��+�,���+ �/ ,+ � 7�*� *,+

� ���*%� �� � , �*,�,% *�%%��-�+��+' �� ��� ,+'�� ��6��+ ��� �%��+�,���+ �/ � 7�*� ,+� ���

6�%�� *��%��+,�� �����(� 8� ��� ٠��+��� ���� ,+'��� )�� ;�,+���� 1+�6+ ,� ������� ��� ���

ω� ��'� ��6 /,�� ,+ � 7�*� �� %��,��+'� �� ��� ��%��,���� �/ ��� �%��+�,���+�

dΩdt

= ω H��I

�+� ��� ,+'��,% ,**���%,���+� α� �� ��� ��%��,���� �/ ��� ,+'��,% ����*����

dt= α H���I

$�/�%� 6� *,+ 6%��� ��6+ ,+ �&-%�����+ /�% ��� %��,���+ ��6��+ ��� /�%*�� ,--���� �� ,+

� 7�*� ,+� ,+'��,% ,**���%,���+ 6� ��9+� �6� *�+��+��+� (�,��%��� )�� *�+��% �/ (,�� ,+�

��� (�(�+� �/ �+�%��,� 8� *,+ *�+����% , �6,%(� �� ,� , ��� �/ -��+�� *�%%��-�+��+' �� ���

�� ���� )�� *�+��% �/ (,��� rCM � �� ���+ '���+ ��

rCM =∑

i rimi∑i mi

, H��#I

6��%� ri ,+� mi �� ��� -������+ ,+� ��� (,�� �/ -��+� i� %��-�*�������

�/ 6� ��� ��� �%��+�,���+ �/ �,*� -��+� �+ ,+ � 7�*� � ��9+�� 6��� %��-�*� �� ��� *�+��% �/

(,��� ��� 1�+���* ;�,+���� 1+�6+ ,� � ���� � ������ �� '���+ ��

I =∑

i

mi|ri − rCM |2 H���I

��

Page 46: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.2 Design Building a Simulator

)���� ��� ��( �/ ��� (,�� �/ �,*� �� ��� (����-���� � ��� �;�,%� �/ �� ����,+*� /%�( ��� *�+��%

�/ (,��� �+ ��� .� *,�� 6� ���+ ��� ��� ������ � -%���*� ��6��+ �6� ��*��%� �� 9+� ���

*�+�%� ����+ �/ , /�%*�� F� �� ��� B,+'��,% /�%*�C 1+�6+ ,� ��%;�� ,+� ��+���� � τ �

τ = (ri − rCM ) ·⊥F H���I

6��%� ·⊥ ��+���� ��� -�%-�+��*���K�� ��� -%���*� �% -%�-���� -%���*��

A ·⊥B = −AyBx + AxBy. H��I

)���� 6� �,1� ��� ��*��% ��,%��+' �+ ��� *�+��% �/ (,�� ,+� �+��+' �+ ��� -��+� �+ 6��*� /�%*��

F� �� ,--���� ,+� ���������&� ���� ��*��% � %��,��+' �� π2 *��+��%�*��*16���� ,+� �,1� ��� ���

-%���*� ��6��+ ��� -�%-�+��*���K�� ��*��% ,+� ��� /�%*�� �+ �&,(-�� �� ���6+ �+ ��'�%� ��J

��� ��%;�� �+ %������+' /%�( F ��+' ,--���� �+ ri �� �&,*��� ��� ��� -%���*� ��6��+ F ,+�

A⊥ �% ��� -�%-���� -%���*� ��6��+ A ,+� F�

rCM

A

A⊥

F

ri

Figure 3-4: �� 0���� ���� �� ���� �� �� � ����� F ���� � ��� � � ��� ri��� ������ A � �� ������ ���� �� ������ �� ���� rCM �� �� ��� ��� ������ ri� ��� A⊥ ������� A$� �� ������4�� ������ �� ���7��� ��� ���� �� �� ��� ������ ������� A⊥ ��� F�

��+,���� 6� *,+ 6%��� ,+ �&-%�����+ /�% ��� %��,���+���- ��6��+ ��� /�%*�� ,--���� �+ ,+ � 7�*�

,+� ��� ,+'��,% ,**���%,���+�

7* �H $����� A = (Ax, Ay) �� � ���� ������ �����8� �� ��� �� π2� � �� ������������2����� A⊥ = (−Ay, Ax)

��

Page 47: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Building a Simulator 3.2 Design

α =τ

IA. H��� I

8��� ���� �&-%�����+ 6� *,+ +�6 *�(-��� ��� ,+'��,% ,**���%,���+� ,+'��,% ����*���� ,+� ���

�%��+�,���+ , �6,%(� �� ,��� �+ ��� /�%*�� ,--���� � ��� �%���� �/ �,*� �� �� �+ ��� /�%(,���+�

�������

)��%� ,%� �6� ��-�� �/ /%�*���+� +,(��� ��,��* /%�*���+ ,+� 1�+���* /%�*���+� ,+� 1�+���* /%�*���+

*,+ ,',�+ � ������� �+�� �����+'� %����+' ,+� 0��� /%�*���+� ��% ���% -�%-���� �� ��@*�� ��

*�+����% �+�� �+� ��-� �/ 1�+���* /%�*���+� +,(��� �����+' /%�*���+� ��,��* /%�*���+ ����%(�+�� ��6

(�*� /�%*� �� �,1�� �� -�� ,+ � 7�*� �+�� (����+� 6���� ��� 1�+���* /%�*���+ ,--���� �+*� ���

� 7�*� �� �+ (����+�

)�� /%�*���+ /�%*�� Ff � �� '���+ � ��� /����6�+' �&-%�����+�

Ff = μfFp H����I

6��%� μf �� ��� ��� � �6��� ,+� Fp ��� � ���� � ��� )�� +�%(,� /�%*� �� ��� /�%*�

-�%-�+��*��,% �� ��� *�+�,*� ��%/,*�� 6��*� �+ ��% *,�� ,�6,�� �;�,�� ��� /�%*� �/ '%,���,���+

��(�� ��� (,�� �/ , '���+ � 7�*� ��+*� 6� �+�� *�+����% 0,� ��%%,�+� ����*� ��,� ��� /%�*���+

/�%*�� Ff � �� , �*,�,% ,+� +�� , ��*��%� )��� �� �*,��� /%�*���+ ,�6,�� ,*�� �+ ��� ��%�*���+

�--����� �� ��� ��%�*���+ �/ (����+ /�% 1�+���* /%�*���+ ,+� ��,��* /%�*���+ ��+���� ��� ��K� �/

/�%*� +�*���,%� �� -�� ��� � 7�*� �+�� (����+ ,+� ���%�/�%� �,� +� ��%�*���+�

�+ ��% *,��� ��6���%� ��� /%�*���+ /�%*� �� , �� (�%� *�(-��*,���� ��+*� 6� ,%� +�� ��,��+' 6���

-,����� � 7�*��J �� %,���% 6� �,�� , �6,%(� �� ��,� *�+����� �/ , +�( �% �/ �+��%*�++�*����

,*���� � 7�*��� 6��*� ��� ��� /%�*���+ ��6��+ ��� ��%/,*� ,+� ����% �%���� �� -%�-�� ���(�������

-���� �� �+ ��A�%�+� ��%�*���+�� �(,'�+�� /�% �+��,+*�� �6� �� ��� *�++�*��� �� �,*� ����% �%��+'

�� (���J �/ ���� �%� �� (��� �+ *�(-���� �--����� ��%�*���+�� ��� /�%*�� ��(-�� *,+*�� �,*� ����%

���� 6���� �/ ���� ,���(-� �� (��� �+ ��� �,(� ��%�*���+� 6� �� +�� �,�� �� �,1� /%�*���+� �+

��� *�,���*,� ��+��� �+�� ,**��+�� �+ ,�� ����% *,��� ��� /%�*���+ ��-�+�� �+ ��� �%��+�,���+ ,+�

�-��� �/ ��� �%���� �/ �,*� �+������,� �� �� �+ ��� �6,%(� ���

8� ������ /%�*���+ �+�� �6� *�(-�+�+��� )�� ��+�,% /%�*���+ ,+� ,+'��,% /%�*���+� :�%����%� 6�

�����+'���� ��6��+ ��� ����,���+ �+ 6��*� ��� �%���� �/ ,+ �� �� �� (���+' H1�+���* /%�*���+I ,+�

6��+ ���� ,%� +�� (���+' H��,��* /%�*���+I ,� -%,*��*,� �&-�%�(�+�� ���6 ��,� (���+' �%����

�&�%� (�*� ���� /%�*���+ ��,+ +�+�(���+' ������� ��+*� (���+' �%���� ���- �,���%�

%���� ��� �

8� ,���(� , /%�*���+ (���� 6��%� ��� /%�*���+ *,���� � �,*� �� �� �� '���+ � ��� /����6�+'

�&-%�����+ �/ ��� �6,%(� �� �� (���+'�

Ff = (1 − cos θ)μf |Ft| H���.I

6��%� μf � ��� /%�*���+ *��@*��+�� �� �����% μm �/ ��� �%���� ,%� (���+' ,+� μn �/ ��� �%���� ,%�

+�� (���+'� θ ��+���� ��� ,+'�� ��6��+ ��� *�%%�+� ����*��� ��*��% ,+� ��� �%��+�,���+ �/ ���

��

Page 48: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.2 Design Building a Simulator

�%���� ,+� Ft ��� /�%*� �/ ��� �%����� �/ ��� �6,%(� �� �� +�� (���+' ��� /%�*���+ �/ �,*� �� ��

�� '���+ ��

Ff = (1 − cos Θ)μf |Fp| H����I

6��%� μf � ��� /%�*���+ *��@*��+�� �� �����% μm �/ ��� �%���� ,%� (���+' ,+� μn �/ ��� �%���� ,%�

+�� (���+'� Θ �� ��� ,+'�� ��6��+ ��� *�%%�+� ��( �/ ,�� ��� /�%*�� ,*��+' �+ ��� �6,%(� ��

,+� ��� /�%*� �&�%��� � ��� �� ��� ,+� Fp ��+���� ��� +�%(,� /�%*�� �/ ,+ �� �� �� -,����� ,+�

+�� �&�%��+' ,+� /�%*� �+ , ��,��* �6,%(� ��� 6� ��(-�� ��� ��� ��,+�,%� 9*���+ (���� ���6+

�+ H����I 6��� μf = μn�

������� ��� �

�+'��,% /%�*���+ ��� ��1� ��+�,% /%�*���+� ������� �+�� �6� *,���� +,(��� �+� /�% 6��+ ��� ,+'��,%

����*��� �� K�%� ,+� �+� 6��%� ��� ,+'��,% ����*��� �� +�+�K�%�� �+ �� �� �+�� *,���� ,+'��,%

/%�*���+ �/ �� ���� +�� �&�%� , ��%;�� 6��� ��� �,(� ��'+ ,� ��� ,+'��,% ����*��� �% ��� ���,�

��%;�� �/ ��� �6,%(� �� �/ ��� ,+'��,% ����*��� +�+�K�%� ,+� K�%�� %��-�*������� )�� /%�*���+ �+

,+'��,% (����+ �� '���+ ��

FΩ = μg|A||Fp| H���I

6��%� μg� ��� ,+'��,% /%�*���+ *��@*��+�� �� �����% μm′ �/ ��� �%���� ,%� (���+' ,+� μn′ �/ ���

�%���� ,%� +�� (���+'� |A| ��� ��+'�� �/ ��� ��*��% /%�( ��� *�+��% �/ (,�� �� ��� �� ��� ,+�

|Fp| ��� ��K� �/ ��� +�%(,� /�%*��

8� �,�� ,��� ��% /%�*���+ (����� �+ �+������+ ,+� �&-�%�(�+�,���+� ,+� ����� 6��� �������

*�+�%����%� �+ -����*� %� ��� ���6 ��,� ���� /%�*���+ (���� �� ��@*��+��� *���� �� %�,���� �� ,���6

*�+�%����%� �� � �%,+�/�%%��� �/ , (�%� ,**�%,�� �% , ��A�%�+� /%�*���+ (���� �� +������ ���+

�� *,+ /,�%�� �,���� � �(-��(�+���� ��+*� ��� /%�*���+ (���� �� ����,��� �+ , ��+'�� -,%� �/ ���

*���� )�� 9*���+ *��@*��+�� *,+ ,+� ������ � ,�7����� /�% , -,%��*��,% ,%�+, ��%/,*� �+ ���

��(��,��%�

#������

)�� /����6�+' ���-� ,%� �,1�+ �+ �%��% �� *�(-��� ��� ��+,(�*� �/ , �6,%(� ���

�� ��% , �6,%(� ��� *�(-��� ��� *�+��%��/�(,�� ,+� ��� (�(�+� �/ �+�%��, ,� ��� *�+��%�

�/�(,���

.� ��� ��� �+���,� -������+ ,+� �%��+�,���+ �/ ��� �6,%(� ��

�� ?�� ��� %� ��� ��+�� ,+� ,*��

85��� �� � ��� ����� �+���� �� �� ������ �� ��� ������ �� � ����� ���� � �� ��� �9������ ������� ��������� ���� � ���� �� ��� ������ ��� �� ��� $������� �� ��� �� ������

9�� �� ��� ���� ��� �������� �� � �� � �� ���� �� �� ������ � �� �� ��� �� �> ��� �� � �������� ���� ��� �� ������ ����� � � � �� ���� �� # �� ���� � ��� �� �� ���� ������ ��2� .HJ �� K����+# ������� ���� ���� � 2����� �9���# ����� ����� ������� ��=���� �� ��� �H �� ��� �� ��� ��E���� ������� �� ��� ����� ����

��

Page 49: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Building a Simulator 3.2 Design

� !�(-��� ,�� ��� /�%*�� �+ ��� �6,%(� ��� �+*����+' ����% -��+�� �/ ,--��*,���+�

�� ��( ,�� ��� /�%*�� ,+� ������ � ��� ���,� (,�� �/ ��� �6,%(� �� �� 9+� ��� ��+�,%

,**���%,���+ ,� ��� *�+��% �/ (,���

#� ��% �,*� /�%*�� /�%( ��� -�%-���� -%���*� /%�( ��� *�+��% �/ (,�� �� ��� -��+� �/

,--��*,���+ ,+� ,�� ��� �,��� �+�� ��� ���,� ��%;�� ,� ��� *�+��% �/ (,���

�� ������ ��� ��%;�� � ��� (�(�+� �/ �+�%��, ,� ��� *�+��% �/ (,�� �� 9+� ��� ,+'��,%

,**���%,���+�

�� !�(-��� ��� /%�*���+ ,+� ,�7��� ��� ��+�,% ,+� ,+'��,% ,**���%,���+ ,**�%��+'���

� ��(�%�*,��� �+��'%,�� ��� ��+�,% ,+� ,+'��,% ,**���%,���+� �-�,�� ��� ��+�,% ,+� ,+'��,%

����*������ ,+� 9+,��� ��� -������+ ,+� �%��+�,���+ �/ �,*� �� ���

� � P-�,�� ��� *��*1 ,+� '� �� ���- ��

+� �

��� (�,��%�� ,+� �+���� ��*� ,� ��(� H��*�+��I� 6��'�� H1'I� /�%*�� H�I� ����*����� H("�I�

-������+� H(I� ��*� ���� �+ ��� ��(��,��% /����6 ��� �+��%+,���+,� �����( �/ P+��� H��IJ �����

��� (��%�* �����( ���� �+ *�+��+�+�,� 3�%�-�,+�

����� &'�����

��%�*��� �-�,1�+'� ��� *��� %��,��� �� ��������+,%� *�(-��,���+ �� +�� -,%� �/ ��� ��(��,��%�

F�6���%� ��+*� ��% /�*�� �� �+ ��������+ �/ *�+�%����%�� �� (,1�� ��+�� �� -%����� ,+ ���%���6 �/

��� �(-��(�+�,���+ *�+*�%+�� 6��� ��������+,%� ,�'�%���(� ,+� ��� �+��%-�,� 6��� ��� ��(��,��%�

� P:? ��,'%,( �/ ��� ��������+,%� *�(-��,���+ *�(-�+�+� �� ���6+ �+ ��'�%� ���� )��

����'+ �/ ��� *�(-�+�+� �� ��%,�'���/�%6,%�� � -�-��,���+ *�+����� �/ , +�( �% �/ �+������,���

)�� ��-�%�*�,��� CPopulation� �� ,+ , ��%,*� *�,�� ��9+�+' , *�((�+ �+��%/,*� �� ��A�%�+�

-�-��,���+ ��-��� 3,*� ��-,%,�� ��-� �/ +��%����������+ ,�'�%���( �� %�-%���+��� � ��� �6+

�-�*�,��K�� *�,�� �+��%���+' /%�( ���� ��-�% *�,��� )�� *�,�� CStandardGAPopulation

�(-��(�+�� , ��,+�,%� '�+���* ,�'�%���( -�-��,���+� 6��� %,+1 ,��� ����*���+� *%������% ,+�

(��,���+� )�� *�,�� CMuLambdaPopulation �(-��(�+�� , Dμ�λE -�-��,���+ H-%�+��+*��

��������� � ����� �I� )�� Dμ�λE ��������+ ���- 6�%1� ,� /����6�� )�� μ ��� �+������,��

/%�( ��� -%������ -�-��,���+ ,%� %��,�+��� ,+� ��� ����%� ,%� ���*,%���� )���� μ �+������,��

,%� *,���� ��� T-,%�+��T� 3,*� -,%�+� '��� �� -%���*� λμ *����%�+� ���� ��� ���,� +�( �% �/

*����%�+ �� λ� )���� λ *����%�+ /�%( ��� +�&� '�+�%,���+� �+ ���� 6,� +� *%�������% �� ���� ,+�

�-��(�K,���+ �� ��+� ������ ��%��'� (��,���+ D�*�6�/��� ��E�

����*� ��,� ��� *��-�%,���� *���������+,%� -�-��,���+ *�,��� CCCGAPopulation� ,''%�',���

, +�( �% �/ -�-��,���+�J �+� -�-��,���+ � 7�*� /�% �,*� �� �-�-��,���+ �+ ��� ��������+� )����

-�-��,���+� *,+ � �/ ,+� ��-� H���+ ��A�%�+� ��-��I� 6��*� (�,+� �� �-�-��,���+� *,+ ���+

� %�*�%����� �� /,%� 6� �,�� ���� ��,+�,%� -�-��,���+� 6��� *%������% ,+� (��,���+� ��+*�

� 7�*�� �/ ��� ��-� CStandardGAPopulation� ,� �� �-�-��,���+� ,+� ��� ��� �/ %�*�%����

�� �-�-��,���+� ,%� ��� �� � ��������

��

Page 50: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.2 Design Building a Simulator

GetNextStringSetEvaluationResultGetBestIndividual

CStandardGAPop.

CIndividual

m_fFitness

GetStringGetStringLengthGetFitness

GetNextStringSetEvaluationResultGetBestIndividual

GetNextStringSetEvaluationResultGetBestIndividual

CCCGAPopulation CMuLambdaPop.

2..*

GetNextStringSetEvaluationResultGetBestIndividual

CPopulation

CPopulation

1..*

Figure 3-5: � 5%( ������ �� �� ���������� ��� ������ ��� ������

��

Page 51: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Building a Simulator 3.3 Putting Everything Together

)�� ��������+ ���- �� ��,%��� � �����% *%�,��+' , +�6� %,+��( -�-��,���+ �% � ��,��+' ,+

�&����+' -�-��,���+� )��+ �,*� �+������,� �% ��%�+' �� ,���'+�� , 9�+��� �*�%�� 5+*� ,�� �+���

����,�� �,�� ��+ ��,��,���� , +�6 '�+�%,���+ �� *%�,��� H�+���� ��� ��%(�+,���+ *%���%��+ ��

�,���9��I ,+� ��� �+������,�� �/ ��� +�6 '�+�%,���+ ,%� ��,��,���� ,+� ��� ���- �� ��,%��� /%�(

��� �'�++�+'� :����-�� �+������,�� *,+ � ��,��,��� *�+*�%%�+��� ,+� �+ ,+� �%��%� )����

/�,��%�� ,���6 /�% -,%,���� �(-��(�+�,���+��

8� �,�� �-�*�,��K�� ��� ��������+,%� ,�'�%���(� �� ��,� ��%�+'� ,%� '���+ ���% ��� ,�-�, �� �/

0�,��+' -��+� �,���� �+ ��� �+��%�,� [−10 : 10]� ��+*� 6� ,%� �-��(�K�+' ,%��9*�,� +��%,� +��6�%1

6��'���� F�6���%� ��� '�+���* ,�'�%���(� *�(-�+�+� �� +�� -,%� �/ ��� ��(��,��% ,+� �� *����

�,���� � ���� �+ ����% ��(,�+� ,+� ������� ,� 6���� �+ ��� /����6�+' ��*���+ 6� -%���+� ��6 ���

*�(-�+�+�� �/ ��(��,��% ,+� ��� ��������+,%� ,�'�%���(� �,�� ��+ 7��+�� ��'����% �+ �%��% ��

-%����� ,+ �,���������� 0�&� �� �+��%�+(�+� /�% ������+' +��%����������+ �/ %� �� *�+�%����%��

��� ����) ���� ��) ��)�����

)�� ��(��,��% ,+� ��� '�+���* ,�'�%���(� �,�� ��+ *�( �+�� �+ , *�((,+����+� �%���+ ,-�

-��*,���+� 6��*� ,���6� /�% *�+9'�%,���+ ,+� �&�*����+ �/ ��(��,���+�� ��������+ ,+� '%,-��*,�

-%���+�,���+ �/ ��� ������� ��,���%� )�� *�(-�+�+� ��,� �+�� ��� ��(��,��% ,+� ��� '�+���*

,�'�%���(� ��'����% �,1�� *,%� �/ %�,��+' ,+� 6%���+' ��,��� 9���� ,���6�+' /�% /�,��%�� ��*� ,�

%���,%��+' ��������+� 6��� ��A�%�+� �����+'� H��'�� , ��A�%�+� 9�+��� /�+*���+ ,+�"�% , ��A�%�+�

,%�+,I ,+� �,�� ����,� �,���,���+ �/ ��� ��,���% �/ ������� *�+�%����%��

)�� (,�+ '�,�� ,+� /�,��%�� ,%� -%���+��� ���6� �+ ��� +�&� ��*���+ 6� -%����� ��(� �&,(-���

�� ������%,�� ��6 ��(� �/ ��� /�,��%�� ������ ,%� �����

,���� ��$������� $ ��% !�+9'�%,���+ 9���� ���+ 6��+ ��+� �+ O:? �% ,+����% ��,+�,%�

%�-%���+�,���+ /�%(,�� ,%� �/��+ ��'��� �-�*�,��K�� ,+� �,�� , ��+��+*� �� �*�(� ��1�

,+� *�(-��& ���% ��� ��/����(� �/ , ��/�6,%� -%�7�*�� ��6 ���%� ,%� �/��+ /%���%,��� � ���

*%�-��* *�+9'�%,���+ �-���+� ,+� ����% �+��%��-�+��+*���� ��% ��� �&-�%��+*�� ���% �,%'�

*�+9'�%,���+ 9��� %����� �+ ��� ��/�6,%� ��+' 0�&� �� �� ������� �� ����-� )��%�/�%��

�+� �/ ��� '�,�� /�% )6���� 6,� �� (�+�(�K� ��� ��� �/ *�+9'�%,���+ 9��� ,� (�*� ,�

-���� ��� ,+� 6� �,�� ��**����� �+ ,�����+' *�+9'�%,���+ 9��� ,���'����%� ��� ,���6�+'

)6���� �� � ��'��� *�+9'�%, �� ��%��'� *�((,+����+� -,%,(���%��

'� ������� ����% !�+9'�%�+' ���%����+' ,� *�(-��� ��(� �� ,+ �,��� �� -��% 6,� �/ ,�����+'

*�+9'�%,���+ 9���� �*��,���� %�*�(-��,���+� ������ � ,������ �+ '�+�%,�� ��+*� ��� -%�*���

�/ (,�+�,�+�+' ,+� *�,+'�+' *��� /%�;��+��� H��'� �,*� ��(� ,+ ,�-�*� �/ , ��(��,���+ �,�

�� � *�,+'��I �� �%%�%�-%�+�� ��(� �/ ��� �&����+' ��(��,��%� ��A�% /%�( ���� -%� ��(�

�+ )6���� *��� �+�� �,�� �� � *�,+'�� 6��+ �' ,%� *�%%�*��� ,+� ,������+�� ��*�

,� +�6 9�+��� /�+*���+�� +�6 ��+��%�� *�+�%����%�� ��*� ,%� (,�� � ,+� ����� ,������+�

�/��+ %�;��%� �+�� ��*,� *�,+'��� ��� 9�+��� /�+*���+�� ,%�+,� ,+� -%�������� ������-��

��+��%�� ,*��,��%� ,+� *�+�%����%� *,+ � ���� �+ /���%� ��(��,���+� ,+� ��������+� 6������

%�*�(-��,���+�� )���� ���� -%������ ,*16,%� *�(-,�� ����� ,+� ��� /�,��%� ��� �/ )6����

�� *�+��+������ �&-,+����

Page 52: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.4 Benchmarks Building a Simulator

� �.�/� ��*% :,+� ,�-�*�� �/ )6���� ,%� ��'��� 0�&� �� ,+� ��%�,����� /�% �+��,+*� ��� ,%�+,�

9�+��� /�+*���+� *�+9'�%,���+ �/ ��� �� ��� ��+��%�� ,*��,��%�� *�+�%����% ��-�� +�( �%

�/ �,(-���� ��*� *,+ ,�� � *�+9'�%�� ,+� %�*�+9'�%�� ��%�+' ,+ ��������+�

0��1� ��� �# �� /�.% ��+*� ��� 4�P ��������� �,�� ��+ ����� ��� ��(��,��% *�(-����

�A�%������� �+ , 6��� �,%���� �/ �5��O �-�%,��+' �����(�� �� /,% �� �,� ��+ ������ �+

�,%���� ?�+�& ����%� ����+� ,+� �+ :,* 5� O ,+� *�(-���� �+ ��� ��,+�,%� 4�P 6,�J

��*�(-%���� %�+ configure ,+� ���+ make� ��%���%(�%�� ��+*� +� *�+9'�%,���+ 9���

,%� +����� ��� ��(��,��% *,+ � ��,%��� ��%�*��� /%�( *�((,+����+�� ,+� 6��� -%����� ���

���% 6��� , ����,� �� ���-�,� �/ , ��,+�,%� ,%�+, ,+� *�+�,�+�+' �+� �� ��� 6��*� *,+ �

*�+�%����� ��, ��� 1�� �,%��

���� * �.������� 2�� � � �� ����� ���% 4���+ ��,� �%�,��,+���%%�% �� ,+ �+��%�+� -,%� �/

��������+,%� %� ���*� �� �,� ��+ (,�� �,�� �� �,���,�� ��� ��,���% �/ ������� *�+�%����%�

,+� �� *�,+'� �,%���� ,�-�*� �/ ��� ��(��,���+� ��'� �� *��*1 ��6 ��� *�+�%����% -�%/�%(�

�+ ����% �+��%�+(�+��� �*,�, ������ ��A�%�+� �+���,� *�+9'�%,���+� ,+� ���+ 6��� ����%

9�+��� /�+*���+��

��� .������#�

�+ ���� ��*���+ 6� -%����� �+*�(,%1�+' %������ /�% , ��(��,��% ���� ���+' 5�3 ,+� *�(-,%� ���

-�%/�%(,+*� *�,%,*��%����*� �� ����� �/ )6����� 8� �� +�� (�,+ /�% ���� �� � ,+ �&�%�(���

,**�%,�� �+*�(,%1� �� (�%��� �� ���6 �%�+�� �+ ��� -�%/�%(,+*� �/ ��(��,��%� ��,� ,%� ����

,**�%��+' �� ��A�%�+� ����'+�� ), �� ��� ���6� ��� -�%/�%(,+*� %������ /�% �6� ��(��,��%�� �

%�*�+��� ������-�� ��(��,��% ���� �+ 5�3� 6��*� 6� ��,�� *,�� ��� ,+� )6����� 8� ��� �� /�%

��% �+*�(,%1� �+���,� �/ :���� ��+*� �� 6,� ������- 6��� ��� �+��+���+ �/ %�-�,*�+' :��� ,+�

����% Q�%��&� ,��� ��(��,��%� ,� ��% �, � )�� ��(�� ���6+ �+ ��� �, �� *�%%��-�+� �� ��� ��(�

�,*� �/ ��� ��(��,��%� %�;��%�� �� ��(��,�� � ��*�+�� /�% , '���+ +�( �% �/ *�++�*��� �� ���

(���+' %,+��(��� ��� ��� �+*�(,%1� 6�%� *�+��*��� �+ ,+ �����+ O� .� S 6��� ��. :$

%�++�+' �� �,+ ?�+�&� ����*� ��,� /�% �� 6� �,�� �6� ���� �/ %������� �+� /�% �&,*� ��(��,���+

,+� �+� /�% ,--%�&�(,�� ��(��,���+ ���+' ��� 3�#����� /�,��%� �/ 5�3� )�� �+*�(,%1�+'

(��������'� ,+� ��� -�%/�%(,+*� %������ /�% �� �,�� ��+ � �,�+�� /%�( ��+' D. �E�

�� �� *,+ � ���+ /%�( ��� -�%/�%(,+*� %������ )6���� �� �%��%� �/ (,'+����� /,���% ��,+

�� /�% �,%'�% *�+9'�%,���+� ,+� ���6� , *����������+�,% %��,���+���- ��6��+ ��� +�( �% �/

�� ��� ��(��,��� ,+� ��� -%�*����+' ��(� %�;��%�� �� �&�*��� , ��(��,���+� �� %�++�+' �+

,--%�&�(,���+ (��� ���6� , ��(��,% ��+�,% %��,���+���-� ,�����'� ��6��+ . ,+� � ��(��

���6�% ��,+ )6����� )���� -�%/�%(,+*� %������ ,%� , +,��%,� *�+��;��+*� �/ ��� (������ ����

�� *�(-��� ��� ��+,(�*� �/ ��� ��%��,� 6�%��J 6���� )6���� ,+� 5�3 %�++�+' �+ ,--%�&�(,���+

(���� �(-��� (������ ��+�,% �+ ��� +�( �% �/ � 7�*��� Q�%��& ,+� 5�3 %�++�+' �+ �&,*� (���

����� �����(� �/ �;�,���+� 6��� +�+���+�,% *�+��%,�+�� 6��*� '%�6 ;�,�%,��* �+ ��� +�( �% �/

*�++�*��� ��%��,� � 7�*��� ��� �� ���� ��(� ,+� �-,*� *�(-��&���� �� �� -%,*��*,��� ��(���� ��

,%��+� �. %� ��� 6��+ %�++�+' �+ �&,*� (��� ,+� ,� ���*%� �� �+ ��+' D. �E 5�3 ,*��,���

*%,���� ��� �� (�(�%� ���%�,'� 6��+ ��� �+*�(,%1� 6�%� %�+ /�% (�%� ��,+ �. �� ��� �+

��

Page 53: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Building a Simulator 3.4 Benchmarks

3 �(/��� �2���� '� �.��� '� �����.4

� � .� � � ���

. � �� ��� ���

� �� .��.� ����

# � #� �� � .�#��

� � �� .���� ���

�. �� � ����� ��.��

�# ���� � �� #�

. ���� � �����

.� ��� � ��� �

�. �.�� � �

# �� � �

�.� ��#� � �

.�# ����� � �

��. ���� � �

� . ���� � �

Table 3-1: Performance benchmark for TwoDee, NS running in exact mode, andNS running in approximation mode. The numbers shown correspondto the time each of the simulators requires to simulate 100 seconds fora given number of connected s-bots moving randomly. NS running inapproximation mode and TwoDee show a time complexity close-to-linearin the number of connected s-bots simulated, while NS running in exactmode appears to have a cubic time complexity. TwoDee is orders ofmagnitude faster than NS even when running in approximation mode.

Page 54: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

3.5 Future work Building a Simulator

��� ���� (,*��+�� )6���� �,� +� ��*� (�(�%� %�;��%�(�+�� ,+� ��(��,��+' � � *�++�*���

%� ��� �,1�� �- �+�� �� :$ �/ (�(�%��

�� /����� ���#

)�� *�%%�+� ��%���+ �/ )6���� �� ��'��� �-�*�,��K�� /�% ��� ����� �+��%���+' ���� �3� �������

F�6���%� 6� �+��+� �� (,1� ��� ��(��,��%� �% -,%�� ���%��/� (�%� '�+�%,� �+ ��� /���%� ��%�

���+�� �-�*�9* /�,��%�� ��,� 6� 6��� �+*���� ,%� *�������+ ����*���+ ,+� ��+,(�*� /�% (����-���

���*�++�*��� %� ���� ,� 6��� ,� ��--�%� /�% +�6 %� �� ,%*����*��%�� ��*� ,� ��� ����*1�

��%���%(�%�� , -,%,���� ��%���+ �/ )6���� �� -�,++��� 6��*� ,���6� /�% ��,��,���+ �/ ��A�%�+�

(�( �%� �/ , -�-��,���+ �+ -,%,����� !�%%�+���� (����-�� ��������+� *,+ �,���� � ��+� �+ -,%,�����

��(-�� � ��,%��+' (����-�� �+��,+*�� �+ ��A�%�+� +���� �+ , -,%,���� *�(-���% ��*� ,� , *�����%�

F�6���%� , -,%,�����K�� ��%���+ �/ )6���� �����/ 6���� ,���6 /�% (����-�� !�P� 6�%1�+' �+ ���

���� ��������+ *�+*�%%�+���� )��� �+ ��%+ 6���� ��*%�,�� ��� ��(� ��6��+ ,+ ��������+ ��

��,%��� ,+� ��� %������ �*�(� ,�,��, ��� ���� �� (�'�� �-��� �- ��� �%�,��,+���%%�% -�,�� �/

������+' %� �� *�+�%����%� ,� %������ ,%� (,�� (�%� %,-���� ,�,��, ���

��0 ������

�+ ���� *�,-��% 6� �,�� -%���+��� ��� %�;��%�(�+�� /�% , ��/�6,%� ��(��,��% ,+� ,+ �+��%�+(�+�

/�% +��%����������+ �/ %� �� *�+�%����%�� 8� �,�� (����,��� 6�� �&����+' ��(��,��%� �� +��

(��� ����� %�;��%�(�+�� ,+� 6� �,�� ���%�/�%� *����+ �� ������- ��% �6+� �-�*�,��K�� ��/�6,%�

*,���� )6����� 8� �,�� -%���+��� ��� ���%,�� ����'+ �/ ��� ��(��,��%� ��� �+��%���+' ��+,(�*�

,+� �+*�(,%1� /�% )6���� ,+� ,+����% %�*�+��� ������-�� ��(��,��%� ��� ���� �+ , '�+�%,�

��/�6,%� ��+,(�*� �+'�+�� 5�% %������ ���6 ��,� )6���� ���-�%/�%(� �� � ����%,� �%��%� �/

(,'+������ ,+� ��,� )6���� �*,��� *���� �� ��+�,%��� ��� ��(� ,+� �-,*��6���� �+ ��� +�( �%

�/ �� ��� ��(��,���� 8� �,�� ��**���/���� ��+ , �� �� ��(��,�� �� � *�++�*��� %� ���

�+ , +�%(,� 6�%1��,���+���

�� ��� ��(� �/ 6%���+' )6���� *�(-%���� ,--%�&�(,���� �.� ��+�� �/ *��� -��� ,+ ,������+,�

��� ��+�� �/ *��� �+ ��� �%,6���A �� %,%��

10* ���� � ���2�� ���� �� ���� � �� �� � *����� -3 �<""C ���� )�� 1� �� /*1 ������� H��� � L���+ %���'��H�� ����� ��� �"""""" �������� ������ ��� ������ �� �� �� ����+�� ���� )"" 1� �� /*1

��

Page 55: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

�������� �������������������

3�������+,%� %� ���*� �� , 9��� ��,� �� �+ ��� �+/,+*�� )�� -%� ��(� �,*1��� � %���,%*��%� ,%�

�/��+ ��(���� �� ��(-�� �,�1� ��*� ,� -,�� 9+��+'� -%�� %��%���,�� ,+� %�,*��+' , �,%'�� ��*,���+�

)�� (,�+ %�,��+ 6�� ��������+,%� %� ���*� �,� +�� ��� -%������ �� 6��� ��-�����*,��� ,+� ���/��

%� ��� �� ��,� ������+' *�(-��& ��,���% �� ���� ����� �� '�+�%,� '������+�� �&��� /�% ��6 �+�

������ ����'+ ��������+ �� ��,� �� 9+�� , '��� �������+ /�% ��� �,�1 ,� �,+�� )��%�/�%�� �+� ��

��/� 6��� , �%�,��,+���%%�% ,--%�,*� 6��%� ����%,� ��%,��'��� �,�� �� � �%��� �/�%� , ��**���/��

�+� �� /��+� �% �/�%� ��� �,�1 �� '���+ �-� ��%�� �/ ,��� ������%,--�+' ��������+ *,+ � ,

-%� ��(J ��*�+��� �&-%����+' ��% � 7�*����� �+ ��%(� �/ , 9�+��� /�+*���+ *,+ � *�,���+'�+'�

,+� 9+,��� ��,-�+' ��� 9�+��� �,+��*,-� �� ��,� ��������+ �,� , /,�% *�,+*� �/ %�,*��+' ,+

,**�-�, �� �������+ �� �/��+ +�+��%���,��

�+ ���� *�,-��% 6� �+�����',�� ��A�%�+� ��%,��'��� /�% ������+' *�+�%����%� /�% ��(��*�(-��&

��,���%J ��,� ��� , *�+�%����% 6��*� ,���6� , �6,%(� �� �� (��� /%�( ,+ �+���,� ��*,���+ ��

, �,%'�� ,%�, (,%1�� � , ��'��� �+ ��� -%�*��� 6� ��''��� , (����� /�% 9+��+' , '���

��������+,%� ����- ,+� 6� *�(-,%� ��� -�%/�%(,+*� �/ �,%���� ��-�� �/ +��%,� +��6�%1� ,+�

+��%����������+ (�������

8� �,�� ��%�*��%�� ��� *�,-��% �+ ��� /����6�+' 6,�� 8� 9%�� ���*%� � ��% (��������'� /�%

� �,�+�+' , '��� ��������+,%� ����-� +,(��� � ��9+�+' ,+ ,--%�-%�,�� �%��% ,+� 6,� �+ 6��*�

��� ��A�%�+� ,�-�*�� �/ ��� ,%��9*�,� ��������+ �/ , *�+�%����% ,%� �%�,���� 8� ,%'�� ��,� ��� �%��%

������ � ��� /����6�+'� ���+��� /�+*���+�� +��%,� +��6�%1 ��-��� +��%����������+ (������� ,+�

��������+,%� -,%,(���%�� 8� ���+ ���*��� ��% '�+�%,� �&-�%�(�+�,� ����- ,+� ��� (,���(,��*,�

+��,���+ 6� ��� �� �&-%��� 9�+��� /�+*���+�� �+ ��� %�(,�+�+' ��*���+� �/ ��� *�,-��% 6� ,--��

��� ��''����� (����� �+ �%��% �� ��������+ �/ , *�+�%����% ��,� �+, ��� , '%��- �/ �� ��� �+

�6,%(� �� /�%(,���+ �� -�%/�%( -�����,&�� ,+� �����,����,+*��

��� +����!���) 3���+��,���� ,+ ��������+,%� ����- *,+ � ������� �+�� ��%�� ��A�%�+� -,%�� ,� ���6+ �+ ��'�%� �

�� ���%,� +��6�%1 ��-� ,+� ��%�*��%�� 9�+��� /�+*���+� ,+� ��� +��%����������+ (������ )��

+��%����������+ (����� *�+�,�+� , +�( �% �/ ��������+,%� -,%,(���%� ��*� ,� (��,���+ %,���

����*���+ �*��(�� -�-��,���+ ��K�� *%������% %,��� ��*� �+ ���� ��*���+ 6� ���*��� ��(� �/ ���

������ %��,��� �� 9+��+' ,+ ��������+,%� ����- ,+� ��� (,�+ ���,� ���+� ��% (��������'��

����� %����� �������

��9+�+' , (����� /�% 9+��+' , '��� ��������+,%� ����- �� +�� ��%,�'���/�%6,%�� :��� �/ +��

,�� *�(-�+�+�� �/ ��� ��������+,%� ����- ,%� �+��%��-�+��+�� 6��*� (�,+� ��,� *�,+'�+' �+�

�,���� ,A�*�� ��� -�%/�%(,+*� �/ ,+����%�

��

Page 56: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.1 Methodology Evolving Controllers

Method

Mutation rate

Population size

Selection....

Controller

ANN typeand

structure

Fitness function

Neuro−Evolution

Evolutionaryparameters

Evolutionary Setup

Figure 4-1: �� ���� ��� ��� ������ � �� ���������� ���� # �� ����������� �������� �� �� �88� � 0����� �������� ��� � �������������� ������ ���� ������ � �� 0���� ������� �� ��� ������ ��� ������ ������� ������� ��� ������ �� ���������� �������� ��� ������� �� ����������� �� �������

����%,� -,-�%� �,�� ��+ 6%����+ �+ ��%� �-�*�9* ���,��� *�+*�%+�+' ��������+,%� *�(-��,���+

��*� ,� ��� (��,���+ �-�%,��%� ������'� ��*� ������� �+*%�,�� ��% �+��%��,+��+' �/ ��� �� �

������� �/ ��������+,%� *�(-��,���+� , ��+'�� -,%� �/ ��� ��������+,%� ����- *,+ �,%��� � ����,���

,+� ,+,��K�� �+��-�+��+��� 6������ %�',%� /�% ��� %��� �/ ��� �����(� ��% �+��,+*�� �/ ��� (��,�

���+ %,�� �� ��%� ��'� ���+ , ����*���+ �*��(� ��,� �+*����� ������( *���� ����-�%/�%( , ����*���+

�*��(� 6������ ������(� 6��%�,� ��� %���%�� (�'�� � �%�� �/ 6� *����� , ��%� ��6 (��,���+

%,��� �+ ��%+� ��� ;�,+���,���� �%,+��,���+ �/ ���� ��� ,+� ���� � � �+ ��%(� �/ (��,���+ %,�� ��

-%� ��(���-�+��+� ,+� �,� �� ��� +�� �+�� 6��� ��� +�( �% ,+� ��-�� �/ �,%�, ��� �� �-��(�K��

�� ,��� ��� ��-�+��+*��� ��6��+ ��� �,%�, ��� ���(������� ��� *�%�(���(� �+*���+'� ,+�

�� �+� ����� /%�( ��� ��������+,%� -,%,(���%� /�% , '���+ +��%����������+ (������ 6� ,���

�,�� �� 9+� ��� , ����, �� 9�+��� /�+*���+ ,+� ,+ ,--��*, �� ,%��9*�,� +��%,� +��6�%1 ��-� ,+�

��%�*��%�� ��� �/ ����� *�(-�+�+�� ,%� �+��%��-�+��+� ��+*� ��� 9�+��� �,+��*,-� �� ��,-�� �

��� 9�+��� /�+*���+ ,+� +��%,� +��6�%1 ��-� ,+� ��%�*��%�� 6���� ��� +��%����������+ (�����

,+� ��� ��������+,%� -,%,(���%� ����%(�+�� ��6 ��� ��,%*� /�% '��� �������+� �� *�+��*���

��%��+�

)���� ���%� *�(-�+�+� �/ ��� ��������+,%� ����- ��-�+�� �+ ���%� ����% *�(-�+�+�� 6��*� ��

-%� , �� �+� �/ ��� %�,��+� 6�� +� ��,+�,%��K�� �% /�%(,��� -%���� (����� /�% ������+' %� ��

*�+�%����%� �&����� �+ ��� /����6�+' 6� 6��� ���*��� ��� (������ 6��*� 6� �,�� ���� �� 9+� ,+

��������+,%� ����- ��,� ,���6� �� �� ������ *�+�%����%� /�% ��% �,�1� ������'� ��� (����� �,�

��+ ������-�� 6��� ��% �,�1 �+ (�+�� 6� ��-� ��,� �� *,+ ��%�� ,� ��� 9%�� �(,�� ���-� ��6,%��

��

Page 57: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.1 Methodology

, ��%�*��%�� ,--%�,*� /�% �,�1��%��+��� ��������+,%� %� ���*���

"�� �� ���� �� �����

�� �� -%,*��*,��� �+/�,�� �� �� -�%/�%( ,+ �&�,������ ��,%*� �+ ��� �-,*� �/ ��������+,%� ����-��

��,� ��� ,�� -���� �� *�( �+,���+� �/ -,%,(���%� �,����� 9�+��� /�+*���+�� ,+� *�+�%����%� ��-���

��% ,+ ��������+,%� -,%,(���% ��1� ��� -�-��,���+ ��K�� (��,���+ %,��� ,+� +�( �% �/ ������ ��

*�-� /%�( �+� '�+�%,���+ �� ��� +�&�� 6� *,+ ���*%���K� ��� �+��%�,� �/ %�,��+, �� �,����� %�+

, +�( �% �/ ������ ,+� *����� ��� *�( �+,���+ �/ �,���� ������+' ��� ��� %������� ��% ����%

*�(-�+�+�� �/ ��� ��������+,%� ����-� /�% �+��,+*� ��� 9�+��� /�+*���+� ��*� , ���*%���K,���+ ��

+�� � ������

)� ��( �-� 6� ,%� /,*�� 6��� ��� /����6�+' ����,���+� 8� �,�� �� 9+� '��� �,���� /�% ������

���+,%� -,%,(���%� ��*� ,� (��,���+ %,��� -�-��,���+ ��K�� *%������% %,��� +�( �% �/ �,(-���

-�% �+������,�� ��*�J 6� �,�� �� 9+� , ����, �� ,%��9*�,� +��%,� +��6�%1 ��%�*��%� ,+� , 9�+���

/�+*���+ ��,� ,--���� ��� *�%%�*� ��������+,%� -%����%�� ��� �/ ����� ,�-�*�� ,%� �+��%��-�+��+�

,+� ���%� *�%%�+��� �&��� +� (����� /�% 9+��+' , ����, �� ��������+,%� ����-� 5+ ��� �+� �,+�

���� �� ;���� ���*��%,'�+' '���+ ��� �,*1 �/ ,+� ,--,%�+� ��%�*��%� �% ,--%�,*�� 6���� �+ ���

����% �� ��,��� , ��� �/ %��( /�% �(-%���(�+�� �� ��� *�%%�+� ����,���+�

5+� 6,� �/ �,*1��+' ���� ����� �� �� �%� , +�( �% �/ ��A�%�+� *�( �+,���+� H�% 7��� �+�I ,���

�+ �+������+� -�*1 ��� ��� *�( �+,���+ ,+� ,�7��� ��������+,%� -,%,(���%�� +��%,� +��6�%1

��%�*��%�� ,+� 9�+��� /�+*���+� ,��� �+ �%�,��,+���%%�% ,+� �&-�%��+*� �+��� , '��� �������+

�� /��+�� )��� �� -%� , �� ��6 ��� (,7�%��� �/ �,�1��%��+��� ��������+,%� %� ���*� �� ��+�

+�6,�,���

�+ ,���%+,���� 6���� � �� ,--�� , -�,��� ,--%�,*� �+ 6��*� �+�� �+� ,�-�*� �/ ��� ��������+,%�

����- �� �%�,��� ,� ��� ��(� ,+� 6�%1 ��6,%�� , '��� �������+ � -%�'%������ ��*1�+' (�%�

,+� (�%� *�(-�+�+�� ,+� -,%,(���%� �/ ��� ��������+,%� ����-� ��� �� ��� �+��%��-�+��+*�

��6��+ ��� �,%���� ,�-�*�� �/ ��� ��������+,%� ��%,��'�� ���%� �� +� � ����� �%��% ,+� , '���+

(��������'� ������ �+��%�� �� ��(� ��'%��� ��,� ��� -,%,(���%�� 9�+��� /�+*���+� ,+� ���

+��%,� +��6�%1 ��%�*��%� ,+� ��-�� ,%� +�� ��*1�� �+�� �� �-��(,� �,���� �,%�� �+ ��� -%�*����

8� �%� �� (�+�(�K� ���� %��1 � 9%�� /�*���+' �+ ��� (��� �+*�%�,�+ ,+� -%���(�+,+� ,�-�*��

�/ ��� ��������+,%� ����- ,+� �+�� ,/��%6,%�� ��+�+' ��� ���� ��(�+,+� -,%��� 8� %�',%� ���

(��� �(-�%�,+� ,�-�*�� ,� ����� ��,� %�;��%� (��� ��(,+ �+������+� ,%� �,%���� �� 9+� �+ ,

%��� /�%*� (,++�%� ,+� ����%(�+� �/ , ����, �� *�+�%����% *,+ � ������� �% +�� H,� �--����

�� ��6 /,�� ,+ ,**�-�, �� �������+ �� /��+�I� $,��� �+ ����� *%���%�,� 6� �,�� �� ����%(�+�

��� �%��% /�% 9+��+' '��� ��������+,%� -,%,(���%� H+��%����������+ (������ ����*���+ �*��(��

(��,���+ %,��� ,+� �� �+I� ��� ��-� ,+� ��%�*��%�� ,+� 9�+��� /�+*���+�

)�� (��� �(-�%�,+� ,+� �+*�%�,�+ �+'%����+� �/ ��� ��������+,%� ����- �� ,%'�, �� ��� 9�+���

/�+*���+� )�� 9�+��� /�+*���+ %�-%���+�� ��� ���(�+� /�% 6��*� ��% �+��%��,+��+' �/ ��� -%� ��(

1?' �2�������� �$������� �� ��������A ������ �� �$������� �� ������ ���� ����� ��� �� ���� ����� ��� ����� � �2 � � ���� �7�� ,���� ��� �� ������ ���0 � ��� ���������� � ���� � ��� �$������� �� ��� ���� � � �������� ���� �� ���� ������ �� ��� �������� �� ���� ����� '���# ��� ����� �� �$��$��� ���������� �� � � � ���$� �����7� � �2 '��� �� �� ����� �� �� ���� ����� ����� ��� �� �� ��� �� ���� �� ��� �� ����������# ��������$�� ��$�� � �2# ��� ���� �� ����� ������ �� �$������� �� ��������# ���� � ��� ���� ��� �� ��� ��� ��������������� �� �����7� ���� �� ������2 �� ��$����� ��

��

Page 58: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.1 Methodology Evolving Controllers

-�,�� ��� �,%'��� %��� ,+� ����(,���� ������ � , (,���(,��*,� ���*%�-���+ �/ ��% � 7�*������ �/

���%����+' ���� �� -�%/�*�� �� ��� 9�+��� /�+*���+ �� 6%�+'� 6� ,%� ��'��� �+��1��� �� � �,�+ ,

�,���/,*��%� ��,���%� )�� �,(� �� +�� +�*���,%��� �%�� /�% ��� ����% ,�-�*�� �/ ��� ��������+,%�

����-J �/ ��� (��,���+ %,��� /�% �+��,+*�� �� , �� ��� ��6� �� *���� �,1� ��+'�% ��,+ +�*���,%� ��

������ ��� ����%�� ��,���% �+ ��� ,��%,'� *,��� ,+� �/ ,+ ,%��9*�,� +��%,� +��6�%1 �,� ��� (,+�

�% ��� /�6 �����+ +����� �� (�'�� ���%9� �% �+��%9� ��� -%� ��(� �� ����� ,+ ,--%�&�(,���+ �/

��� ��,���% 6� �,� �+ (�+� *,+ � ��������

�+ �(-�%�,+� ����� �� ��,� 6� *,++�� ����%(�+� �/ , 9�+��� /�+*���+ �&�%�� ��� *�%%�*� ������

���+,%� -%����%� ������ �� ���� �� F�6���%� 6� *,++�� ���� �� �/�%� 6� �,�� *����+ , +��%,�

+��6�%1 ��-� ,+� ��%�*��%� ,+� �+���� 6� �%� �� ������ ��� *�+�%����% �+��% ,+ ��������+,%�

,�'�%���( ,+� ��� ,�� �/ ��� -,%,(���%� �� ��(� �,����� )��� *��*1�+�,+���'' ����� *,+ �+�� �

���%*�(� � �����+' , 9�+��� /�+*���+ 6��� , %,+'� �/ ��A�%�+� *�+�%����%� ,+� 6��� , ��� �/ ����

�����+,%� ,�'�%���( -,%,(���%�� )���� -,%,(���%� (�'�� �/ *��%�� +�� � �-��(,� �� ,� ��+'

,� ���� ,%� %��,������ ��������� �+ ��� ��+�� ��,� �/ , �������+ *,+ � /��+�� ��� ��������+,%�

,�'�%���( �,� , '��� *�,+*� �/ 9+��+' �+� H,�����'� �� (�'�� �,1� ����%,� '�+�%,���+� (�%�

��,+ ��%�*��� +�*���,%�I� )��� (�,+� ��,� ���%� 9�+��� /�+*���+ �� ������ 6��� , *�+��%�,����

,+� %�-%���+�,���� ����*���+ �/ +��%,� +��6�%1 ��-�� ,+� ��%�*��%� ,+� ��������+,%� -,%,(���%��

8� 1��- �����+' ,+� (���/��+' 9�+��� /�+*���+� �+��� 6� ,*����� �,���/,*��%� �������+� (�,+�+'

��,� 6� � �,�+ *�+�%����%� ��,� %�*���� , %��,���� ��'� 9�+��� ��� ����� ��� �,�1 ��,� 6� �,�

�+ (�+�� 5+*� �� �,� ��+ ��%�9�� ��,� ��� 9�+��� /�+*���+ �&-%����� ��% �+������� ���,� ��

�� �(-�%�,+� �� ���� �/ ��� ������� ��%,��'��� ,%� '�+�%,� ,+� 6�����% ��� *�+�%����% *,+ �

�%,+�/�%%�� �� ��� %�,� %� ���� 8��+ , 9�+��� /�+*���+� 6��*� (��� ����� *%���%�,� �,� ��+

/��+�� ��� %,+'� �/ +��%,� +��6�%1 ��-�� ,+� ��%�*��%�� �� �&-,+��� ,+� ������� 8��+ , ����, ��

+��6�%1 �,� ��+ /��+� ��� /�*�� �� ���/��� �� ��� +��%����������+ (����� ,+� ��� ��������+,%�

-,%,(���%�� �+ ������%,���+ �/ ���� *�+*�-� �� ���6+ �+ ��'�%� �.� 6��%� ��� ��%�K�+�,� ,&��

��+���� ��(� ,+� 6��%� ��� 6���� �/ ��� ,% ���6+ /�% �,*� *�(-�+�+� �+��*,��� ��� %��,����

+�( �% H�% %,+'�I �/ ��A�%�+� ���(�+�� ������ /�% ��� *�(-�+�+� ,� , -��+� �+ ��� -%�*����

8� *,�� ��� ��� �/ %�-%���+�,���� ���(�+�� ��� ������� ��� /�% , '���+ *�(-�+�+� H�+ ��'�%� �.

��� ,����+� ���� ,%� ������%,��� ,� ��� ���*1�% ,%� �+ ��� ��/���,+� ���� �/ ��� �%�,+'�� /�%

�,*� *�(-�+�+�I� F�+*�� ��� ,����+� ���� *�+���� �/ ��� ���(�+�� � +��%,� +��6�%1 ��%�*��%���

+��%����������+ (������� ,+� ��������+,%� -,%,(���%� � ��,� ,%� ���� /�% , *�(-�+�+� �/ ���

��������+,%� ����- �/�%� ��� /�*�� �� �+ ��,� *�(-�+�+�� )�� +�( �% �/ ���(�+�� �+ ���

,����+� ���� �� , �%,����A ��6��+ �-��� ,+� *���%,'�� )�� (�%� ���(�+�� �+ ��� ,����+�

���� ��� (�%� *�( �+,���+� 6� ����� 6��*� �+ �+� �,+� ��*%�,��� ��% *�,+*� �/ (����+' ,

'��� ��������+,%� ����-� �� ,��� %�;��%�� (�%� ��������+,%� %�+� ,+� ���%�/�%� ���6� ��6+ ���

-%�*����

��%�+' ��� -�,�� �+ 6��*� ��� 9�+��� /�+*���+ �� ����%(�+�� 6� �� +�� +�*���,%��� �,�� �� ����

, �,%'� +�( �% �/ ��A�%�+� 9�+��� /�+*���+�J �/ �+� �/ ��� 9%�� �+�� ��,� 6� ���� -%���� ��

(,���(,��*,��� �&-%��� ��% �+��+���+ ,+� ,���6� /�% *�+�%����%� �� � ������� ,+� �%,+�/�%%��

�� ��� %�,� %� ���� ���%� �� +� %�,��+ �� '� /�%���%� ?�1�6���� �/ �+� �/ ��� +��%,� +��6�%1�

�+ ��� ,����+� ��� ���6� ,��;�,�� -�%/�%(,+*�� 6� �� +�� +�*���,%��� �,�� �� ���� , �,%'�

+�( �% �/ ����% +��6�%1�� ��-�+��+' �+ ��� -�%/�%(,+*� %�;��%�(�+�� �/ , *�(-�+�+�� (�%�

�% ���� �A�%� *,+ '� �+�� 9+��+' �-��(,� �����+'� /�% ��,� *�(-�+�+�� �/ , %� �� �,� ��(����

��

Page 59: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.2 Experimental Setup

Fitness functionlocked

Neuro−evolution methodlockedANN type and structure

lockedEvolutionary Parameters

locked

Fitness function

ANN type and structure

Neuro−evolution method

Evolutionary parameters

Time

Figure 4-2: .������ �� �� ������ 9��� � ������� 0����� ������� � ������ � ������� ����� ������ �� 0����� �������� �� � ����� ������ ��� ����� � ���� ������ ������" � ��� ��� ���������� ���������� .��� � ���� 0������������ �� ���� ����� �� ����� �� ������ ������" � �� ��� ����������� �� ����� ��� ������� :�� � ������� ������" �� ���� ����� �� ������ ����� �� �� �������������� ����� ��� �� ���������� ����������

-%�*����+' *,-, �������� 9+��+' ��� �(,����� ,--��*, �� ��� *���� � , -%��%���� 6���� �+ *,��

����%,� ,%��9*�,� ��������+� �,�� �� � ��+� �+ ��� /���%�� �+�%'� 6���� � ����% �-�+� ��+�+'

��� ��������+,%� -,%,(���%�� )���� ��� �%�,+'��� �+ ��'�%� �. �� +�� �+��*,�� ��,� , �,%'�

+�( �% �/ �����+'� ���� �� � ������ /�% �,*� ���(�+�� �� ��(-�� ��,� ��� *�(-�+�+� �� �+

/�*�� ��%�+' ��,� -�,�� ,+� ��,� ���(�+�� +�� �+ ��� ,����+� ��� *,+ � ������ �/ +�*���,%��

����� ���� ��

)��%� *�%%�+��� �&��� +� (����� �% ��%�*��%�� ,--%�,*� /�% -�%/�%(�+' ,%��9*�,� ��������+ �/

%� �� *�+�%����%�� 8� �,�� (����,��� , -�,��� ,--%�,*� �+ 6��*� ��� ��������+,%� ����-

�*�(�� -%�'%�������� (�%� �-�*�9*� ��%�� 6� ������-� ���� ,+� (���/� 9�+��� /�+*���+� �+��� ,

����, �� �+� �� /��+�� ���%�,/��% 6� 9+� ,+ ,--��*, �� +��%,� +��6�%1� ,+� 9+,��� 6� /�*�� �+

��� +��%����������+ (������ ,+� ��+� ��� -,%,(���%��

��� �1(������� ����(

�+ ���� ��*���+ 6� ���*%� � ��% �&-�%�(�+�,� ����-� ��� *�+9'�%,���+ �/ ��� �� ��� ,+� ���

��+��%� ��,� 6� ���� (,���(,��*,� +��,���+� ,+� ��(� '�+�%,� +���� �+ ��6 6� *�+��*� ��%

,%��9*�,� ��������+�� ��+,���� 6� ��9+� ��� ,����+� ����� ��,� �� ��� +��%,� +��6�%1�� +��%��

��������+ (������� ,+� ��� -,%,(���%� /�% ��� *����+ +��%����������+ (������ �+ ��� ,����+�

����

��

Page 60: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.2 Experimental Setup Evolving Controllers

60 cm 60 cm

60 cm

positionstart

T

70 cm

190 cm

480 cm

240 cm

60 cm

200 cm

60 cm

80 cm

Figure 4-3: �� �����# �� ��������� ����� � �� ���"�� ����� �� �� ���� ��� �� ������ �� ������ ���"�� � �� � �� �� ������� ���� �� ��� ������� ������ �� ���� �� �� ����� �� �� �� ��������� ��� ����� ����� ����" ����� �� ������ �����

����� �"� ����

� �1��*� �/ ��� (,�+ ,%�+, �� ���6+ �+ ��'�%� ��J ��� ,%�+, �� ��,-�� ��1� ,+ B�C� 6��%� ���

�6,%(� �� ��,%�� �+ ,%�, (,%1�� B��,%� -������+C �+ ��� ��/���,+� ���� �/ ��� ,%�+, ,+� �,� ��

(��� �� ��� �,%'�� ,%�, (,%1�� � , � �+ ��� %�'����,+� ����� � ��'�� ���%*� �� ��*,��� , ���

��� �,%'�� ,%�,� )�� 6���� ,%�,� �+ ��� 9'�%� %�-%���+� ��� -,%�� �/ ��� ,%�+, �+ 6��*� ���

�6,%(� �� *,+ (���� 6���� ��� �,*1 -,%�� %�-%���+� ������

�+ ���� *�,-��% 6� ,%� '��+' �� ��� ����% ,%�+,� ,� 6���� F�6���%� ��� ,%�+, ���6+ �+ ��'�%� ��

�,� , �-�*�,� �(-�%�,+*� ,� �� *,+ � ���� ��� /,*������� ,�,��, �� ,� ��% �, � 8� �,�� *����+

�� ,� ��% (,�+ ,%�+, ,+� 6� ��� �� /�% ��� ����� �+ ��� -����*,� %� ��� ���*%� �� �+ ��� �+� �/

���� *�,-��%�

����� �"� ���,� ������

$���6 �� , ���*%�-���+ �/ ��� ��+��%� �+ ��� �� ��� 6��*� 6� ����

+��� ������% )�� �,%'�� ,%�,� �� 6��*� ��� �� ��� ������ (���� �� (,%1�� � , ��'�� ���%*�

��,� *,+ ,�6,�� � ����*��� � ,�� ��� �� ��� � ��'�� ��+��%� ,%� -������+�� ���+�� �+

��� ��%%�� �/ �,*� �� ��� �+ ��'�%� �H,I �6� ��'�� ��+��%� *,+ � ���+ �+��% ��� ��(��

�%,+�-,%�+� %� �% ,+� +�&� �� ��� '%�--�%� )�� %�,��+' �/ , ��'�� ��+��% �� , , �,���

�+��*,��+' �� ��� ,(��+� �/ ��'�� ����*��� �+ ��� *�%%��-�+��+' ��%�*���+� 3,*� ��'��

��+��% �� *�++�*��� �� ,+ �+-�� +��%�+ �+ ��� ,%��9*�,� +��%,� +��6�%1� ���� ,+� ��� ��'��

��+��%� ���%�/�%� -%����� , ���,� �/ � �+-��� +��%�+��

������� �����% )�� �%,*���+ ��+��% �+, ��� �� ��� �� ��+�� /�%*�� ,*��+' �+ ��� ��%%��� ��+*�

6��+ ���� ,%� ��+' -����� ,+� -����� � ����% �� ���� )�� �%,*���+ ��+��% ,���6� ��

��� �� *��%��+,�� ����% (���(�+� 6��+ ���� ,%� �+ �6,%(� �� /�%(,���+� )�� �%,*���+

��

Page 61: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.2 Experimental Setup

(�,��%�� ��� ��A�%�+*� �+ ��%(� �/ /�%*� ��6��+ ��� *�,���� ,+� ��� ��%%�� �+ ��� �6�

��(�+���+� �/ ��� ��%�K�+�,� -�,+�� ,+� -%������ /��% �+-��� �� , +��%,� +��6�%1� �

-������� ,+� , +�',���� /�%*� �+ �,*� �/ ��� ��(�+���+��

5���� ������% ���% '%��+� ��+��%� ,%� (��+��� �+��% �,*� �� ��J �6� ,%� �+*��+�� -��+��+'

45◦ /�%6,%� ,+� ,*16,%�� %��-�*������� 6���� ��� %�(,�+�+' �6� '%��+� ��+��%� -��+�

��%,�'�� ��6+6,%�� �� ��� '%��+� �+��% ��� �� ��� �+ ��'�%� �H,I ��%�� '%��+� ��+��%�

*,+ � ���+ ��6��+ ��� ��/� ,+� ��� %�'�� �%���� +,(��� ��� �+*��+�� '%��+� ��+��% �+

��� /%�+� ,+� ��� �6� ��+��%� -��+��+' ��%,�'�� ��6+� )�� '%��+� ��+��%� (�,��%� ���

����,+*� �� ��� '%��+� � �(����+' �+/%,%�� ��'�� ,+� %�*�%��+' ��� ,(��+� %�0�*���� �

���� �% , �,%1 ��%/,*� 6��� *,��� ��� '%��+� ��+��%� �� %�*�%� ��%� ������ �% +� %�0�*���

��'��� 8� �,�� �,%�6�%�� ��� '%��+� ��+��%� �� ��,� 6��+ , ���� �� ����*��� , ���+� ��

-�,���� 6��*� ,���6� ��� ����% �� ��� �� ��+�� ��,� , ���� �,� ��+ ���+ � �+� �/ ���

�� �� �+ ��� �6,%(� ��� �+���,� �&-�%�(�+�� �,�� ���6+ ��,� -�,��+' , ���+� 6��+���% ,

���� �� ����*��� '%�,��� �(-%���� ��� �����, ����� ,+� -�%/�%(,+*� �/ *�+�%����%� /�% ����

,����,+*� D)%�,++� �� ,��� . ,E� 3,*� �/ ��� '%��+� ��+��%� *�%%��-�+�� �� ,+ �+-�� ��

, +��%,� +��6�%1� ,+� ���� ��� '%��+� ��+��%� -%����� , ���,� �/ �+-����

���� �����% )�� �� ��� ,%� �;��--�� 6��� (�*%�-��+�� ,+� ��A�%�+� ���+� /%�;��+*��� *,+

� �����+'������ %�,����(�� ��6���% ��+*� 6� +��� �+�� �� ���*%�(�+,�� ��6��+ ���+�

,+� +� ���+� H�+� �% (�%� �� ��� *�%%�+��� ����*� , ����� +� �� �� ����*�� , ����I ��%

���+� ��+��% �� �+,%�� )���� ��� ���+� ��+��% -%������ �+�� �+� �+-���

������� �����% )�� ��%%�� �/ ,+ �� �� *,+ %��,�� , ���,� �/ 360◦ /%�( �+� �&�%�(� �� ���

����% 6��� %��-�*� �� ��� *�,����� 8��+ ,+ �� �� +���� �� ��%+� ��'� 6��+ , ���� ��

�+*��+��%��� �� �� �+�� � , �� �� ��%+ �+ �+� ��%�*���+ �/ ��� ��%%�� �� %��,��� �� �+�

�/ ��� �&�%�(��� )���� 6� ,���(� ��,� ��� %��,���+ �/ ��� ��%%�� 6��� %��-�*� �� ���

*�,���� ,� , '���+ (�(�+� �� , �,��, �� �+-�� /�% ��� %� �� *�+�%����%� )�� %��,���+ ��+��%

-%������ �6� �+-���J �+� /�% ��� %��,���+ /%�( ��� �+���,� -������+ �� �,*� �/ ��� �&�%�(���

H,I H I

Figure 4-4: The figure shows a 3D rendering of the s-bot seen from below (a) andfrom above (b).

Page 62: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.2 Experimental Setup Evolving Controllers

��+*� 6� ,%� ���+' ��� � ��-�� �/ ��+��%� ���*%� �� , ���� 6� �,�� , ���,� �/ � ��+��%� �+-���

H� /%�( ��� ��'�� ��+��%�� /%�( ��� �%,*���+ ��+��%� /%�( ��� '%��+� ��+��%� � /%�( ���

���+� ��+��% ,+� . /%�( ��� %��,���+ ��+��%I� �� ��� �� ��� ��,%� �A �+ �6,%(� �� /�%(,���+

6� �� +�� �,�� �� *�+�%�� ��� '%�--�% ��%�+' ��% �&-�%�(�+�� ,+� ���%�/�%� 6� ,%� ��(���� ��

*�+�%����+' ��� ��A�%�+��,� �%����� )���� 6� �+�� �,�� �6� ,*��,��% ���-���� �+� ��� ��/� ,+�

�+� /�% ��� %�'�� �%����

����� !������ &'�����

8��+ ��������+� ,%� *�+��*��� �� �� *�((�+ �� ��,��,�� �,*� �+������,� , +�( �% �/ ��(��

�,*� 6��� ��A�%�+� �+���,� *�+�����+� �+ �%��% /�% ��� ,���'+�� 9�+��� �*�%� �� ����% %�0�*� ,+

�+������,�>� '�+�%,� -�%/�%(,+*�� )���� 6��+ ,+ �+������,� �� ��,��,��� �� �+��%'��� (����-��

������ �/ �,*� �+������,� �+�� �+��%'� , ��+'�� �%�,�� ��� ,���'+�� 9�+��� %�0�*�� �+�� ��6 6���

�,*� �+������,� -�%/�%(�� /%�( , ��+'�� ��,%��+' *�+�����+� 6���� 6��+ (�%� �%�,�� ,%� ���� ���

9+,� 9�+��� �*�%� ��+�� �� %�0�*� ,+ �+������,�>� ������� ���� ����� ����%� F�6���%� ���

+�( �% �/ �%�,�� -�% �+������,� �� , �%,����A ��6��+ ,**�%,*� ,+� �-���� P+���� ����%6���

��,���� 6� ��� � �%�,�� /�% �,*� �+������,� ,+� ��� ��� �+������,�>� 9�+��� �*�%� � ��� ,��%,'� �/

��� 9�+��� �*�%�� � �,�+�� ��%�+' ,�� �%�,��� ����%+,������� �+� *���� ��� /�% �+��,+*� ��� 9�+���

�*�%� /%�( ��� 6�%�� �% /%�( ��� ��� �%�,��

3�������+� ,%� ,��� �+ , %,+��( '�+�%,��%� �+ ��� ��+�� ��,� ��� �+���,� -�-��,���+� (��,���+�

*%������%� ����*���+� ,+� �� �+� ,%� -,%��� ,��� �+ %,+��( +�( �%�� )���� ��1� (����-�� �%�,��

,%� %�;��%�� �� ��,��,�� ,+ �+������,�� (����-�� ��������+,%� %�+� ,%� +�*���,%� �+ �%��% /�% ��

�� � , �� �� �%,6 ,+� *�+*�����+� , ��� ��� /�,�� ����� ,+� -�%/�%(,+*� �/ , '���+ (�����

,+� �/ , ��� �/ ��������+,%� -,%,(���%�� ��+*� ��% '�,� �� �� �+�����',�� ,+� *�(-,%� �,%����

(������ ,+� -,%,(���%�� 6� ,%� %�;��%�� �� *����*� �,�, /%�( (����-�� ��������+� /�% �,*� ����-

6��� ��A�%�+� �+���,� *�+�����+� H��A�%�+� �+���,� '�+��-���� ,+� %,+��( '�+�%,��% �����I� �+ ���

9��� �/ ��������+,%� %� ��� �� �� *����( �� *�+��*� � �% (�%� ��������+� /�% �,*� ��������+,%�

����-�

����� -����� -������ �� � ��

8� ��� ��� (,���(,��*,� +��,���+ ���*%� �� ���6 /�% ��� *�+*�-�� ��*� ,� ��(��,���+ ���-�

��(� ,+� -������+� �� �&-%��� 9�+��� /�+*���+��

����% 3,*� �+������,� �� ��,��,��� ���% , 9+��� -�%��� �/ tf ��(��,��� ��*�+��� 8� ��� ti��+��� , ��(� �+ ��� �+��%�,� 0 ≤ ti ≤ tf � 6��%� tf �� ��� ��,��,���+ ��(� ��(�� /�% �,*�

�%�,� /�% ���%� �+������,�� 8� ��� t0 = 0 ,+� ��� Δt ��+��� ��� ��(� ��6��+ �,*� ���*%���

��+���,*���-�,�� *�*�� H�% ��(��,���+ ���-I ,� ���*%� �� �+ ��*���+ ��.�� �+ -,'� ��

���� ���� ����% 8� ��� S ��+��� ��� �%��%�� ���� �/ ,�� ��(��,���+ ���-�� si� 6��%� s0 *�%�

%��-�+�� �� ��� �+���,� ���- ,+� sf �� ��� �,�� ��(��,���+ ���-� %��-�*������� )�� ��(�

��6��+ �,*� ��(��,���+ ���- �� Δt 6��� s0 ��+' ��� 9%�� ��(��,���+ ���- ,� ��(� t0�

)�������% )�� �-,��,� -������+ �/ , �6,%(� �� �+ ��� ��%��,� 6�%�� *,+ � ���*%� �� � , �6��

��(�+���+,� ��*��%� 8� ��� ��� -������+ �/ , �6,%(� �� *�%%��-�+� �� ��� -������+ �/ ���

��

Page 63: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.2 Experimental Setup

*�+��% �/ (,��� 8� ��� p ��+��� ��� -������+ �/ ��� �6,%(� �� ,+� P = (p0,p1, . . . ,pf ) � ,+ �%��%�� ���� �/ ,�� -������+� %�,*��� ,� ��(��,���+ ���-� s0, s1, . . . , sf � %��-�*�������

)���� �� �,*� ��(��,���+ ���-� si� 6� *,+ ,���*�,�� , �+�;�� ��(� ti ,+� , -������+ �/ ���

�6,%(� �� pi�

����. � ������ ���

�+ ���� ��*���+ 6� -%���+� ,+� ���*��� ��� ,����+� ���� /�% +��%,� ��-�� ,+� ��%�*��%��� +��%��

��������+ (������ ,+� ��������+,%� -,%,(���%�� 6��*� �,�� ��+ ����*����

������ ������� ���� ��� #��������

5+� *���� ,%'�� ��,� ��% �,�1 *,+ � ������ � , -�%��� ������ ,'�+�� ��+*� ��� �� ��� +���%

����� ��'�� �/ ��� �,%'�� ,%�, ,+� �*,��� �� ������ +���% � +�*���,%� �� ,*1��%,*1 �+ �%��%

�� ����� ��� �,�1� �/ , *�+�%����% �� %�,*���� �� (�,+� ��,� ,+� ,*���+ -�%/�%(�� �� �+�� ,���

�+ ��� �,���� ��� �/ �+-��� H��'�� ��+��%� %�,��+'�I� )���� , %�,*���� ,'�+� �� ��� �������� +�

*�+��&���+��� ,%� +����� ,+� �� ������ ��@*� �� ��� , /����/�%6,%� +��6�%1 �� *�+�%�� %� ���

/�% ��*� , �,�1� 3��+ ��� �� �� �+*��,% 6�,� ��-� �/ +��6�%1 �� ���� � ��+'�� �,��% -�%*�-�%�+

�% , (�����,��% -�%*�-�%�+� �+ *,�� 6� *����� , (�����,��% -�%*�-�%�+ 6� ,��� �,�� �� ��*���

�+ ��� +�( �% �/ �����+ +��%�+� /�% ��� +��6�%1� )��%� ,%� +� ����%��� �% '�+�%,��� ,**�-���

%���� �/ ���( %�',%��+' , ����, �� +�( �% �/ �����+ +����� � (�����,��% +��6�%1 6��� ��� /�6

�����+ +���� �� -%�+� �� �+��%9� , '���+ -%� ��(� 6���� , +��6�%1 6��� ��� (,+� �����+ +����

�� ��1��� �� ��� � �,%��% �� ������� '���+ ��� �+*%�,��� +�( �% �/ 6��'��� �� �-��(�K�� ,+� ��

���%9� ��� -%� ��(� )��%�/�%�� 6� �,�� �%��� , +�( �% �/ ��A�%�+� (�����,��% *�+9'�%,���+�

'��+' /%�( , ��(-�� +��6�%1 6��%� ��� +�( �% �/ �����+ +���� �;�,�� ��� +�( �% �/ ���-���

H.I �� , (����( +��6�%1 6��� � �����+ +���� ,+� �� , *�(-��& +��6�%1� 6��%� ��� +�( �%

�/ �����+ +���� �;�,�� ��� +�( �% �/ �+-��� H�I� �+ ��% ,����+� ��� �/ +��%,� +��6�%1�� 6�

�,�� ��� /����6�+' /��% +��6�%1��

�� � ��+'�� �,��% -�%*�-�%�+ 6��� � �+-��� ,+� . ���-��� � , ���,� �/ 6��'��� �� �-��(�K��

.� � (�����,��% -�%*�-�%�+ 6��� � �+-���� . ���-��� ,+� . �����+ +���� � , ���,� �/ #

6��'��� �� �-��(�K��

�� � (�����,��% -�%*�-�%�+ 6��� � �+-���� . ���-��� ,+� � �����+ +���� � , ���,� �/ ...

6��'��� �� �-��(�K��

� � (�����,��% -�%*�-�%�+ 6��� � �+-���� . ���-��� ,+� � �����+ +���� � , ���,� �/ .

6��'��� �� �-��(�K��

� -%��%� 6� �,�� +� 6,� �/ 1+�6�+' �/ ���� ����*���+ �/ ���� �� ��@*��+� /�% ��� �,�1J (,� �

, -�%*�-�%�+ *�+�%����% *,+ ����� ��� �,�1 �,���/,*��%� �% (,� � , (�����,��% -�%*�-�%�+ 6���

(�%� ��,+ � �����+ +���� �� +������ ��(� �+���,� �&-�%�(�+�� �,��� ��6���%� �+��*,��� ��,�

��� �,�1 �� ����, �� � ��(� ������� *�+�%����%� ���+' ��(� �/ ��� +��6�%1 ���*%� �� , ����

Page 64: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.3 Fitness Function Evolving Controllers

�������(���� �� ����� ��� �(���� ����� ���������

)�� ,����+� ��� �/ +��%����������+ (������ *�+����� �/ ��%�� ���(�+��� 6��*� ,%� ,�� *�,���*

'�+���* ,�'�%���(�� 6��� %,+1�-%�-�%���+,� ����*���+� ������(� ,+� �+��-��+� *%������%� )���

��A�% �+�� �+ ��%(� �/ (��,���+ %,��� )�� ��������+,%� -,%,(���%� ,%� ��� /����6�+'�

)��� ����% 4�+�%,���+� ,%� �/ � �+������,�� �,*��

�� �����% � %,+1�-%�-�%���+,� ����*���+ �*��(� �� ���� ,+� ��� ��� � �+������,�� /%�( ,

'�+�%,���+ ��%���� �� ��� +�&� H������(I�

,������% )�� (��,���+ %,�� �� ��� �� 1%� 5%� ,+� 10%�

!����� ��% 5+��-��+� *%������% ��6��+ -,%�+�� �� �����

�+ ��� +��%����������+ (����� -�,��� 6� �&-�%�(�+� 6��� ����% +��%����������+ (������ ,�

6����

��� /���� /����

�+ ���� -�,�� 6� ,���(-� �� 9+� , 9�+��� /�+*���+ ��,� ,--���� ,+ ��������+,%� -%����%� ,+�

������� *�+�%����%�� 6��*� -�%/�%( -�����,&�� ,+� �����,����,+*�� �� ������ +�� � ��� �,%� ��

�����%,- ��� ��������+ ,+� ��� ������� *�+�%����%� ������ � �%,+�/�%, �� �� %�,� %� ����

8� ��,%� �A 6��� , ��(-�� 9�+��� /�+*���+ ,+� (���/� ,+� �&��+� �� ,� +�*���,%��

����� � ��� �� -����� -�����

��+*� 6� 6,+� ��� �6,%(� �� �� %�,*� ��� �,%'�� ,%�,� , +,��%,� 6,� �/ ��,-�+' ��� 9�+���

�,+��*,-� �� ,���� �����%,--�+' -%� ��(�� �� � %�6,%��+' �+������,�� ��-�+��+' �+ ��6 *����

���� '�� �� ��� �,%'�� ,%�,� ��% ���� -�%-��� 6� ��� ��� /����6�+' 9�+��� /�+*���+�

flight =

⎧⎪⎪⎨⎪⎪⎩

1 − minpi∈P |pi−l||p0−l| if target area is not reached;

2 − tltf

if the light is reached at some time tl,

H��I

6��%� l ��+���� ��� -������+ �/ ��� ��'�� ���%*� ,+� |v| ��� ��+'�� �/ ��� ��*��% v� )���� |p− l|��+���� ��� ����,+*� ��6��+ ��(� -������+ �/ ��� �6,%(� �� %�,*��� ��%�+' ,+ ��,��,���+ ,+�

��� -������+ �/ ��� ��'�� ���%*�� ��(��,%��� |p0−l| ��+���� ��� �+���,� ����,+*� /%�( ��� �6,%(� ��

�� ��� �,%'��� )�� 9�+��� /�+*���+ flight ���6+ , ���� �,� �6� ��A�%�+� -,%��J �+� *�+*�%+�+'

�+������,�� 6�� �� +�� %�,*� ��� �,%'�� ,%�, (,%1�� � , ��'��� ,+� �+� *�+*�%+�+' �+������,��

6�� %�,*� ��� ��'�� ���%*�� ��% ��� /�%(�% -,%�� �+������,�� ,%� �*�%�� ,��� �+ ��� (�+�(�(

����,+*� ���� '�� 6����+ ��� ��'�� ���%*�� 6���� �+ ��� �,���% *,�� �+������,�� ,%� %�6,%��� /�%

��6 ;��*1�� ���� %�,*� ��� �,%'�� ,%�,� �/ ��� �,%'�� ,%�, �� %�,*��� 6� ���- ��� ��,��,���+ �/

��� �+������,� �+ ;������+ ,+� ��� tl � ��� ��(��,���+ ��(� ,� 6��*� ��� �,%'�� 6,� %�,*����

��

Page 65: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.3 Fitness Function

�+������,�� 6�� �� +�� %�,*� ��� �,%'�� ,%�, 6��� ���%�/�%� �,�� , 9�+��� �*�%� �+ ��� �+��%�,�

[0, 1[� 6���� �+������,�� 6�� %�,*� ��� �,%'�� ,%�, 6��� �,�� , 9�+��� �*�%� �+ ��� �+��%�,� [1, 2[�

3,*� �+������,� �+��%'��� , +�( �% �/ �%�,�� �,*� 6��� ,+ ��,��,���+ ��(� ��(��� tf ��� �� 4(�+����� ��+*� �,*� �+������,� 6,� '���+ (,&�(�( 240 ��%��,� ��*�+�� �% 2.400 *�+�%�� *�*���

�� %�,*� ��� �,%'�� ,%�,�

��% �,*� �/ ��� ���� �+ ��� �+���,� ��� ������ �+ ��*���+ �� 6� %,+ � ��������+� 6��� ��A�%�+�

�+���,� %,+��( ����� ,+� %�*�%��� ��� ���� 6�%��� ,+� ,��%,'� 9�+��� �*�%� /�% �,*� '�+�%,���+�

�����

)�� %������ �/ ��� ��������+,%� %�+� �,%��� �+ ��� ��+�� ��,� ��A�%�+� ��%,��'��� 6��%� /��+�

/�% %�+� 6��� ��A�%�+� �+���,� %,+��( ������ � /�6 ��� ��������+,%� %�+� %������� �+ *�+�%����%�

%����+' �+ -%�(���+' ��%,��'���� �+ �&,(-�� �� ���6+ �+ ��'�%� ��H,I� F�6���%� ��� (,7�%���

�/ ��� ��������+,%� %�+� '�� ���*1 �+ , ��*,� �-��(�(� 6��%� ��� �6,%(� �� 6���� ,���� ���

9%�� ���� ,+� (��� ,� /,�� ,� -���� �� ��6,%�� �� ��� ��*�+� ���� �+ /%�+� �/ ��� ��'�� ,+� /,��

�+� �+ �&,(-�� �/ ���� ��,���% �� ���6+ �+ ��'�%� ��H I�

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

S

F

S

F

S

F

S

F

’gnuplot_renderer_arena.dat’

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

F

F

’gnuplot_renderer_arena.dat’

SS

SS

H,I H I

Figure 4-5: Examples of behaviors evolved using the fitness function, flight. (a)shows a successful strategy, where the target area is reached, while(b) shows an example of the result similar to the majority of the evolvedcontrollers. A few evolutions resulted in successful strategies, while itwas common for evolution to get struck in local optima with a resultingbehavior similar the one shown in (b).

����� &�� ��� /� � 0 ����

)�� 9�+��� /�+*���+� flight� ���� �+ ��� -%������ ��*���+ %�-%���+�� ��% � 7�*����� +,(��� ��,�

��� �6,%(� �� ������ (��� ��6,%�� ��� ��'�� ���%*�� �� ���� +�� ��,-� ��� 9�+��� �,+��*,-�

�+ ��*� , 6,� ��,� , '��� �������+ *,+ � /��+� �,����� )��%�/�%�� 6� �,�� �� *�,+'� ���

9�+��� /�+*���+ �% ,�� *�(-�+�+��� 6��*� *�,+'� ��� 9�+��� �,+��*,-� ,+� ��� /�,��%�� ��

(,1� �� �,���% /�% ,+ ��������+,%� ,�'�%���( �� 9+� '��� �������+�� �� 6���� � *�+��+��+� �/

6� *���� �� �� ,���(,��*,���� �� �� ��% 1+�6���'� +� �����(,��* �% ,���(,��* (����� �&���

/�% ��������+,%� *�(-��,���+ ,--���� �� ��� ��(,�+ �/ (� ��� %� ���*�� F�+*�� 6� �,�� �� ���

��% �+��%��,+��+' �/ ��� �,�1 ,+� ��*�(-��� �� �+�� , ��� �/ �� ��,�1��

��

Page 66: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.3 Fitness Function Evolving Controllers

5+� �/ ��� -%� ��(� 6��� ��� %��,������ ��(-�� 9�+��� /�+*���+ ���� �+ ��� -%������ ��*���+ 6,�

��,� ��� ��������+,%� ,�'�%���( �/��+ �+�� �- �+ , ��*,� �-��(�(� �*,��� ��� �6,%(� �� 6����

/,�� �+�� ��� ���� 7��� �+ /%�+� �/ ��� ��'��� F�+*�� , 9%�� ���- 6���� � �� �&��+� ��� 9�+���

/�+*���+ 6��� , *�(-�+�+� ��,� ,���'+� , ��6�% 9�+��� �� �+������,�� 6�� /,�� �+�� ������ 8�

��,�� *,�� ���� 9�+��� /�+*���+ fstayalive�

fstayalive =

{0.5 if the swarm-bot falls into a hole during the evaluation,1.0 otherwise.

H�.I

)��� 9�+��� /�+*���+ %�6,%�� �+������,�� 6�� ��,� *��,% �/ ������ 8��+ 6� *�( �+� �� 6��� ���

9�+��� /�+*���+� flight� 6��*� %�6,%�� �+������,�� ��-�+��+' �+ ��� (�+�(�( ����,+*� �� , ��'��

���%*� � �,�+�� ��%�+' , ��(��,���+ %�+� 6� '�� ��� /����6�+' 9�+��� /�+*���+�

flightandstayalive = flight · fstayalive H��I

)���� 6� ��(-�� (����-�� ��� �6� 9�+��� /�+*���+� �� � �,�+ ��� ���%��

�����

)�� (,7�%��� �/ ��� ��������+,%� %�+ ������� -%�(���+' %������ ���+' ��� *�(-���� 9�+���

/�+*���+ flightandstayalive� ��'�%� �#H,I ���6� , ��-�*,� ��%,��'� /��+� � ��������+� 6��%�

��� �6,%(� �� �� , �� �� (��� /%�( ��� �+���,� ��*,���+ �� ��� �,%'�� ,%�, 6���� ,�����+' ������

��'�%� �#H I� �+ ��� ����% �,+�� ���6� ��� -�%/�%(,+*� �/ ��� �,(� *�+�%����% ,� �+ H,I� ��

�+ , ��A�%�+� ,%�+,� �� *,+ � ���+ /%�( ��� %������ ��������+ �,� /��+� , ��%,��'� ��,� ��

�����&�� /�% ��� ,%�+, �+ 6��*� ��� *�+�%����% �,� ��+ �������� )��� �� , -%� ��( ��+*�

��� *�+�%����% ���� +�� �(-��� , ��%,��'� '�+�%,� �+��'� �� ����� ��� �,�1 �+ ���'���� ��A�%�+�

�����+'�� 8� ���*��� ���� ����� ,+� 6�� �� �� �(-�%�,+� �� ������ (�%� '�+�%,� *�+�%����%� �+ ���

+�&� ��*���+�

����� 1���� ��� �� �� ��2�� 2 "� #������

8� 6���� ��1� �� ������ *�+�%����%� %����+' �+ '�+�%,� ��%,��'��� ,+� ��� *�+�%����%� ������ �

�%,+�/�%, �� �� -����*,� %� ���� �� ��(��,��% �� -�%/�*� �+ ��� ��+�� ��,� �� ��(��,��� %�,����

6��� *�(-���� ,**�%,����� ,+� ���%�/�%� 6� (��� � ,6,%� �/ ��� %����,+� ���*%�-,+*��� ��6��+

��(��,���+ ,+� ��� %�,� 6�%���

�/ 6� �+�� �*�%� �+������,�� �+ ��� ,%�+, ���6+ �+ ��'�%� �#H,I 6� ,%� -%�+� �� ������ *�+�%����%��

6��*� ,%� ��'��� �-�*�,��K�� /�% ���� ,%�+,� �+ �%��% �� *��+��% ���� ��� �6,%(� �� �� -������+��

,+� �%��+��� ��A�%�+��� �+ ��� ��,%� ,%�, ,� ��� �'�++�+' �/ �,*� �%�,��� F�6���%� �+ ���� *,��

�� ,--�,%� +�� �� � �+��'� �� ������ '�+�%,� ��%,��'���� �+ �&,(-�� �/ ��� -�%/�%(,+*� �/ ,+

������� (�����,��% +��%,� +��6�%1 *�+�%����% 6��� � �����+ +���� ���+' ��� flightandstayalive

9�+��� /�+*���+ *,+ � ���+ �+ ��'�%� �#� ����*� ��6 ��� ������� *�+�%����% *�%%�*��� ����%�

��� �6,%(� �� �� ��� �,%'�� ,%�, �+ ��� ,%�+, 6��%� �� 6,� ������� H,I� 6���� /�% ��� +�6

2*�� �� �$� � �� ���� ��$�� ����� ���� �� �$ �� �� �� �� ��� �+ �� � �� ��� ������# ���� ��� ��$�� ��� � ���� �$� � �� �� ��������� � ������� �� �+ �� ��� � �� � �

��

Page 67: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.3 Fitness Function

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

S

F

S

F

S

F

S

F

’gnuplot_renderer_arena.dat’

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

S

F

S

F

S

F

S

F ’gnuplot_renderer_arena.dat’

H,I H I

Figure 4-6: A controller evolved in the virtual arena shown in (a) can success-fully steer a swarm-bot from the starting arena to the light source in(a). When the same controller is tested in a different arena (b) it failsand steers the swarm-bot over the side of the arena. Hence, the con-troller evolved for arena (a) appears to be highly specialized for (a) eventhough the initial conditions such as random positioning and orientationhave been used throughout the evolution of the controller.

,%�+, H I �� /,��� ,+� ����%� ��� �6,%(� �� ��� �/ ��� ,%�+,� �+ -,%��*��,% +���*� ��6 �+ H I

��� �6,%(� �� �� ����%�� ���� /%�( ��� ��'�� �/�%� �� /,��� ���% ��� ���� �/ ��� ,%�+,� )����

��� ��%,��'� /��+� � ,%��9*�,� ��������+ ,--�,%� �� � ��'��� �-�*�,��K�� /�% ��� ,%�+, �+ 6��*�

��������+ ���1 -�,*��

5 �������� 6� 6���� ��1� �� ������ *�+�%����%� ��,� ��� (�%� '�+�%,� ��%,��'���� ��+*� ���%� 6���

,�6,�� � ��A�%�+*�� ��6��+ ��(��,���+ ,+� %�,����� , *�+�%����% 6��� , (�%� '�+�%,� ��%,��'�

�� �,���% �� �%,+�/�% ��**���/���� �� -����*,� %� ���� � *�+�%����% ��,� ���� , '�+�%,� ��%,��'�

�� +�� ,� -%�+� �� %��� �+ /�,��%�� �-�*�9* �� , '���+ ,%�+,� 6��*� (�'�� � ��A�%�+� �+ , %�,�

,%�+,� ��,+ , �-�*�,��K�� *�+�%����%� :�%����%� �/ 6� 6,+��� , *�+�%����% ��,� �+�� �,� �� 6�%1

/�% , ��+'�� ,%�+,� 6� 6���� -%� , �� � , �� �� ������- �+� � �,+� /,���%�

�+ �%��% �� ������ , %� ��� *�+�%����%� 6��*� %����� �+ , '�+�%,� ��%,��'�� 6� �,�� �� ,--�� ,+

,--%�-%�,�� ��������+,%� -%����%�� )��� *,+ � ��+� � ��,��,��+' �,*� �+������,� �+ ����%,�

,%�+,� �+���,� �/ , ��+'�� ,%�+, �+�� D)��(-��+� ��E� 8� �,�� *����+ ��� /��% ,%�+,� ���6+

�+ ��'�%� ��� )���� ,%�+,� ������ � ��A�%�+� /%�( �+� ,+����% �� , ��'%��� 6��*� (,1��

��������+ /,��% '�+�%,� ��%,��'��� ���% *�+�%����%� ��,� ,%� �-�*�,��K�� /�% �+� �/ ��� ,%�+,� �+���

)�� /��% ,%�+,� ,%� ���� �+ ��� /����6�+' (,++�%� 8��+ , *�+�%����% �� ��+' ��,��,��� �� ��

��,��,��� �6�*� �+ �,*� �/ ��� ,%�+,� ,+� ��� 9�+��� �� %�*�%��� ���% , -�%��� �/ . ��*�+��

�+ ��(��,���+� ��% �,*� �%�,� ��� 9�+��� �� %�*�%���� ,+� ��� 9�+��� ���� � ��� ��������+,%�

��%,��'� �� ����%(�+� ,+ �+������,�>� %,+1 �� ���+ ��� ,��%,'� �/ ��� 9�+��� �*�%�� /�% ,�� �

�%�,����

3%��� �� ��� �������� ��� � ��� ��� 7����� ������ ���� �$������� � � ��� ����2 �� ��� � ������� ����� �� ��� �� �$� � �� �� ��� ����� ���� ����� ��8� ��� ��� �� ��� ��� � � � �� �� ��� ������ '���# �$�������=���2�� 7� � ��� ���� �� � ���2� ���� ��� ��� �� ��� ��� � ��� ��� ��� ����� ��8� �� ����� ��� � �� ������� ��� � �� ��� # �� �+�������� ���� =���� �����# ����� � �� �� ��� ����� �� ���� ��� �# ���� �� ���� ��2����� � ���� �� �� ��� ��� ������� 7����� ��� ��� ����� �� ��� $�� ��# �� � � $�� ���� ����� ��8 ����

��

Page 68: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.3 Fitness Function Evolving Controllers

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

’gnuplot_renderer_arena.dat’

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

SF

’gnuplot_renderer_arena.dat’

H,I H I

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

SF

’gnuplot_renderer_arena.dat’

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

SF

’gnuplot_renderer_arena.dat’

H*I H�I

Figure 4-7: Four arenas used to evolve general controllers. When a controller isevaluated, it receives a fitness that reflects its performance in all ofthe arenas. Thus, in order to obtain a high fitness, a controller mustimplement a general strategy, which works in the most or all arenas.

��

Page 69: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.3 Fitness Function

� ��-�*,� ��%,��'� /��+� � ��������+ *,+ � ���+ �+ ��'�%� ��� )��� %����� �+��*,��� ��,�

��������+ �,� �+���� /��+� , '�+�%,� ��%,��'�� +,(���� 4� +�%�� �+��� , ���� �� /��+� ,+� ���+

/����6 ��� ��'� �+��� ��� ��'�� �� %�,*���� )��� ��%,��'� �� ��(��,% �� ��� ��(-�� (,K�������+'

��%,��'� /�% (,K�� 6������ ���-�� ��� ���% �,+� �+ ��� ��/� �% %�'�� 6,�� ,+� /����6 ��� 6,���

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

S

FSF

SFS

F

’gnuplot_renderer_arena.dat’

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

S

F

SF

S

FS F

’gnuplot_renderer_arena.dat’

H,I H I

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

S

FS

F

S

FS F

’gnuplot_renderer_arena.dat’

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

S

F

S F

S

F

S F

’gnuplot_renderer_arena.dat’

H*I H�I

Figure 4-8: Example of how a controller behaves in four arenas using a simple,but general and successful, hole-following strategy. During evolution ofthe controller, each individual was tested in each of the arenas twiceand the average of the fitness scores for all the arenas makes up theindividual’s final fitness.

)���� ��� �� ��� � ������� �

��*,�� ��,� 6� (,�� ��� ,���(-���+ �+ ��% ��(��,��% ��,� *�++�*���+� ��6��+ �� ��� ,%�

*�(-������ %�'��� )��� �� � ������� , *%��� ,--%�&�(,���+ �/ %�,����� 5�% �+���,� ,���(-�� ��

�%,+�/�% *�+�%����%� �� %�,� %� ��� �+��*,��� ��,� ��� ��A�%�+*� ��6��+ ��� -����*,� ��,���%

�+ ��(��,���+ ,+� %�,���� �� ,+ ����� ��,� %�;��%�� �-�*�,� ,���+���+� $,��*,���� ��� -����*� �/

��� ��(��,��% �+, ��� ��������+ �� �&-���� ��(� �� ������� �+ ��� ��%��,� 6�%�� �+ , 6,� 6��*�

�� +�� -���� �� �+ ��� %�,� 6�%�� � �% ,� ��,�� %�;��%�� (�*� (�%� ���,���� (����� �� ��(��,��

,**�%,����� �+ �&,(-�� �/ ��� ��,���% �/ , *�+�%����%� 6��*� ���� , %��,������ ��**���/�� ��%,��'�

�+ ��(��,���+� �� ���6+ �+ ��'�%� �� �+ %�,���� *�++�*���+� ��6��+ �� ��� ,%� +�� %�'��� ���

�%���� ,%� +�� *�(-������ ���+� -,�*��� �/ ���� *�,+'� ��� /%�*���+� ,+� �� �+� ��� ,�� �/ �����

+�������� *,+ � *�(-�+�,��� /�% � ,���+' +���� �� ��� ��+��%�� ,*��,��%�� ,+� �� ��� -����*��

B���$��# ������� ����� � � ���� ������ ������� ��� �� ��� � ��# �������� ��� 7����� ����� � �� �� ��� $�� �� ������� ��� �� ��� ��� � ���$� �� ���2 ����

��

Page 70: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.3 Fitness Function Evolving Controllers

y

x

1

2

Figure 4-9: �� ���� �� �� �� �� ��� ��� �� ��� ��������� ����� ��� ��� ���� ����� � �������� �� ��� ������������ �� ������ �� ����������� ������ ������� ��� �������� �� 0���� ���� � ��������� �������� �� ���������� �������� ����� ���� ���� �� ���� �� ������ ����� ���� ����� �� ����� ������ �� ������� �� �� ������ ��� ��� ����� ��� ���� ���� ����� ������� �� �� ��������� � �� ������ �� ������ �� ������ � ���- ��� ��� ��� ����� ������ �� �� ������� �� �����; ����� �$� ������ ��� ����� � ������ ��� ����� -$� ������ ��� ����� ���������� ������ ������ ��� ����$� �������� ��� � �� ��������� �� ������������ ����� � �� ���������� <������� ���� �� ���� � ������ ����� �� �� 0��� ����� �� �� ����� ������� �������� ��� �� ������ �������� �������� ����� �� ����� �� �� ���������� ��� �� � ������ ����� - ���� ����������� ���������� ��� ���� �� ��� �� �� ���=����� ����� ����������� �� ������� ���"� �������� ���� ��� ������ ���� � ���������� � ��� ������ � ������ � ������ ���� ������ ����� ��� ���� � �������� ��7���� � �� ������� ������� � ������ � ��� ������ ��� �������� =�� �� ������ �� �������� ���� � ������� ��� ���� ����� �������� �� �� ������ �� �� ������ ���� � ���� � ������� �� �� ����������� ������ � �������� 0���� ���������������� ���������

��

Page 71: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.3 Fitness Function

8��+ 6� ,���(-��� �� ��� ��� *�+�%����%� 6���� ��,���% �� ���6+ �+ ��'�%� ��� 6��*� -,%���

%����� �+ ��� ��%,��'� /�% ,�����+' ����� ���6+ �+ ��'�%� �� ��(� �/ ��� ��A�%�+*�� ��6��+

��(��,���+ ,+� %�,���� �*,(� �����+�� � -���� �/ /��% �� ��� �+ �6,%(� �� /�%(,���+ ����%��

� ��� *�+�%����% �� ���6+ �+ ��'�%� �� � ����*� ��6 ��� �%���� �/ ��� �� �� �� ��� /,% %�'��

,%� +�� �+ *�+�,*� 6��� ��� '%��+� ��%/,*�� )��� �,--�+� �*,��� ��� ����% �� ��� ,%� (���+'

�+ , ��A�%�+� ��%�*���+ ,+� ���%�/�%� ,%� -����+' ��� �� �� �� ��� /,% %�'�� �A�*������ ��--�+' ���

8���� ���� �� , *�((�+ ����,���+ �+ %�,����� �+ ��(��,���+ ��� �%���� ,%� ,���(�� �� ,�6,�� �

�+ *�+�,*� 6��� ��� '%��+� ��%/,*� �+���� ���� ,%� *�%%�+��� ���% , �����

Figure 4-10: �� ���� �� �� � �>������ ������� �������� ��� ����� � ,� �������������� ��� ������� �� ���� � ��� �� ������ �� �� ������� ������ ������ � ��� � �� ��� �� ����� � � �� ��� ��� ����� ������ ��������� �� ������� ��� �� �� ������ �� ���� �������

)��%� ,%� �6� 6,�� �+ 6��*� ��� ������ %������+' /%�( ��� ���*%�-,+*��� ��6��+ ��(��,���+ ,+�

%�,���� *,+ � ���%*�(�� +,(��� �� ���� (�%� ,**�%,�� ��(��,��%� �% �� �+��%� ��,� ��� ,%��9*�,�

��������+ ���� +�� %��� �+ /�,��%�� �,��� �+�� �+ ��(��,���+� �� �� ;������+, �� �/ �� 6���� �

/�,�� �� �� ���� ��(��,��%� �� ,**�%,�� ��,� ��%,��'��� ��1� ��� �+� ���6+ �+ ��'�%� � *����

� ��%�*��� ,+� ��**���/���� �%,+�/�%%�� �� %�,� %� ���� ��%�� �/ ,�� �� 6���� %�;��%� , ��'� �A�%�

�� (���� ���%� -,%� �/ ,+ �� �� �+ ��'� ���,��� �(-��(�+� ��� *�+�%�� ��'�*� ,+� 9+,��� ��%�/�

,+� 9+����+� ��� �(-��(�+�,���+� ��*�+���� �/ �� �� -���� �� ,� ,�� �� ���� , ��(��,��% 6��� ,

*�(-��&��� ��@*��+��� ��'�� ��� -�%/�%(,+*� 6���� ��1��� � �� ��6� ��,� �� 6���� � �(-%,*��*,�

�� %�+ ,%��9*�,� ��������+� ���+' ��� �+ ,+� *,��� +�+� �/ ��� ��(��,��%� ������-�� ��%�+' ���

��/����(� �/ ��� �6,%(� ��� -%�7�*�� �,�� ,��,�+�� ���� ,**�%,*��

)�� ��*�+� �������+� +,(��� �� ����% ��������+ ��6,%�� �������+� +�� %����+' �+ �+,**�%,��

,+�"�% �+%�,�����* /�,��%��� ���(� �� � , (�%� -�,��� �� �������+� �+ �%��% �� ,���� ��,�

Page 72: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.4 Neural Network Type and Structure Evolving Controllers

��������+ 9+� �������+� ��,� %��� �+ %���� �+�� �,��� �+ ��� ��%��,� 6�%��� 6� �&��+� ��� 9�+���

/�+*���+ 6��� , *�(-�+�+� ��,� -%�(���� *��%��+,����(����+ ��%��'� (�+�(�K,���+ �/ �%,*���+�

)��� ,--%�,*� �� ������+' *��%��+,����(����+ �� ��(��,% �� )%�,++� �� ,�� D. ,E� )�� �%,*���+

��+��% ���-��� /��% �,���� ��6��+ ,+� �� 6��%� (�,+� +� �%,*���+ ,+� � (�,+� ��,�

��� (,&�(�( �%,*���+ /�%*� -�%*���, �� �� -�%*������ )���� �+ �%��% �� (�+�(�K� ��� �%,*���+

��6��+ �� ��� �+ , �6,%(� �� /�%(,���+� 6� �,�� �� (�+�(�K� ��� ��'���� �%,*���+ -�%*�����

� ,+� �� �� /�% �,*� *�+�%�� *�*��� �/ 6� ��� τmaxi ��+��� ��� (,&�(�( �%,*���+ ����*��� �

,+� �� �� ,� ��(��,���+ ���- si� ���+ ��� 9�+��� /�+*���+ /�% (�+�(�K�+' �%,*���+ �� ��9+�� ,�

/����6��

fminimizetraction =∑

1 − τmaxi

|S| H�I

)���� ��� ��( ���% � (�+�� ��� ��'���� �%,*���+ -�%*����� � ,+� �� �� /�% ���%� ��(��,���+

���-� ������� � ��� ���,� +�( �% �/ ��(��,���+ ���-�� |S|�8��+ 6� *�( �+� ���� 9�+��� /�+*���+ 6��� ��% -%������ 9�+��� /�+*���+� 6� � �,�+ ��% 9+,�

9�+��� /�+*���+� 6��*� ,���6� ,%��9*�,� ��������+ �� 9+� �%,+�/�%, �� ��%,��'����

ffinal = flight · fstayalive · fminimizetraction H��I

)���� ��% 9�+��� /�+*���+ *�+����� �/ ��%�� *�(-�+�+��� �+������,�� ,%� %�6,%��� /�% (���+'

��6,%�� ��� �,%'�� ,%�, (,%1�� � , ��'�� ���%*�� ���� ,%� %�6,%��� /�% +�� /,���+' �+�� ������

,+� 9+,��� /�% (�+�(�K�+' �%,*���+��

��� &����� &�����# � (� �! ���������

�+ ���� ��*���+ 6� �+�����',�� ��� -�%/�%(,+*� �/ �,%���� +��%,� +��6�%1 ��-�� ,+� ��%�*��%��

6��� ��� �+��+� �/ 9+��+' ��� ������� ���� �# ��� �� �� �� ���� � ���������� � ��� ���

���#� 8��%�,� /�% ��(� /�+*���+�� ��1� ��� �+,%� �&*��������% /�+*���+� , /�%(,� ,%'�(�+�

*,+ � '���+ ��,� ���� *,++�� � %�-%���+��� � *�%�,�+ ��-�� �/ +��6�%1� H-�%*�-�%�+�I� �+

��������+,%� %� ���*� 6� �/��+ �,�� ������ �% +� -%��% 1+�6���'� ,� �� 6�,� ��%,��'��� ��������+

(�'�� 9+� � ��� ,��+� 6�,� �� +�*���,%� /�% �����+' , '���+ �,�1� )��%�/�%�� 6� *,++��� �+ ���

'�+�%,� *,��� /�%(,��� -%��� ��,� , +��%,� +��6�%1 �/ , *�%�,�+ *�(-��&��� �� %�;��%�� �� ����� ,

'���+ �,�1� �� , %����� 6� ,%� +�����% , �� �� (,1� ,+� *�,�(� ��,� 6� �,�� /��+� ��� ��(-����

+��6�%1 *,-, �� �/ �����+' , �,�1 H�+���� , ��+'�� +��%�+� ��� ��(-���� +��%,� +��6�%1 �/ ,��� ��

���6+ �� � *,-, �� �/ �����+' ��� �,�1 �/ *��%��I� F�6���%� � -%��%���K�+' �� ������� ,+�

������ 6� �,�� �6� (��%�*� � 6��*� ��� %��,���� -�%/�%(,+*� �/ ��A�%�+� +��6�%1� *,+

4�� �� ������ �� �� � 2� ���� �� ��� � �� �� � �� ����� ����� ��� � �� ���������# fminimizetraction# �� ��� ������$������� ���� �+������� ���� ��� ������ ����� � ��� ������ ���� ��=���� �� ����� �� �� ��� ���� �� �������� ������ ��� �+����� ����� � $� ���� ������ �� � ��� ���� ���� ���� ���� 7����� ��������� ����� ��� #��� ����� �$��$��� �� ����� ��� ����������� ������� �� ���� ��� ������ ��=����� $��� ������+ ����� ����# ������������ ���������� �� ���� � �� ����# ����� ����� �� �� �$��$� ����������� �� � � ���$� ��� � �2 � ����� �� �� ����� ���

��

Page 73: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.4 Neural Network Type and Structure

� ��,��,���� �+ ���� 6,� ��� (��%�*�� �����, ����� ,+� ��(-��*���� ������ � �+��%����� �+ ,

-%,*��*,� *�+��&� ,� �--���� �� , ����%���*,� �+��

�+ �%��% �� 9+� , ����, �� +��%,� +��6�%1 ��%�*��%�� 6� ��,%� 6��� ��� ��%�*��%�� /%�( ��� ,����+�

��� H��� ��*���+ �.�� �+ -,'� �I� )�,� ��� , ��+'�� �,��% -�%*�-�%�+� ,+� ��%�� (�����,��%

-�%*�-�%�+� 6��� .� � ,+� � �����+ +����� %��-�*������� )� ����%(�+� ����% -�%/�%(,+*���

6� �,��� /�% �,*� ��� /��% ��-�� �/ +��%,� +��6�%1�� %�+ . ��������+� �/ � '�+�%,���+� 6���

��%�� ��A�%�+� (��,���+ %,��� ,� ���*%� �� �+ -,'� # � )���� /�% �,*� *�( �+,���+ �/ +��%,�

+��6�%1 ��%�*��%� ,+� (��,���+ %,�� �+ ��% ,����+� ���� 6� �,�� %������ �/ . ��������+�� ,+�

6� ,%� �+��%����� �+ *�(-,%�+' ����% -�%/�%(,+*��� )�� -�%/�%(,+*� �/ ,+ ��������+,%� %�+ ��

����%(�+�� � ��� ,��%,'� �/ ��� 9�+��� �*�%�� � �,�+�� � ��� ������ ���#�� ������� � ���

���� ������� � '7888��* ����� 788 � ���������� � ����� �+ , -������,��,���+ %�+ ,+ �+������,�

�� ��,��,��� �+ ��� �,(� (,++�% ,� �+������,�� ,%� ��%�+' ��������+� ��6���%� � �� 7�*��+' ���

�+������,� �� , ��'��% +�( �% �/ �%�,�� H� ��%�+' ��� -������,��,���+ %�+ ��%��� � ��%�+'

��������+I , (�%� ,**�%,�� (�,��%� �/ ��� '�+�%,� -�%/�%(,+*� �� � �,�+���

8� ��� �%���(,+>� ���� �� *�(-��� ��,�����*,� ��'+�9*,+*� �/ ��% %������ ,+� �� ����%(�+� 6��*�

+��%,� +��6�%1 ������ ��� ��� %������ D!�+���%� �E� )�� �%���(,+ ���� �� +�+-,%,(��%�* ,+�

�+�� %�;��%�� � ��%�,���+� �� � (���,��� �+��-�+��+� ,+� %,+1, �� ,**�%��+' �� ��(� *%���%��+

�� � ,--��*, ��� 5�% � ��%�,���+�� ��,� �� 9�+��� �*�%�� � �,�+�� ��%�+' -������,��,���+ %�+��

,%� (���,��� �+��-�+��+� ,+� *,+ � %,+1�� ,**�%��+' �� ��� 9�+��� �*�%�� � �,�+��� 5+� �/

��� �+�9�� �/ ���+' ��� �%���(,+ ���� ,� �--���� �� 5+��6,� ��5Q� H��,����� 5/ Q�%�,+*�I

,+� )�1��>� ���� D:�+�'�(�%�� . �E� �� ��,� +� ,���(-���+� +��� �� � (,�� , ��� ���

����%� ����+� �+��%���+' ��� -��+�(�+�+ �/ �+��%���� :�%����%� ��� �%���(,+ ���� �+�� ����

��� %��,���� %,+1� �/ ��� � ��%�,���+� ,+� ���%�/�%� +� �+��%-%��,���+ �% ,���(-���+� *�+*�%+�+'

��� 9�+��� �*�%��> +�(�%�*,� �,���� ,%� +�*���,%��

)�� %,+1�+' 6�%1� ,� /����6�� ��% �,*� ��������+,%� ����-� Ei� 6� �,�� . �� #�� 3,*� ��*1

*�%%��-�+�� �� , ��,%��+' *�+�����+ H�+���,� %,+��( ����I� 8� *,+ ,%%,+'� ��� -������,��,���+

%������ �+ , (,�%�&�

�� # E1 E2 . . . En

1 f11 f12 . . . f1n

2 f21 f22 . . . f2n

3 f31 f32 . . . f3n

. . . . . . . . . . . . . . .

m fm1 fm2 . . . fmn

6��%� fxy �� ��� -������,��,���+ 9�+��� � �,�+�� /%�( ��������+,%� ����- Ex 6��� �+���,� ��,%��+'

*�+�����+� y� )�� %,+1�+' �� ���+ ��+� �+ , -�%� ��*1 ,��� H-�%�%�6 ,��� �+ ��� (,�%�& ���6+

, ���I� F�+*�� �,*� ��������+,%� ����- �,� , ���,� �/ . %,+1� ��+*� 6� �,�� -�%/�%(�� .

��������+,%� %�+� /�% �,*� ����-� )�� �%���(,+ ���� ���+ -�%/�%(� , ��,�����*,� ���� �+ �����

%,+1�� ��% �,*� ��*1 %,+1 � �� ,���'+�� �� ��� ��������+,%� ����- 6��� ��� ��'���� -�%/�%(,+*�

/�% ��,� ��*1� 6���� %,+1 . �� '���+ �� ����- 6��� ��� ��*�+� ��'���� -�%/�%(,+*�� ,+� �� �+�

8� �,�� ���� ��� ��/�6,%� -,*1,'� � �� -�%/�%( ��� ��,�����*,� ������ ��% /�%���% �+/�%(,���+

�+ � 6� %�/�% �� /����6�+' ����%,��%�� ��,1, ,+� 4�+���(,+ D�#E� ��-��� D. �E� �,�',,%�

Page 74: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.4 Neural Network Type and Structure Evolving Controllers

D. .E� :,�+��+,�� ,+� $%,�+ D. �E� ,+� Q�%K,+� D. �E�

����� !�����

$�/�%� 6� ,+,��K� ��� 9�+��� �*�%�� /�% ��� ��A�%�+� +��6�%1 ��%�*��%��� 6� �,1� , ���1 ,� ���

��%,��'��� /��+� � ��������+� )�� ��'���� -�%/�%(�+' *�+�%����%� �/ ,�� ��� ��������+,%� %�+�

*,+ � ������� �+�� ��%�� '%��-� ,**�%��+' �� ��� ��%,��'� ���� �(-���� 3&,(-��� �/ ��� ��%��

��%,��'��� ,%� ���6+ �+ ��'�%� ����

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

SFS

FS F

S

F

’gnuplot_renderer_arena.dat’ ����� � ��%,��'� 6��%� ��� �� ��� ��**���/����*��%��+,�� ,+� ��,%� (���+'� �� ,� , ���� ������*��� ���� ��,%� %��,��+' , ��� ����% *�+��%�/ (,�� ,+� /,�� �� *��%��+,�� ����% (���(�+���+ , +�6 ��%�*���+� )���� ��� �6,%(� �� '������*1 *���� �� , ���� ,+� /,��� �� %�,*� �� �,%'��,%�,�

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

SFS

F

SFS

F

’gnuplot_renderer_arena.dat’ ���� ��� � ��%,��'� �+ 6��*� (����+ �� %����%��� *�(-������ 6��+ , ���� �� ����*���� ����� ��� %�,*���� +,��%� �/ ��� +��%,� +��6�%1����� ���� *,���� , B ��+*�+'C ��,���%� ��+*���� �� ��� (��� ��6,%�� ��� ��'�� ,� ��+' ,�+�+� �/ ���( ����*� , ����� ��%�+' ��� ��(���� ���� �� ����*���� ��� �6,%(� �� %���%����)��� *,���� ��� -,�� �/ ��� �� ��� �� %���( ���,6 ����� �+ ��� %�'��+� 6��%� ��� �6,%(� �� ��*���� �� , �����

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

S

F

S

F

S

F

S

F

’gnuplot_renderer_arena.dat’ �� �� � ��%,��'� ��,� %����� �+ *�,+'�+' ��%�*����+� ��6���%� ��� ��%�*���+ �� +�� *�(-������%���%��� ,� �� �� ��� *,�� 6��� ��� ��%,��'� ����*%� �� , ���� �� �+���,� ��� ,�� ��� �� �����%+ ,6,� /%�( ��� ���� �+��� �� �� +� ��+'�%����*���� )��� *,���� ��� �%,7�*��%� �� %���(� �� ��(��*�%*���� 6��+ ��� �6,%(� �� �� *���� ����� ��'� �/ , �����

Figure 4-11: Examples of the three different strategies found by evolution:fail, re-verse, and turn.

)�� ��%�� ��%,��'���� 6��*� 6� ��+��� ���� �������� ,+� ����� ,�� %�-%���+� ��*,� �-��(, �+ ���

9�+��� �,+��*,-�� /�% ��� +��6�%1 ��%�*��%��� )�� ��� ��%,��'� �� ,+ �+����%, �� ��*,� �-��(�(

Page 75: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.4 Neural Network Type and Structure

��,� %������ �+ *�+�%����%�� 6��*� �� +�� ����� ��� �,�1� )�� 9�+��� �*�%�� �/ ��*� *�+�%����%�

%�0�*� ����% �+,��;�,*� � ��+' ��6� !�+�%����%� %����+' �+ �+� �/ ��� �6� ����% ��%,��'����

+,(��� ��� ������� ,+� ��� ���� ��%,��'�� ,%� *,-, �� �/ �����+' ��� �,�1 ,+� ��� 9�+��� �*�%� /�%

, '���+ *�+�%����% ���� +�� ,��+� %���,� 6��*� �/ ��� �6� ,%� ���� � ��� *�+�%����%� ������'� ����

*���� �+��*,�� ��,� ��� �6� ��%,��'��� ,%� �3����� � �� ��+*� ���� %����� ,%� *�(-,%, �� �+ ��%(�

9�+��� �*�%��� ����% -�%/�%(,+*�� �+ -����*,� %� ��� ,%� ��A�%�+�� !�+�%����%� �(-��(�+��+' ���

������� ��%,��'� �� +�� �%,+�/�% ,� �,���� ,� *�+�%����%� �(-��(�+��+' ��� ���� ��%,��'�� ��*,��

��,� �+ ��(��,���+ ��� *�+�%�� *�*��� ,%� ��+*�%�+���� 6��*� �� +�� ��� *,�� �+ %�,� %� ����

(�%����% ��� �-�,1�%�� (�*%�-��+��� ,+� ��� /%�;��+*� ,+,����� *��� -%���� +�� �� � ,�

%���, �� ,� ,+��*�-,���� ,+� ���%�/�%� ��� ��+*�%�+��� ��,���%� �+ 6��*� ��� ������� ��%,��'�

%������ �� +�+��&����+� �+ %�,����� 5+ %�,� %� ��� ��� -�%/�%(,+*� �/ *�+�%����%� ,��� �+ ���

������� ��%,��'� �� ���%�/�%� +�� ,� '��� ,� *�+�%����%� ,��� �+ ��� ���� ��%,��'�� F,� ����

����� ��+ 1+�6+ ��%�+' ��� ������-(�+� �/ )6���� �% ��%�+' ��� �+'�+��%�+' �/ ��� 9�+���

/�+*���+� 6� (�'�� �,�� �,1�+ (�,��%�� �� -%���+� ��*� ��%,��'��� /%�( ��+' �&-��%�� �

��������+� F�6���%� 6� *,+ +���% '�,%,+��� , ���,� *�%%��-�+��+*� ��6��+ ��(��,���+ ,+�

%�,����� ,+� ���%�/�%� 6� *,++�� -%���+� ��,� ��������+ ��(���(�� 9+� �������+� ��,� ,%� ,���

�+ /�,��%�� �&����+' �+ ��(��,���+ �+���

���� �, ! ���

$�&�-���� /�% �,*� �/ ��� +��%,� +��6�%1 ��%�*��%�� ,%� ���6+ �+ ��'�%� ��.� )�� 9'�%� *�+�,�+�

/��% �&�-����� �+� /�% �,*� +��%,� +��6�%1 ��%�*��%�� ,+� �,*� �/ ��� �&�-���� *�+�,�+� ��%��

-�-��,���+�� �+� /�% �,*� �/ ��� ��A�%�+� (��,���+ %,��� �������

��'�%� ��� �� , �%���(,+ �&�-��� �/ ��� %������ /�% ,�� �/ ��� +��%,� +��6�%1 ��%�*��%�� ,+�

(��,���+ %,���� )�� %������ �,�� ��+ �%��%�� ,**�%��+' �� ��� ,��%,'� %,+1�+' �/ ��� ������

���+,%� ����-� ,+� ��,�����*,� �+��'+�9*,+*� ��6��+ ��� ���( �� �+��*,��� � ��� ����� ��%��*,�

��+�� �+ ��� ��/���,+� ���� �/ ��� 9'�%� H����� ��������+,%� ����-� *���%�� � ��� �,(� ��%��*,�

��+� ,%� +�� ��'+�9*,+��� ��A�%�+�I� )�� %������ ���6+ �+ ��� 9'�%� ��''��� ��,� ��� ��(-��%

+��6�%1� -�%/�%( ;���� 6���� :�%� �-�*�9*,���� ��� (�����,��% +��6�%1 6��� . �����+ +���� ,+�

��� -�%*�-�%�+ ,--�,% �� � ,��;�,�� �+ �����+' ��� �,�1� ,+� *��,%�� ���-�%/�%( ��� �,%'���

+��6�%1 ��%�*��%� �+ ��% ,����+� ���� +,(��� ��� (�����,��% +��6�%1 6��� � �����+ +�����

��'�%� ��� ,��� ��''���� ��,� , (��,���+ %,�� �/ 1% �� ��� *�+��%�,���� �� (��� ��� ��,+�,%�

'�+���* ,�'�%���( 6��� *%������% ,+� %,+1�-%�-�%���+,� ����*���+ �� %�'��+� �/ ��� 9�+��� �,+��

�*,-�� *�+�,�+�+' ��**���/�� ��%,��'��� ,� ��**���/���� '�+���* ,�'�%���(� 6��� ��'��% (��,���+

%,����

$,��� �+ ��� %������ ���6+ ��'�%� ��� , -�%*�-�%�+ ���( �� ��@*� /�% �����+' ��� �,�1 6����

��+' ��� ��(-���� +��6�%1 ��%�*��%� ��,� 6� �,�� ������� 8� (�'�� � *�+��%�,���� ,+�

-�*1 ��� (������,��%�� +��%,� +��6�%1 6��� . �����+ +��%�+�� 6���� ,��%,'� -�%/�%(,+*� 6,�

(�,��%�� �� � ���'���� ��'��% ��,+ ��,� �/ -�%*�-�%�+�� ,�����'� ���%� �� +� ��%�+' ��,�����*,�

�����+*� ��,� �� ���� �+ /,*� -�%/�%( ����% ��,+ -�%*�-�%�+� �+ '�+�%,��

�� (�+���+�� �,%���%� ��� ��%,��'��� /��+� � ��������+ *,+ � ������� �+�� ��%�� '%��-� H���

��'�%� ���I� ��6 �/ 6� *�+����% ��� +�( �% �/ ��%,��'��� /��+� ��� ��A�%�+� ��������+,%� ����-�

���+'�+' �,*� '%��-� , ��A�%�+� -�*��%� �(�%'��� ), �� �� ����� ��� +�( �% �/ ��%,��'��� /%�(

Page 76: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.4 Neural Network Type and Structure Evolving Controllers

perceptron (1%) perceptron (5%) perceptron (10%)

0.1

0.2

0.3

0.4

0.5

Perceptron

Multilayer 2h (1%) Multilayer 2h (5%) Multilayer 2h (10%)

0.0

0.1

0.2

0.3

0.4

0.5

0.6

Multilayer with 2 hidden nodes

H,I H I

Multilayer 10h (1%) Multilayer 10h (5%) Multilayer 10h (10%)

0.1

0.2

0.3

0.4

0.5

Multilayer with 10 hidden nodes

Multilayer 19h (1%) Multilayer 19h (5%) Multilayer 19h (10%)

0.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Multilayer with 19 hidden nodes

H*I H�I

Figure 4-12: One box-plot for each of the four network structures, where each box-plot contains three populations, one for each set of evolutionary runwith a given mutation rate.

Page 77: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.4 Neural Network Type and Structure

2 4 6 8 10 12

Rank

multilayer 10h (1%)multilayer 19h (10%)

multilayer 19h (1%)perceptron (1%)

multilayer 19h (5%)multilayer 2h (1%)

perceptron (5%)multilayer 10h (5%)

multilayer 10h (10%)perceptron (10%)

multilayer 2h (5%)multilayer 2h (10%)

ANN

Figure 4-13: 9������ ���� ��� �� ��� ������ ������" ���������� ������� �� �>������������ ����� ������� �������� �� ��� ������� ���"�� � -? ����������� ���� ���� ��� ��� �� �� ������ ������" ����������� �� ���� ����������� �� �� �������� ��� ������� ��������� ����0����� �� � ����0����� ����� �� 95%� �� ������� ��� ��� �� ������ �� ������" ��- ���� ����� ��� ����� ������� �� � ������ ������� ��� � �������� ���� �� 10% ������� �� ���� ������� ���"��� ��� ���������� �� ������� ��� �� ���� ��� ��� �>����� ���� �� ���� ���� ���������� ���� � ������ ������� � ���� ���� ���� ����� ���� ������� �� �������� ���� �� 10%�

1% 5% 10% ����

���� ���� ���� ���� ���� ���� ���� ����

)�������� � �# �

,� �� �*�� � � . �. � �� � �. #

,� �� �*�� �6 � � � # �� # � ��

,� �� �*�� �� � � � � # �� ��

Table 4-1: The number of turn and reverse strategies found for the evolutionarysetups out of 20 evolutions. Notice, that for the perceptron controller, nota single evolution found the turn strategy. This could be an indication thata perceptron cannot encode such a strategy efficiently or, alternatively,that the strategy is (very) hard to find in the fitness landscape for theperceptron.

Page 78: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.5 Neuro-Evolution Method Evolving Controllers

�,*� '%��- /��+� � ��� ��������+,%� ����-� %�+ . ��(�� 6��� ��A�%�+� �+���,� *�+�����+�� �+

��'�%� �� ��� ��������+,%� ����-� �,�� ��+ ,%%,+'�� ,**�%��+' �� ���%� ,��%,'� %,+1 '��+'

/%�( ��6��� �� ��'����� ����*�� ��,� /�% ��� -�%*�-�%�+ *�+�%����%� +�� , ��+'�� ��������+,%� %�+

�,� %������� �+ , *�+�%����% %����+' �+ ��� ���� ��%,��'�� )��� *���� �+��*,�� ��,� , -�%*�-�%�+

*,++�� �+*��� ��*� , ��%,��'� �@*��+���� �% ��,� ��� ��%,��'� �� H��%�I �,%� �� 9+� �+ ��� 9�+���

�,+��*,-� /�% ��� -�%*�-�%�+�

Reverse strategyTurn strategy

0

5

10

15

20

mul

tilay

er 2

h(10

%)

mul

tilay

er 2

h(5%

)

perc

eptr

on(1

0%)

mul

tilay

er 1

0h(1

0%)

perc

eptr

on(5

%)

mul

tilay

er 1

0h(5

%)

mul

tilay

er 2

h(1%

)

mul

tilay

er 1

9h(5

%)

perc

eptr

on(1

%)

mul

tilay

er 1

9h(1

%)

mul

tilay

er 1

9h(1

0%)

mul

tilay

er 1

0h(1

%)N

umbe

r of

str

ateg

ies

foun

d ou

t of

20 e

volu

tions

Figure 4-14: 8����� �� ���� ��� ������� ����� � -? ��������� �� �>����� ������������ ��� ��� ���� � �� ���������� ���� � ��� ���� ���������������� �� �� ������� ���" ���� ���� ������ �� ����� 8���� ������� �� �� ���������� ���� � ������� ���� ����� ����� ���� �����������

)����� ��

)�� ��(-���� +��6�%1 ��%�*��%� ��,� 6� �,�� ������� ��� -�%*�-�%�+� ,--�,%� �� � �+*,-, ��

�/ %�-%���+��+' ��� ���� ��%,��'�� �% ,� ��,�� %�-%���+� �� �+ ,+ �@*��+� (,++�% �,���� /��+� �

,%��9*�,� ��������+� )�� ��*�+� ��(-���� +��6�%1 ��%�*��%�� 6��*� 6� �,�� ������� , (�����,��%

+��6�%1 6��� . �����+ +���� 6,� %,+1�� ��� ,+� .+� �+ ��%(� �/ ,��%,'� -�%/�%(,+*� /�%

,�� ��������+,%� %�+� H��� ��'�%� ���I� � (�����,��% +��6�%1 6��� . �����+ +���� �� *,-, ��

�/ %�-%���+��+' ��� ��� ���� ,+� ��� ������� ��%,��'� ,+� �� *,+ � ��**���/���� ��������

)��%�/�%�� 6� *����� ���� +��6�%1 ��%�*��%� ,+� (��� ��% /�*�� �� ��� +��%����������+ (�����

,+� ��������+,%� -,%,(���%��

�� &������������ +����!

�+ ���� ��*���+ 6� ���/� ��% /�*�� �� ��� +��%����������+ (������ �+ ��� -%������ ��*���+ 6� �,��

/��+� ,+ ,��;�,�� 9�+��� /�+*���+ ,+� , ��(-�� +��%,� +��6�%1 /�% 6��*� �� �� -���� �� �� ������

Page 79: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.5 Neuro-Evolution Method

��**���/�� ��%,��'��� ��,� ,%� �%,+�/�%, �� �� %�,� %� ���� �� /,% 6� �,�� �+�� *�+����%�� '�+���*

,�'�%���(� 6��� �+��-��+� *%������%� %,+1�-%�-�%���+,� ����*���+� ������(� ,+� ��%�� ��A�%�+�

(��,���+ %,���� 8� *,�� ���� , �������� 9�� �+ ��� /����6�+' 6� *�(-,%� ��� -�%/�%(,+*� �/

, ��,+�,%� 4� 6��� ��,� �/ , [μ, λ] ��������+,%� ,�'�%���(�� ,+� ��� +��%����������+ (�����

1+�6+ ,� ������� �� ��� ���� ����� ��� ���� H!!4�I�� :�%����%� 6� ���� �,%����

,--%�,*��� �� �+*%�(�+�,� ��������+ ,+� , (����,% (����� 1+�6+ ,� �� ���� ������ ��������

8� 9%�� *�(-,%� ��� -�%/�%(,+*� �/ +��%����������+ (������ �+ 6��*� ��� 6���� �,�1 �� ��,%+�

� �+� +��6�%1 ,+� ��%��'� , ��+'�� ��������+,%� %�+� :�%� �-�*�9*,���� 6� *�(-,%� ��� -�%�

/�%(,+*�� �/ ��,+�,%� 4��� [μ, λ] ,�'�%���(�� ,+� !!4�� �+ ��% �,�1� )�� ��'���� -�%/�%(�+'

,--%�,*� 6��� ���+ � ���� 6��+ 6� ��,��,�� ��� -�%/�%(,+*� �/ �+*%�(�+�,� ��������+ ,+�

������+' +��%,� ,%%,��� )�� *�+�%����%� ������� *�+���� �/ (�����,��% +��6�%1� 6��� �6� �����+

+���� �+ ,�� ��% ������ �&*�-� /%�( ����� *�+*�%+�+' ������+' +��%,� ,%%,�� /�% 6��*� 6� ,���

������ ��� -�%/�%(,+*� �/ *�+�%����%� *�+�����+' �/ (����-�� -�%*�-�%�+��

��.�� � �� �� 1� '�� [μ, λ] '�� ##1�

�+ �%��% �� *�(-,%� ��� -�%/�%(,+*� �/ ��,+�,%� 4��� [μ, λ] ��������+,%� ,�'�%���(�� ,+�

!!4�� �+ ��% �,�1� 6� �,�� *����+ , �� ��� �/ ��������+,%� -,%,(���%� /�% �,*� (����� ,+�

*�+��*��� . ��������+,%� %�+� /�% ���%� �+� �/ ��� %������+' ����-�� )�� ,--%�,*� �� ��(��,% ��

��� ,--%�,*� �,1�+ /�% 9+��+' ,+ ,--%�-%�,�� +��%,� +��6�%1 ��%�*��%� ���*%� �� �+ ��*���+ ��

������� 5�% )�� ��,+�,%� 4� �� ��� ��������+,%� ,�'�%���( ��,� 6� �,�� ���� �� /,% �� 9+�

, ����, �� 9�+��� /�+*���+ ,+� �� 9+� , ��(-�� +��%,� +��6�%1 ��%�*��%�� �+ ��% -%������

���� %�+� 6��� ��� ��,+�,%� 4�� 6� /��+� ��,� , (��,���+ %,�� �/ 1% �+ ,�� *,��� 6,� ���

*�+��%�,����� 6���� '��� %������ 6�%� � �,�+�� /�% (��,���+ %,��� �/ ��� 5% ,+� 10%�

)�� �&�-��� ���6+ �+ ��'�%� ��.H I �+ -,'� �. ,*��,��� �+��*,��� ��,� , (��,���+ %,��

��'��% ��,+ 10% *���� -�%/�%( 6��� H��� ,��%,'� 9�+��� �/ �+������,�� ������� 6��� ,

(��,���+ %,�� �/ 10% �� ��'��% ��,+ ��� ,��%,'� 9�+��� /�% �+������,�� ������� 6��� ,

(��,���+ %,�� �/ 5%I� )��%�/�%�� 6� �,�� �+*����� ��������+,%� %�+� 6��� , (��,���+

%,�� �/ 15%� ��% ,�� ��� ��,+�,%� 4��� ��� [μ, λ] ,�'�%���(�� ,+� /�% ��� !!4��� 6� �,��

%�+ ���� 6��� (��,���+ %,��� 5%� 10%� ,+� 15%�

[μ, λ] � � ������* � ������% ��*,�� ��,� ��� [μ, λ] ,�'�%���( �� ,+ ��������+,%� ,�'�%���(

/�% 6��*� ��� ��� μ �+������,�� /%�( , '�+�%,���+ ,%� ����*��� /�% %�-%���*���+ �/ ���

+�&� '�+�%,���+� � +�6 �+������,� �� *%�,��� /%�( , ��+'�� -,%�+�� ,+� ��+*� ��,%*� �+ ���

�-,*� �/ �������+� �� ��+� ������ ��%��'� (��,���+ ,+� 6������ *%������%� λ ��+���� ���

-�-��,���+ ��K�� 6��*� 6� �,�� 9&�� ,� 100 �+������,��� 8� �,�� *����+ 3 ��A�%�+� �,����

/�% μ� ��+*� ��� -�%/�%(,+*� �/ [μ, λ] ��������+,%� ,�'�%���( �� ��1��� ��%� ��-�+��+� �+

��� +�( �% �/ -,%�+�� ����*���� :�%� �-�*�9*,���� 6� �,�� %�+ ����� /�% 6��*� ��� 5� 10,+� 20 ��'���� -�%/�%(�+' �+������,�� ,%� ����*��� /�% %�,%�+' ��� +�&� '�+�%,���+� �/ �+��

, /�6 -,%�+�� ,%� ���� H��,� ��� ��6 �,���� �/ μI �� (�,+� ��,� ��� ��,%*� �� -�%/�%(��

5��� ������� ��� �� � �� ) ��� ���� �� [μ, λ] �$������� �� ���������6��� ������� ��� �� � �� � ��� ���� �� ��I*�7��� ������� ��� �� � �� � ��� ���� �$��$��� ���� � �� ��

Page 80: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.5 Neuro-Evolution Method Evolving Controllers

,''%�������� �*,��� �� �� *�+*�+�%,��� ,%��+� /�6�% -��+�� �+ ��� �������+ �-,*�� �/ (�%�

-,%�+�� ,%� ����*��� /�% %�-%���*���+� , ��'��% ����� �/ -�-��,���+ ����%���� �� (,�+�,�+���

�� *�+��%'�+*� �� '��� �������+� *���� � ���6�% ��+*� ���� �&-��%,���+ �� ��+� ,%��+�

��� ��'���� �*�%�+' �������+� /�% , '���+ '�+�%,���+� ��% �,*� �/ ��� ��%�� ����*��� �,����

�/ μ� 6� �,�� %�+ . ��������+,%� %�+� /�% �,*� �/ ��� ��%�� (��,���+ %,���� )���� /�%

��� [μ, λ] ��������+,%� ,�'�%���( 6� �,�� , ���,� �/ 9 × 20 ��������+,%� %�+�� 6���� /�%

��� ��,+�,%� 4� ,+� /�% ��� !!4� 6� �,�� 3 × 20 ��������+,%� %�+� /�% �,*��

!!5�% ��% ��� !!4� 6� �,�� , �� �-�-��,���+ /�% �,*� +�+��+-�� +��%�+� �+���,� �/ ,

��+'�� -�-��,���+ ,� �� �� ��� *,�� /�% ��� ��� ��,+�,%� 4� ,+� ��� [μ, λ] ��������+,%�,�'�%���(� )��%�/�%�� 6� �,�� , ���,� �/ 4 �� �-�-��,���+�J �+� /�% �,*� �/ ��� �6�

�����+ +����� ,+� �+� /�% �,*� �/ ��� �6� ���-�� +��%�+�� 3,*� �/ ��� �� �-�-��,���+�

�,� , ��K� �/ 25 �+������,��� )���� �+ �,*� '�+�%,���+ ��� -�%/�%(,+*�� �/ 4 × 25 = 100+��%,� +��6�%1� ,%� ��,��,���� �+ ��� �%�'�+,� -� ��*,���+ �+ ��� �� 7�*� �/ *�( �+�+'

!!4�� ,+� +��%,� +��6�%1� D�����% ,+� �� L�+'� . E� ��� ,����%� ���� �� �-�-��,���+�

�/ 50 �+������,�� �,*�� F�6���%� �+ �%��% /�% ��� (����� �� � �*,�, ��� ��� +�( �% �/

�+������,�� �+ , �� �-�-��,���+ �,� �� � 1�-� %�,��+, �� ��6� 8��� 25 �+������,�� �+ �,*�

�� �-�-��,���+ 6� ,*����� ��� �,(� +�( �% �/ ��,��,���+� -�% '�+�%,���+ ,� 6��� ���

����% +��%����������+ (������ ,+� ���� 6� ,%� , �� �� ��%�*��� *�(-,%� ��� -�%/�%(,+*�

�/ ��� %������+' �+������,���

)�� (,�+ ��A�%�+*� ��6��+ ��� ��,+�,%� 4� ,+� ��� [μ, λ] ��������+,%� ,�'�%���( �� ��,� �+ ���

/�%(�% *%������% �� ����� 6���� �+ ��� �,���% (��,���+ �� ��� �+�� '�+���* �-�%,��% ���� �� -�%/�%(

��� ��,%*�� )�� !!4� ��A�%� /%�( ��� ��� ��,+�,%� 4� ,+� ��� [μ, λ] ,�'�%���(� �*,���

(����-�� �� �-�-��,���+� ,%� ����� $� ���+' �� �-�-��,���+� ,+� ���%� � 1��-�+' +��%�+� /�%

��A�%�+� -������+� �+ ��� +��%,� +��6�%1 ��-,%,��� ��� ���, �� �� ��� ��� ���( �-�*�,��K� ,+�

,�,-� �� �,*� ����%>� �-�*�,��K,���+�� �+ ����% 6�%��� ��� ���, �� �� ��� ��� +��%�+� ��� ����

)��� ������ %����� �+ ����% �������+� ��+' � �,�+�� /,���% D�����% ,+� �� L�+'� . E� ��6���%

��% %������ -%���+��� ���6 �+��*,�� ��,� �� �� +�� ,�6,�� ���

�����

� �&�-��� �/ ,�� ��������+,%� ����-� �� ���6+ �+ ��'�%� ���� �+ ��'�%� ��# ��� ��������+,%�

����-� �,�� ��+ ,%%,+'�� ,**�%��+' �� ��� ,��%,'� %,+1�+' ,*������ ��%�+' ��� -������,��,���+

%�+� ,+� ��,�����*,� �+��'+�9*,+*� H6��� , *�+9��+*� ����� �/ 95%I �� �+��*,��� � ��� �����

��%��*,� ��+�� �+ ��� ��/���,+� ���� �/ ��� 9'�%�� )�� ��'���� -�%/�%(�+' ��������+,%� ����-� ,%�

����� �+�����+' ��� [μ, λ] ��������+,%� ,�'�%���(� /����6�� � ��� ��,+�,%� 4� 6��� *%������%

,+� %,+1�-%�-�%���+,� ����*���+� ��+,���� ��� !!4� -�%/�%(� ;���� -��%�� /�% ,�� ��%�� (��,���+

%,��� �������

)�� ��6 -�%/�%(,+*� �/ ��� !!4� *,+ �/ *��%�� � ��� �� ��� ��������+,%� -,%,(���%� ��,� 6�

�,�� ����*��� /�% ��� ,�'�%���(� ��*� ,� ��� ��K� �/ �,*� �� �-�-��,���+� ��� ����*���+ �*��(��

,+� +�( �% �/ ������ *�-��� /%�( �+� '�+�%,���+ �� ��� +�&�� ,+� �� �+� �� (�+���+�� , ����

6� �,�� ���� , -�-��,���+ ��K� �/ 25 �+������,�� /�% �,*� �� �-�-��,���+� ��%���%(�%�� , %,+1�

-%�-�%���+,� ����*���+ 6,� ����� %�-%���*���+ �,--�+�� ������ ��%��'� (��,���+ H� � �� ���I�

Page 81: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.5 Neuro-Evolution Method

Sta

ndar

d G

A (

5%)

Sta

ndar

d G

A (

10%

)

Sta

ndar

d G

A (

15%

)

[mu=

5,la

mbd

a] (

5%)

[mu=

5,la

mbd

a] (

10%

)

[mu=

5,la

mbd

a] (

15%

)

[mu=

10,la

mbd

a] (

5%)

[mu=

10,la

mbd

a] (

10%

)

[mu=

10,la

mbd

a] (

15%

)

[mu=

20,la

mbd

a] (

5%)

[mu=

20,la

mbd

a] (

10%

)

[mu=

20,la

mbd

a] (

15%

)

CC

GA

(5%

)

CC

GA

(10

%)

CC

GA

(15

%)

0.0

0.1

0.2

0.3

0.4

0.5

Standard GA, [mu,lambda], and CCGA

Fitn

ess

Figure 4-15: 2��� ��� �� �� ���������� ��� �� �������� 3�� �� [μ, λ] ���������� ������� '@���������A)� ��� �� !!3�� �� ������� ��� ���� ���������������� �� �������������� ������ ,� 9���� B��C �� �� ���� ����� ������� ��� ���� �������� �������� �� ��� ������� ���"���

Page 82: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.5 Neuro-Evolution Method Evolving Controllers

2 4 6 8 10 12 14

Rank

CCGA (5%)CCGA (15%)CCGA (10%)

[mu=5,lambda] (5%)[mu=20,lambda] (5%)

Standard GA (5%)Standard GA (15%)

[mu=10,lambda] (5%)Standard GA (10%)

[mu=5,lambda] (15%)[mu=5,lambda] (10%)

[mu=20,lambda] (10%)[mu=10,lambda] (10%)[mu=10,lambda] (15%)[mu=20,lambda] (15%)

Neuro−evolution method

Figure 4-16: 9������ ���� ��� �� �� ���"�� ��� �� �������� 3�� �� [μ, λ] ����������� ������� '@���������A)� ��� �� !!3� �� ������ ������������ ��� ��� -? ���������� ����� �� ���� ������� ���� �� �� ����������� ������ ��������� ����0����� �� � ���0����� ����� �� 95%� ��������� ��� ��� �� [μ, λ] ���������� ������� ������ �� ����������� ���"��� ��� ��� ������� ���������� ���� � ������� �� [μ, λ]������� ������ ������ '�� ��������� ���0�����) ��� �� ��������3� ��� �� !!3�� ������� � �� !!3� ������� ��� ���� ��������� ���� ������ ������� ���"����

Page 83: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.5 Neuro-Evolution Method

,+� 6� *�-� ��� ��� �6� �+������,�� /%�( �+� '�+�%,���+ �� ��� +�&�� )���� ��� ��������+,%�

,�'�%���( ���� /�% ��� �� �-�-��,���+� �� *���� �� , [μ, λ] ,�'�%���( �&*�-� ��,� ��� ����*���+

�*��(� �/ �����+' ��� μ ��� �+������,�� �,� ��+ %�-�,*�� � , %,+1�-%�-�%���+,� ����*���+

�*��(��

)��%�/�%�� 6� ������ ��,� ��� -��% -�%/�%(,+*� �/ ��� !!4� �� ��� �� ��� /�+�,(�+�,�

6,� �+ 6��*� ��� �� �-�%,��� *�( �+�� 6��� ��� -%�-�%���� �/ ��% 9�+��� /�+*���+� 8��+ ,+

�+������,� H, +��%�+I /%�( , �� �-�-��,���+ �� ��,��,���� , +��%,� +��6�%1 �� *�+��%�*��� /%�(

��� ������ ���� ���� ���� �� /%�( ��� ����% �� �-�-��,���+�� ��+*� ��% 9�+��� /�+*���+

�� %,���% +����� ��� ��'���� -�%/�%(�+' +��%�+ �+ ��(� '�+�%,���+ �� +�� +�*���,%��� ��� ���

�+ , (�%� '�+�%,� ��+��� F�6���%� �� *���� � ��,� *�+�����+� 6�%� ��*� ��,� �� %�*����� ���

��'���� 9�+��� -,%��� � *�,+*� �*,��� �/ ��� +���� 9�+��� /�+*���+� )��� (�,+� ��,� ���

-�%/�%(,+*� �/ ��� ����% +��%�+� �� (�,��%�� 6��� %��-�*� �� ���� �� ��-��(,� +��%�+ ,+�

���� *���� ���%�/�%� -�%/�%( �� ��-��(,��� ���(������� -���� �� �� , ��'%�� 6��%� ��� %,+1�+'

6����+ ����% �� �-�-��,���+� �*�(�� �*%�6�� ��6,%�� , ��A�%�+� �-�*�,��K,���+ ��,��+' �� ,+

���%,�� %�'%�����+ �+ -�%/�%(,+*�� �+ ����% 6�%��� � +���� 9�+��� /�+*���+ *���� ��,� �� ���

!!4� �*�(�+' �+��, �� ��� �� ��� 6,� �+ 6��*� +��%�+� ,%� ��,��,���� ������'�� 6� �,��

+�� ,+,��K�� ���� -��+�(�+�+ �+ ���,��� 6� � ��%��� ��*���,���+� �+ ��%(� �/ 9�+��� �*�%�� �+

����%,� �/ ��� ��������+,%� %�+� 6� *�+��*���� �+ �&,(-�� �� ���6+ �+ ��'�%� ���� )��� *����

�+��*,�� ��,� !!4�� �+���� ��A�% /%�( ��� ����� ���*%� �� , ����

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

0 100 200 300 400 500 600 700 800 900 1000

Fitn

ess

Generation

Fitness plot (CCGA, mr = 15%, run 1)

BestAverage

Figure 4-17: �� ���� �� �� � 0����� ��� ��� � !!3�� 8���� �� �� 0����� �������������� ��� ��� � ������� ��� �������� �� --?� � 6-?�� ��� �� ����� �� C??� ����������

)�� ��,+�,%� 4� ,+� ��� [μ, λ] ,�'�%���( ��A�% �+�� 6��� %��-�*� �� ��� ����*���+ �*��(� ,+� ��

��� ��� �/ *%������%� !%������% �� ���� �+�� �+ ��� ��,+�,%� 4� ,+� +�� �+ ��� [μ, λ] ,�'�%���(�

8?B������ ���������� ������A ������ �� ��� ������ �� � � � � �� �� ��� ���� � ������2# ����� ��� ��� ���������� 7����� �����# �� �� ��� ������� �� ��� ��������� ����# ����� ��� � ���� ����� ����

9F�� � �+ ���� �� ���� �� ��� 7����� �$������� �� �� ��I* ��� ��� ���� ��� F����� ��; J+ ����� �� ���7����� �$������� �� �� �� � � I* �� ����� �� F����� ��� �� � �� <�

Page 84: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.5 Neuro-Evolution Method Evolving Controllers

)�� ����*���+ �*��(� �+ ��� ��,+�,%� 4� �� %,+1�-%�-�%���+,�� 6��*� �+ ��� [μ, λ] ,�'�%���( ���

μ ��� �+������,�� %�-%���*�� �/ 6� *�+����% ��,� ���%� ,%� ��������+,%� ����-� /�% ,�� ��� ������

�,���� �/ μ H5� 10 ,+� 20I� 6��*� -�%/�%( ����% ��,+ ��� ��,+�,%� 4� H��� ��'�%� ��#I� ��

���(� ��,� ��� ����*���+ �*��(� -�,�� , (�+�% %��� *�(-,%�� 6��� ��� %��� �/ *%������%� )��

���, ���+� *%������% �� �� *�( �+� '��� -,%��,� �������+� �+ �%��% �� *%�,�� ����% *�(-����

�������+�� F�6���%� ��% %������ �+��*,�� ��,� *%������% �+�� ��� ��������+,%� ��,%*� � /%�;��+���

-%���*�+' -��%�� -�%/�%(�+' �+������,��� :�%����%� �� �� ;������+, �� �/ �,�1�+' , ��� B-,%��,�

�������+�C ���� � ����� ������ ���� �# (,1�� (�*� ��+��� ��%���% ������� (�'�� �+*���% ���

��+,(�*� 6����+ �,*� �/ ��� +��%����������+ (������� F�6���%� /�% ��% -�%-���� �� ��@*�� ��

9+��+' ��� ��� (������ 6��*� ��%+�� ��� �� � ��� [μ, λ] ,�'�%���( 6��� , (��,���+ %,�� �/

15% ,+� μ = 20�

��.�� %������� � &'����

�+*%�(�+�,� ��������+ %�/�%� �� (������ �+ 6��*� ��������+ �'�+� 6��� , -�-��,���+ ��,� �,�

��+ �%,�+�� /�% , ��(-��% �� ��(���6 %��,��� �,�1 DF,%��� �� ,��� �E� $� -%�'%��������

(,1�+' ��� �,�1 (�%� ,+� (�%� *�(-��&� �����%,--�+' -%� ��(� *,+ -���� �� � ���%*�(�

,+� ��������+ *,+ � �-�� �-� F�6���%� ��� ��� �/ �+*%�(�+�,� ��������+ *,+ �+ (,+� *,���

%�;��%� , �� ��,+��,� �+'�+��%�+' �A�%�� �*,��� ��� '�,���,�1 �,� �� � ������� ��6+ �+��

�� ��,�1�� 6��*� ,',�+ �,� �� � �%��%�� '��+' /%�( ��(-�� �� *�(-��& �� ��,�1�� �� �� +��

'���+ ��,� ��*� ,+ �%��% *,+ � /��+� �% ���+ ��,� ��� '�,���,�1 *,+ � �-��� �+�� �� ��,�1��

����%�������� 6� �,�� �&-�%�(�+��� 6��� �,%���� ,--%�,*��� /�% �+*%�(�+�,� ��������+� 6���

%��-�*� �� ��% �,�1� $���6 6� ���*��� ��(� �/ ��� %��,��� %���,%*� ,+� -%������ �&-�%�(�+��

6��� �+*%�(�+�,� ��������+� /����6�� � , -%���+�,���+ �/ ��% �&-�%�(�+�,� ����- ,+� ��� %������

6� �,�� � �,�+���

F,%��� �� ,�� D�E ������� *�+�%����%� �+*%�(�+�,��� �� �����+'���� ��6��+ 6���� �%�,+'��� ,+�

%�*�,+'��� �+ , �,%1 ,*1'%��+�� )�� '�,� 6,� �� ������ *�+�%����%� ��,� 6���� �+�� (���

%� ��� ��6,%�� �%�,+'���� )�� �,�1 6,� ������� �+�� �� ��,�1� 6��%� ��� %� ��� 6���� 9%�� ��,%+

�� �%��+� ���(������ �� /,*� , �,%'� %�*�,+'�� �,���� ����*�, �� � ����% ��+��%�� ���+ �� /,*� ,+�

(��� ��6,%�� , �(,���%� (���+' %�*�,+'��� ,+� 9+,��� �� �����+'���� ��6��+ %�*�,+'��� ,+�

�%�,+'���� ,+� �+�� (��� ��6,%�� �%�,+'���� )���� *�+�%����%� 6��%� 9%�� �%,�+�� �� /����6 6����

%�*�,+'��� ,+� ���+ �,��% �%,�+�� +�� �� /����6 ���(� �� �+���,� �� /����6 �%�,+'��� �+��� )��

,����%� ������� ��� '�,���,�1 �+�� �� ��,�1� �+ 6��*� %�*�'+����+ ,+� -�%���� 6�%� -%��%���K��

���% ���*%�(�+,���+ ��6��+ ��� �6� '��(��%�* ��,-�� �+ ��� 9%�� -�,���� )�� *�+�%����%�

� �,�+�� 6��� �+*%�(�+�,� ��������+ 6�%� ���6+ �� � (�%� %� ��� ��,+ *�+�%����%� �%,�+�� �+

��� *�(-���� �,�1 /%�( ,+ �+���,� %,+��( -�-��,���+�

���9 �� ,�� D�E ���� �+*%�(�+�,� ��������+ �� ���%*�(� ��(� �/ ��� ���*%�-,+*��� ��6��+

��(��,���+ ,+� ��� %�,� 6�%��� !�+�%����%� ������� �+ ��(��,���+ 6��%� �%,+�/�%%�� �� %�,�

%� ��� ,+� ��������+ 6,� *�((�+*�� �+ %�,� %� ���� �/��% , /�6 '�+�%,���+� ��� -�%/�%(,+*�

�/ ��� *�+�%����%� �+ %�,� %� ��� %�,*��� ��� �,(� ����� ,� ,*������ �+ ��(��,���+� )����

�+*%�(�+�,� ��������+ 6,� ���� �� ,�,-� *�+�%����%�� �%,�+�� �+ ��(��,���+� �� ��� +���� ��'+,��%�

,+� ��,���% �/ ��� -����*,� %� �� �,%�6,%��

��

Page 85: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.5 Neuro-Evolution Method

4�(�K ,+� :��11��,�+�+ D��E ���� �+*%�(�+�,� ��������+� *�( �+�� 6��� �+/�%*�� �� �

-�-��,���+�� ,+� ����,�*���+'� �� ������ � ��,*�� ,����,+*� ,+� -%��,��% ��,���+� �+*%�(�+�,�

��������+ 6,� -�%/�%(�� � 9%�� ������+' -�-��,���+� �/ +��%�+� *,-, �� �/ ,�����+' , ��+'��

�+�(� (���+' ,� ��6 �-��� �+ , ���*%��� � &� '%��� )�� ��K� �/ ��� '%�� 6,� ���+ �+*%�,���

�� , ��&�� '%�� ,+� ,+����% �+�(� 6,� ,����� )6� �+*%�(�+�� /����6�� �+ 6��*� ��� �-��� �/

��� �6� �+�(��� 6,� �+*%�,���� )�� ,����%� ���6�� ��,� ������+' *�+�%����%� /�% ��� *�(-����

�,�1 ��%�*��� 6,� �+/�,�� ��� 6���� �+*%�(�+�,� ��������+ ������� �,���/,*��%� %�������

�+ ��� +�&� ��*���+ 6� ���*%� � �6� ��A�%�+� 6,�� �/ �� �������+' ��% '�,���,�1 ,+� ��� %������

� �,�+�� /�% �+*%�(�+�,� ��������+ ,��� �+ ����� �������+��

����� ������ #����

8� �� ������� ��% �,�1 �+ �6� 6,���

� ������� ���� �.��*% 3�������+ �� ��,%��� �+ , ��(-�� ,%�+, 6��� , ��'�� ���%*� ,+� +�

������ F���� ,%� ,���� �+*%�(�+�,��� 6��+ ��� �,�1 *,+ � ������ �+ ��� -%������ ,%�,�

)�� -�%-��� �/ ,--���+' �+*%�(�+�,� ��������+ �+ ���� (,++�% �� �� ��,-� ��� �+���,� 9�+���

�,+��*,-�� �+ ��*� , 6,� ��,� �������+� ,%� �,���% �� 9+� �*,��� ���%� ,%� +�+� �% �+��

/�6 ������ 8��+ ��� *�(-��&��� �/ ��� ,%�+, �� �+*%�,���� 6� �&-�*� ��� ��������+,%�

��,%*� 6��� ��,%� �+ %�'��+H�I �/ ��� 9�+��� �,+��*,-�� *����% �� , '��� �������+ ��,+ ,

%,+��( -�-��,���+ 6����� ��% �+��,+*�� ���� 6,� �/ -�%/�%(�+' �+*%�(�+�,� ��������+

*���� -%���+� ��������+,%� %�+� �+ 6��*� ��� �� ��� /,�� �� *��%��+,�� ,+� (���� �*,���

�+ ��� 9%�� �+*%�(�+� ���%� ,%� +� ����� �+�� 6��*� �6,%(� ��� *,+ /,�� ,+� �+������,��

6�� (��� 6��� ���%�/�%� � %�6,%���� )�� ,%�+,� ���� /�% ��� �+��%�+(�+�,� *�(-��&���

�+*%�(�+�,� ��������+ ,%� ���6+ �+ ��'�%� ���� 8� ��� ��� ffinal 9�+��� /�+*���+�

��� ���� ������������% �/ �� �� ,���(�� ��,� , ��**���/�� ��,���% *,+ � ��*�(-����

�+�� �� � ��,���%�� !��%��+,����(����+� �����,����,+*�� ,+� -�����,&��� �� �� -���� ��

��,� ����� ��,���%� *���� � ��,%+� �+ ,+ �+*%�(�+�,� /,����+� )�,� ��� ��� 9%�� ��,%+�+'

�,�1 �� *�+*�%+�� 6��� *��%��+,����(����+ �+ ,+ ,%�+, 6������ ����� �+��% , 9�+���

/�+*���+ ��,� %�6,%�� *��%��+,����(����+��� 5+*� , �,���/,*��%� �������+ �,� ��+ /��+��

����� ,%� ,���� ,+� ��� 9�+��� /�+*���+ �� �&��+��� 6��� , *�(-�+�+� 6��*� %�6,%��

*�+�%����%� ��,� ��,� *��,% �/ ����� HfstayaliveI� ��+,���� -�����,&�� �� %�6,%��� ,+� ���

������� *�+�%����%� ������ � , �� �� ����� ��� '�,���,�1 HffinalI�

$��,���%,� ��*�(-������+ %�;��%�� (�%� �/ ,+ �+'�+��%�+' �A�%� ��,+ �+*%�(�+�,� ��������+

��%��'� �+��%�+(�+�,� *�(-��&���� �*,��� 6� �,�� �� (,1� *�%�,�+ ,���(-���+ , ��� ��6

10J������ ��������� ���� �� ������ � �� ��� ������ ��$� ���$������� �� ������� ��������� �� ����� � �� ������, � ��� �������� �������0 �� ���������� �� ��� �� �$� � � �� ��� ��� ��������� ���� � ��� �$ �� �� �� ���� �������2� ���������� �� ������� ���� �� ��������� ����� ��� ������� ��� �� � �� �

11'�� 7����� �������� ��� � � ���� �� �� ������� �� �� ������ ��� ��� ��� ��$� # �� ��� ���� ����# ����� � �9����� ���� �����$ �� J$��� ;# �� � �� ����� �# ��� �������� �� ��� �� ������ �� ���� �� �� ��� ��������#;# ��# � �� ����� � ������# � ��� ���������� ����$�� � ������ �� 7����� � �� �� ��� ��� ���� ��$��� ����� ����� �����$ �� ����� � ����� ����� �� � �������� ���� �����$ �� �� ������ �� �� �� �� �� ���$��� ������ �� ���

��

Page 86: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.5 Neuro-Evolution Method Evolving Controllers

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

H�I H.I

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

H�I HI

Figure 4-18: The arenas used for incremental evolution based on environmentalcomplexity. A population is first trained in (1) until an acceptable per-formance is achieved, then in (2) and so on. After an acceptableperformance has been achieved in (4), the arenas (a) and (b) shownin Figure 4-7 on page 64 are used. The final incremental step con-sists of all the arenas shown in Figure 4-7 are used in different trialsin order to obtain controllers based on general strategies (see Sec-tion 4.3.3 on page 62).

��

Page 87: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.5 Neuro-Evolution Method

��,���% *,+ � ��*�(-����� �+ �%��% �� �� �� ��**���/���� 6� +��� ���%��'� �+��%��,+��+'

�/ ��� �,�1 ,+� -���� �� ��%,��'���� 6��*�� �� , *�%�,�+ ��'%��� *�+�%,��*�� ��� -�%-��� �/ ���+'

��������+,%� %� ���*�� +,(��� �� ��� ��������+ 9+� �A�*���� ��%,��'��� � �,1�+' ,��,+�,'�

�/ +���� �+��%�+(�+�,� /�,��%�� ,� ���� ,%� ��+��� � ��� %� ���� F�6���%� � ��,���%,�

��*�(-������+ �� /�,�� �� �� *���� -%��� , -�6�%/�� ���� /�% ������-�+' *�(-��& ��,���%� ��+*�

+�6� (�%� ,��,+*�� ��,���%� *���� � ,���� �+*%�(�+�,����

�+ ��� ��-�� �/ �+*%�(�+�,� ��������+ 6� �,�� �� ��*��� �+ , ��%(�+,���+ *%���%��+ /�% �,*�

�+*%�(�+�� )�,� ��� 6� �,�� �� ��*��� 6��+ �� (��� /%�( �+� �+*%�(�+� �� ��� +�&�� 8� *,+

�� �� ,��� �����% �+ , *�%�,�+ +�( �% �/ '�+�%,���+� �% �+ ��� -�%/�%(,+*� �/ ��� -�-��,���+�

�/ 6� ��(-�� ,���� , +�( �% �/ '�+�%,���+� �� �,*� �+*%�(�+�� 6� *,++�� � ��%� ��,� , �,�1

�,� ��+ ��,%+� �/�%� ��������+ *�((�+*�� 6��� , (�%� *�(-��& �+�� �+ ��(� *,���� ��6���%�

�� ���� (,1� ��+�� �� ,�� ��� ��(� �-�+� �+ �,*� �+*%�(�+� �+ , +�( �% '�+�%,���+� ,+�

+�� �+ ��� -�%/�%(,+*� �/ , -�-��,���+� +,(��� 6��+ ��� ��������+,%� *�(-��,���+ �� %� ���

,+� -%���*�, �� �+ ��� ��+�� ��,� ��������+,%� %�+� �+ '�+�%,� /����6 ��(��,% -,���%+�� 5�%

��������+,%� %�+� ,%� /,% /%�( %� ��� �+ ���� 6,�� )6� 9�+��� -���� /%�( ��� -%������ -�,��

*�+*�%+�+' ��� +��%,� +��6�%1 ��-� ,+� ��%�*��%� ,%� ���6+ �+ ��'�%� ��� )�� 9�+��� -���

,%� ��� /�% , (�����,��% +��6�%1 6��� . �����+ +���� ,+� , ��,+�,%� 4� 6��� , (��,���+ %,��

�/ 10%� �� ��� -���� ,%� /�% ��������+,%� %�+� ��,%��� 6��� ��A�%�+� �+���,� -�-��,���+�� �� ���

%������ ���6� �+� ��������+,%� %�+ ��,%�� *��( �+' ����-�� ,%��+� ��� � �� '�+�%,���+� 6����

��� ����% �+�� ��,%�� ,%��+� ��� �� �� '�+�%,���+� )���� �6� ���+�� �+��*,�� ��� *%�*�,� -��+��

�+ ��� ��������+,%� %�+� 6��%� ��� ��������+,%� ��,%*� �,� /��+� , ���� �/ ��� 9�+��� �,+��*,-�

*�+�,�+�+' , ��**���/�� ��%,��'��

0

0.1

0.2

0.3

0.4

0.5

0.6

0 100 200 300 400 500 600 700 800 900 1000

Fitn

ess

Generation

Fitness plot (multilayer w/ 2hidden, mr = 10%, run 1)

Best fitnessAverage fitness

0

0.1

0.2

0.3

0.4

0.5

0.6

0 100 200 300 400 500 600 700 800 900 1000

Fitn

ess

Generation

Fitness plot (multilayer w/ 2hidden, mr = 10%, run 19)

Best fitnessAverage fitness

Figure 4-19: Two plots of fitness scores for the same evolutionary setup (multilayernetwork with two hidden nodes, a standard GA with a 10% mutationrate), but with different initial random seeds. The plots show that theevolutionary runs can progress rather differently in terms of the pointat which a region of the solution space containing successful strate-gies is reached. The evolutionary run shown on the left-hand sidereached such a region around generation 140, while the run on theright-hand side only managed to do so around generation 550.

4���+ ��,� ��% ��������+,%� %�+� *,+ � ,� �+-%���*�, �� ,� ��� �&,(-�� �+ ��'�%� �� ���6��

6� �,�� *����+ �� ��� -�%/�%(,+*� �/ ��� �+������,�� �+ , '�+�%,���+ �� ����%(�+� 6��+ ,+

��

Page 88: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.5 Neuro-Evolution Method Evolving Controllers

�+*%�(�+�,� ���- ������ � �,1�+ ,� �--���� �� ,������+' , 9&�� +�( �% �/ '�+�%,���+� �� �,*�

�+*%�(�+�� )�� /�+*���+� 6� ��� ,%� ,�� %��,���� +���� ,+� 6� �,�� �� ,���� ��,� B�-�1��C /�%*�

�� �� �,1� ��� +�&� �+*%�(�+�,� ���- �/�%� ��� �,�1 /�% ��� *�%%�+� ���- �,� ��+ �%��� ��,%+����

)��%�/�%�� 6� %�;��%� ��� 9�+��� �*�%� �/ ��� ��� -�%/�%(�+' �+������,� �� � , ��� , *�%�,�+

��%������ /�% � *�+��*����� '�+�%,���+� �/�%� ,+ �+*%�(�+� �� -�%/�%(����� )�� ��%������� ,%�

��A�%�+� /�% �,*� �+*%�(�+� ,+� ���� 6�%� ����%(�+�� ,��� �+ ��� 9�+��� /�+*���+� ��,'+,���+

�/ 9�+��� �*�%�� ��%�+' �%�,� %�+�� ,+� ����,� �+�-�*���+ �/ ��%,��'��� /��+� ��%�+' ��� �%�,� %�+��

)���� ��� �,�1 �/ 9+��+' ����� ��%������� ��� ��1� 9+��+' , ����, �� �� ��������+ �/ ��� '�,���,�1�

,+ �+'�+��%�+' �A�%��

�+ ,�� *,��� 6� �,�� ���� , [μ, λ] 6��� μ = 20 ,+� , (��,���+ %,�� �/ 15%� ��+*� ���� ����-

6,� /��+� �� � ��� ��'���� -�%/�%(�+' �+ ��*���+ �����

�����

�+ �&,(-�� �/ ��� ��������+ �/ 9�+��� �*�%�� /�% ,+ �+*%�(�+�,� ��������+ ,��� �+ �+*%�(�+�,�

*�(-��&��� �� ���6+ �+ ��'�%� �. � �+ ��� 9'�%�� 6� �,�� �+��*,��� 6��%� �+*%�(�+�� �,1�

-�,*�� ��+*� ��� �,(� 9�+��� /�+*���+ �� ���� �+ ,�� �+*%�(�+�� �� �� +,��%,� ��,� ��� 9�+��� �*�%��

� �,�+�� � �+������,�� ��%�+' ��� 9%�� �+*%�(�+�� ,%� ��'��% ��,+ ����� �+ �,��% �+*%�(�+���

61 2 3 4 5

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

0 100 200 300 400 500 600 700 800 900 1000

Fitn

ess

Generation

BestAverage

Figure 4-20: � 0����� ��� ��� �� ���������� ��� ����� �� ���������� �������� ��������� � ���������� �������� �� ������������ ��� ���� � ������� � ����� �� 6 ��������� ��� �� ������ ���� ��� �������� �� ������ ��"� ���� �� ��������� 60� 288� 399� 473� ��� 737 �� ������� ��� 0�����

������'� ��� �&,(-�� ���6+ �+ ��'�%� �. *���� '��� ��� �(-%�����+ ��,� �+*%�(�+�,� ��������+

��%��'� �+*%�,��� �+��%�+(�+�,� *�(-��&��� 6�%1� %��,������ 6���� , �,%'� +�( �% �/ ��������+,%�

12���2�� ����� ���� ��� �� ���� �� �$� � �� �����$� ���� 7����� ����� �� �� ������ �� ������ ����� � ������ ��� ��� ���������� �� =������� �� � � ��� �� ���$��� ��� � �2 �� ����� � '��� � � �� ��� � �� �� � �� �$� � �� � � $�� ��� �� ����� ��������# �� �� ��� ��$�� �� ��� ����� ��������# � �� ��

13'��� �������� ���� �� � �� �� ��� ����� ���# '��H��

��

Page 89: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.5 Neuro-Evolution Method

%�+� ��� +�� '� ��%��'� ,�� 6 �+*%�(�+�� �/�%� '�+�%,���+ 1000� 5+�� �+ 11 ��� �/ ���

20 ��������+,%� %�+� ��� ��������+ %�,*� ��� 9+,� �+*%�(�+�� )��� ����� �+0��+*�� ��� -����

��,��,���+ %������� �*,��� ��� *�+�%����%� ������� ��%�+' ��� 9 ��������+ %�+�� 6��*� 9+�����

,� ,+ �,%���% �+*%�(�+�� �,�� +�� �,� ��� *�,+*� �� B��,%+C ��� �+��%�+(�+�� �+ 6��*� -����

��,��,���+ �,1�� -�,*��

�+ ,+ ,���(-� �� ���%*�(� ���� ����� 6� %���*�� ��� +�( �% �/ �+*%�(�+�� /%�( 6 �� 3���,%��+' 6��� ,+ ,%�+, *�+�,�+�+' , ��+'�� ����� ���+ ,+ ,%�+, 6��� (����-�� ������ ,+� 9+,���

/��% ,%�+,���� P��+' 3 �+*%�(�+�� �+���,� �/ 6� 17 �/ ��� 20 ��������+,%� %�+� %�,*��� ��� 9+,�

�+*%�(�+� �/�%� '�+�%,���+ � ,+� ���� �,� ��� �--�%��+��� �� ��,%+ ��� ,%�+,� �+ 6��*�

-������,��,���+ 6,� -�%/�%(���

)�� %������ /�% �+*%�(�+�,� ��������+ ��%��'� ��,���%,� ��*�(-������+ ,+� ��%��'� �+��%�+�

(�+�,� *�(-��&��� ,%� ���6+ �+ ��� �&�-��� �+ ��'�%� �.�� 8� �,�� �+*����� ��� %������

/�% ��� [μ, λ] ��������+,%� ,�'�%���( 6��� μ = 20� � �,�+�� 6������ ��� ��� �/ �+*%�(�+�,�

��������+� )���� %������ �,�� ��+ �+*����� �� ��,� %������ *,+ � *�(-,%�� �,�����E

nviro

nmen

tal

com

plex

ity (

6)

Env

ironm

enta

l c

ompl

exity

(3)

Beh

avio

ral

dec

ompo

sitio

n

[mu=

20,la

mbd

a] (

15%

)

0.0

0.1

0.2

0.3

0.4

Incremental evolutions

Fitn

ess

Figure 4-21: 2��� ��� ��� ���������� �������� ����� �������� ������������ ���� ���� '������� ��� ��� C ��� 6 ���������� ��� ����) ��� ������������� ������ :� ��� ������� �� ������� ��� �� [μ, λ] ���������� ������� �� μ = 20� ������� ����� �� ��� �� ���������� ����������� ����� ��� ��� ��� ����� �� ��������

�� �� *,+ � ���+ �+ ��'�%� �.� +�+� �/ ��� �+*%�(�+�,� ��������+ ,--%�,*��� �+ '�+�%,� ��,�

�� ����% *�+�%����%� ��,+ ��� ��(-��% ��������+,%� ����- 6������ �+*%�(�+��� �� �� -���� �� ��,�

14'�� ��� ��� �� ��� 7��� ��������� �� ����� �� F����� ��<,�0# ��� ��� ����� ��������� ��� ��� �� ��F����� ��<,0 � � ��� # � �� ���� ��� � ����� �� F����� �; �� � �� ! ���� ��� ��� ��� 7� � ���������

��

Page 90: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.5 Neuro-Evolution Method Evolving Controllers

6� *���� ��+� , +�( �% �/ ��� ��������+,%� -,%,(���%� %��,��� �� ��� �+*%�(�+�,� ��������+

,+� ��� ��������+,%� ,�'�%���( �� ��,� �+� ��� �+*%�(�+�,� ,--%�,*��� 6���� �� ,� ��,�� ,�

6��� ,� ,+ �+*%�(�+��/%�� ,--%�,*�� ��6���%� ��� ,������+,� �A�%� %�;��%�� �� ����'+ ,+� ����

��� ����- 6���� �+�� � 7����9�� �+ *,�� �+*%�(�+�,� ��������+ -%���� �� � ��'+�9*,+��� ����%

��,+ ��� ��(-�� ,--%�,*�� 8� ���*��� ����� %������ /�%���% ,+� 6�� ���� �� +�� -�%/�%( ����%

��,+ , +�+��+*%�(�+�,� ,--%�,*� ,/��% ��*���+ ���� ���6 �+ ������+' +��%,� ,%%,���

��.�� &'�'��� ���� � ��� ��

3�����+' +��%,� ,%%,�� H��� ��*���+ .�� �+ -,'� .�I ������ +�� � *�+/���� 6��� �+*%�(�+�,�

��������+� ���+ ����'� ��������+ �,1�� -�,*� �+ ��,'��� �+ �+*%�(�+�,� ��������+ ��� �,�� '�+�%�

,���+ �/ ��� -%������ �+*%�(�+� �� ���� ,� ��� 9%�� '�+�%,���+ �+ ��� +�6 �+*%�(�+�� 6���� /�%

������+' +��%,� ,%%,�� , +�6 +��%,� +��6�%1 �� ,���� �� ��� ,%%,� ,� �,*� B�+*%�(�+�C� )�� +�6

+��%,� +��6�%1 �� ������� /%�( , %,+��( -�-��,���+ 6���� ��� +��6�%1� ������� ��%�+' -%������

��,'�� ,%� ���� *�+��,+�� )���� ��� ���, �� �� �,�� ,+ ,%%,� �/ �-�*�,��K�� +��%,� +��6�%1��

6��%� �,*� �/ ���( �� �%,�+�� /�% , �-�*�9* �� ��,�1 ,+� ��� ��,%+�+' /�% �,*� �� ��,�1 �,1��

-�,*� �+ ����,��� ��,'���

$��% ,+� 4,��,'��% D��E ,--%�,*��� ��� ��������+ �/ ��*�(����+ �/ , ��&���''�� ��(��,���

%� �� �+ , ��(��,% /,����+� � *�+�%����% 6,� 9%�� �%,�+�� �� (��� , ��+'�� ��' /����6�� � ,+����%

�%,�+�+' -�,�� /�% ��� ��*�(����+ �/ ��� �+��%� %� ��� �� 6��� ��� ��+'�����' -,%,(���%� 6�%�

���� *�+��,+�� )�� -�%/�%(,+*� �/ ��� �6��-�,�� ,--%�,*� 6,� /��+� �� � �+/�%��% �� ,

*�+�%����% /�% 6��*� ,�� -,%,(���%� 6�%� ������� ��(���,+������� F�6���%� ��� %������ � �,�+

�+ , ����� *�+*�%+�+' ��� ��� �/ ������+' +��%,� ,%%,�� /�% , %� �� +,��',���+ �,�1 D!�% ,�M+

,+� ?,+K,%�+�� . �E� ���6�� ��,� �� 6,� ��-�%��% �� ���3� 6��*� �+ ��%+ �,� ��+ ���6+ ��

-�%/�%( ����% ��,+ , +�( �% �/ ����% +��%����������+ (������ -�-��,% ,� ��� ��(� D:�%�,%��

,+� :��11��,�+�+� �#E�

)�� ���, ���+� ������+' +��%,� ,%%,�� �� �� ��� +��6�%1� �+ , �,��% -�,�� ��,%+ 6�,� ����,���+�

���� ,%� , �� �� �,+��� ,+� 6��+ �� ����',�� ��� *�+�%�� �� -%�������� ������� +��6�%1� ��6�

�/ ��*� , +��%����������+ (����� *���� � ,--���� �� *�(-��& �,�1� �� 6���� ����� , +�( �% �/

������ ��,� 6� ,%� /,*�� 6��� �/ 6� �%� �� ������ *�(-��& ��,���%� :�%� *�(-��& �,�1� %�;��%�

(�%� *�(-��& *�+�%����%� ,+� ���%�/�%� (�%� *�(-��& +��%,� +��6�%1�� )�� ��,%*� �-,*� /�%

*�(-��& +��%,� +��6�%1� �� �,%'�% ��,+ /�% ��(-��% �+��� 6��*� �� ��1��� �� �,�� ,+ �(-,*� �+

��� -�%/�%(,+*� �/ +��%����������+��� �/ 6� �+���,� *,+ 1��- �,*� *�(-�+�+� �/ ��� �������+

H�,*� +��%,� +��6�%1 �+ ��% ������+' +��%,� ,%%,�I ��(-�� ,+� ������ ��� +��6�%1� �+� ,� ,

��(�� �� 6���� � , -%�(���+' (����� /�% �&��+��+' ,+� %�9+�+' /�+*���+,����� P���(,����� ����

(����,%�K�� ,--%�,*� *���� ��,� �� ��� +��%����������+ �/ *�(-��& ��,���%��

�+ �%��% �� ���� ������+' +��%,� ,%%,�� /�% ��% �,�1� 6� %���� ��� ����-� /%�( ��� �+*%�(�+�,�

��������+ ,--%�,*� ���*%� �� �+ ��*���+ ���.� F�6���%� �+���,� �/ ��,%��+' /%�( , -%��������

������� -�-��,���+� 6� ,�� ,+����% +��%,� +��6�%1 �� ��% ,%%,� ,� �,*� B�+*%�(�+�C� ��% �,*�

15'�� ������ ��� ������2 ���� �� �� �� �� ��# ��� ���� ������+ ������2 �� � �� ����� �� ������� ��� �� !<# � ������� ��� �����7� ���� ����� �� � ��� ������� ������ ��� ������2 ���� � �� �� �� �� I�$���� � �� � $� ��� ��� ���� ������ ��� ��� ��� ��$��� ������ � �2# �� ���� �� $��� ���������� �� �� ���� �� �����

�� �$��$� ���� ������+ ��� $���� �� ���� ������+ ������2�

��

Page 91: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.5 Neuro-Evolution Method

��������+,%� -�,��� 6� ��� , [μ, λ] ,�'�%���( 6��� μ = 20 ,+� , (��,���+ %,�� �/ 15% ,� ����

����- 6,� /��+� �� � ��� �+� 6��� ��� ��� -�%/�%(,+*� �/ ����� ������ �+ ��*���+ �����

�����

)�� %������ � �,�+�� �+ ��% ���� �/ ������+' +��%,� ,%%,�� ,%� ���6+ �+ ��'�%� �..� �%�( ���

%������ � �,�+��� �� �� � ����� ��,� ������+' +��%,� ,%%,�� �� +�� -�%/�%( +�,%�� ,� 6��� ,� ,

��(-��% ��������+,%� ����- �+ 6��*� ��� 6��'��� /�% , ��+'�� +��6�%1 ,%� ������� /%�( , %,+��(

-�-��,���+�

Per

cept

ron

EN

AE

nv. c

omp.

(6)

Per

cept

ron

EN

AE

nv. c

omp.

(3)

Mul

tilay

er E

NA

Env

. com

p. (

6)

Mul

tilay

er E

NA

Env

. com

p. (

3)

Per

cept

ron

EN

AB

ehav

. dec

omp.

Mul

tilay

er E

NA

Beh

av. d

ecom

p.

[mu=

20,la

mbd

a] (

15%

)

0.0

0.1

0.2

0.3

0.4

Evolving Neural Arrays

Fitn

ess

Figure 4-22: 2��� ��� �� �� ���������� �� ������� ������ ���� �� �� ���" ������ ��������� � ��� �� �# .�� ��������� ������������ ��� ���� '6 ��� C ��� �) ��� ��� ��������� �������� ����� ������ D��������� ���� ��� ������� ������ ���� � �������� �� ���� ����� ��� ���������� ������ ���� � �������� �� ������ �� ������"� �� ��� ���������� :� ��� ������� �� ������� ��� �� [μ, λ] ���������� ��������� μ = 20� ������� ����� �� ��� �� ������� ������ ���� �� �� �������� ��� ��� ����� �� ��������

8� 6���� �,�� ��1�� �� �,�� ��+ , �� �� *�(-,%� ��� -�%/�%(,+*�� �/ ������+' +��%,� ,%%,��

*�+�����+' �/ (�����,��% +��6�%1� 6��� ,%%,�� *�+�����+' �/ -�%*�-�%�+�� F�6���%� ��� %������+'

*�+�%����%� /�% ��� ���� �/ ����� 6�%� �/ ��*� , ��6 -�%/�%(,+*�� ��,� ��*� , *�(-,%���+ 6����

Page 92: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.5 Neuro-Evolution Method Evolving Controllers

+�� � (�,+�+'/��� �+ ��� /����6�+' ��*���+ 6� ,���(-� �� ,+�6�% ��� ;������+ ,� �� 6��

������+' +��%,� ,%%,�� H,+� �� , �����% ��'%�� �+*%�(�+�,� ��������+I /,���

��.�� #�������

8� �,�� ������ , +�( �% �/ ��A�%�+� +��%����������+ (������ ,+� /��+� ��,� �/ ����� ������

�+� �/ ��� ��(-��% ,--%�,*���� +,(��� , [μ, λ] ,�'�%���(� ������� ��� ��� %������� ������% (�%�

,��,+*�� ,--%�,*��� ��1� !!4� �+ 6��*� �+������,� +��%�+� ,%� �%�,��� ,� �+������,�� �+ ����%

�6+ �� �-�-��,���+� +�% �+*%�(�+�,� �% (����,% ,--%�,*��� ��,� �� ����% *�+�%����%�� ����

��,� (�,+ ��,� 6� *,+ ���(��� ����� (�%� ,��,+*�� (������ �+ ��������+,%� %� ���*�= 5/

*��%�� +��� �� 6� *,+ *�+*���� ��,� ��� (�%� ,��,+*�� +��%����������+ (������ ������ ���

+�� %����� �+ ����% *�+�%����%� ��,+ , ��(-�� ��������+,%� ����-� ,� ��,�� /�% ��% �,�1 ,+� /�%

��� ���� �/ ��������+,%� -,%,(���%�� 6��*� 6� �,�� �������

$�/�%� 6� �%,6 ,+� /�%���% *�+*�����+� �� �� �(-�%�,+� �� -�� ��% %������ �+�� -�%�-�*���� 6���

%��-�*� ��� �,�1 ��,� 6� �,�� ������� *�+�%����%� �� ������ ��� *�(-��&���� ,+� ��� �����, �����

�/ �������+�� 5+� 6,� �/ ���1�+' ,� ��� �,�1 �/ -�%/�%(�+' -�����,&�� ,+� �����,����,+*� �+

, �6,%(� �� �� � ��*�(-���+' , ��**���/�� ��,���% �+�� *��%��+,����(����+� �����,����,+*��

,+� -�����,&��� ,� 6� ��� �+ ��*���+ ���. �+ �+*%�(�+�,� ��������+� �/ 6� �,1� , *����% ���1 ,�

��� �������+� /��+� � ,%��9*�,� ��������+� �� �� ;������+, �� �/ , 9+,� ��**���/�� ��,���%� 6��*�

������ ��� �,�1� *,+ � ��-,%,��� �+�� ��*� �� � ��,���%�� �+ �&,(-�� �/ , ��%,��'� /��+� �

��������+ �� ���6+ �+ ��'�%� �.�� ��',%����� �/ ��� �+���,� -������+ �/ ��� �6,%(� ��� ��� �+���,�

�%��+�,���+ �/ ��� �� ��� ,+� ��� ,%�+,� ��� %����� �� ,�6,�� ��,� ��� �6,%(� �� ��,%�� (���+'

��/� 6��� %��-�*� �� ��� ��'�� H��/� *�%%��-�+�� �� �- �+ ��� 9'�%�I� )��� *���� �+��*,�� ��,�

��� �� ��� (,�+�� *��%��+,�� ,��� �+ ��� ��+��� ��%�*���+ �/ ��� ��'��� ,+� +�� ,��� �+ ���

%�,��+'� �/ ��� �%,*���+ ��+��% ��1� �� �,� ��+ ��� *,�� /�% -%������ ������� �+ *��%��+,����

(����+ ,+� �����,����,+*� /�% �6,%(� ��� D)%�,++� �� ,��� . E� D)%�,++�� . �E� )���� ����

��''���� ��,� *��%��+,����(����+ �� -,%��� , ��-%���*� �/ -�����,&�� ,+� �� �� ���%�/�%� +��

�+�9*�,� �� ������ *��%��+,����(����+ ,+� -�����,&�� �+��-�+��+����

�+����% �+��%����+' � ��%�,���+ %�',%��+' ��� �������+� /��+� � ��������+ �� ��,� ��� *�+�%����%�

�� +�� ����% ��� �� ��� ��%�*��� ��6,%�� ��� ��'��� �� (�+���+�� , ���� ��� *�+�%����% 6��*�

%������� �+ ��� -,�� ���6+ �+ ��'�%� �.� ,�6,�� ����% ��� �� ��� ��/� 6��+ , ��(��,���+ ��

��,%���� ��(� ��**���/�� ��%,��'��� /��+� � ����% ��������+,%� %�+� ����% �� ��� %�'��� ��

����%6��� ���6 ��(��,% ��,���%�� ��+� �/ ��� *�+�%����%�� 6��*� ����� ��� �,�1� (��� ��%�*���

��6,%�� ��� ��'�� ,� ,+� -��+���� )��� *���� �&-�,�+ 6�� �+*%�(�+�,� ��������+ ��%��'� �+*%�,��

�+' �+��%�+(�+�,� *�(-��&��� ���� +�� -�%/�%( ����% ��,+ , +�+��+*%�(�+�,� ����-� +,(���

�*,��� �+ ,%�+,� 6��� /�6�% ,+�"�% �(,���% ������ ����% ��%,��'��� ,%� /��+�� 6��*� �� %���

�+ ��� �� ��� (���+' ��%�*��� ��6,%�� ��� ��'��� �+ ���� 6,�� �+*%�(�+�,� ��������+ ��%��'�

�+*%�,��+' �+��%�+(�+�,� *�(-��&��� (,1�� ��������+ �,1� , �����%�

�+*%�(�+�,� ��������+ ,+� (����,% ��������+ H��%��'� ��� ��� �/ ������+' +��%,� ,%%,��I �� +��

-�%/�%( 6��� �+ ��% �,�1 �*,��� ��� ��**���/�� �������+� ,%� ��� �+������ �� ,+� �-�*�,��K�� /�%

��� *�(-��&��� �/ ��� ,%�+,� �+ 6��*� ��� �,�1 �� ������� :�%����%� ��� 9+,� �������+� 6�%� �,��

16.� ������ ���� ������ � �� ��� ����� � ���� ������# �� ������ �� �� ������ ����� �$�� � �� ��� ����� � ���� �� ����# ��� ���� ���� � ���� ����� ���� �� ������� �� $�� �����

��

Page 93: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.6 Test on Physical Robots

Light

−1

−0.5

0

0.5

1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

S

F

S

F

S

F

S

F

’gnuplot_renderer_arena.dat’

Figure 4-23: �� ���� �� �� � ���������� ������� � 8���� ��� �� ��������� ���� ������� ������ ������� �� ��� ��� ����� ���� �� ��� ��� �� �� ��� '��� � �� 0����)� ���� ���������� ��������� �� ��� ������ �������� ����� ������ ������� �� ��� ��� ���� ���������������� �"�� � � � � ������ �� ���������� �� ��� ��� �� �� ���� ���������� ���������� �������� ���� ��� ������ ������ ��� � �� ��� ���������� ���� �

�+��'� �� 9+� /%�( , %,+��( -�-��,���+ ���+' , ��(-�� ��������+,%� ,�'�%���(� F�6���%� �,�

��� �,�1 ��+ ������ ��� /�% �+��,+*� �/ ��� �� ��� �,� �� ,���( �� �+�� , �6,%(� �� �/�%� (���

�+' ��6,%�� ��� ��'�� ���%*�� (����,% ��������+ (�'�� �,�� ����-�%/�%(�� , ��(-��% ,--%�,*��

?�1�6���� �/ 6� �,� +�� ��+ , �� �� ������ , �������+ �/ ��@*��+� ;�,���� /%�( , %,+��( -�-�

��,���+� 6� *���� �,�� ��+ /�%*�� �� ��� ,+ �+*%�(�+�,� ,--%�,*�� 8� *,+ ���%�/�%� *�+*����

��,� '���+ ��� +,��%� �/ ��% �,�1� 6��� %��-�*� �� ��� ������ ����� ,+� *�(-��&���� �+*%�(�+�,� ,+�

(����,% ��������+ �� +�� -�%/�%( ����% ��,+ , ��(-��% ,+� �%,�����+,� ,--%�,*�� F�6���%�

/�%���% %���,%*� ������ '� �+�� ,--���+' ����� (�%� ,��,+*�� +��%����������+ (��������'���

�� (�%� *�(-��& �,�1��

��0 ���� � �� ���� ������8� �,�� *�+��*��� , +�( �% �/ ����� �+ -����*,� %� ��� �+ ,+ ,%�+, ���6+ �+ ��'�%� �.H,I�

�+���,� �/ ����� 6� ���� �,*1 ��*1 �,-�� � �,*1 ��%/,*� ,+� ����� ,%� -�%*����� �+ ��� �,(�

(,++�% � ��� �� ���> '%��+� ��+��%�� 6���� ���+' ��*1 �,-� �+���,� �/ ����� -%���+�� -����*,�

�,(,'� �� ��� %� ��� �+ *,�� ���� ������ B/,�� �+C� )�� ,%�+, 6� �,�� ���� �� , %�-��*, �/ ��� �+�

���� �+ ��(��,���+� ��� ��'�%� �.H I� )�� (�,��%�� �/ ��� ,%�+, ,%� ���6+ �+ ��'�%� �� �+

-,'� �#�

)�� �� ��� ,%� -%������-�� ���� /�% ��� �6,%(� ��� -%�7�*�� ��%�+' ��� ��/����(� �/ ��� -%�7�*�

��� �,%�6,%� ,+� ��/�6,%� �,�� �������� F�6���%� ��� �� ��� (��� ����� � *�+����%�� -%����

��-� �,%�6,%� '���+ ��� /%,'����� ,+� �+������,� ��A�%�+*�� ��6��+ ��� %� ���� )�� -%�7�*� �,�

�@*�,��� �+��� ,+� ���%�/�%� ��--�%� �+ ��� �,%�6,%� �� ��%� ��(����� )���� ������ (�,+� ��,�

�/�%� ����� *���� � %�+ �+ ��� -����*,� %� ��� ���� �,� �� � ���%��'��� ������ ,+� ��+��%�

,+� ,*��,��%� �,� �� � %��*,�� %,���� Q,%���� �����+'�� ��*� ,� ��� �*,��+' �/ ��� �+-��� /%�(

��� �%,*���+ ��+��%�� �,� �� � ,�7����� �+������,��� /�% �,*� %� ���

Page 94: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.6 Test on Physical Robots Evolving Controllers

H,I H I

Figure 4-24: A photo of the arena used for the experiments on real s-bots is shownin (a). The corresponding simulated arena is shown in (b).

������'� 6� %����� -,%�� �/ *�+�%�� -%�'%,(� ��,� �,�� ,�%�,�� ��+ ������-�� ,+� ������� 6�

����� �,� �� ����'+� �(-��(�+�� ,+� ���� , +�+��%���,� ,(��+� �/ *��� �� � , �� �� *�+��*� ��%

�&-�%�(�+�� �+ ��� �� ���� ������-�+' ��/�6,%� /�% �( ����� �����(� �� �/��+ ;���� *�,���+'�+'�

��-�*�,��� ��%�+' ��� �����+' ,+� �� �''�+' -�,��� 6��%� ��� *��� �� %�+ �+ ��� �( �����

-�,�/�%( �����/� )� �,�� ���� �,�1� 6� /��+� ��,� ���+' ��� *���%�� ���� �+ ��� %� �� 6�%1��

;���� 6���� ��'� �� ����,��� �,���,�� ��,� %� ��� ����*��� ��� ��'�� *�%%�*���� ��,� ���� ��+���

��'+,�� /%�( ����% %� ��� 6��+ ����� 6�%� -�%*������ ,+� ��,� ��� %� ��� �,� +�� *%,�����

)��� �*��(� -%���� �@*��+� ,+� �+������� *�(-,%�� �� ��(-�+' �� �''�+' �+/�%(,���+ �� ,

��%(�+,� �% , ��' 9���

�� , -%��/��/�*�+*�-�� 6� ���1 ,+ ������� ,%��9*�,� +��%,� +��6�%1 *�+�%����% � , (�����,��%

+��6�%1 6��� . �����+ +���� ,��� �+ ��� ���� ��%,��'� � ,+� %,+ ����� 6��� �+�� �6�� ,+�

��%�� %� ������

��3�� !�����

)�� -����*,� %��-�+�� �/ ,+ ,%�+, 6��� ����� ��A�%� /%�( ��,� �/ ,+ ,%�+, �+ 6��*� ����� ,%�

%�-�,*�� � �,*1 ��*1 �,-�� �+ ,+ ,%�+, 6��� %�,� ������ ,+ �� ��� 6��*� �� ���% , ����� *,++��

��%�*��� �+0��+*� ��� %��� �/ ��� �6,%(� �� � (���+' ��� �%����� 6��%�,� �/ ��*1 �,-� �� ����

17%� ���� � $� �������� �� � $� ��� ����� ���� ������ ������ �� ������# ��� � ��� ���� �� ������� �� ����� $� ����� �� ����� ������ �� ����� ��� ������� � ��� ����# ����� �� ���# �������� ��������

Page 95: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.6 Test on Physical Robots

�+���,� �/ ������ �� ��� ����� �,�� ��%/,*� *�+�,*� 6���� (���+' �+ ��� ��*1 �,-�� )�� (����+

�/ ����% �%����� ���%�/�%�� �+0��+*�� ��� �6,%(� �� 7��� ��1� �� ��� ��,� ,%� +�� ���% , B����C�

���-��� ���� /�+�,(�+�,� ��A�%�+*�� ��% �+���,� ����� �+ %�,� %� ��� ���6�� ��,� ��� �������

*�+�%����%� ,%� �+���� �%,+�/�%, �� ,+� ��,� ��� ��%,��'��� � ��%��� �+ ��(��,���+ (,�*� �����

� ��%��� �+ ��(��,���+�

8� �,� �� %���*� ��� (,&�(�( �-��� �/ ��� %�,� %� ��� ���'���� /�% ��� ������� *�+�%����%�

�� 6�%1 �+ %�,� �,%�6,%�� $� %���*�+' �-��� +���� 6,� �(�����+�� ,+� ��� �(-,*� �/ �,*�

,*���+ H�% *�+�%�� *�*��I 6,� %���*��� )��� ���(�� �� *�(-�+�,�� /�% ��� ��A�%�+*�� �+ +����

��'+,��%��� ��+��% ���,��� ,+� �� �+� ��6��+ ��(��,���+ ,+� %�,�����

�+ �&,(-�� �/ , ���� %�+ �+ ��� �� ��� �� ���6+ �+ ��'�%� �.�� �+ ��� 9'�%� 6� ,��� ���6

,+ �&,(-�� �/ , ��(��,% ��,���% �+ ��(��,���+� ����*�� ��,� �+ ��(��,���+ ��� �6,%(� �� ����

+�� ��%+ ,� /,% ,6,� /%�( ��� ��'� �/ ��� ,%�+, ,� �� �� ��� *,�� �+ ��� %�,� %� ���� �� *,+ �

�,%� �� ���� /%�( ��� -,�� *�(-����� � ��� %� ��� �+ ��(��,���+ �%,6+ �+ ��� �--�% ��/� *�%+�%

�+ ��'�%� �.�� ��,� ��� *�+�%����% ,*��,��� %����� �+ ��� ���� ��%,��'�� )�� �6,%(� �� ��(-��

���(� �� � /����6�+' ��� ��'� �/ ��� ,%�+,� F�6���%� ��� *�+�%����% ���� %��� �+ ��� ����

��%,��'�� ,�����'� ��� ��%+� ,%� ��%� �(,�� 6��� ��� �� �� *������ �� ��� ��'� ����*��+' ��� ����

/%�;��+���� ��,� �� ���%� ��. ��*�+��� 5+ ��� %�,� %� ��� ��� ��%+� ,6,� /%�( ��'�� ,%� �,%'�%�

)�� %�,��+ ���+� ���� ��A�%�+*� �� ��1��� ��,� ��� %�,*���+ ��(� �+ %�,� %� ��� �� ��+'�% ��,+

,+��*�-,��� ��%�+' ��� ������-(�+� �/ ��% ��(��,��%� :�%����%� , +�( �% �/ *�+�%�� *�*��� -,��

/%�( ��� ��(� ,� 6��*� , ���� �� ����*��� �+��� ��� ����% %� ��� ����*� ��� ���+� ��'+,� �(�����

� ��� �� �� ����*��+' ��� ����� )��� (�,+� ��,� ,+ �� �� �� -����� , �� /�%���% ���% ��� ��'�

�/ , ���� ��,+ �+ ��(��,���+ ,+� �� ���%�/�%� �,1�� ��+'�% �/�%� ��� ����% �� ��� (,+,'� ��

-��� ��� �� �� ����*��+' ��� ���� �+�� ��� ,%�, ,',�+� �,%�� �/ ��� ��%,��'� �(-����� � ���

������� *�+�%����% 6�%1� ��*� ��,� 6��+ �� ��� ����*� , ���+� ��'+,� ���� ��%+ ,6,� /%�( ���

��'��� ��+*� , ���� �� ����*��� /�% , ��+'�% -�%��� �/ ��(� �+ %�,� %� ��� ��,+ �+ ��(��,���+�

��� ����% �� ��� ��%+ /�%���% ,6,� /%�( ��� ����� ,+� ��� ��%+� ���%�/�%� �*�(� �,%'�%�

������'� ���%� ,%� ��A�%�+*�� ��6��+ ��� -�%/�%(,+*� �+ ��(��,���+ ,+� �+ %�,� %� ���� ���

/�+�,(�+�,� ��%,��'� �� ��� �,(� ,+� ��� ������� *�+�%����%� �� -�%/�%( -�����,&�� ,+� ������

,����,+*� 6��+ %�+ �+ %�,� %� ���� 5�% ����� 6��� �+� ,+� �6� %� ��� ���6�� ��(��,% %�������

8� �,6 *�%%��-�+��+*� ��6��+ ��� ��,���% �+ ��(��,���+ ,+� �+ %�,����� 4���+ ��,� ��� �-���

6,� %���*�� ��� %�,� %� ��� �+ '�+�%,� ���1 ��+'�% �� %�,*� ��� �,%'�� ,%�,� ��% �&,(-�� ���

-,��� ���6+ �+ ��'�%� �.� ���1 �( � /�% ��� %�,� �� ���� 6���� �+�� .��� �+ ��(��,���+�

F�6���%� �� �� ��% ������ � ��,� �����,����,+*� ,*��,��� �� (�%� �@*��+� �+ ��� %�,� %� ���

��,+ �+ ��(��,���+� �*,��� �/ ��� %���*�� �-���� ��� �� ��� ��6�% �-���� ���� (�(�+��( ��

���� �- �+ ��� %�,� %� ��� ,+� ���� �,�� (�%� ��(� �� %�,*� ��,+ ����% ��(��,��� *����+�� F�+*��

;�,+���,������ ��� -�%/�%(,+*� �+ %�,� %� ��� �� +�� �+ -,% 6��� ��� -�%/�%(,+*� �+ ��(��,���+

H6��*� �� +�� �+*�((�+ �+ ��������+,%� %� ���I� 6���� ;�,���,������ ��� -�%/�%(,+*� ,--�,%�

�� � ,� ��,�� ,� '��� ,� �+ ��(��,���+�

�+ �%��% �� �%,6 (�%� '�+�%,� *�+*�����+� �+ ��� -�%/�%(,+*� �/ ��% ������� *�+�%����%� �+

-����*,� %� ��� ,+� ��� ��A�%�+*�� ��6��+ -�%/�%(,+*� �+ ��(��,���+ ,+� %�,����� 6� 6����

18�������� ��� 2��� ��� ������ � ��� �+�������� ���� � � ���� ��� � ��# ��� � ���� ���� ������������2���� ���� ���� ���� � �� �����

Page 96: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

4.6 Test on Physical Robots Evolving Controllers

Figure 4-25: �� ���� �� �� � ���� ��� �� ���� ������� � ����� �������� ��� � ����� �� � �� ���� �������

Page 97: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Evolving Controllers 4.7 Discussion

+��� �� ���� ,+ ,%�+, 6��� %�,� ����� ,+� �� �,�� ,**��� �� ,������+,� ,+� /���� �-�%,���+,�

�� ���� �/ ��*� /,*������� ������ �*�(� ,�,��, ��� /�%���% ������� 6��� � *�+��*����

$,��� �+ ��� %������ �/ ��% �+���,� ������ 6� *,+ *�+*���� ��,� *�+�%����%� ������� �+ ��% ��(��,�

���+ *,+ � �%,+�/�%%�� ��**���/���� �� -����*,� %� ���� )�,� ��� 6� �,�� ���6+ -����*,� �� ���

����%�� � *�+�%����%� ������� �+ )6���� -�%/�%( -�����,&�� ,+� �����,����,+*��

��2 -������

�+ ��� *�,-��% 6� (����,��� ��� ��� �/ , -�,��� (����� /�% ����%(�+�+' , ����, �� ��������+,%�

����-� �+ �+��%����+' ;������+ �� ,�1 �� 6�����% /����6�+' ���� (����� �+�9��� ��� -%�*��� ,+�

��� %������ *�(-,%�� �� /����6�+' , (�%� �%,�����+,�� ,����* ,--%�,*�� 5/ *��%�� ���� ;������+

*,++�� � ,+�6�%�� �,����� �� �+� �/ ��� ,��,+�,'�� �/ �,��+' ,--%�,*��� ��� ��������+ �/

*�+�%����%� �+ , ��%�*��%�� /,����+ �� ��,� 6� �,�� , ,��� /�% *�(-,%���+ ,+� ���*�����+� �/

,���%+,������ ��%���%(�%�� � �%�,��+' �,*� *�(-�+�+� �/ ��� ��������+,%� ����- ��-,%,����� 6�

�,�� ��+ , �� �� *�(-,%� , +�( �% �/ ��A�%�+� +��%����������+ (������� ��A�%�+� 0,��%� �/

*�,���* ��������+,%� ����-�� 6��%� �+� �+������,� *�%%��-�+�� �� ��� 6��'��� �+ ,+ �+��%� +��%,�

+��6�%1� *��-�%,���� *���������+,%� '�+���* ,�'�%���(�� �+*%�(�+�,� ��������+� ,+� ������+'

+��%,� ,%%,��� )�� ��%�� �,���% (������ �,�� ,�� ��+ -%,���� � ����% �+��+��%� ,� ��+'

��-�%��% �� (�%� *�,���*,� ,--%�,*���� )���% *�+*�����+� 6�%� ,��� �+ , ��+'�� �% ��%� /�6

�&-�%�(�+��� F�6���%� �+ +�+� �/ ��% ����� 6� � �,�+�� %������ ��,� ���6�� ��� (�%� ,��,+*��

+��%����������+ (������ �� � ����% ��,+ , ��(-��% ,--%�,*�� )�,� *���� ��%� 6��� � ���

�� ��� +,��%� �/ ��% �,�1 ,� 6� �,�� ���*����� �,%���% �+ ���� *�,-��%� F�6���%� /����6�+'

��� (����� ��''������ 6��%� ��� ��A�%�+� ,�-�*�� �/ ��� +��%����������+ ����- ,%� �%�,���

�����(,��*,��� �+� ,� , ��(�� 6� ���� ,%� ��%�+'�% ,��� /�% �%,6�+' *�+*�����+�� �/ +�� /�%

����% %�,��+� ���+ ��(-�� ��� �� ��� ,(��+� �/ �(-�%�*,� �,�, *����*��� ,+� -%���+����

8��� %��-�*� �� ��% �&-�%�(�+�,� %������� 6� (,+,'�� �� ������ *�+�%����%� �+ ��% ��(��,��%

)6����� 6��*� 6�%� �%,+�/�%%�� �� �� ��� ,+� ,���6�� , �6,%(� �� �� -�%/�%( -�����,&�� ,+�

�����,����,+*�� ������'� (�%� �&-�%�(�+�� �+ ��� %� ��� 6���� � +����� �+ �%��% �� �%,6

/�%���% *�+*�����+� �+ ��� -�%/�%(,+*� � �,�+��� �+���,� %������ �+��*,�� ��,� ;�,+���,������ ���%�

�� , -�%/�%(,+*� �%�- 6��+ '��+' /%�( ��(��,���+ �� %�,����� �� ;�,���,������ ��� -�%/�%(,+*�

,+� ��%,��'��� ,--�,% �� (,�*� ����� �+ ��(��,���+�

Page 98: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure
Page 99: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

�����������������

�+ ���� �3� ������ 6� �,�� /�*���� �+ ������+' , *�+�%����% *,-, �� �/ -�%/�%(�+' �����,����,+*�

,+� -�����,&�� �+ , '%��- �/ *�++�*��� %� ���� 8� �,�� �,1�+ , %�,� -�%�-�*���� �+ ���

�� 7�*� ,+� ���*����� -,%�� �/ ��� ����%���*,� /��+�,���+� �+ !�,-��% .� 6� ������-�� ��%

�6+ ��/�6,%� -�,�/�%(� )6����� /�% ������+' *�+�%����%� ,� ���*%� �� �+ !�,-��% �� ,+� �+

!�,-��% 6� ��''����� , (��������'� /�% 9+��+' , ����, �� ��������+,%� ����-� 8� ,--����

���� (��������'� �+ ��% �,�1� +,(��� �� ������ , *�+�%����% ��,� *���� ����% , �6,%(� �� �� ,

�,%'�� 6������ /,���+' �+�� ����� �+ ��� 6,�� �+ ��� -%�*��� 6� ������ ����%,� ��A�%�+� +��%��

��������+ (������ ,+� 6� ���6�� ��,� , *�+�%����% ������� �+ )6���� *���� �+���� (��� ,

'%��- �/ %�,� �� ��� ��6,%�� , ��'�� ���%*� 6���� ,�����+' ������

$������ /%�( ������+' *�+�%����%� *,-, �� �/ �����+' ��� �,�1� 6� ,��� 6,+��� �� �,1� , *����

���1 ,� ��� -%�*��� �/ ������+' *�+�%����%� 6��� ��� ,�( �/ �-��(�K�+' ��� �+ �%��% �� �� �� 6�

,+,��K�� , +�( �% �/ �&����+' ��/�6,%� -�,�/�%(�� �� /��+� ��,� ���� 6�%� �����% ��� *�(-��&

H����� %����+' �+ ���%��-,%�� ��/�6,%� ��+,(�*� �+'�+��I �% ��� �-�*�,��K�� �� � ���/�� /�% ��%

-�%-����� 8� ���%�/�%� ������-�� ��% �6+ ��(��,��%� )6����� 6��*� %����� �+ , *����(�K��

��+,(�*� �+'�+�� $,��*,���� 6� �,*%�9*�� ��� ,**�%,*� ,+� '�+�%,���� �/ ��� ��+,(�*� ,�,��, ��

�+ ��� *�(-��& ��(��,��%� ,+� ',�+�� -�%/�%(,+*� �+���,�� �� ��� ��(� �/ 6%���+'� )6����

���� +�� ��(��,�� %��'� ��%%,�+� �� �+�� 0,� ��%%,�+ 6��� ������ 5+ ��� ����% �,+�� 6�

,%� , �� �� ��(��,�� �����,+�� �/ %� ��� H*�++�*��� �% +��I� �*,��� ��� ��(� *�(-��&���

�/ ��% *����(� ���� ��+,(�*� �+'�+� �� ��+�,% �+ ��� +�( �% �/ ��(��,��� � 7�*��� )��� �� ,

�%,(,��* �(-%���(�+� ���% ��(��,��%� ,���(-��+' �� ��(��,�� ��+,(�*� ,**�%,���� ,� ����%

��(� ,+� �-,*� *�(-��&��� ���,��� ,%� *� �* ,+� ;�,�%,��*� %��-�*������� �+ ��� +�( �% �/

� 7�*�� ��(��,���� ��%���%(�%�� �� �� ;������+, �� �/ ��%��,� (����� �/ ��� %� ��� ,+� ���

,%�+,� *,+ � ���� �+ ��*� ��'� ���,�� ��,� �+� *,+ %�,��� �+�9� �/ ��� *�(-��&��� �/ '�+�%,�

��/�6,%� ��+,(�*� �+'�+��� ����� /%�( ��� �+�9�� �/ �*,�, ������ 6��� )6���� 6� �,�� ,���

� �,�+�� , � �/��� -�%/�%(,+*� �+*%�,�� ��(��,��+' *�++�*��� �� ��� *�(-,%�� �� ��� 6��*�

�� ,+����%� +�6�� ������-��� ���%��-,%�� ��+,(�*� �+'�+�� ,���� �� �� ��(��,��%� )� -�� ���+'�

�+�� -�%�-�*����� F,� 6� %����� �+ �+� �/ ��� (�%� *�(-��& ��(��,��%� ��1� �� ,+� �/ 6� ,���(�

��,� 6� �,� �,� �&*������� �+�+��%%�-��� ,**��� �� ��% *�%%�+� �. !�P 5-��%�+ *�����%� ���

��������+,%� %�+� -%���+��� �+ !�,-��% 6���� �,�� �,1�+ �� . �,���� �% ,�(��� ��� +�(�+,���

��(� /�% ��*��%,� ������� ,� ��% �+���%����� �� *�(-�����

1J �� ��� � � ��� �" $���� � ����� � *���� ��� �� ��� ������ �2 ������� ����� �� ' ��� ��� �� � �� ������ ���� ������ ��� �" ����� � �� ����� ���� ���� ���� � 2� � �� �� ) ����� � ����� ��� 5� ����� ���%� � $� ��� < � ����� ��� �� �$� � �# �"" �� �$� � �� ��� ����� ���� � �""" ����� ����� �� � �� �$������� ����� �� �� ���� ��� �$������� �� ���� ��� ���� ����� ��� ����������� �� ��� 7����� ��������# �� � $� ��� � ��;�" �$������� �� ���� '��� �=� �� <""""" �3G �����# �� �"� �� �� �� � $� ����� �� �� �3G� '��� ������ ����� � � ��� ������ �� ���� ����# ��� �3G ���� ��� � �� ������� ��� ������� �� ��� ���� � ������2�#������� ��� ������$ �� ���� � ��8��# �����# �"� �� �� � ���� ���������� ����� ��

Page 100: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

5.1 Future Work Conclusion

��/�6,%� ����� ��,� ,���6 /�% ���%� ��%+,%��+� ��(�� �� +�� �+�� �-��� �- ��������+� ����

,��� ,���6 /�% %�,��% *�(-,%���+� �/ 9�+��� /�+*���+�� +��%,� +��6�%1 ��%�*��%��� ,+� +��%��

��������+ (������� )�� (����� ��,� 6� ���*%� �� �+ !�,-��% /�% 9+��+' , '��� ��������+,%�

����- ��-�+�� �+ ��� , ����� �� *�+��*� , �,%'� +�( �% �/ ��������+,%� %�+�� )� ��% 1+�6���'�

���%� *�%%�+��� �&��� +� (����� �% ��%�*��%�� ,--%�,*� /�% -�%/�%(�+' ,%��9*�,� ��������+ �/ %� ��

*�+�%����%�� 8� (����,��� , -�,��� (��������'� �+ 6��*� ��� ��������+,%� ����- �*�(��

-%�'%�������� (�%� �-�*�9*� ��%�� 6� ������-��� ������� ,+� (���9�� 9�+��� /�+*���+� �+���

, ����, �� �+� 6,� /��+�� ���%�,/��% ��� /�*�� 6,� ���/��� �� ��� +��%,� +��6�%1 ��-� ,+�

��%�*��%�� ,+� 9+,��� �� ��� +��%����������+ (����� ,+� ��� -,%,(���%�� $� /����6�+' ����

(������ 6� /��+� ��,� , (�����,��% +��6�%1 6��� �+�� . �����+ +���� 6,� *,-, �� �/ �����+'

��% �,�1 ,+� �,���% �� ������ ��,+ (�%� *�(-��& +��6�%1�� :�%����%� �� 6,� /��+� ��,� , [μ, λ]��������+,%� ,�'�%���( -�%/�%(�� ����% ��,+ ��� '�+���* ,�'�%���(� %����+' �+ *%������%� �+ ��%

�&-�%�(�+�� �+�����+' (�%� ,��,+*�� +��%����������+ (������� 6� /��+� ��,� ��� -�%/�%(,+*�

�/ *��-�%,���� *���������+,%� '�+���* ,�'�%���(� ��(���(�� %�'%��� ��%�+' ��������+,%� %�+�

6��+ ��� 9�+��� /�+*���+ �� +����� 8� ,��� /��+� ��,� +�����% �+*%�(�+�,� +�% (����,% ��������+

��%,��'��� -�%/�%(�� ����% ��,+ , ��(-��% ,--%�,*� �+ ��% �,�1� 8� ������ ��,� ��� (,�+

%�,��+ /�% ��� -��% -�%/�%(,+*� �/ �+*%�(�+�,� ,+� (����,% ��������+,%� ����-� �� ��,� ��� �,�1

6� �,�� /�*���� �+ *,++�� � ������� �+�� �� ��,�1� H�% �� � ��,���%�I �+ , �+�9*�,� 6,�� )���

�� �*,��� ��� ��**���/�� �������+� ��,� ��������+ /��+� 6�%� ,�� ��(-��� *���%�+� ��,���%�� ��%

(�%� *�(-��& ,+� ������ �� �,�1� ,+�"�% ��,���%�� ��6���%� �+*%�(�+�,� ��������+� (����,%

��������+�� �% ��(� ����% �*��(�� 6��*� �� *,-, �� �/ �����+' ��� ������ %��,��� �� *�(-��&���

,+� �����, ������ 6��� 6������ ��� � �*�(� +�*���,%� �/ 6� 6��� �� ,--�� ��������+,%� %� ���

�� (�%� *�(-��& -%� ��(� ��,+ ����� �,*1��� ���,��

�� /����� "��#8� ��%�+'�� ������ ��,� %���,%*� �+�� (������*,� ,--%�,*��� �� +�*���,%� �/ ��������+,%�

%� ���*� �� �� � ���� /�% ,+����+' �� ��� -%� ��(�� )�� %�,��+ ��� ��,� *�%%�+��� ���

9��� �/ ��������+,%� %� ���*� %���( ��� ��� 8��� 8���� 6��%� , ��� �/ 6�%1 �� ��+' ��+�

�+ (,+� ��A�%�+� ��%�*���+�� �� /�% 6��*� +� (������ �% %���� �&���� :,+� %���,%*��%� *�,�(

��,� ����% +�6�� ������-�� +��%,� +��6�%1 ��%�*��%�"+��%����������+ (�����"(��,���+ �-�%,�

��%"�+*%�(�+�,� ��������+ �*��(�"��*� �� ��-�%��%� 5/ *��%�� ���� *,++�� ,�� � ��-�%��% ,+��

,� ��% %������ ���6� ����% ,--��*, ����� (�'�� � ;���� -%� ��(���-�+��+�� �� , 9%�� ���-� �� ��

�(-�%�,+� ��,� ,����%� ������ ��(� ��(� ,+� �-,*� �+ -� ��*,���+ �� � �&-��*�� , ��� ����%

(����� /�% *�����+' , '���+ ��������+,%� ����-� )��� 6���� ,���6 /�% *�(-,%���+�� %�-��*,���+��

���*�����+�� ,+� %���� �/ ���,�� �� , %������ ��% �+��%��,+��+' �/ ��� �+��%���+' (�*�,+��(�

*���� �+*%�,�� ,+� �+� 6���� � , �� �� %��� �+ ��� -%,*��*�� /�% 9+��+' ,+� ���+' ����, ��

��������+,%� ����-��

����� /%�( ��� '�+�%,� �+'�+��%�+' ,�-�*�� �/ ��������+,%� %� ���*�� ���%� ,%� , +�( �% �/ ���,�

,+� -%,*��*,� ,+� ����%���*,� ������ %��,��� �� ��� 6�%1 -%���+��� �+ ���� ������� 6��*� 6� 6����

��1� �� �+�����',�� /�%���%�

)��#��� ����� 2�� ��� � ��% �+ ��% ����� �/ ��� *�+�%����%� �+ %�,� %� ���� 6� ���� �,*1

��*1 �,-� �� �%,6 �- ��� ,%�+,� $�,*1 ��*1 �,-� ,+� ����� ,%� -�%*����� �+ ��� �,(�

Page 101: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

Conclusion 5.1 Future Work

(,++�% � ��� '%��+� ��+��%� �+ ,+ �� ��� ��6���%� ��� -����*,� ��,���% �/ ��� �6,%(�

�� 6���� � ��A�%�+� �+ ��� -%���+*� �/ %�,� ������ )��%�/�%�� , /���%� �,�1 �� �� ����

,+ ,%�+, 6��� %�,� ����� ,+� ���� ��� ������� *�+�%����%� ��%��+�

)��#��� ����� 2�� ���� ��/���% 8� �+�� �,� ,**��� �� ��%�� �� �� 6��� ��� +�*���,%� ��+�

��%� 6�%1�+'� �� 6���� � �+��%����+' �� ���� �/ ��� ��,���% �*,��� 6��� ��� +�( �% �/

%� ��� ,� �� ���� ��(��,���+� ,+� �� ���*���% 6�,� ��� ��A�%�+*�� �+ ��%(� �/ -�%/�%(,+*�

(�'�� ��

��� * ��� ������ ��* � � ���� ���� �. ���1% 8� ������ , +�( �% �/ ,��,+*�� +��%��

��������+ (������� �� /��+� ��,� +�+� �/ ���( 6�%1�� 6��� /�% ��% �,�1� �*,��� ���

�����+� �� ��� �,�1 6� /�*���� �+ *���� +�� � ��*�(-���� �,����� �+ �%��% �� ����

��� (��������'� ,+� ��� ,��,+*�� +��%����������+ ,--%�,*��� ���*%� �� �+ !�,-��% �

6� ������ ����� (�%� *�(-��& -%� ��(�� )��� *����� /�% �+��,+*�� �+����� /�+*���+,�

���/�,���( �� ,+� (����-�� �,�1� ��+' -�%/�%(�� � , �6,%( �/ %� ����

� � � �� ���� ��2��1 ���������% )�� +��%����������+ (������ ��,� 6� �,�� ������

�,�� ,�� 6�%1�� �+ , 9&�� +��%,� +��6�%1 ��%�*��%�� �+ ����% (������� ��*� ,� ��4���

��� ��%�*��%� �/ ��� +��6�%1 �����/ �� �+��% ��������+,%� *�+�%��� �/ ��*� (������ �+ '�+�

�%,� -�%/�%( 6���� �� *���� %���*� ��� ,(��+� �/ ��(,+ �+��%��+���+ +�*���,%�� ,+� ���

-�,�� �+ ��% (����� *�+*�%+�� 6��� *�����+' , ����, �� +��%,� +��6�%1 ��%�*��%� 6����

�*�(� � �������

2��� ������� ��� �� � �� �� ��� ���� �� �*I*

Page 102: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

5.1 Future Work Conclusion

Page 103: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

������������

4� $,��,��,%%�� �� ���9� ,+� �� �,%���� 3�����+' (� ��� %� ��� , �� �� ���-�,� *����*���� ��

�,����%�� �+ !� F�(��%�71 ,+� 3� $�+, �,�� �����%�� )� ������ � ��� 5������� ��� " �#�

�� � � .����-������� � ��� ,� ��� � � . �� :���� ��� -,'�� ��2..� :�+�� Q�%��U�

��*�+,� �6��K�%�,+�� ��-�� ����� . .� P+���%���� �/ V�%�*��

�� �� $��%� 5+ ��� ��+,(�*� �/ �(,�� *�+��+�������(� %�*�%%�+� +��%,� +��6�%1�� �������

:���� �� ����2���� ���

�� �� $��% ,+� L� !� 4,��,'��%� 3�����+' ��+,(�*,� +��%,� +��6�%1� /�% ,�,-���� ��,���%�

������� :���� �� ���2�..� ���

�� �� !����� �� 5��� ��� � � 9���� ��� ����� � � .������ ��� ,�������� 8�%�� �*��+��9*

�� �����+' !�(-,+�J $1W���1 ������+� ���

8� L� !�+���%� )����� � ��������� .������� 8���� W ��+�� ��6 <�%1� �%� ������+� ��

?� !�% ,�M+ ,+� ?� ?,+K,%�+�� 3�����+' +��%,� ,%%,�� , +�6 (�*�,+��( /�% ��,%+�+' *�(-��&

,*���+ ��;��+*��� ;%,5 '%��������� ;����� � � 5�� ����� .�����* ,���� � + ������ #

H�I� . ��

�� �,�',,%�� 5��� ��� �� .������ ��� <� �-%�+'�%� . .�

�� )���� ��+'� :,���% ������� ��(��,���+ �� �>�+ '%��-� �� %� ���� =������> %��� ��

:�� ������ $����> �� .��� ����3�>��� . ��

L� ?� 3�(,+� ��+��+' ��%�*��%� �+ ��(�� ; ����� .���� �H.I���2.��� � �

?� Q� �,������ $����������� � ������ ���� �#� '7�� ,�� �*� �%�+��*� F,��� ��

�� 3� 4��� �%'� 9���� ��� ����� � .����� -���&�� �� ��� (���� %������� ������+�

8����� �� �����+' !�(-,+�� ��,��+'� :�� ���

�� 3� 4��� �%'� ��� ����� � 5�� ��� �! %��� �� �� � ��� � � ; ������� 9���� ��� ������

G��6�% �*,��(�* �� �����%�� $����+� :�� . .�

�� 4�(�K ,+� �� :��11��,�+�+� �+*%�(�+�,� ��������+ �/ *�(-��& '�+�%,� ��,���%� �������

:���� �� �����2�.� ���

�� 4%�N ,+� :� ��%�'�� !��-�%,���� �%,+�-�%� �/ � 7�*�� �/ ��A�%�+� ��,-�� ,+� ��K��� �+

:� ��%�'�� :� $�%,��,%�� !� $��(� ?� :� 4,( ,%����,� �� :�+�,�,� ,+� )� ��X�K��� �����%��

��� ; � �� -���&�� � ��� .���� 5���������� ?�� 5������� ��� " �#�� �� ���. @88?�

����(� ���. �/ %����� � ��� � ; ������ .���� -,'�� � �2���� �-%�+'�% Q�%�,'� $�%��+�

4�%(,+�� . ,�

Page 104: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

BIBLIOGRAPHY BIBLIOGRAPHY

�� 4%�N ,+� :� ��%�'�� 3�����+' , *��-�%,���� �%,+�-�%� ��,���% /�% �6� ��(-�� %� ���� �+

�� ?�,%���� �� !������ !� ��+��-�� 3� ?����+� ,+� :� �*���+,��%� �����%�� ������ ,� ��� �

A B�� 5������� ��� ; �������� ,� ��� � �������� ',� @88C*� ����(� .�# �/ %�����

� ��� � ; ������ .���� -,'�� � �2���� �-%�+'�% Q�%�,'� $�%��+� 4�%(,+�� . �

�� 4%�N ,+� :� ��%�'�� 4%��- �%,+�-�%� �/ ,+ � 7�*� �� , �,%'�� ��,� �+�� ��(� '%��- (�( �%�

(,� ��+��� �+ O� <,�� 3� $�%1�� L� �� ?�K,+�� L� �(���� L� L� :�%����4��%�Y�� L� �� $����+,%�,�

L� ��6�� �� )� �� G, M+� ,+� F���� �*�6�/��� �����%�� )������� )� ���� . ���� �� � ������

A D�� 5������� ��� ; ������� ')).� 2555*� ����(� �.. �/ %����� � ��� � ; ������

.���� -,'�� ��.2�#�� �-%�+'�% Q�%�,'� $�%��+� 4�%(,+�� . *�

�� F,%���� �-�*��� ,�,-�,���+ '�+���* ,�'�%���(�� , ,��� /�% , *�+��+��+' ��4�� �+ �� L� Q,%��,

,+� �� $��%'�+�� �����%�� )� ������ � ��� $��� ,�� ���� ; ������� � ������ %���

� ���� � )���� � ��� � � �� .������� -,'�� �#2��� �,%��� �%,+*�� ����� �.� :�)

�%���� !,( %��'�� :��

�� F,%���� �� F�� ,+��� ,+� �� !��A� ������ �+ ��������+,%� %� ���*�� )�*�+�*,� ��-�%� !�'+�����

�*��+*� ����,%*� �,-�% !���.�� $%�'���+ $�� ZF� 3+'�,+�� PG� �.�

�� F,%���� �� F�� ,+��� ,+� �� !��A� ����+' ��� ��'��� ,%��9*�,� ��������+� %�,� �����+� �+

)� ������ � ��� ���� ������� ��� ������� � .����� � � ������� ����� �! $� �

������ � ������ C� -,'�� �.2 �� !,( %��'�� :�� �� :�) �%����

�� F,�1�+� ������ ���� �#�! � ; ���������� $ ����� � '@�� ,�� �*� �%�+��*� F,��� ���

!� F�*1�%� �����*�� -,%� �� )�� +�6 /%�+���%� 9��� ����� ��� (���&��� -�1� �� �#,�

!� F�*1�%� �����*�� -,%� .� �+'��,% �A�*�� 9��� ����� ��� (���&��� ��1+��� �# �

!� F�*1�%� �����*�� -,%� �� !�������+ %��-�+��� 9��� ����� ��� (���&��� $��1(��� ��,�

!� F�*1�%� �����*�� -,%� � )�� ���%� ��(�+���+� 9��� ����� ��� (���&��� +���� �� �

�� F�*�%����% ,+� L� �*�(���� �%� $%��'�+' ��+' ��(� �,'� � 6��'�� '�����+' ,+� B��+'

���%����%( (�(�%�C� -,'�� #�2�.� �(���%�,(� �����%�,+��� �#� �5� �%����

L� F�-9���� ���%,� +��6�%1� ,+� -����*,� �����(� 6��� �(�%'�+� *����*���� *�(-��,���+,�

, �������� �+ )� ������ � ��� ��� ��� ������ � .���� 8,���+'��+� �!� ��.� �,���+,�

�*,��(� �%����

G� F�%+�1� :� ���+*�*�( �� ,+� F� 8����� :�����,��% /���/�%6,%� +��6�%1� ,%� �+���%�,�

,--%�&�(,��%�� ������ ���� �#�� .H�I���2�##� ��� ���� ���# � �

�� ��,1, ,+� �� 4�+���(,+� �� � �,+'�,'� /�% �,�, ,+,����� ,+� '%,-��*�� + ����� � ; ����

��� ��� ��� 9������ .������� �H�I�.2��� �#�

�� L,1� �� F,�/� ,1��� ,����* ,+� +����� :�+�(,� ��(��,���+� /�% ��������+,%� %� ���*�� �+

�� F�� ,+�� ,+� �� F,%���� �����%�� )� ������ � ��� $ ���� ,�� ���� ; ������� �

������ %��! ,;�%EF� -,'�� ��2���� :�) �%���� !,( %��'�� :�� ���

���

Page 105: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

BIBLIOGRAPHY BIBLIOGRAPHY

:� �� L�%�,+� ���%,*��% ��+,(�*� ,+� -,%,������( �+ , *�++�*���+��� ��;��+��,� (,*��+�� �+

������ ������ ���� �#�! ���� �������� -,'�� ��.2�.�� ���*,�,6,�� �L� � � �333

�%����

)� G���+�+� .����-����&�� (���� ����(� � � �-%�+'�% ��%��� �+ �+/�%(,���+ �*��+*���

�-%�+'�%� $�%��+� F����� �%'� ��6 <�%1� ���%� �&��+��� ������+ ������+� . ��

�� �� G%����+'� <� V���� ,+� �� :� )�%%���� 3�����+' /-',� ,��� %� �� *�+�%����%� ���+' ,+

��������+,%� ,�'�%���(� �+ L� )�((�� ,+� �� L� $�+����� �����%�� )� ������ � ��� 7��

5������� ��� ; ������� � ������ 5����� .������ '5;�<5.*� -,'�� �2#� P+���%���� �/

G�+� ,� !,+��% �%�� ��-��( �% . .� P+���%���� �/ G�+� ,� !,+��% �%� �%�+��+' P+���

)� ?, ���,� :� ��%�'�� ,+� L��?� ��+�� ��%'� 3@*��+*� ,+� �,�1 ,���*,���+ �+ -%�� %��%���,��

�+ �� �7�-��%�� �� :,+'�� :� :�%,�,� ,+� �� ������� �����%�� )� ������ � ��� $��� 5�����

��� ��� " �#�� � � : � ����� 5������ ���� ���� � ������� 5�� ���� � ���� � ��

': ���5�@88?*� ?�*��%� ����� �+ !�(-���% �*��+*�� -,'�� �.2�� �-%�+'�% Q�%�,'� F������

�%'� 4�%(,+�� . ,�

)� ?, ���,� :� ��%�'�� ,+� L��?� ��+�� ��%'� ���/��%',+���� �,�1 ,���*,���+ �+ , '%��- �/

%� ���� �+ �� ��,(�� �����%� )� ������ � ��� F�� 5������� ��� .��� ��� � ���������

��� � � �� < � � .������ '��<.8?*� )�������� �%,+*�� L�+�.�2.� . �

L� :,�+��+,�� ,+� L� $%,�+� ���� ������� ��� 9����� =��� <� !,( %��'� P+���%���� �%����

!,( %��'�� . ��

8� :*!����*� ,+� 8� ������ � ��'�*,� *,�*���� �/ ��� ���,� �((,+�+� �+ +�%���� ,*�������

:������ � (��������� : ������ -,'�� ���2���� ���

V� :�*�,��6�*K� 9���� ��� ����� G ���� .�������� H ,� ��� � )� ������ �-%�+'�%�Q�%�,'�

$�%��+� 4�%(,+�� ��

5� :�'��+�� �� ��+,%�� 4� ),�*�+�� ,+� �� �,%���� �����% ��,����% �+ ������+' %� ���� �%�

�+��%+,� %�-%���+�,���+� +�*���,%�= �+ �� F�� ,+�� ,+� L���� :���%� �����%�� ,� < � ���

����(� �#� �/ %����� � ��� � ; ������ .���� -,'�� �2� � �-%�+'�%� ���

5� :�'��+�� F� F� ?�+�� ,+� �� ���9� 3�����+' (� ��� %� ��� �+ ��(��,��� ,+� %�,� �+��%�+(�+���

������ %��� .HI���2�� ��� ���� � #��#.�

:� :�+�1� ,+� �� �,-�%�� )������ ��� :�) �%���� !,( %��'�� :�� �#�

:� :��*����� �� 5��� ��� � � 9���� ��� ������ :�) �%���� !,( %��'�� :�� �#�

�� :�+�,�,� �� 4��'+,%�� :� $�+,+�� �� $[%� :� ?,�%�,� ,+� �� ���%�,+�� �6,%(� ��� �%�(

*�+*�-� �� �(-��(�+�,���+� �+ )� ������ � ��� @88C 5,,,1<.+ 5������� ��� ; �������

� 5��������� < � � ��� .������ '5<-. @88C*� -,'�� �#.#2�#��� ?,� Q�',�� ���,�,� P��

5*�� �% .� � ��� . � . �� �333 �%����

�� :�+�,�,� 4� !� �����+,%�� �� 4��'+,%�� �� G6��� �� ���%�,+�� L��?� ��+�� ��%'� �� ���9�

?� 4,( ,%����,� ,+� :� ��%�'�� �6,%(� ��� , +�6 ����%� ���� %� ���* *�+*�-�� ��� � � ��

< � ��� ��H.2�I���2..�� . �

���

Page 106: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

BIBLIOGRAPHY BIBLIOGRAPHY

�� !� :�+�'�(�%�� ����� ��� ������� � , ��������� L��+ 8���� W ��+� �+*�� ��6 <�%1�

P�� . ��

�� 3� :�%�,%�� ,+� �� :��11��,�+�+� 3@*��+� %��+/�%*�(�+� ��,%+�+' ��%��'� ��( ����* ������

���+� (���� %������� ..���2�.� �#�

�� ���9 ,+� �� ���%�,+�� ,� ��� ���� < � ��! ��� : � ��� 5���������� ��� ���� � �� �

.����-����&�� (������ :�) �%���"$%,�/�%� $��1�� !,( %��'�� :�� . �

�� ���9� �� ���%�,+�� 5� :�'��+�� ,+� �� :�+�,�,� F�6 �� ������ ,���+�(��� %� ���� ��A�%�+�

,--%�,*��� �+ ��������+,%� %� ���*�� ������ %�� 52� -,'�� � 2��� ��

�� ����,+ ,+� :� ��%�'�� !�,�+ /�%(,���+ �+ , �6,%( �/ %� ���� )�*�+�*,� ��-�%�

)�"������". ���� ������� P+���%���\ ?� %� �� $%�&������ :,%*� . �

:� �� �����% ,+� G� �� L�+'� � *��-�%,���� *���������+,%� ,--%�,*� �� /�+*���+ �-��(�K,���+�

�+ <� �,����%� F���� �*�6�/��� ,+� �� :[++�%� �����%�� )������� )� ���� . ���� �� � ������

A )).� 555� -,'�� .2.��� $�%��+� �� �-%�+'�%�

:� �� �����% ,+� G� �� L�+'� 3�����+' +��%,� +��6�%1� 6��� *���, �%,���� �-�*���� �+ )� �

� ��� 7EEI .����� ; ������ .����� � ; ���� -,'�� � 2��� )�� ��*���� �/ !�(-���%

��(��,���+� ���

:� �� �����% ,+� G� �� L�+'� !��-�%,���� *���������+� �+ ,%*����*��%� /�% ������+' *�,�,-���

�� *�(-�+�+��� ,� ��� ���� ; ������ �� -,'�� �2.� . �

$� �� ��-���� )�� � -%�7�*� �+ ��,�����*,� *�(-���+'� (.-< ; ���� ��� ��� ���������� �

��� %�.� (����� .���� J -< ���� �#�� �H�I�.�2.�� �� %�,%� . ��

�� ����+ �,��� )�� -�%*�-�%�+� � -%� , ������* (���� /�% �+/�%(,���+ ���%,'� ,+� �%',+�K,���+

�+ ��� %,�+� )��� � ��� <����� -,'�� ��#2 �� ���

�� ����+ �,��� )������ � ���� ������� �-,%�,+ $��1�� ��6 <�%1� �#.�

F���� �*�6�/��� ,� ��� � ��� -����� .��#��� 8���� W ��+�� ��6 <�%1� ���

�� �� �����+ ,+� �� 4� $,%��� <��� ������ %������! �� 5��� ��� �� )�� :�) �%����

!,( %��'�� :�� ���

�� )��(-��+� 5+ ��� ,���(,��* ����'+ �/ %� ��� ���*�%�+�*� ��%��'� ,%��9*�,� ��������+� �+

5;,. �ED! )� ������ � ��� .� �� 5������� ��� ; ������� � ,� ������ .������� -,'��

��2.� ?�+��+� PG� ��� �-%�+'�%�Q�%�,'�

Q� )%�,++�� 3�������+ �/ *��%��+,��� (����+ ��,���%� �+ , '%��- �/ ���/�,���( ��� %� ����

)�*�+�*,� ��-�%� )�"������". ��.�� ������ � P+���%���\ ?� %� �� $%�&������ $��'��(� :,�

. �� �3� )������

Q� )%�,++�� �� 4%�N� )� ?, ���,� 3� ],��+� ,+� :� ��%�'�� 3�����+' �''%�',���+ $��,���%� �+

, �6,%( �/ �� ���� �+ 8� $,+K�,/� )� !�%���,���%� �� ����%�*�� L� )� G�(� ,+� L� V��'��%�

�����%�� ������� � ������ %�� � )� ������ � ��� F�� ,�� ���� ; ������� � ������

���

Page 107: iridia.ulb.ac.beiridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-014r001.pdf · Building a Simulator 3.2Design Set up the virtual world Draw frame Sense and act Update world state Figure

BIBLIOGRAPHY BIBLIOGRAPHY

%�� ',;�%*� ����(� .� � �/ %����� � ��� � ������ 5���������� -,'�� �#�2��� �-%�+'�%

Q�%�,'� F����� �%'� 4�%(,+�� . ��

Q� )%�,++�� )� F� ?, ���,� ,+� :� ��%�'�� 3�������+ �/ ��%�*� *�((�+�*,���+ /�% , �6,%(�

�� -�%/�%(�+' ���� ,����,+*�� �+ :� ��%�'�� :� $�%,��,%�� !� $��(� ?� :� 4,( ,%����,�

�� :�+�,�,� ,+� )� ��X�K��� �����%�� ��� ; � �� -���&�� � ��� .���� 5��������� A

)� ������ � ���. @88? A $ ���� 5������� ��� " �#�� �� ����(� ���. �/ %����� � ���

� ; ������ .���� -,'�� ���2�.� �-%�+'�% Q�%�,'� $�%��+� 4�%(,+�� . ,�

Q� )%�,++�� �� ���9� ,+� :� ��%�'�� F��� ,����,+*�� 3&-�%�(�+�� �+ *��%��+,��� (����+ �+

%��'� ��%%,�+� �+ �� 4%��+� �� �(,��� �� $�+,%�+�� 3� <�����,� ,+� $� G%^��� �����%��

5��������� ��� � � �� .������ D� -,'�� .2�#� �5� �%���� �(���%�,(� )�� �����%�,+���

. �

Q� )%�,++�� �� ���9� ,+� :� ��%�'�� !��-�%,���� ���� ,����,+*� �+ , ������� �� < � �� ���

��� � � �� .������� . �� �� ,--�,%�

Q� )%�,++�� 3� )�*�� ,+� :� ��%�'�� 3�����+' /�+*���+,� ���/�,���( ��+' �+ , �6,%( �/ ,��

��+�(��� %� ���� �+ �� �*�,,�� �� �7�-��%�� �� $���,%�� �� Q�7,�,1�(,%� L� F,��,(� ,+� L����

:���%� �����%�� $� � ������ � ������ V III� )� ������ � ��� 8th 5������� ��� ; ��

������ � .����� � � ������� :���� �� -,'�� �2�� :�) �%���� !,( %��'�� :��

. *�

L� Q�%K,+�� =��� < � � 5��� ��� �� .������� !�,-(,+ W F,��"!�!� $�*, �,��+� �?� . ��

:� �� Q���� ��� .���� 9���� ��� ����! $ ����� �� ��� ��� ��� :�) �%���� !,( %��'��

:�� ��

$� <,(,�*�� ,+� �� $��%� �+��'%,��+' %�,*����� ��;��+��,� ,+� ��,%+�+' ��,���% ���+' ��+,(�*,�

+��%,� +��6�%1�� �+ $� � ������ � ������ C! )� ������ � ��� ���� 5������� ���

; ������� � .����� � � ������� :���� � '.�: E?*� -,'�� ��.2��� !,( %��'�� :��

�� :�) �%����

���