Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
5c5aa37
x8 changes, ppo changes/fixes
yekime Dec 3, 2023
a1628f2
debugging
yekime Dec 3, 2023
08c73a9
waypoints fix
yekime Dec 3, 2023
2cd548b
add total timesteps and unhealthy state cost/termination
yekime Dec 3, 2023
cdd4c26
Implement a slew rate autopilot learner
owsorber Dec 4, 2023
6c74a01
allow save
owsorber Dec 4, 2023
fa66d33
debugging slew rate
yekime Dec 4, 2023
75d591c
delete learners
yekime Dec 4, 2023
298ea10
Implement control clamping
owsorber Dec 4, 2023
c7e4143
debugging slew rate and ppo bug
yekime Dec 4, 2023
0ff9ad7
change states
yekime Dec 4, 2023
02881ee
make compatible with crossentropy
owsorber Dec 4, 2023
bb8a329
crossentropy size fixes
owsorber Dec 4, 2023
5d27d65
Query deterministic action for xentropy
owsorber Dec 5, 2023
bcf8041
control-component of state normalized
owsorber Dec 5, 2023
7f6f52b
delete unused code, slew-rate fixes
yekime Dec 5, 2023
b31ff74
reset distribution function
owsorber Dec 5, 2023
1824218
update sim side to allow reset distribution
owsorber Dec 5, 2023
2933eb8
slight changes to test reset
yekime Dec 5, 2023
c86aa8a
Add in_flight_reset param to sim
owsorber Dec 5, 2023
744b0cd
update ppo to use in_flight_reset
owsorber Dec 5, 2023
902f34d
sharing of clamps and reward scaling
owsorber Dec 5, 2023
0f32fbf
Reward scaling by std
owsorber Dec 5, 2023
6783eed
PPO WORKS !!!!!!!!!!! (party popper emoji)
yekime Dec 10, 2023
8940db5
Add another reset distribution and train more
yekime Dec 12, 2023
16daaf7
data of best
yekime Dec 12, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 22 additions & 32 deletions assets/x8.xml
Original file line number Diff line number Diff line change
Expand Up @@ -68,12 +68,12 @@
<y> 0 </y>
<z> -0.18 </z>
</location>
<static_friction> 0.8 </static_friction>
<dynamic_friction> 0.5 </dynamic_friction>
<rolling_friction> 0.1 </rolling_friction>
<spring_coeff unit="LBS/FT"> 8.0 </spring_coeff>
<damping_coeff unit="LBS/FT/SEC"> 0.85 </damping_coeff>
<max_steer unit="DEG"> 0 </max_steer>
<static_friction> 1.8 </static_friction>
<dynamic_friction> 1.5 </dynamic_friction>
<rolling_friction> .01 </rolling_friction>
<spring_coeff unit="LBS/FT"> 4.0 </spring_coeff>
<damping_coeff unit="LBS/FT/SEC"> 1.15 </damping_coeff>
<max_steer unit="DEG"> 360 </max_steer>
<brake_group> NONE </brake_group>
<retractable>0</retractable>
</contact>
Expand All @@ -83,12 +83,12 @@
<y> -85.1 </y>
<z> -0.18 </z>
</location>
<static_friction> 0.8 </static_friction>
<dynamic_friction> 0.5 </dynamic_friction>
<rolling_friction> 0.1 </rolling_friction>
<spring_coeff unit="LBS/FT"> 4.0 </spring_coeff>
<static_friction> 1.8 </static_friction>
<dynamic_friction> 1.5 </dynamic_friction>
<rolling_friction> 0.01 </rolling_friction>
<spring_coeff unit="LBS/FT"> 2.0 </spring_coeff>
<damping_coeff unit="LBS/FT/SEC"> 0.95 </damping_coeff>
<max_steer unit="DEG"> 0.0 </max_steer>
<max_steer unit="DEG"> 360 </max_steer>
<brake_group> LEFT </brake_group>
<retractable>0</retractable>
</contact>
Expand All @@ -98,29 +98,19 @@
<y> 85.1 </y>
<z> -0.18 </z>
</location>
<static_friction> 0.8 </static_friction>
<dynamic_friction> 0.5 </dynamic_friction>
<rolling_friction> 0.1 </rolling_friction>
<spring_coeff unit="LBS/FT"> 4.0 </spring_coeff>
<static_friction> 1.8 </static_friction>
<dynamic_friction> 1.5 </dynamic_friction>
<rolling_friction> 0.01 </rolling_friction>
<spring_coeff unit="LBS/FT"> 2.0 </spring_coeff>
<damping_coeff unit="LBS/FT/SEC"> 0.95 </damping_coeff>
<max_steer unit="DEG"> 0.0 </max_steer>
<max_steer unit="DEG"> 360 </max_steer>
<brake_group> RIGHT </brake_group>
<retractable>0</retractable>
</contact>
</ground_reactions>

<propulsion>
<engine file="electric800W.xml">
<location unit="M">
<x>0.0</x>
<y>0.0</y>
<z>0.0</z>
</location>
<orient unit="DEG">
<roll>0.0</roll>
<pitch>0.0</pitch>
<yaw>0.0</yaw>
</orient>
<feed> 0.0 </feed>

<thruster file="direct">
Expand All @@ -145,7 +135,7 @@
<input> attitude/heading-true-rad </input>
<!-- <lag> 2500 </lag> -->
<!-- <noise variation="PERCENT"> .02 </noise> -->
<bias> 0.003 </bias>
<bias> 0.0 </bias>
</sensor>
</channel>
</system>
Expand Down Expand Up @@ -264,7 +254,7 @@
<description>Alpha independent lift coefficient</description>
<product>
<property>aero/qbar-area</property>
<value>0.0867</value>
<value>0.04</value>
</product>
</function>

Expand All @@ -273,7 +263,7 @@
<product>
<property>aero/qbar-area</property>
<property>aero/alpha-rad</property>
<value> 4.0203 </value>
<value> 2.0203 </value>
</product>
</function>

Expand Down Expand Up @@ -468,12 +458,12 @@
</function>

<function name="aero/coefficient/Cmalpha">
<description>Pitch moment due to alpha</description>\
<description>Pitch momet due to alpha</description>\
<product>
<property>aero/qbar-area</property>
<property>metrics/cbarw-ft</property>
<property>aero/alpha-rad</property>
<value>-0.4629</value>
<value>-0.6629</value>
</product>
</function>

Expand All @@ -494,7 +484,7 @@
<property>aero/qbar-area</property>
<property>metrics/cbarw-ft</property>
<property>fcs/elevator-pos-rad</property>
<value>-0.2292</value>
<value>-1.1220</value> <!--borrowed from cessna-->
</product>
</function>

Expand Down
126 changes: 126 additions & 0 deletions data/cross_entropy/stats.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
Generation #1:
Best, Median, and Worst Learner: (142, 35, 157)
Best, Median, and Worst Reward: (2982.999081533402, 972.1300675626844, 588.3324620518833)



Generation #2:
Best, Median, and Worst Learner: (80, 49, 173)
Best, Median, and Worst Reward: (2992.656533884816, 978.6449913680553, 594.0445281118155)



Generation #3:
Best, Median, and Worst Learner: (178, 56, 16)
Best, Median, and Worst Reward: (2993.3571543405997, 1445.3874917849898, 604.7305159419775)



Generation #4:
Best, Median, and Worst Learner: (84, 193, 37)
Best, Median, and Worst Reward: (2990.2669111620635, 1959.0998122617602, 602.2353224325925)



Generation #5:
Best, Median, and Worst Learner: (70, 185, 88)
Best, Median, and Worst Reward: (2992.6985498089343, 1972.4182319762185, 653.0758294676198)



Generation #6:
Best, Median, and Worst Learner: (103, 70, 184)
Best, Median, and Worst Reward: (3993.390440976944, 1999.3610292344797, 937.2859918950126)



Generation #7: (good)
Best, Median, and Worst Learner: (162, 149, 44)
Best, Median, and Worst Reward: (3989.6084612680133, 2981.2333327531815, 966.7899975357577)



Generation #8:
Best, Median, and Worst Learner: (188, 45, 105)
Best, Median, and Worst Reward: (2992.4165739994496, 2983.244331255555, 978.5750615522265)



Generation #9:
Best, Median, and Worst Learner: (78, 168, 71)
Best, Median, and Worst Reward: (2993.2526850610448, 2987.396712552756, 968.8540844265372)



Generation #10:
Best, Median, and Worst Learner: (91, 177, 88)
Best, Median, and Worst Reward: (3993.3897130363766, 2988.8644929472357, 974.3769715242088)



Generation #11:
Best, Median, and Worst Learner: (89, 154, 52)
Best, Median, and Worst Reward: (2992.881334366277, 2988.9321229401976, 962.7465795613825)



Generation #12:
Best, Median, and Worst Learner: (27, 150, 156)
Best, Median, and Worst Reward: (3993.390440976944, 2989.2162777222693, 968.5438468381763)



Generation #13:
Best, Median, and Worst Learner: (93, 167, 13)
Best, Median, and Worst Reward: (3993.379415991084, 2989.711838164367, 969.5627298392355)



Generation #14:
Best, Median, and Worst Learner: (67, 170, 181)
Best, Median, and Worst Reward: (3984.084361743182, 2990.3426594454795, 980.2484985329211)



Generation #15:
Best, Median, and Worst Learner: (199, 77, 112)
Best, Median, and Worst Reward: (2993.251348318532, 2989.871223669499, 959.5475498940796)



Generation #16:
Best, Median, and Worst Learner: (38, 47, 102)
Best, Median, and Worst Reward: (2993.230045834556, 2991.1996988034807, 977.2491851244122)



Generation #17:
Best, Median, and Worst Learner: (80, 14, 37)
Best, Median, and Worst Reward: (2993.272437831387, 2991.9086525086313, 980.539373550564)



Generation #18:
Best, Median, and Worst Learner: (133, 195, 32)
Best, Median, and Worst Reward: (2993.77225545235, 2992.6561779286712, 985.9263532422483)



Generation #19:
Best, Median, and Worst Learner: (84, 31, 7)
Best, Median, and Worst Reward: (2993.7730519939214, 2992.7406542636454, 979.8817010223866)



Generation #20:
Best, Median, and Worst Learner: (79, 100, 102)
Best, Median, and Worst Reward: (2993.7877100314945, 2992.7477019503713, 987.0250741429627)



Generation #21:
Best, Median, and Worst Learner: (119, 82, 108)
Best, Median, and Worst Reward: (2993.3186951242387, 2992.9422285705805, 982.8713495023549)



Binary file added data/ppo/all_data.pkl
Binary file not shown.
Binary file added data/ppo/policies/learner#37.pth
Binary file not shown.
Binary file added data/ppo/policies/learner#56.pth
Binary file not shown.
Loading