Team Ai
Modelpublic

hashir-Ali/Reinforcement_Learning

sourceHugging Faceupdated 1y agoView on Hugging Face
0likes3downloads
Main.cpython-311.pyc49 linesDownload Raw Back to __pycache__
1�

22�hG�3��ddlZddlZddlZddlZd\ZZdZdZdZ	d\Z4ZdZdZ
dZd	Zd5�eed	z��D��Zejee��ejdeee����e��ZGd�d��ZdS)
�N)i iX)��rr)rrr)��E�)�(�Pg������ɿ皙�����?�2c�H�g|]}ttjdd��z�� S)��)�terrain_height�random�randint)�.0�_s  �-d:\ML!\Tasks\Rocket Simulation\MyPRoj\Main.py�6<listcomp>rs)��U�U�U�Q�.�6�>�!�R�#8�#8�8�U�U�U�c�,�eZdZd�Zd�Zd�Zd�Zd�ZdS)�RocketLandingGamec��tj��tj�tt7f��|_tj�d��tj�	��|_8d|_d|_d|_
d|_tdz|_t9dz|_d|_d|_d|_dS)NzRocket Landing SimulationTFr�)�pygame�init�display�set_mode�WIDTH�HEIGHT�screen�set_caption�time�Clock�clock�running�	game_over�win�angular_velocity�rocket_x�rocket_y�rocket_angle�rocket_velocity_x�rocket_velocity_y)�selfs r�__init__zRocketLandingGame.__init__s�����
�
�
��n�-�-�u�f�o�>�>�����"�"�#>�?�?�?��[�&�&�(�(��10���������� !�����11��
��!���
����!"���!"����rc	��tjttftj��}tj�|ttdzdfdtdz12fttdz13fg��tj�|dtdztdz14tdzdf��|rZtj�|dtdztdz15ftdztfdtzdztdz16fg��|rBtj�|ddtdz17fd	tdz18fdtd19z20fg��|rTtj�|dttdz21ftd22ztdz23fttd24z25fg��tj	�26||��}|�|t|z27f���}	|j
�||	j��dS)
zDraw the rocket on the screen.rr��rrr�)r�r��i�����28)�centerN)r�Surface�rocket_width�
rocket_height�SRCALPHA�draw�polygon�RED�rect�	transform�rotate�get_rectrr �blit�topleft)29r.�x�y�angle�	thrusting�left_thrusting�right_thrusting�rocket_surface�rotated_rocketr@s30          r�draw_rocketzRocketLandingGame.draw_rocket(s�����}�(E�v��W�W������N�C�
�Q�
��"�
�
��"�#�
�=�2�-�.�231�	�	�	�32	������\�Q�5F�
�XZ�HZ�\h�lm�\m�oq�4r�s�s�s��	��K����
���"�M�B�$6�7���"�M�2��\�!�Q�&�
��(:�;�@�
�
�
�33�	��K����
��M�B�&�'��m�b�(�)��M�B�&�'�@�
�
�
�34�	��K����
��}�r�1�2���"�M�B�$6�7��}�r�1�2�@�
�
�
� �)�0�0���G�G���&�&�q�&�1�*�o�&�>�>���������6�6�6�6�6rc��ttt��dz35��D]_}tj�|jt|tt|z36f|dztt|dzz37fd���`dS)z-Draw the terrain at the bottom of the screen.�r5N)	�range�len�terrainrr=�liner �BROWNr)r.�is  r�draw_terrainzRocketLandingGame.draw_terrainJs����s�7�|�|�a�'�(�(�	p�	p�A��K���T�[�%�!�V�g�a�j�5H�1I�A�PQ�E�SY�\c�de�hi�di�\j�Sj�Kk�mn�o�o�o�o�	p�	prc��tj�dd��}|�d|jd��dd��}|j�|d��dS)	z+Display the angular velocity on the screen.�Arial�zAngular Velocity: z.2fTr2)r7r7N)r�font�SysFont�renderr(r rD)r.r[�texts   r�draw_angular_velocityz'RocketLandingGame.draw_angular_velocityOs\���{�"�"�7�B�/�/���{�{�K��0E�K�K�K�T�S\�]�]�������x�(�(�(�(�(rc��d}d}d}|dkrn~|dkrGd}|xjdtztjtj|j����zz
c_n1|dkr|xjdz
c_d}n|dkr|xjdzc_d}|xj|jz
c_|xjtz
c_|xj|j	z
c_|xj38|jz
c_39|j40tdzz41}dt|j��cxkrtkr"nntt|j��ntd	��}||kru|tdzz|_42t!|j��d43krAt!|j	��dkr)t!|j��dkrd|_d|_d}nd|_d}nd}||j|jfS)
z:Perform one step in the game (update physics, game state).FrrPTr3rr	r5�infg@r
�����)r-�thrust_power�math�cos�radiansr+r(�gravityr)r,r*r;�intrrS�float�absr&r')r.�actionrIrJrK�rocket_bottom_y�terrain_y_at_x�rewards        r�	game_stepzRocketLandingGame.game_stepUs����	������Q�;�;��
�q�[�[��I��"�"�a�,�&6���$�,�t�O`�Ba�Ba�9b�9b�&b�b�"�"�"�
�q�[�[��!�!�S�(�!�!�!�N�N�
�q�[�[��!�!�S�(�!�!�"�O�	
���T�2�2������'�)����
�
��/�/�
�
��
�
��/�/�
�
��-�-�1�*<�<��89�S���=O�=O�8W�8W�8W�8W�RW�8W�8W�8W�8W�8W���T�]�!3�!3�4�4�]b�ch�]i�]i���n�,�,�*�]�a�-?�?�D�M��4�)�*�*�c�1�1�c�$�:P�6Q�6Q�UV�6V�6V�[^�_c�_p�[q�[q�uw�[w�[w�!%���������!%�������F��t�~�t�x�/�/rN)�__name__�44__module__�__qualname__r/rNrWr_ro�rrrrsc������#�#�#�  7� 7� 7�Dp�p�p�45)�)�)�*0�*0�*0�*0�*0rr)rrdr�numpy�nprr�WHITEr?rUr:r;rgrcr(rrQ�terrain_points�interp�linspacerRrSrrsrr�<module>rzs���
�
�
�
�����
�
�
�
������
��v�������%���m�46��������U�U�%�%��QS��BT�BT�U�U�U��47�"�)�E�E�%�L�L�+�"�+�a����N�8K�8K�"L�"L�n�48]�49]��h0�h0�h0�h0�h0�h0�h0�h0�h0�h0r