Attribute Grammar Evolution

10

Transcript of Attribute Grammar Evolution

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

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

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

��������� ���� ����� ��������� ������� ������� �� ��� � ��� �� ��! � ����� �� ��� ���" #� �������� ��� ����� ���� �$������������� ������� �� ��� � ��� �" ��������� � ���$�%���� ���������" �������� ��������& �� ��" ��'�� ��� ��� �� �"������� ��������� ��� �������� ����� ����������& �� ���� ��������� � ����� ���� � �������������" ��� �"����������" ����� ���������� ��� ���������& ��������������� ��'� �� � ������ � �����������" �������� ��� � ��� �& �������� �� !� ����������" ���� �� �� �� � � �� �� � � � ��������� �� �%���� ��� �� ��� ���� �������� ��������� �� ��� ������� ��� ���� ���� ���� ������& � ��� ����� � ����� � �� ���� ������ � ��� ��%������� ��� ��'� ��� ������ ��(���&

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

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

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

����� ��� ���� ��� ���������� �� � ���$� % �������� &'(� � ��� � � �������� �� ����� ���������� �������� �� ����� �� ������ �� ����� �� ����������� ��������# ������� ���� �������� ��� ���������� �� � ���� ��������� �� ��� ���� �� ������� ���� � �� ����� ��� ����# � � �� ������� ������ ������� � ���$� % ��� ������� ���� �������� �� ����� ������ � � )�����!����* �� �� ����� ���������� ��������# � �� �� ������ ����� ��� ��������� ������ ������������� �� �� � � ��������� ����������� �� � � ��������� ��!���� � ��� �� ��� � � ���������� ���� ����� ��� �� � �� � � �������� ���������� ������ � �� ��� ����� ��� � ��� �����������#

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

�������� �������� &+( ��� ��� �� � � ����� ��� �� �������� �� ����� ��!�������� �������� ��� ������ ,� ��� ������ ��� � ��� ���������-# ���������������� ������ ������� ���� �������� �� ������ � ��� ��� ������ �� � ��.

� ��� ��� �������� ������ �� � ��� �� ���������# ��������� ��� ������� ��� � ��������� �� ���������� ��������/ � �� ��� � ���� ��� � ��� ����������� �� � ����� ������#

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

�� ���� ��� ���� ���� ������� ������ ����� ���� ����� � !"�#!$!� �����%©� ���&��'(���& )���� *����+��& ����

������� ������� �� ��� � )*+

� �������� ������ ���� �� �������� �������� ��� ���� ���� ��� �� � ��� ����� �� ���� �� ���������� &0� 1(

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

2� &3( �� �� �������� ���������� ����������� ������� � ���� ������ ��� � ������ ���������� �������� � �� ������� � �������� �� ����������� �������� �� �� ������� �� �������� ,������-� ��� � ������� ���� �������� �� �� ����� � � ������������� �� ��� �� � ������ � ���� � ����� �# � �� �� ����������� � � ���������� �� ������������� ������� ����� ��# 2������ � ���������� �� � � ������ � ������ � ��� � � "����� ������� �� �������� �� � � ���!�� ��#

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

�� ������ ��� ������ � � ���� ��� �������� ������ �� �������� ���� � ������� ������ ,����� � � �������� ���-� � � ,�5'- ���� � ������� �� � � ����������� ��� ��������� ,���� % �� �-� ��� � � ������ ����� �� �� �� ������� �� � �� ,����� �� ��� ���� ����� ��� �-#

��" ��������� #�� ��������

4� � � "��� ��� � � �� � �� ������ � �������� ���������� ������ �� ����� ��2�# � � ������� � �� ���� �� �������� �� 6���� �� ��� ����� �� $�� �� ������� ������� �� � � �������� ������ ���� �� ���������&3(#

� � �������� ���������� ������ ����� �� "�� � �������� �� ������� "����� ������ ������� �� � ��� �� ������� �����#

4� 2������ ����������� &7(� ���� �� � � ������� ��� �� ������ �� � ��������� ���������� ������# � �������� � �� � �� ���� �� ���������� �� � �� ������# � � ������ ������� � ���� �� f (x) = x4 + x3 + x2 + x

� � ������� �� � �� ������ �� &3( �� ���� �� ����� �� � � ��������� ���������� ���������.

8������ � ������������� �� �� �� �������� ��� � � ���� �� �� &3(.

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

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

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

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

�������

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

�����

)*, �& �� �� -�. ���������� &/& �� �� #����� ��� �& �� �����

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

���

���

���

���������

� � � ��� �� ������� �����. +' ����� �������� ��$�� ���� [−1, 1]#� � � "����� �������. � � �� �� � � ������� ����� ���� � � ��� �� � � +'������� �����#

� � � � ������ ���. 3%%#� � � ����� �� � � ������ ��. �������� ����� � ��������� ������� ' ��� '%#� ������. � �� ������ �� � � [0, 256]��������#� ����������� �� ���������. %#9#� :�� ������� ��� ���������� %#'#

;� ��� ����� �� �� ����� � � ���� ���� ��� ��� � � ��������� ����������.

� � � ����� ������� �� �������� �� �� ���� ��� ��"�� ��� � ������ ����!�����# 4� � � 6��� � ��������� �� ��� ������� � � �������� ��� ��������� � ���������� � ���� ������� �� ��$� � � ��������� �� � � ����������������# <�� � � � �$� �� ��� ������� � � ������� � ������ �� � � ����������� � �� � �� �� ����� � � ������� �������#

� � � �� �������� ������ ���=���� ��������� �� ���������&3( �� ��� ���� ������� � � ������ ��� � ���� ��� � "����� �� �������� ��������� ��� � ����� � ������� ��� ��������� �� ����� �� � ������������ �� ���� ��� ��� �� � ������ ����� �� ���#

� � � ��� �� � � ������ �� �������� ��� � � ����� �� �����������# 4� ������ �� �������� �������� � �� � � ����� �� ���� ������ ���� ���������#� � ��������� � ������ ��������� �� ��������� &3( ��� ��� ������ ��������������� ����# � �� � � ����� �� ����������� � �� �� �� � � ���� ����� � �� � ��� ������� ������ �������� ���������# �� ����� � �� ����������� ��� ���������� � � ��������� ���� � ���� �� � � ��� ������ �� ��� ������ �� ��� �� � �� �� � � � ��� ������ �#

� 4� �� ���$� ������� � ����� � ������ ����� �� � ������ ���� ��� � [0, 256]��������# � � ���� ���������� ���� �� ������� ��� ���� ��! �������� �� %#3� ��� �� � � ���������� �� ���� ������� ��� �������� ��{0.5, 0.7, 0.8}#

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

��� ������ ������ $��%

� �� �� ��� � � "��� ����� � �� ������ ������� ���������� �� ������ � ���� ���� ������ ���� �� � ���������� �������. ���������� &>� ?� 9� '%( ������������ ������ ����� � ���� ��# � ��� ������� �� ��� ��������� �� ���� �� ���&''� '+( ������ � � ����� ������ ��$�� �� ��@��� �� ������� ���� ���������

������� ������� �� ��� � )*0

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

�2� ������ ������ ���� � � ������ ���������� �� � � ���������.

� 4� ���� ��� �� ��� �� ��� ���������� �������#� A��� ��� B�����C� ���$� �� ������ � � ������ �� �� ����� �� �����#� ��� D��� ;��� ��� E���� 8�$ D���C� ���$� ��� ������ ���������� ������ ������ ��� ��� ��� ��������#

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

�������� �������� ��� �� �������� ��� �� � � ������ �� ������ ��� �����������������# �2� ��� � �� �� ������ � � ����� ��# � � ��������� ��� ����!���� �� ����� �� � � ���������� ����# ��� ���� � �� � ���� �� � � ���� ���� ������ � � ����� �� � � ��������� � �� ��� �� �������� ��� ��� ��� ��� � ��������� ���.

� ��������� �� ������ ���� � � ����� ������ ��� �������� ��������#� 4� � � ���� ������ �� ��"��� �� �� �� ������� �� � � ��� � �� � ��� ��� ����� ��������� �� ������ ���� � � ���� �������� ��� ���� ��������#

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

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

�2� ��� � � ��������� �� �������� � � ���������� � �� � ����� � ������ �� ��� �� �� ���������� ������������ �����# �� ���� �� ��� �� � ��� ���!�������� �� ��������� � � ���������� ������ �� �������#

��� )�������� �� �����* �� ������* )�**���

�2� ���� � � ��������� �� � � ��������� �� � � �������� ��������� 2� �� ! ���# � � ��������� ��� � ������ � � ������� � � ���� �� ����� ����� �� � ������� �.

'# � ���� � � �������� ���!�������� ������ �� � � ������ ����#+# 8����� �� � � ���� � � ���� ���������� ��� � � ������# � �� �� � � ������

����#0# F ���� � � ��������� �� � � ���������� ����#1# G���� �� ��� ������ � � ��� � ��� ����� �� ��� � � ���� ��� � �� ���!

�������� ������#3# 8����� � � ��� � ��� ���� �� � � ��� � ��� ����� �=��� ����� ��� � ����

�� ���� ��� ���� ��� � �� ���!��������#

)*1 �& �� �� -�. ���������� &/& �� �� #����� ��� �& �� �����

�� �� �� ��� �"�� � ���� �"�� ������� � x + cos (x)& ��� �������� �������� ����� ��� ���� �� x = 0

������� ������� �� ��� � )*2

7# H����� � � ���� ���� �� �� ������ � � ���!�������� �� � � �������� ��� � ��� ����#

># 4����� � ��� ���� ��� ��� ������ �� � � ��� � ��� ���� �� � � ��� �����$� ��� � � ��� ����� � � � ������ �� � � ������ ���#

<���� ' ��� ������ � ��� � � ���������� �� � � �� ������� x + cos (x)���� ������� � ��� � � ��������� �������� �������.

���������������' ���� ������+�����������������������'��� ������+�� �����������������' ���������������������������'�� ��������������������������

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

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

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

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

����������

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

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

; ���.

� G��!�������� ������� ������ ��� ����� ��� �� �������� �� � �� ��������� � � ���� �� � � �� �������# G����� � �� � � ���� ��� �� �� � �� � � ������ � � �������� �� � � ���� �� ����� �������� �#

� G��!�������� �������� ��� ���� ��� �� �������� � � �� �� ������� � �������� � �� ���� �� � ���� � �� ��� ���� � � ���� �� � � �� �������#

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

��" �� � � ��� ��������

�� "��� �� ������� ������ � � ���������� �� � ����� � � �� ��� �� ���!"��� �� ��� ������� ����# � �� ��� ���� � �� � �� � � �� ������� ��������log (���� �������) ��� � � ���� �� � � ���� ������� �� ���� �� �=�� �� %#

� � ���� �� � � "��� �� ������� �� ���������� � � ������� ���� �� ������������ �� � � ��� � ����� �� � � �� ��� ������� �# ;� ��� ��� ������ �� ������2�� ������ �� ��� ��������� �� ������� ����� �� � � ������� �# � ��� ���� ������� ���� ���������� ������� �2� ��� 2� �� � �� ����. 2� ��������������������� ������� ����� �� � �� ���� ������� �� ��� �� ��� � � �����"����� ����� �� �2� �������� � ���������� �� �� �� �������� �� ���� �� �������#

� �� �� ������� ��� � � ���� ��������� �� � ��� ��������� ��� 2�� ���� ���� � � ���������.

� � � �������� ������� ��� �� � � ���������.

���������������' � ������+�����������������'����������+��� ∀�∈[0, 20]�������' ������+�����������������'���������+���∀�∈[0, 20]�������' � ������+�����������������'����������+���∀�∈[0, 20]�

)** �& �� �� -�. ���������� &/& �� �� #����� ��� �& �� �����

�������' �����������������'��� ∀�∈[0, 20]����������������' ����������������������������'��� ∀�∈[0, 20]������������������������� ∀�∈[0, 20]�

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

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

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

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

�����������������%���������'��� �������'���!���

�������+%���� �� ������� �� ���� ������� �� � � ��� ��� �� � � ������ � �� ���!

�� � �� ��� ���� ��# � � ���� ��������� �� � � ��������� �� +' ��������� ,��∀�∈[0, 20]- �� ������ � � ���� �� � � �� ������� �� ��� ������� ����#

� � � ���������� �� ������� �� ���� �� �������� � ������ �� %#> �� � ����� "��� +#

�� �� �� ���� ������ � ������ � ����� 033 ���& ��� ! ��� ���� ������ � ���%�� ��� � � �� �������" � ����� � �4��� 3&) ��� ��� ���� � 3&2

������� ������� �� ��� � )*5

�� � �� ��& �� ���� ������ � ������ � ����� 033 ��� !��� ��� ���� �� �������" � ����� � �3&2 & � !��� ��� ���� � �� ���������� � ����� �� ����� �� � �����'�������� ������ ������

<���� 0 � ��� � � ���������� ��� ������ ������� 2� ��� �2� ��� � ����� ���������� �� ������� ����� 3%% ��� �� � � ������� �# �� �� ������ � ����� �� �����$���� �� �������� �� ����������# B������� � ��� ���� �� �� ��������$���� ����# 8�� �� ��� ����� � �� �2� �� �� ���� �� 2� �� ����� � �� ������# �� ���� �� � � ������� ������ �� 2� ��� �������� �� � � ������������������ ������� �� ��� � �������� ���� � � ������������� �� � �� ������ ���� �� $���� �� �������#

� � ���� �� �� ������ �� ������� �� �� � ��$ ��� ����� ������ ���� ����������� � � �������� � � ������� � �� ����� ��� ����������# ;� � ��� ��� ������������ �������� ������� ��� ����� � � �� ���� ��� ������� "� � � ������ ��������� ��� �� � � � ��� ������� �����. !'� % �� '#

<�� � �� �� �������� � � ���������� �� ������� �� ��� �� %#>� ��� �� � � ����������� ��� �� 2� ��� �� �2�#

<���� 1 � ��� � �����"���� �� �������� �� ���������� ����� 3%% ��� �� � �������� �. � � �������� ���=���� �� ������ ����� ������ ��� ���� �� �� �������#

4� �� ���� �������� � ��� ���� ��� �� � � �������� ���������� ��� ��� �������� � � �� �������� �� �����"����# �� � � �� �� ���� �� �� ����� ��� � ���� �� ���������� ��� �� � � ��������� ����� ��� ����������# � ������� ���!��� �� � �� � � �� ������� ���� �� �������� �������� ������ � ��� ������ ������ � � ������� �� � � ������# :�� �� � �� ����� � � ���� ����� ����� �� �� � �

)53 �& �� �� -�. ���������� &/& �� �� #����� ��� �& �� �����

�� �� �� ���� ������ � ������ � !��� ��6����� �������� � ��������& ��� ���� ��%���� �� ��� ���� ������ ����� ������ � ������ � �� � ������� �� �����7����

�������� ���� � � ����� �� ��� �������� �� � � ������� ������. �� ������ �������� ������ ����� #

� �� �� � ���� �� ������ �� �� ��� ��� �� ������� . ����������� �� ������������� ��� �� ����� �� ��� � � � ����� ����������#

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

� �� ���$ ��������� �2� ,�������� ������� ��������-� � ��� �������� ����!������� ���������� ������� � � �� ������� 2� ,������� ��������- �� �������������� ���������� � �� ��$� �� ������� � � ������� ���� � � � ������ ���������������� ��� ������������ ������� ����� ��#

� � ���������� ��� �� �� � ���� �� �� ������� ���������� � �� �� ���!������ ��� �������� ������ ����� ��� �������� �� � � � ��#

4� �� � ��� � �� �2� �� �� ���� �� 2� ��� � �������� ������ �� 2�# 4� ������ ����� � �� ������ ��� �� ����� �������� ���������� �� ����� �����"������� � ���������� �� �2�#

������� ������� �� ��� � )5)

4� � � ����� �� ��� �� ������ 2� ��� �������� ������ ������ ����� ��� � ���������� ������� ��� �� � �� � �� � ���� �� ������������ ����� ������� �� �� �� �������# ;� ���� ��� �� ���� �� �� � � � ������������� ��� � ���=��� ��������� ������ �� ��� � � � ����� ����������#

� � � �� �

)& & 8& -� ��'"� 9 ���� �� ������� � ��������� �� :���� ' � ����& #�"��&�� �& ;� < �� =���" ��� > ��� 8�! ? �'& )51+� ��& +;+%,)*

;& �& �& @���� >�������� � - ���$�%9��� A�������� �� ������������ >"����� ���% �"� � �& ;� �� ;� )51*� ��& );2%),0

+& &B& � � C& >����� <&�&������ �)5*1 - �������D #���������� ������4�� ���� ��& ���� �%=����"

,& �&����� �� ��& �;333 � ���� - ������ ������& < �� =���" E � �� A��&0& �& /8���� E C& - � �� ����������� �� ��� �� �� ��� ���" �� ����� �� ����%

���� �� �� ��������" �������� @�!�� ������� #���������� ;33+&1& =&F��.��� #&8 ����� C&�&@������ 9&�&9���� ��& ������� #� ��������& � ���� %

���� � � ���� ��� @������ #��������� ���&)55*2& F&<& C ��� A ���%����� ������� #� �������� !��� ��7���� -���� ��������� �

�������� )555*& �&A&= �� ��� @&>& A���& �� ��� ���" #� ���� ������ � �������� �" A ���

��������& �� ��� ���" - ������ �� 0 �; D ),+%)*3� )5525& �&>&:����� ��� C&&F� !��& ������� �������� � � ������� C����������� ��

� 8���� 8��! �'� ��� >"������� - ��������� � ������� #� ��������& ���B���G5*D = �'�� � � �� ��� ���" - ������� � )55*

)3& �&>&:�����& �;33+ ������� ������� ��� ���� � ��� >������ ��� F����� � � ���7���� 8���� 8��! �'�& #�&�&������& H���� ���������"& @����� �� /����� �-�����

))& <& 8& >���� C������� �������� ��������& ������ �������� � ��� 9����" � ��� = ������� # ��������� �������� �� ������� ��7������ � ��� ��4�������� � ���� ������ � ������ � >������ �� - ����� >������� � �� )3� )55+ ����������������� )1� ;33+

);& :& -������������ >���" � �������� ��������� �� -� >��#A8 8 ������� �& ;0� ��))& 8 ������ )553� ��& +0,,&