
    ni                         S r SSKJr  SSKJr  SSKJr  SSKrSSKJr  SSKJr  SS	K	J
r
  SS
K	Jr  SSK	Jr  SSKJs  J
r
  SSKr SSKJs  Jr  S rS rS rS rS rS rS rS rS rS rS r g! \ a    SSKr N.f = f)z/Example configurations using the PPO algorithm.    )absolute_import)division)print_functionN   )ppo)networks)minitaur_gym_env)minitaur_duck_gym_env)minitaur_env_randomizerc                      [         R                  n SnSnSn[        R                  n[	        SSSS9nSnSnSnS	n	Sn
S
n[
        R                  R                  nSnSnSnSnSnSnSnSn[        5       $ )zDefault configuration for PPO.   Fz.*z.*/policy/.*z.*/value/.*)allpolicyvalue)   d   g?   @   g-C6?gףp=
?g{Gz?     r   )	r   PPOAlgorithmr   feed_forward_gaussiandicttftrainAdamOptimizerlocals)	algorithm
num_agentseval_episodesuse_gpunetworkweight_summariespolicy_layersvalue_layersinit_mean_factorinit_logstdupdate_everyupdate_epochs	optimizerupdate_epochs_policyupdate_epochs_valuelearning_ratediscount	kl_targetkl_cutoff_factorkl_cutoff_coefkl_init_penaltys                        V/home/james-whalen/.local/lib/python3.13/site-packages/pybullet_envs/agents/configs.pydefaultr5   #   s     )*-'**'eO>R-,+,-hh$$)-()./	/    c                  d    [        5       R                  [        5       5        Sn SnSn[        5       $ )NzInvertedPendulumBulletEnv-v0r       ׇAr   updater5   env
max_lengthstepss      r4   pybullet_pendulumr?   A   s(    (//')&#*
%	/r6   c                  d    [        5       R                  [        5       5        Sn SnSn[        5       $ )Nz"InvertedDoublePendulumBulletEnv-v0r   r8   r9   r;   s      r4   pybullet_doublependulumrA   I   s(    (//'),#*
%	/r6   c                  d    [        5       R                  [        5       5        Sn SnSn[        5       $ )Nz#InvertedPendulumSwingupBulletEnv-v0r   r8   r9   r;   s      r4   pybullet_pendulumswinguprC   Q   s(    (//')-#*
%	/r6   c                  d    [        5       R                  [        5       5        Sn SnSn[        5       $ )z-Configuration for MuJoCo's half cheetah task.zHalfCheetahBulletEnv-v0r   g    חAr9   r;   s      r4   pybullet_cheetahrE   Y   s(    (//')!#*
%	/r6   c                  d    [        5       R                  [        5       5        Sn SnSn[        5       $ )NzAntBulletEnv-v0r   r8   r9   r;   s      r4   pybullet_antrG   c   s(    (//')#*
%	/r6   c                  d    [        5       R                  [        5       5        Sn SnSn[        5       $ )z,Configuration for Bullet Kuka grasping task.zKukaBulletEnv-v0r       cAr9   r;   s      r4   pybullet_kuka_graspingrJ   k   s(    (//')#*
%	/r6   c                  d    [        5       R                  [        5       5        Sn SnSn[        5       $ )z*Configuration for Bullet MIT Racecar task.zRacecarBulletEnv-v0
   rI   r9   r;   s      r4   pybullet_racecarrM   u   s(    (//')#*
%	/r6   c                      [        5       R                  [        5       5        [        R                  " 5       n SnSnSn[        5       $ )NzHumanoidBulletEnv-v0r   g    A)r   r:   r5   r   MinitaurEnvRandomizer
randomizerr<   r=   r>   s       r4   pybullet_humanoidrR      s6    (//')'==?*#*
%	/r6   c            	          [        5       R                  [        5       5        [        R                  " 5       n [
        R                  " [        R                  SSSU SS9nSnSn[        5       $ )zCConfiguration specific to minitaur_gym_env.MinitaurBulletEnv class.TFaccurate_motor_model_enabledmotor_overheat_protectionpd_control_enabledenv_randomizerrenderr       8|A)	r   r:   r5   r   rO   	functoolspartialr	   MinitaurBulletEnvrP   s       r4   pybullet_minitaurr^      s[    (//')'==?**<<7;48-1)3!&	(# *
%	/r6   c            	          [        5       R                  [        5       5        [        R                  " 5       n [
        R                  " [        R                  SSSU SS9nSnSn[        5       $ )zGConfiguration specific to minitaur_gym_env.MinitaurBulletDuckEnv class.TFrT   r   rZ   )	r   r:   r5   r   rO   r[   r\   r	   MinitaurBulletDuckEnvrP   s       r4   pybullet_duck_minitaurra      s[    (//')'==?**@@7;48-1)3!&	(# *
%	/r6   )!__doc__
__future__r   r   r   r[    r   r   pybullet_envs.bulletr	   r
   r   %pybullet_envs.bullet.minitaur_gym_envbulletpybullet_envstensorflow.compat.v1compatv1r   	Exception
tensorflowr5   r?   rA   rC   rE   rG   rJ   rM   rR   r^   ra    r6   r4   <module>ro      s    6 &  %    1 6 8 @ @ ##
<q  s   	A0 0
A=<A=