diff --git a/.gitattributes b/.gitattributes index 6f9a78909ea6c93e2441e66b1bbe2d625744c18e..e63553bb60cce52d40128e8e807534663469b0b9 100644 --- a/.gitattributes +++ b/.gitattributes @@ -12305,3 +12305,766 @@ baselines/AnyBimanual_overlap_replay/multi/10000-14999/11110.replay filter=lfs d baselines/AnyBimanual_overlap_replay/multi/10000-14999/11109.replay filter=lfs diff=lfs merge=lfs -text baselines/AnyBimanual_overlap_replay/multi/10000-14999/11112.replay filter=lfs diff=lfs merge=lfs -text baselines/AnyBimanual_overlap_replay/multi/10000-14999/11113.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11114.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11115.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11116.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11117.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11118.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11119.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11120.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11121.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11122.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11123.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11126.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11125.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11124.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11128.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11127.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11129.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11130.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11131.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11132.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11134.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11133.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11137.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11135.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11138.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11136.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11139.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11140.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11143.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11141.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11142.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11144.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11145.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11146.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11147.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11150.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11148.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11149.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11151.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11152.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11153.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11154.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11155.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11157.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11158.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11156.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11159.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11162.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11160.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11161.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11163.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11164.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11165.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11167.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11166.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11168.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11170.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11172.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11173.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11171.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11169.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11176.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11174.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11175.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11177.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11178.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11179.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11180.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11182.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11183.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11184.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11181.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11185.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11187.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11188.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11189.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11190.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11186.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11192.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11193.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11194.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11195.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11196.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11191.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11197.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11198.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11199.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11200.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11201.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11202.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11203.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11204.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11205.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11206.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11207.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11208.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11210.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11209.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11211.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11212.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11213.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11215.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11218.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11217.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11219.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11214.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11220.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11221.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11222.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11216.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11223.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11224.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11227.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11226.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11228.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11229.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11230.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11231.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11225.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11232.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11233.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11236.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11234.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11237.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11235.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11238.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11239.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11240.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11241.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11242.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11243.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11244.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11245.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11246.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11247.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11250.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11248.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11249.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11251.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11252.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11253.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11254.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11255.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11256.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11260.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11259.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11257.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11258.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11261.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11262.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11264.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11263.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11265.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11266.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11268.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11267.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11270.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11269.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11271.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11272.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11274.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11273.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11275.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11276.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11278.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11277.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11280.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11279.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11281.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11282.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11283.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11284.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11285.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11286.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11287.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11288.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11290.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11292.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11291.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11293.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11294.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11295.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11289.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11297.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11296.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11299.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11298.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11300.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11301.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11302.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11304.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11306.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11305.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11307.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11308.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11309.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11310.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11303.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11311.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11314.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11313.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11316.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11317.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11315.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11318.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11312.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11319.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11320.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11321.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11322.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11324.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11323.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11325.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11327.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11326.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11328.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11329.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11330.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11331.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11332.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11333.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11334.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11335.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11336.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11337.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11338.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11340.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11339.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11342.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11341.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11343.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11344.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11345.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11347.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11348.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11346.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11349.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11350.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11351.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11352.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11353.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11355.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11354.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11356.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11358.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11357.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11359.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11360.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11361.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11362.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11364.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11363.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11367.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11365.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11366.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11368.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11369.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11371.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11370.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11372.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11373.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11374.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11375.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11376.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11378.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11377.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11379.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11381.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11380.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11382.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11383.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11384.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11385.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11386.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11387.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11388.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11389.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11390.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11392.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11391.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11393.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11395.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11396.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11394.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11397.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11398.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11399.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11401.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11402.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11400.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11403.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11406.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11404.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11408.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11407.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11405.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11409.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11412.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11411.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11410.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11414.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11413.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11417.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11415.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11416.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11418.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11420.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11419.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11424.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11421.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11422.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11425.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11423.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11426.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11429.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11428.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11427.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11430.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13703.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11431.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11432.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11433.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11435.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11436.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11438.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11434.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11437.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11440.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11439.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11441.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11442.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11443.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11445.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11444.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11446.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11447.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11448.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11449.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13706.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13705.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13704.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13707.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13709.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13708.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13710.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13711.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13712.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13714.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13713.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13716.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13715.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13717.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13720.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13719.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13718.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13721.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11488.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13722.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11489.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11490.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13723.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11491.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11492.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13724.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11493.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13725.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11494.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13726.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11495.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11496.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13727.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13728.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11498.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11497.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11499.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11500.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13729.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11501.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11502.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13730.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13731.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13732.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11503.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11504.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11505.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11506.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13733.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11507.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11508.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11509.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13734.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13735.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11512.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11513.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11514.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13736.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13737.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11515.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11517.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11516.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13738.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11518.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13739.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11519.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11520.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13740.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11521.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13741.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11523.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11522.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13742.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11524.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13743.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11525.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13744.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11526.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11527.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11528.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11529.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11530.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11531.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11532.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11534.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11533.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11535.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11536.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11537.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11538.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11539.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11540.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11541.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11542.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11543.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11545.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11544.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11547.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11546.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11548.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11549.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11550.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11551.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11554.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11552.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11553.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11555.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11556.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11557.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11560.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11559.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11558.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11562.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11561.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11563.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11567.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11565.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11569.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11566.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11564.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11568.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11570.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11571.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11572.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11575.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11574.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11573.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11576.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11580.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11577.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11579.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11581.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11578.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11582.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11583.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11584.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11586.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11587.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11588.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11589.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11590.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11591.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11592.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11585.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11594.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11593.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11595.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11596.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11597.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11598.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11599.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11600.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11601.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11602.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11603.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11604.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11605.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11606.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11607.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11608.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11609.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11610.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11611.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11612.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11613.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11615.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11614.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11616.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11617.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11618.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11620.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11619.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11621.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11622.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11623.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11625.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11624.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11626.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11627.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11628.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11629.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11631.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11630.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11632.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/12472.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/12473.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/13921.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11634.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11633.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11637.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11636.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11635.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11638.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11639.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11640.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11642.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11643.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11641.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11644.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11645.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11647.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11646.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11648.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11649.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11650.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11651.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11652.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11653.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11654.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11658.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11655.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11657.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11656.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11659.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11660.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11661.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11663.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11662.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11665.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11664.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11666.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11667.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11668.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11669.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11670.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11671.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11672.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11674.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11673.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11675.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11677.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11676.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11678.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11679.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11682.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11681.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11680.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11683.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11684.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11686.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11685.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11687.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11688.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11689.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11690.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11691.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11692.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11693.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11695.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11694.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11696.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11697.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11698.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11700.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11699.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11702.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11703.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11701.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11704.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11706.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11705.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11707.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11709.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11708.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11710.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11711.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11712.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11713.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11714.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11715.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11716.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11764.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/12474.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/12331.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11717.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11719.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11718.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11720.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11721.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11723.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11722.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11726.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11724.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11725.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11727.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11728.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11729.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11730.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11732.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11731.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11734.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11733.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11735.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11736.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11737.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11739.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11738.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11741.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11740.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11742.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11743.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11744.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11745.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11747.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11746.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11748.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11750.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11749.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11751.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11752.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11754.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11753.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11765.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11766.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11767.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11770.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11769.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11768.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11771.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11772.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11773.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11774.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11775.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11777.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11776.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11778.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11779.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11780.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11782.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11781.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11783.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11784.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11785.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11789.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11787.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11788.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11786.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11790.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11792.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11793.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11796.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11794.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11795.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11791.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11797.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11798.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11801.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11799.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11802.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11803.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11800.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11804.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11805.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11806.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11807.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11808.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11810.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11812.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11811.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11809.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11815.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11814.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11813.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11912.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11914.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11915.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11918.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11921.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11919.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11920.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11922.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11913.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11924.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11923.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11925.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11926.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11927.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11928.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11929.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11931.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11930.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11933.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11934.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11932.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11935.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11936.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11937.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11938.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11939.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11941.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11940.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11942.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11943.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11944.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11945.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11946.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11948.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11949.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11947.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11950.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11951.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11952.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11953.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11954.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11956.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11955.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11957.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11959.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11958.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11960.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11964.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11961.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11963.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11962.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11965.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11966.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11970.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11969.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11967.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11968.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11971.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11972.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11975.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11973.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11974.replay filter=lfs diff=lfs merge=lfs -text +baselines/AnyBimanual_overlap_replay/multi/10000-14999/11976.replay filter=lfs diff=lfs merge=lfs -text diff --git a/VLAarchtests/.gitattributes b/VLAarchtests/.gitattributes new file mode 100644 index 0000000000000000000000000000000000000000..a6344aac8c09253b3b630fb776ae94478aa0275b --- /dev/null +++ b/VLAarchtests/.gitattributes @@ -0,0 +1,35 @@ +*.7z filter=lfs diff=lfs merge=lfs -text +*.arrow filter=lfs diff=lfs merge=lfs -text +*.bin filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.ckpt filter=lfs diff=lfs merge=lfs -text +*.ftz filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.h5 filter=lfs diff=lfs merge=lfs -text +*.joblib filter=lfs diff=lfs merge=lfs -text +*.lfs.* filter=lfs diff=lfs merge=lfs -text +*.mlmodel filter=lfs diff=lfs merge=lfs -text +*.model filter=lfs diff=lfs merge=lfs -text +*.msgpack filter=lfs diff=lfs merge=lfs -text +*.npy filter=lfs diff=lfs merge=lfs -text +*.npz filter=lfs diff=lfs merge=lfs -text +*.onnx filter=lfs diff=lfs merge=lfs -text +*.ot filter=lfs diff=lfs merge=lfs -text +*.parquet filter=lfs diff=lfs merge=lfs -text +*.pb filter=lfs diff=lfs merge=lfs -text +*.pickle filter=lfs diff=lfs merge=lfs -text +*.pkl filter=lfs diff=lfs merge=lfs -text +*.pt filter=lfs diff=lfs merge=lfs -text +*.pth filter=lfs diff=lfs merge=lfs -text +*.rar filter=lfs diff=lfs merge=lfs -text +*.safetensors filter=lfs diff=lfs merge=lfs -text +saved_model/**/* filter=lfs diff=lfs merge=lfs -text +*.tar.* filter=lfs diff=lfs merge=lfs -text +*.tar filter=lfs diff=lfs merge=lfs -text +*.tflite filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.wasm filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text +*tfevents* filter=lfs diff=lfs merge=lfs -text diff --git a/VLAarchtests/.gitignore b/VLAarchtests/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..290d81889a10d6347acaba21afd5f78e64045436 --- /dev/null +++ b/VLAarchtests/.gitignore @@ -0,0 +1,4 @@ +__pycache__/ +.pytest_cache/ +.cache/ +*.pyc diff --git a/VLAarchtests/FILE_MANIFEST.txt b/VLAarchtests/FILE_MANIFEST.txt new file mode 100644 index 0000000000000000000000000000000000000000..096d9acd19543f6f143076d25a6701fa424745ed --- /dev/null +++ b/VLAarchtests/FILE_MANIFEST.txt @@ -0,0 +1,427 @@ +./.gitattributes +./FILE_MANIFEST.txt +./MODEL_INDEX.md +./README.md +./artifacts/data/reveal_proxy/proxy_train_clip224_v4_noleak_counterfactual.pt +./artifacts/data/reveal_proxy/proxy_train_clip224_v5_actionhist.pt +./artifacts/data/reveal_proxy/proxy_train_smoke_v4.pt +./artifacts/data/reveal_proxy/proxy_train_smoke_v5_actionhist.pt +./artifacts/data/reveal_proxy/proxy_train_v4_noleak_counterfactual.pt +./artifacts/data/reveal_proxy/proxy_train_v5_actionhist.pt +./artifacts/data/reveal_proxy/proxy_val_clip224_v4_noleak_counterfactual.pt +./artifacts/data/reveal_proxy/proxy_val_clip224_v5_actionhist.pt +./artifacts/data/reveal_proxy/proxy_val_smoke_v4.pt +./artifacts/data/reveal_proxy/proxy_val_smoke_v5_actionhist.pt +./artifacts/data/reveal_proxy/proxy_val_v4_noleak_counterfactual.pt +./artifacts/data/reveal_proxy/proxy_val_v5_actionhist.pt +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode0/front_rgb/rgb_0000.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode0/front_rgb/rgb_0001.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode0/low_dim_obs.pkl +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode0/variation_descriptions.pkl +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode0/variation_number.pkl +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode0/wrist_left_rgb/rgb_0000.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode0/wrist_left_rgb/rgb_0001.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode0/wrist_right_rgb/rgb_0000.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode0/wrist_right_rgb/rgb_0001.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode1/front_rgb/rgb_0000.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode1/front_rgb/rgb_0001.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode1/low_dim_obs.pkl +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode1/variation_descriptions.pkl +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode1/variation_number.pkl +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode1/wrist_left_rgb/rgb_0000.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode1/wrist_left_rgb/rgb_0001.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode1/wrist_right_rgb/rgb_0000.png +./artifacts/data/rlbench_smoke_open_drawer/open_drawer/all_variations/episodes/episode1/wrist_right_rgb/rgb_0001.png +./artifacts/logs/glxgears.log +./artifacts/logs/isaac_smoke.log +./artifacts/logs/rlbench2_dataset_train.log +./artifacts/logs/rlbench2_smoke_train/bimanual_lift_ball_smoke/BIMANUAL_PERACT/.hydra/config.yaml +./artifacts/logs/rlbench2_smoke_train/bimanual_lift_ball_smoke/BIMANUAL_PERACT/.hydra/hydra.yaml +./artifacts/logs/rlbench2_smoke_train/bimanual_lift_ball_smoke/BIMANUAL_PERACT/.hydra/overrides.yaml +./artifacts/logs/rlbench2_smoke_train/bimanual_lift_ball_smoke/BIMANUAL_PERACT/seed0/config.yaml +./artifacts/logs/rlbench2_smoke_train/bimanual_lift_ball_smoke/BIMANUAL_PERACT/seed0/training.log +./artifacts/logs/rlbench2_smoke_train/bimanual_lift_ball_smoke/BIMANUAL_PERACT/train.log +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/.hydra/config.yaml +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/.hydra/hydra.yaml +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/.hydra/overrides.yaml +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/seed0/config.yaml +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/seed0/events.out.tfevents.1774229659.e52be9725b2e.1397.0 +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/seed0/events.out.tfevents.1774229898.e52be9725b2e.3678.0 +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/seed0/events.out.tfevents.1774229987.e52be9725b2e.3804.0 +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/seed0/events.out.tfevents.1774230133.e52be9725b2e.3957.0 +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/seed0/events.out.tfevents.1774230462.e52be9725b2e.4130.0 +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/seed0/training.log +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/seed0/weights/0/QAttentionAgent_layer0.pt +./artifacts/logs/rlbench2_subset/multi_3cam_subset/BIMANUAL_PERACT/train.log +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/.hydra/config.yaml +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/.hydra/hydra.yaml +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/.hydra/overrides.yaml +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/seed0/config.yaml +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/seed0/eval_data.csv +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/seed0/events.out.tfevents.1774230948.e52be9725b2e.4400.0 +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/seed0/events.out.tfevents.1774231048.e52be9725b2e.4582.0 +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/seed0/events.out.tfevents.1774231173.e52be9725b2e.4703.0 +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/seed0/events.out.tfevents.1774231301.e52be9725b2e.4824.0 +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/seed0/events.out.tfevents.1774231438.e52be9725b2e.4951.0 +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/seed0/training.log +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/seed0/weights/0/QAttentionAgent_layer0.pt +./artifacts/logs/rlbench2_subset3/multi_3cam_subset3/BIMANUAL_PERACT/train.log +./artifacts/logs/rlbench_extract/bimanual_lift_ball.log +./artifacts/logs/rlbench_extract/bimanual_lift_ball_slice.log +./artifacts/logs/system/rlbench_launch_smoke.txt +./artifacts/logs/system/x99.conf +./artifacts/logs/system/x99.log +./artifacts/logs/system/x99.pid +./artifacts/logs/x99-custom.log +./artifacts/logs/x99.log +./artifacts/logs/x99.pid +./artifacts/outputs/interaction/proxy_interaction_state/checkpoint_best.pt +./artifacts/outputs/interaction/proxy_interaction_state/config_resolved.yaml +./artifacts/outputs/interaction/proxy_interaction_state/diagnostics/proxy_diagnostics.json +./artifacts/outputs/interaction/proxy_interaction_state/metrics.json +./artifacts/outputs/interaction/proxy_interaction_state_smoke/checkpoint_best.pt +./artifacts/outputs/interaction/proxy_interaction_state_smoke/config_resolved.yaml +./artifacts/outputs/interaction/proxy_interaction_state_smoke/diagnostics/proxy_diagnostics.json +./artifacts/outputs/interaction/proxy_interaction_state_smoke/metrics.json +./artifacts/outputs/interaction/proxy_reveal_state_full_diagnostics/proxy_diagnostics.json +./artifacts/outputs/interaction/proxy_reveal_state_smoke_diagnostics/proxy_diagnostics.json +./artifacts/outputs/interaction/reveal_ablation_interaction_ep1/ablations.json +./artifacts/outputs/interaction/reveal_ablation_interaction_ep1/ablations.md +./artifacts/outputs/interaction/reveal_ablation_interaction_ep1/ablations.partial.json +./artifacts/outputs/interaction/reveal_eval_interaction_ep2/reveal_benchmark.json +./artifacts/outputs/interaction/reveal_eval_interaction_ep2/reveal_benchmark.md +./artifacts/outputs/interaction/reveal_eval_interaction_full_ep2/reveal_benchmark.json +./artifacts/outputs/interaction/reveal_eval_interaction_full_ep2/reveal_benchmark.md +./artifacts/outputs/interaction/rlbench_env_smoke/import_and_train_command.txt +./artifacts/outputs/interaction/rlbench_env_smoke/import_smoke.json +./artifacts/outputs/interaction/rlbench_env_smoke/launch_reset_smoke.json +./artifacts/outputs/interaction/rlbench_env_smoke/launch_smoke_cli.json +./artifacts/outputs/interaction/rlbench_env_smoke/launch_step_smoke.json +./artifacts/outputs/interaction/rlbench_open_drawer_interaction_smoke/checkpoint_best.pt +./artifacts/outputs/interaction/rlbench_open_drawer_interaction_smoke/config_resolved.yaml +./artifacts/outputs/interaction/rlbench_open_drawer_interaction_smoke/metrics.json +./artifacts/outputs/interaction/rlbench_open_drawer_interaction_smoke/summary.json +./artifacts/outputs/interaction/rlbench_open_drawer_rollout_eval/rollout_eval.json +./artifacts/outputs/interaction/rlbench_open_drawer_rollout_eval/rollout_eval.md +./artifacts/outputs/interaction/smoke_checks/smoke_checks.json +./artifacts/outputs/interaction_debug/ablation_no_interaction_head_actionhist/reveal_benchmark.json +./artifacts/outputs/interaction_debug/ablation_no_interaction_head_actionhist/reveal_benchmark.md +./artifacts/outputs/interaction_debug/ablation_no_planner_actionhist/reveal_benchmark.json +./artifacts/outputs/interaction_debug/ablation_no_planner_actionhist/reveal_benchmark.md +./artifacts/outputs/interaction_debug/ablation_no_role_tokens_actionhist/reveal_benchmark.json +./artifacts/outputs/interaction_debug/ablation_no_role_tokens_actionhist/reveal_benchmark.md +./artifacts/outputs/interaction_debug/ablation_no_world_model_actionhist/reveal_benchmark.json +./artifacts/outputs/interaction_debug/ablation_no_world_model_actionhist/reveal_benchmark.md +./artifacts/outputs/interaction_debug/ablation_none_actionhist/reveal_benchmark.json +./artifacts/outputs/interaction_debug/ablation_none_actionhist/reveal_benchmark.md +./artifacts/outputs/interaction_debug/ablation_short_history_actionhist/reveal_benchmark.json +./artifacts/outputs/interaction_debug/ablation_short_history_actionhist/reveal_benchmark.md +./artifacts/outputs/interaction_debug/chunk_debug_trace.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_dual_push_buttons/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_dual_push_buttons/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_handover_item/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_handover_item/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_handover_item_easy/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_handover_item_easy/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_lift_ball/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_lift_ball/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_lift_tray/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_lift_tray/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_pick_laptop/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_pick_laptop/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_pick_plate/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_pick_plate/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_push_box/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_push_box/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_put_bottle_in_fridge/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_put_bottle_in_fridge/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_put_item_in_drawer/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_put_item_in_drawer/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_straighten_rope/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_straighten_rope/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_sweep_to_dustpan/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_sweep_to_dustpan/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_take_tray_out_of_oven/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/bimanual_take_tray_out_of_oven/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_noplan_split/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_dual_push_buttons/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_dual_push_buttons/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_handover_item/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_handover_item/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_handover_item_easy/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_handover_item_easy/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_lift_ball/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_lift_ball/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_lift_tray/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_lift_tray/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_pick_laptop/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_pick_laptop/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_pick_plate/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_pick_plate/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_push_box/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_push_box/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_put_bottle_in_fridge/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_put_bottle_in_fridge/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_put_item_in_drawer/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_put_item_in_drawer/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_straighten_rope/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_straighten_rope/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_sweep_to_dustpan/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_sweep_to_dustpan/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_take_tray_out_of_oven/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/bimanual_take_tray_out_of_oven/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_13_rollout_plan_split/rollout_eval.md +./artifacts/outputs/interaction_debug/peract2_bimanual_push_box_launch_smoke.json +./artifacts/outputs/interaction_debug/peract2_import_smoke.json +./artifacts/outputs/interaction_debug/peract2_import_train_command.txt +./artifacts/outputs/interaction_debug/peract2_smoke_push_box_plan/rollout_eval.json +./artifacts/outputs/interaction_debug/peract2_smoke_push_box_plan/rollout_eval.md +./artifacts/outputs/interaction_debug/proxy_interaction_state_actionhist/checkpoint_best.pt +./artifacts/outputs/interaction_debug/proxy_interaction_state_actionhist/config_resolved.yaml +./artifacts/outputs/interaction_debug/proxy_interaction_state_actionhist/diagnostics/proxy_diagnostics.json +./artifacts/outputs/interaction_debug/proxy_interaction_state_actionhist/metrics.json +./artifacts/outputs/interaction_debug/proxy_interaction_state_actionhist_smoke/checkpoint_best.pt +./artifacts/outputs/interaction_debug/proxy_interaction_state_actionhist_smoke/config_resolved.yaml +./artifacts/outputs/interaction_debug/proxy_interaction_state_actionhist_smoke/diagnostics/proxy_diagnostics.json +./artifacts/outputs/interaction_debug/proxy_interaction_state_actionhist_smoke/metrics.json +./artifacts/outputs/interaction_debug/proxy_interaction_state_clip_actionhist/checkpoint_best.pt +./artifacts/outputs/interaction_debug/proxy_interaction_state_clip_actionhist/config_resolved.yaml +./artifacts/outputs/interaction_debug/proxy_interaction_state_clip_actionhist/diagnostics/proxy_diagnostics.json +./artifacts/outputs/interaction_debug/proxy_interaction_state_clip_actionhist/metrics.json +./artifacts/outputs/interaction_debug/proxy_interaction_state_clip_actionhist/summary.json +./artifacts/outputs/interaction_debug/proxy_interaction_state_recency_oracleft/checkpoint_best.pt +./artifacts/outputs/interaction_debug/proxy_interaction_state_recency_oracleft/config_resolved.yaml +./artifacts/outputs/interaction_debug/proxy_interaction_state_recency_oracleft/diagnostics/proxy_diagnostics.json +./artifacts/outputs/interaction_debug/proxy_interaction_state_recency_oracleft/metrics.json +./artifacts/outputs/interaction_debug/proxy_interaction_state_recency_oracleft/summary.json +./artifacts/outputs/interaction_debug/reveal_eval_clip_baselines_commit4/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_clip_baselines_commit4/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_commit2_compare/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_commit2_compare/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_commit8_compare/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_commit8_compare/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_interaction_actionhist_commit4/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_interaction_actionhist_commit4/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_interaction_actionhist_recency_evalonly/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_interaction_actionhist_recency_evalonly/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_interaction_actionhist_smoke/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_interaction_actionhist_smoke/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_interaction_actionhist_smoke_commit4_short/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_interaction_actionhist_smoke_commit4_short/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_interaction_clip_commit4_compare/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_interaction_clip_commit4_compare/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_interaction_recency_oracleft_commit4_compare/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_interaction_recency_oracleft_commit4_compare/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_interaction_rolefix_full_commit4/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_interaction_rolefix_full_commit4/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_interaction_rolefix_smoke_commit4_short/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_interaction_rolefix_smoke_commit4_short/reveal_benchmark.md +./artifacts/outputs/interaction_debug/reveal_eval_old_no_leak_baselines_commit4/reveal_benchmark.json +./artifacts/outputs/interaction_debug/reveal_eval_old_no_leak_baselines_commit4/reveal_benchmark.md +./artifacts/outputs/interaction_debug/rlbench_open_drawer_rollout_eval_commit4_clipped/rollout_eval.json +./artifacts/outputs/interaction_debug/rlbench_open_drawer_rollout_eval_commit4_clipped/rollout_eval.md +./artifacts/outputs/interaction_debug/rlbench_open_drawer_rollout_eval_commit4_recovered/rollout_eval.json +./artifacts/outputs/interaction_debug/rlbench_open_drawer_rollout_eval_commit4_recovered/rollout_eval.md +./artifacts/outputs/interaction_debug/rlbench_open_drawer_rollout_eval_commit4_rerun/rollout_eval.json +./artifacts/outputs/interaction_debug/rlbench_open_drawer_rollout_eval_commit4_rerun/rollout_eval.md +./artifacts/outputs/interaction_debug/smoke_checks_actionhist/smoke_checks.json +./artifacts/outputs/interaction_rolefix/proxy_interaction_state_smoke/checkpoint_best.pt +./artifacts/outputs/interaction_rolefix/proxy_interaction_state_smoke/config_resolved.yaml +./artifacts/outputs/interaction_rolefix/proxy_interaction_state_smoke/diagnostics/proxy_diagnostics.json +./artifacts/outputs/interaction_rolefix/proxy_interaction_state_smoke/metrics.json +./artifacts/outputs/interaction_rolefix/reveal_eval_interaction_smoke/reveal_benchmark.json +./artifacts/outputs/interaction_rolefix/reveal_eval_interaction_smoke/reveal_benchmark.md +./artifacts/outputs/interaction_rolefix/smoke_checks/smoke_checks.json +./artifacts/outputs/interaction_rolefix_full/proxy_interaction_state/checkpoint_best.pt +./artifacts/outputs/interaction_rolefix_full/proxy_interaction_state/config_resolved.yaml +./artifacts/outputs/interaction_rolefix_full/proxy_interaction_state/diagnostics/proxy_diagnostics.json +./artifacts/outputs/interaction_rolefix_full/proxy_interaction_state/metrics.json +./artifacts/outputs/interaction_rolefix_full/reveal_eval_interaction/reveal_benchmark.json +./artifacts/outputs/interaction_rolefix_full/reveal_eval_interaction/reveal_benchmark.md +./artifacts/outputs/reveal_runs/proxy_backbone_only/checkpoint_best.pt +./artifacts/outputs/reveal_runs/proxy_backbone_only/config_resolved.yaml +./artifacts/outputs/reveal_runs/proxy_backbone_only/metrics.json +./artifacts/outputs/reveal_runs/proxy_backbone_only_clip/checkpoint_best.pt +./artifacts/outputs/reveal_runs/proxy_backbone_only_clip/config_resolved.yaml +./artifacts/outputs/reveal_runs/proxy_backbone_only_clip/metrics.json +./artifacts/outputs/reveal_runs/proxy_reveal_state/checkpoint_best.pt +./artifacts/outputs/reveal_runs/proxy_reveal_state/config_resolved.yaml +./artifacts/outputs/reveal_runs/proxy_reveal_state/metrics.json +./artifacts/outputs/reveal_runs/proxy_reveal_state_clip/checkpoint_best.pt +./artifacts/outputs/reveal_runs/proxy_reveal_state_clip/config_resolved.yaml +./artifacts/outputs/reveal_runs/proxy_reveal_state_clip/metrics.json +./artifacts/outputs/reveal_runs/reveal_ablation_v4/ablations.json +./artifacts/outputs/reveal_runs/reveal_ablation_v4/ablations.md +./artifacts/outputs/reveal_runs/reveal_ablation_v4_clip_ep18/ablations.json +./artifacts/outputs/reveal_runs/reveal_ablation_v4_clip_ep18/ablations.md +./artifacts/outputs/reveal_runs/reveal_ablation_v4_clip_ep18/ablations.partial.json +./artifacts/outputs/reveal_runs/reveal_ablation_v4_clip_ep4/ablations.json +./artifacts/outputs/reveal_runs/reveal_ablation_v4_clip_ep4/ablations.md +./artifacts/outputs/reveal_runs/reveal_ablation_v4_det/ablations.json +./artifacts/outputs/reveal_runs/reveal_ablation_v4_det/ablations.md +./artifacts/outputs/reveal_runs/reveal_eval_v4/reveal_benchmark.json +./artifacts/outputs/reveal_runs/reveal_eval_v4/reveal_benchmark.md +./artifacts/outputs/reveal_runs/reveal_eval_v4_clip_det/reveal_benchmark.json +./artifacts/outputs/reveal_runs/reveal_eval_v4_clip_det/reveal_benchmark.md +./artifacts/outputs/reveal_runs/reveal_eval_v4_det/reveal_benchmark.json +./artifacts/outputs/reveal_runs/reveal_eval_v4_det/reveal_benchmark.md +./artifacts/outputs/rlbench_custom/rlbench_subset3_backbone_only_clip/checkpoint_best.pt +./artifacts/outputs/rlbench_custom/rlbench_subset3_backbone_only_clip/config_resolved.yaml +./artifacts/outputs/rlbench_custom/rlbench_subset3_backbone_only_clip/metrics.json +./artifacts/outputs/rlbench_custom/rlbench_subset3_backbone_only_clip/summary.json +./artifacts/outputs/rlbench_custom/rlbench_subset3_backbone_only_dummy/checkpoint_best.pt +./artifacts/outputs/rlbench_custom/rlbench_subset3_backbone_only_dummy/config_resolved.yaml +./artifacts/outputs/rlbench_custom/rlbench_subset3_backbone_only_dummy/metrics.json +./artifacts/outputs/rlbench_custom/rlbench_subset3_backbone_only_dummy/summary.json +./artifacts/outputs/rlbench_custom/rlbench_subset3_reveal_state_clip/checkpoint_best.pt +./artifacts/outputs/rlbench_custom/rlbench_subset3_reveal_state_clip/config_resolved.yaml +./artifacts/outputs/rlbench_custom/rlbench_subset3_reveal_state_clip/metrics.json +./artifacts/outputs/rlbench_custom/rlbench_subset3_reveal_state_clip/summary.json +./artifacts/outputs/rlbench_custom/rlbench_subset3_reveal_state_dummy/checkpoint_best.pt +./artifacts/outputs/rlbench_custom/rlbench_subset3_reveal_state_dummy/config_resolved.yaml +./artifacts/outputs/rlbench_custom/rlbench_subset3_reveal_state_dummy/metrics.json +./artifacts/outputs/rlbench_custom/rlbench_subset3_reveal_state_dummy/summary.json +./artifacts/outputs/smoke/proxy_backbone_only_smoke/checkpoint_best.pt +./artifacts/outputs/smoke/proxy_backbone_only_smoke/config_resolved.yaml +./artifacts/outputs/smoke/proxy_backbone_only_smoke/metrics.json +./artifacts/outputs/smoke/proxy_reveal_state_smoke/checkpoint_best.pt +./artifacts/outputs/smoke/proxy_reveal_state_smoke/config_resolved.yaml +./artifacts/outputs/smoke/proxy_reveal_state_smoke/metrics.json +./artifacts/outputs/smoke/reveal_ablation_ep2/ablations.json +./artifacts/outputs/smoke/reveal_ablation_ep2/ablations.md +./artifacts/outputs/smoke/reveal_eval_ep2/reveal_benchmark.json +./artifacts/outputs/smoke/reveal_eval_ep2/reveal_benchmark.md +./artifacts/reports/reveal_ablation/ablations.json +./artifacts/reports/reveal_ablation/ablations.md +./artifacts/reports/reveal_eval/reveal_benchmark.json +./artifacts/reports/reveal_eval/reveal_benchmark.md +./artifacts/reports/reveal_eval_noplan/reveal_benchmark.json +./artifacts/reports/reveal_eval_noplan/reveal_benchmark.md +./artifacts/reports/reveal_eval_progress/reveal_benchmark.json +./artifacts/reports/reveal_eval_progress/reveal_benchmark.md +./artifacts/reports/reveal_eval_v2/reveal_benchmark.json +./artifacts/reports/reveal_eval_v2/reveal_benchmark.md +./artifacts/reports/rlbench_custom/backbone_only_rollout/rollout_eval.json +./artifacts/reports/rlbench_custom/backbone_only_rollout/rollout_eval.md +./artifacts/reports/rlbench_custom/reveal_state_rollout_noplan/rollout_eval.json +./artifacts/reports/rlbench_custom/reveal_state_rollout_noplan/rollout_eval.md +./artifacts/reports/rlbench_custom/reveal_state_rollout_plan/rollout_eval.json +./artifacts/reports/rlbench_custom/reveal_state_rollout_plan/rollout_eval.md +./artifacts/reports/rlbench_custom/rlbench_subset3_custom_eval.md +./artifacts/reports/rlbench_custom_clip/backbone_only_rollout/rollout_eval.json +./artifacts/reports/rlbench_custom_clip/backbone_only_rollout/rollout_eval.md +./artifacts/reports/rlbench_custom_clip/reveal_state_rollout_noplan/rollout_eval.json +./artifacts/reports/rlbench_custom_clip/reveal_state_rollout_noplan/rollout_eval.md +./artifacts/reports/rlbench_custom_clip/reveal_state_rollout_plan/rollout_eval.json +./artifacts/reports/rlbench_custom_clip/reveal_state_rollout_plan/rollout_eval.md +./artifacts/reports/rlbench_custom_clip/rlbench_subset3_clip_eval.md +./artifacts/reports/rlbench_subset3_baseline_sanity.md +./code/reveal_vla_bimanual/.gitignore +./code/reveal_vla_bimanual/README.md +./code/reveal_vla_bimanual/docs/upstream_pins.md +./code/reveal_vla_bimanual/docs/xorg.rtx6000.conf +./code/reveal_vla_bimanual/envs/reveal310.yaml +./code/reveal_vla_bimanual/envs/rlbench310.yaml +./code/reveal_vla_bimanual/eval/__init__.py +./code/reveal_vla_bimanual/eval/ablations.py +./code/reveal_vla_bimanual/eval/metrics.py +./code/reveal_vla_bimanual/eval/report.py +./code/reveal_vla_bimanual/eval/run_ablations.py +./code/reveal_vla_bimanual/eval/run_peract2_task_sweep.py +./code/reveal_vla_bimanual/eval/run_proxy_diagnostics.py +./code/reveal_vla_bimanual/eval/run_reveal_benchmark.py +./code/reveal_vla_bimanual/eval/run_rlbench_rollout_eval.py +./code/reveal_vla_bimanual/models/__init__.py +./code/reveal_vla_bimanual/models/action_decoder.py +./code/reveal_vla_bimanual/models/backbones.py +./code/reveal_vla_bimanual/models/multiview_fusion.py +./code/reveal_vla_bimanual/models/observation_memory.py +./code/reveal_vla_bimanual/models/planner.py +./code/reveal_vla_bimanual/models/policy.py +./code/reveal_vla_bimanual/models/reveal_head.py +./code/reveal_vla_bimanual/models/world_model.py +./code/reveal_vla_bimanual/pyproject.toml +./code/reveal_vla_bimanual/pytorch3d/__init__.py +./code/reveal_vla_bimanual/pytorch3d/transforms.py +./code/reveal_vla_bimanual/reveal_vla_bimanual.egg-info/PKG-INFO +./code/reveal_vla_bimanual/reveal_vla_bimanual.egg-info/SOURCES.txt +./code/reveal_vla_bimanual/reveal_vla_bimanual.egg-info/dependency_links.txt +./code/reveal_vla_bimanual/reveal_vla_bimanual.egg-info/requires.txt +./code/reveal_vla_bimanual/reveal_vla_bimanual.egg-info/top_level.txt +./code/reveal_vla_bimanual/scripts/download_coppeliasim.sh +./code/reveal_vla_bimanual/scripts/install_micromamba.sh +./code/reveal_vla_bimanual/scripts/setup_env_a_rlbench.sh +./code/reveal_vla_bimanual/scripts/setup_env_b_reveal.sh +./code/reveal_vla_bimanual/scripts/setup_rlbench_headless_x.sh +./code/reveal_vla_bimanual/scripts/start_rlbench_x.sh +./code/reveal_vla_bimanual/sim_reveal/__init__.py +./code/reveal_vla_bimanual/sim_reveal/base.py +./code/reveal_vla_bimanual/sim_reveal/dataset.py +./code/reveal_vla_bimanual/sim_reveal/generate_dataset.py +./code/reveal_vla_bimanual/sim_reveal/isaac_smoke.py +./code/reveal_vla_bimanual/sim_reveal/isaac_wrapper.py +./code/reveal_vla_bimanual/sim_reveal/labels.py +./code/reveal_vla_bimanual/sim_reveal/procedural_envs.py +./code/reveal_vla_bimanual/sim_reveal/proxy_specs.py +./code/reveal_vla_bimanual/sim_reveal/teachers.py +./code/reveal_vla_bimanual/sim_rlbench/__init__.py +./code/reveal_vla_bimanual/sim_rlbench/camera_spec.py +./code/reveal_vla_bimanual/sim_rlbench/dataset.py +./code/reveal_vla_bimanual/sim_rlbench/dataset_download.py +./code/reveal_vla_bimanual/sim_rlbench/generate_smoke_dataset.py +./code/reveal_vla_bimanual/sim_rlbench/launch_smoke.py +./code/reveal_vla_bimanual/sim_rlbench/obs_adapter.py +./code/reveal_vla_bimanual/sim_rlbench/obs_config.py +./code/reveal_vla_bimanual/sim_rlbench/peract2_runner.py +./code/reveal_vla_bimanual/sim_rlbench/smoke_test.py +./code/reveal_vla_bimanual/sim_rlbench/task_resolver.py +./code/reveal_vla_bimanual/sim_rlbench/task_splits.py +./code/reveal_vla_bimanual/train/__init__.py +./code/reveal_vla_bimanual/train/configs/base.yaml +./code/reveal_vla_bimanual/train/configs/data/reveal_proxies.yaml +./code/reveal_vla_bimanual/train/configs/data/rlbench_3cam.yaml +./code/reveal_vla_bimanual/train/configs/model/backbone_only.yaml +./code/reveal_vla_bimanual/train/configs/model/reveal_state.yaml +./code/reveal_vla_bimanual/train/configs/proxy_backbone_only.yaml +./code/reveal_vla_bimanual/train/configs/proxy_backbone_only_clip.yaml +./code/reveal_vla_bimanual/train/configs/proxy_backbone_only_smoke.yaml +./code/reveal_vla_bimanual/train/configs/proxy_interaction_state.yaml +./code/reveal_vla_bimanual/train/configs/proxy_interaction_state_actionhist.yaml +./code/reveal_vla_bimanual/train/configs/proxy_interaction_state_actionhist_smoke.yaml +./code/reveal_vla_bimanual/train/configs/proxy_interaction_state_clip_actionhist.yaml +./code/reveal_vla_bimanual/train/configs/proxy_interaction_state_recency_oracleft.yaml +./code/reveal_vla_bimanual/train/configs/proxy_interaction_state_smoke.yaml +./code/reveal_vla_bimanual/train/configs/proxy_reveal_state.yaml +./code/reveal_vla_bimanual/train/configs/proxy_reveal_state_clip.yaml +./code/reveal_vla_bimanual/train/configs/proxy_reveal_state_smoke.yaml +./code/reveal_vla_bimanual/train/configs/rlbench_open_drawer_interaction_smoke.yaml +./code/reveal_vla_bimanual/train/configs/rlbench_peract2_13_interaction_state_dummy.yaml +./code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip.yaml +./code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_dummy.yaml +./code/reveal_vla_bimanual/train/configs/rlbench_subset3_interaction_state_dummy.yaml +./code/reveal_vla_bimanual/train/configs/rlbench_subset3_reveal_state_clip.yaml +./code/reveal_vla_bimanual/train/configs/rlbench_subset3_reveal_state_dummy.yaml +./code/reveal_vla_bimanual/train/losses.py +./code/reveal_vla_bimanual/train/run_experiment.py +./code/reveal_vla_bimanual/train/run_rlbench_experiment.py +./code/reveal_vla_bimanual/train/smoke_checks.py +./code/reveal_vla_bimanual/train/trainer.py +./code/upstream_local_patches/YARR/yarr/runners/_independent_env_runner.py +./code/upstream_local_patches/peract_bimanual/agents/bimanual_peract/qattention_peract_bc_agent.py +./environment/README.md +./environment/glxinfo_B.txt +./environment/hardware_snapshot.txt +./environment/reveal_env_explicit.txt +./environment/reveal_env_export.yaml +./environment/reveal_pip_freeze.txt +./environment/rlbench_env_explicit.txt +./environment/rlbench_env_export.yaml +./environment/rlbench_pip_freeze.txt +./environment/run_peract2_13_rollouts.sh +./environment/setup_same_machine.sh +./environment/system_packages_same_machine.txt +./environment/upstream_revisions.txt +./environment/validate_same_machine.sh +./export_manifest_data.json diff --git a/VLAarchtests/MODEL_INDEX.md b/VLAarchtests/MODEL_INDEX.md new file mode 100644 index 0000000000000000000000000000000000000000..1c7a007284a6f483423cec6734861f1d0e063516 --- /dev/null +++ b/VLAarchtests/MODEL_INDEX.md @@ -0,0 +1,81 @@ +# Model Index + +## 2026-03-25/26 Additions + +### Handoff Proxy Checkpoints + +| Run | Checkpoint | Summary | Report | +| --- | --- | --- | --- | +| spatial handoff | `artifacts/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_seed17/checkpoint_best.pt` | `artifacts/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_seed17/summary.json` | `artifacts/reports/reveal_handoff_compare_serious/reveal_benchmark.json` | +| compact handoff | `artifacts/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_seed17/checkpoint_best.pt` | `artifacts/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_seed17/summary.json` | `artifacts/reports/reveal_handoff_compact_train_probe/reveal_benchmark.json` | +| compact-phase handoff | `artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17/checkpoint_best.pt` | `artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17/summary.json` | `artifacts/reports/reveal_phase_compare_serious_compact/reveal_benchmark.json` | +| spatial-phase handoff | `artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` | `artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/summary.json` | `artifacts/reports/reveal_phase_compare_serious_spatial_compactwm/reveal_benchmark.json` | + +### RLBench Current Checkpoints + +| Run | Checkpoint | Related files | +| --- | --- | --- | +| subset3 valid9 | `artifacts/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_valid9/checkpoint_best.pt` | `artifacts/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_valid9/checkpoint_stable.pt` | +| subset3 common23 | `artifacts/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_common23/checkpoint_best.pt` | `artifacts/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_common23/checkpoint_stable.pt` | +| lift-ball wide | `artifacts/outputs/rlbench_current/rlbench_lift_ball_backbone_only_clip_current_wide/checkpoint_best.pt` | `artifacts/outputs/rlbench_current/rlbench_lift_ball_backbone_only_clip_current_wide/checkpoint_stable.pt` | +| push-box step1 | `artifacts/outputs/rlbench_current/rlbench_push_box_backbone_only_clip_step1/checkpoint_best.pt` | `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1/rollout_eval.json`, `artifacts/reports/rlbench_push_box_knn_step1_ep5_top1_dense/rollout_eval.json` | + +### RLBench Result Files + +| Artifact | File | +| --- | --- | +| lift-ball wide, one-step replanning | `artifacts/reports/rlbench_lift_ball_wide_len160_ep1_ik_c1/rollout_eval.json` | +| push-box step1, one-step replanning | `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1/rollout_eval.json` | +| push-box step1, one-step replanning, `delta_scale=0.05` | `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1_s005/rollout_eval.json` | +| push-box kNN, `episodes=1` | `artifacts/reports/rlbench_push_box_knn_step1_ep1/rollout_eval.json` | +| push-box kNN, `episodes=5`, `top_k=5` | `artifacts/reports/rlbench_push_box_knn_step1_ep5/rollout_eval.json` | +| push-box kNN, `episodes=5`, `top_k=1`, dense bank | `artifacts/reports/rlbench_push_box_knn_step1_ep5_top1_dense/rollout_eval.json` | + +## R3D Proxy Runs + +| Run | Config | Seed | Checkpoint | Summary | Benchmark | Diagnostics | +| --- | --- | ---: | --- | --- | --- | --- | +| stage1 dummy | `proxy_interaction_r3d_stage1_dummy.yaml` | 13 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed13/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed13/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed13/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed13/diagnostics_full/proxy_diagnostics.json` | +| stage1 dummy | `proxy_interaction_r3d_stage1_dummy.yaml` | 14 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed14/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed14/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed14/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed14/diagnostics_full/proxy_diagnostics.json` | +| stage1 dummy | `proxy_interaction_r3d_stage1_dummy.yaml` | 15 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed15/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed15/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed15/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed15/diagnostics_full/proxy_diagnostics.json` | +| stage2 dummy | `proxy_interaction_r3d_stage2_dummy.yaml` | 21 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed21/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed21/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed21/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed21/diagnostics_full/proxy_diagnostics.json` | +| stage2 dummy | `proxy_interaction_r3d_stage2_dummy.yaml` | 22 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed22/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed22/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed22/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed22/diagnostics_full/proxy_diagnostics.json` | +| stage2 dummy | `proxy_interaction_r3d_stage2_dummy.yaml` | 23 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed23/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed23/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed23/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed23/diagnostics_full/proxy_diagnostics.json` | +| stage1 clip | `proxy_interaction_r3d_stage1_clip.yaml` | 7 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed7/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed7/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed7/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed7/diagnostics_full/proxy_diagnostics.json` | +| stage1 clip | `proxy_interaction_r3d_stage1_clip.yaml` | 8 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed8/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed8/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed8/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed8/diagnostics_full/proxy_diagnostics.json` | +| stage1 clip | `proxy_interaction_r3d_stage1_clip.yaml` | 9 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed9/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed9/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed9/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed9/diagnostics_full/proxy_diagnostics.json` | +| stage2 clip | `proxy_interaction_r3d_stage2_clip.yaml` | 11 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed11/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed11/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed11/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed11/diagnostics_full/proxy_diagnostics.json` | +| stage2 clip | `proxy_interaction_r3d_stage2_clip.yaml` | 12 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed12/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed12/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed12/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed12/diagnostics_full/proxy_diagnostics.json` | +| stage2 clip | `proxy_interaction_r3d_stage2_clip.yaml` | 13 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed13/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed13/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed13/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed13/diagnostics_full/proxy_diagnostics.json` | +| stage3 clip rgbd | `proxy_interaction_r3d_stage3_clip_rgbd.yaml` | 17 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/diagnostics_full/proxy_diagnostics.json` | +| stage3 clip rgbd | `proxy_interaction_r3d_stage3_clip_rgbd.yaml` | 18 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed18/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed18/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed18/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed18/diagnostics_full/proxy_diagnostics.json` | +| stage3 clip rgbd | `proxy_interaction_r3d_stage3_clip_rgbd.yaml` | 19 | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed19/checkpoint_best.pt` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed19/summary.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed19/benchmark_full/reveal_benchmark.json` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed19/diagnostics_full/proxy_diagnostics.json` | + +## Ablation Benchmark Files + +| Ablation | File | +| --- | --- | +| stage1 dummy `no_planner` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed13/benchmark_no_planner/reveal_benchmark.json` | +| stage1 dummy `no_role_symmetry` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed13/benchmark_no_role_symmetry/reveal_benchmark.json` | +| stage2 dummy `no_world_model` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed21/benchmark_no_world_model/reveal_benchmark.json` | +| stage2 dummy `no_world_model` pre-fix backup | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed21/benchmark_no_world_model/reveal_benchmark_pre_null_rollout_fix.json` | +| stage2 dummy `short_history` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed21/benchmark_short_history/reveal_benchmark.json` | +| stage3 clip RGB-D `no_depth` | `artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/benchmark_no_depth/reveal_benchmark.json` | + +Equivalent files exist under the other seed directories. + +## Integration Artifacts + +| Artifact | File | +| --- | --- | +| RLBench import/config smoke | `artifacts/outputs/r3d/rlbench_smokes/smoke_test_output.txt` | +| RLBench `open_drawer` launch smoke | `artifacts/outputs/r3d/rlbench_smokes/launch_smoke_open_drawer.txt` | +| RLBench `open_drawer` rollout | `artifacts/outputs/r3d/rlbench_open_drawer_r3d_rollout/rollout_eval.json` | +| PerAct2 13-task launch smoke summary | `artifacts/outputs/r3d/peract2_13_launch_smoke/launch_smoke_summary.json` | + +## Historical References + +| File | Purpose | +| --- | --- | +| `regression/baselines.md` | historical baseline metrics from the downloaded snapshot | +| `results/phase_tracking.md` | phase-by-phase acceptance tracking | diff --git a/VLAarchtests/README.md b/VLAarchtests/README.md new file mode 100644 index 0000000000000000000000000000000000000000..3f8b2f526fd2306bf9548aa1b4b699d9d074f256 --- /dev/null +++ b/VLAarchtests/README.md @@ -0,0 +1,172 @@ +--- +tags: + - robotics + - vision-language-action + - bimanual-manipulation + - rlbench + - rgbd +--- + +# VLAarchtests + +Bundle uploaded from `/workspace` runpod sessions dated `2026-03-25 UTC` and `2026-03-26 UTC`. + +## Top-Level Contents + +- `code/reveal_vla_bimanual/` + - project code used for the proxy and RLBench runs in this bundle +- `artifacts/data/reveal_proxy/` + - proxy dataset bundles used by the handoff runs +- `artifacts/outputs/r3d/` + - previously uploaded R3D proxy outputs already present in the bundle +- `artifacts/outputs/r3d_handoff/` + - handoff proxy checkpoints +- `artifacts/outputs/r3d_handoff_phase/` + - phase-supervised handoff proxy checkpoints +- `artifacts/outputs/rlbench_current/` + - RLBench checkpoints from the current session +- `artifacts/reports/` + - proxy and RLBench result files copied from `/workspace/reports` +- `environment/` + - same-machine setup files and validation helpers +- `tests/` + - local test suite +- `handoff/instructions.md` + - instruction file used for the handoff work +- `MODEL_INDEX.md` + - checkpoint and result index +- `results/session_results_20260326.md` + - raw result tables for the `2026-03-25/26` work + +## Code Added Or Updated + +### Core model, memory, planner, and dataset paths + +- `code/reveal_vla_bimanual/models/backbones.py` +- `code/reveal_vla_bimanual/models/multiview_fusion.py` +- `code/reveal_vla_bimanual/models/observation_memory.py` +- `code/reveal_vla_bimanual/models/reveal_head.py` +- `code/reveal_vla_bimanual/models/world_model.py` +- `code/reveal_vla_bimanual/models/action_decoder.py` +- `code/reveal_vla_bimanual/models/planner.py` +- `code/reveal_vla_bimanual/models/policy.py` +- `code/reveal_vla_bimanual/train/losses.py` +- `code/reveal_vla_bimanual/sim_reveal/dataset.py` +- `code/reveal_vla_bimanual/sim_reveal/procedural_envs.py` +- `code/reveal_vla_bimanual/sim_rlbench/dataset.py` + +### Training and evaluation paths + +- `code/reveal_vla_bimanual/train/run_rlbench_experiment.py` +- `code/reveal_vla_bimanual/eval/run_reveal_benchmark.py` +- `code/reveal_vla_bimanual/eval/run_ablations.py` +- `code/reveal_vla_bimanual/eval/run_teacher_audit.py` +- `code/reveal_vla_bimanual/eval/run_rlbench_rollout_eval.py` +- `code/reveal_vla_bimanual/eval/run_rlbench_knn_eval.py` + +### Added or updated training configs + +- `code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact.yaml` +- `code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial.yaml` +- `code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase.yaml` +- `code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase.yaml` +- `code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current_valid9.yaml` +- `code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current_common23.yaml` +- `code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_current_wide.yaml` +- `code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_step1.yaml` +- `code/reveal_vla_bimanual/train/configs/rlbench_push_box_backbone_only_clip_step1.yaml` + +### Test files + +The staged `tests/` directory contains `32` test modules plus `conftest.py`, including: + +- geometry and camera rotation coverage +- phase-label and candidate-ranking coverage +- planner gradient-flow and reocclusion gating coverage +- world-model null-rollout, field-consistency, and task-adapter coverage +- proxy scripted benchmark and teacher-audit coverage + +## Verification + +- local test command: + - `PYTHONPATH=/workspace/VLAarchtests_work/code/reveal_vla_bimanual python -m pytest -q /workspace/VLAarchtests_work/tests` +- result: + - `33 passed` + +## Raw Result Files + +### Proxy and handoff results + +- `artifacts/reports/reveal_smoke_mod/reveal_benchmark.json` +- `artifacts/reports/reveal_smoke_nogeom/reveal_benchmark.json` +- `artifacts/reports/reveal_smoke_noplanner/reveal_benchmark.json` +- `artifacts/reports/reveal_handoff_compare_serious/reveal_benchmark.json` +- `artifacts/reports/reveal_handoff_compare_serious_compact/reveal_benchmark.json` +- `artifacts/reports/reveal_phase_compare_serious_compact/reveal_benchmark.json` +- `artifacts/reports/reveal_phase_compare_serious_spatial_compactwm/reveal_benchmark.json` +- `artifacts/reports/reveal_phase_ablations_compact/ablations.json` +- `artifacts/reports/reveal_teacher_audit_serious/teacher_audit.json` + +### RLBench result files + +- `artifacts/reports/rlbench_dual_buttons_baseline_len100_ep1_ik_rescale/rollout_eval.json` +- `artifacts/reports/rlbench_dual_buttons_common23_len100_ep1_ik_rescale/rollout_eval.json` +- `artifacts/reports/rlbench_push_box_common23_len100_ep1_ik_rescale/rollout_eval.json` +- `artifacts/reports/rlbench_lift_ball_wide_len160_ep1_ik_c1/rollout_eval.json` +- `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1/rollout_eval.json` +- `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1_s005/rollout_eval.json` +- `artifacts/reports/rlbench_push_box_knn_step1_ep1/rollout_eval.json` +- `artifacts/reports/rlbench_push_box_knn_step1_ep5/rollout_eval.json` +- `artifacts/reports/rlbench_push_box_knn_step1_ep5_top1_dense/rollout_eval.json` + +## Raw Result Tables + +### Proxy serious runs + +| Artifact | File | Raw values | +| --- | --- | --- | +| spatial handoff vs released baseline | `artifacts/reports/reveal_handoff_compare_serious/reveal_benchmark.json` | baseline mean success `0.5833`, handoff mean success `0.2167` | +| spatial-trained checkpoint with compact world model vs released baseline | `artifacts/reports/reveal_handoff_compare_serious_compact/reveal_benchmark.json` | baseline mean success `0.5833`, handoff mean success `0.5200` | +| compact-phase vs released baseline | `artifacts/reports/reveal_phase_compare_serious_compact/reveal_benchmark.json` | baseline mean success `0.5833`, compact-phase mean success `0.5133` | +| spatial-phase with compact world model vs released baseline | `artifacts/reports/reveal_phase_compare_serious_spatial_compactwm/reveal_benchmark.json` | baseline mean success `0.5833`, spatial-phase compact-world-model mean success `0.4933` | + +### Proxy ablations + +| Artifact | File | Raw values | +| --- | --- | --- | +| compact-phase ablations | `artifacts/reports/reveal_phase_ablations_compact/ablations.json` | full `0.5133`, `no_geometry` `0.5133`, `no_spatial_memory` `0.4967`, `compact_world_model` `0.5133`, `no_planner` `0.4333`, `gaussian_candidates_only` `0.4667`, `no_task_head` `0.5133`, `no_support_mode_conditioning` `0.5133` | + +### RLBench direct-policy runs + +| Artifact | File | Raw values | +| --- | --- | --- | +| lift-ball wide checkpoint, one-step replanning | `artifacts/reports/rlbench_lift_ball_wide_len160_ep1_ik_c1/rollout_eval.json` | mean success `0.0`, mean return `0.0`, path recoveries `[148]`, noop fallbacks `[11]` | +| push-box step-1 checkpoint, one-step replanning | `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1/rollout_eval.json` | mean success `0.0`, mean return `0.0`, path recoveries `[177]`, noop fallbacks `[0]` | +| push-box step-1 checkpoint, one-step replanning, `delta_scale=0.05` | `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1_s005/rollout_eval.json` | mean success `0.0`, mean return `0.0`, path recoveries `[180]`, noop fallbacks `[0]` | + +### RLBench retrieval runs + +| Artifact | File | Raw values | +| --- | --- | --- | +| push-box kNN, `bank_stride=4`, `top_k=5`, `time_window=8`, `episodes=1` | `artifacts/reports/rlbench_push_box_knn_step1_ep1/rollout_eval.json` | mean success `1.0`, mean return `1.0`, bank size `2815` | +| push-box kNN, `bank_stride=4`, `top_k=5`, `time_window=8`, `episodes=5` | `artifacts/reports/rlbench_push_box_knn_step1_ep5/rollout_eval.json` | successes `[0.0, 1.0, 0.0, 0.0, 0.0]`, mean success `0.2`, bank size `2815` | +| push-box kNN, `bank_stride=1`, `top_k=1`, `time_window=4`, `episodes=5` | `artifacts/reports/rlbench_push_box_knn_step1_ep5_top1_dense/rollout_eval.json` | successes `[0.0, 0.0, 1.0, 1.0, 0.0]`, mean success `0.4`, bank size `11259` | + +## Environment Recreation Files + +- `environment/setup_same_machine.sh` +- `environment/validate_same_machine.sh` +- `environment/run_peract2_13_rollouts.sh` +- `environment/runtime_env_vars.sh` +- `environment/hardware_snapshot.txt` +- `environment/glxinfo_B.txt` +- `environment/upstream_revisions.txt` +- `environment/system_packages_same_machine.txt` +- `environment/rlbench_env_export.yaml` +- `environment/rlbench_env_explicit.txt` +- `environment/rlbench_pip_freeze.txt` +- `environment/reveal_env_export.yaml` +- `environment/reveal_env_explicit.txt` +- `environment/reveal_pip_freeze.txt` + +Detailed raw tables for the `2026-03-25/26` work are in `results/session_results_20260326.md`. diff --git a/VLAarchtests/code/reveal_vla_bimanual/.gitignore b/VLAarchtests/code/reveal_vla_bimanual/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..43ecf184c35cf3c855c0f159ebc6cae569ec3fd7 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/.gitignore @@ -0,0 +1,12 @@ +__pycache__/ +*.pyc +.DS_Store +.mypy_cache/ +.pytest_cache/ +.ruff_cache/ +.venv/ +artifacts/ +outputs/ +logs/ +wandb/ +reports/ diff --git a/VLAarchtests/code/reveal_vla_bimanual/README.md b/VLAarchtests/code/reveal_vla_bimanual/README.md new file mode 100644 index 0000000000000000000000000000000000000000..e477d5d278d07cb69000be6457bfe37e8f0b811f --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/README.md @@ -0,0 +1,84 @@ +# reveal_vla_bimanual + +Simulation-first prototype for a language-conditioned bimanual reveal-and-retrieve policy under elastic occlusion. + +This repo is not a generalist VLA backbone in the RT-2 / OpenVLA / Octo sense. The current contribution is the reveal-state machinery layered on top of a frozen vision-language encoder. + +This repo is structured around five top-level modules: + +- `sim_rlbench/`: RLBench2 / PerAct2 wrappers, dataset hooks, camera setup, and benchmark evaluation helpers. +- `sim_reveal/`: reveal-proxy environments, scripted teachers, and privileged label extraction. +- `models/`: shared backbone wrappers, multi-view fusion, bimanual decoder, reveal-state head, world model, and planner. +- `train/`: trainers, losses, checkpointing, and Hydra/YAML configs. +- `eval/`: benchmark scripts, ablations, metrics, plots, and report generation. + +Current bootstrap priorities: + +1. Reproduce the RLBench2 / PerAct2 stack with a fixed 3-camera interface. +2. Stand up a backbone-only 3-camera policy in the same training/eval harness. +3. Add reveal-state supervision and short-horizon planning for synthetic reveal proxies. + +Upstream dependencies are kept in `/workspace/third_party` and pinned in `docs/upstream_pins.md`. + +## RLBench env A + +The RLBench / PerAct2 stack is pinned to Python 3.10 and lives in `/workspace/envs/rlbench`. + +Bring it up with: + +```bash +/workspace/reveal_vla_bimanual/scripts/setup_env_a_rlbench.sh +/workspace/reveal_vla_bimanual/scripts/setup_rlbench_headless_x.sh +/workspace/reveal_vla_bimanual/scripts/start_rlbench_x.sh +``` + +Verify GPU GL on the headless display: + +```bash +DISPLAY=:99 glxinfo -B +``` + +Run the RLBench launch/reset/step smoke test: + +```bash +env \ + DISPLAY=:99 \ + XDG_RUNTIME_DIR=/tmp/runtime-root \ + COPPELIASIM_ROOT=/workspace/assets/coppeliasim_v4_1_0 \ + LD_LIBRARY_PATH=/workspace/system_shims/nvidia$(nvidia-smi --query-gpu=driver_version --format=csv,noheader | head -n1 | cut -d. -f1)/usr/lib/x86_64-linux-gnu:/workspace/system_shims/nvidia$(nvidia-smi --query-gpu=driver_version --format=csv,noheader | head -n1 | cut -d. -f1)/usr/lib/x86_64-linux-gnu/nvidia:/workspace/assets/coppeliasim_v4_1_0 \ + QT_QPA_PLATFORM_PLUGIN_PATH=/workspace/assets/coppeliasim_v4_1_0 \ + /workspace/.tools/micromamba/bin/micromamba run \ + -r /workspace/.micromamba \ + -p /workspace/envs/rlbench \ + python -m sim_rlbench.launch_smoke --headless +``` + +The working benchmark interface is fixed to three cameras only: + +- `front` +- `wrist_left` +- `wrist_right` + +The smoke test covers launch, bimanual task reset, canonical observation extraction, and one bimanual action step in `headless=True`, which is the same mode used by the upstream PerAct2-style training stack. + +Generate the PerAct2-compatible train command for the fixed 3-camera interface with: + +```bash +micromamba run -r /workspace/.micromamba -p /workspace/envs/rlbench \ + python -m sim_rlbench.smoke_test --print-train-command +``` + +Download the published PerAct2 demos into `/workspace/data/rlbench2` with checksum verification: + +```bash +micromamba run -r /workspace/.micromamba -p /workspace/envs/rlbench \ + python -m sim_rlbench.dataset_download --resolution 256 --splits train +``` + +If you want the archives unpacked directly into the demo root expected by RLBench, add `--extract`: + +```bash +apt-get install -y squashfs-tools +micromamba run -r /workspace/.micromamba -p /workspace/envs/rlbench \ + python -m sim_rlbench.dataset_download --resolution 256 --splits train --extract +``` diff --git a/VLAarchtests/code/reveal_vla_bimanual/pyproject.toml b/VLAarchtests/code/reveal_vla_bimanual/pyproject.toml new file mode 100644 index 0000000000000000000000000000000000000000..ddd93c5d941b88b54975386109dca99bf33a1264 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/pyproject.toml @@ -0,0 +1,32 @@ +[build-system] +requires = ["setuptools>=68", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "reveal-vla-bimanual" +version = "0.1.0" +description = "Language-conditioned bimanual reveal-and-retrieve policy prototype" +readme = "README.md" +requires-python = ">=3.10,<3.11" +dependencies = [ + "accelerate>=0.31.0", + "einops>=0.7.0", + "hydra-core>=1.3.2", + "matplotlib>=3.8.0", + "numpy>=1.26,<2.0", + "omegaconf>=2.3.0", + "pandas>=2.2.0", + "pyyaml>=6.0.1", + "safetensors>=0.4.3", + "tensorboard>=2.16.2", + "timm>=1.0.7", + "torch>=2.3.0", + "torchvision>=0.18.0", + "transformers>=4.41.0", +] + +[tool.setuptools] +include-package-data = true + +[tool.setuptools.packages.find] +include = ["sim_rlbench*", "sim_reveal*", "models*", "train*", "eval*", "pytorch3d*"] diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/__init__.py b/VLAarchtests/code/reveal_vla_bimanual/train/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..a77863cbefd448c062eefb0d0cd309ab72e128da --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/__init__.py @@ -0,0 +1,3 @@ +from train.losses import compute_total_loss + +__all__ = ["compute_total_loss"] diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/build_aligned_proposal_dataset.py b/VLAarchtests/code/reveal_vla_bimanual/train/build_aligned_proposal_dataset.py new file mode 100644 index 0000000000000000000000000000000000000000..d4d843916a94fa4d352f8c628ca3b1c5e59b95a7 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/build_aligned_proposal_dataset.py @@ -0,0 +1,195 @@ +from __future__ import annotations + +import argparse +import json +from pathlib import Path +from typing import Any + +import numpy as np +import torch +from omegaconf import OmegaConf + +from eval.run_reveal_benchmark import load_model, _resolve_checkpoint_from_config +from sim_reveal.dataset import collect_teacher_dataset, save_teacher_dataset +from sim_reveal.procedural_envs import render_views_from_state +from train.dataset_build_utils import dataset_version_with_suffix, output_dataset_path + + +def _render_history( + proxy_name: str, + history_render_states: list[dict[str, Any]], + resolution: int, +) -> tuple[list[np.ndarray], list[np.ndarray], list[np.ndarray]]: + history_images: list[np.ndarray] = [] + history_depths: list[np.ndarray] = [] + history_depth_valid: list[np.ndarray] = [] + for render_state in history_render_states: + rendered = render_views_from_state( + proxy_name=proxy_name, + render_state=render_state, + resolution=resolution, + include_depth=True, + ) + history_images.append( + np.stack([rendered["front"], rendered["wrist_left"], rendered["wrist_right"]], axis=0).astype(np.uint8) + ) + history_depths.append( + np.stack([rendered["front_depth"], rendered["wrist_left_depth"], rendered["wrist_right_depth"]], axis=0)[:, None, :, :].astype(np.float32) + ) + history_depth_valid.append( + np.stack( + [rendered["front_depth_valid"], rendered["wrist_left_depth_valid"], rendered["wrist_right_depth_valid"]], + axis=0, + )[:, None, :, :].astype(np.float32) + ) + return history_images, history_depths, history_depth_valid + + +def _prepare_model_inputs( + observation: dict[str, Any], + sample: dict[str, Any], + device: torch.device, + resolution: int, +) -> dict[str, Any]: + history_render_states = list(sample.get("history_render_states", [])) + history_images, history_depths, history_depth_valid = _render_history( + proxy_name=str(sample["proxy_name"]), + history_render_states=history_render_states, + resolution=resolution, + ) + if history_images: + history_images_tensor = torch.from_numpy(np.stack(history_images, axis=0)).permute(0, 1, 4, 2, 3).unsqueeze(0).float() / 255.0 + history_depths_tensor = torch.from_numpy(np.stack(history_depths, axis=0)).unsqueeze(0).float() + history_depth_valid_tensor = torch.from_numpy(np.stack(history_depth_valid, axis=0)).unsqueeze(0).float() + else: + history_images_tensor = torch.zeros((1, 0, 3, 3, resolution, resolution), dtype=torch.float32) + history_depths_tensor = torch.zeros((1, 0, 3, 1, resolution, resolution), dtype=torch.float32) + history_depth_valid_tensor = torch.zeros_like(history_depths_tensor) + proprio_dim = observation["proprio"].shape[0] + return { + "images": torch.from_numpy(observation["images"]).permute(0, 3, 1, 2).unsqueeze(0).float().to(device) / 255.0, + "depths": torch.from_numpy(observation["depths"]).unsqueeze(0).float().to(device), + "depth_valid": torch.from_numpy(observation["depth_valid"]).unsqueeze(0).float().to(device), + "camera_intrinsics": torch.from_numpy(observation["camera_intrinsics"]).unsqueeze(0).float().to(device), + "camera_extrinsics": torch.from_numpy(observation["camera_extrinsics"]).unsqueeze(0).float().to(device), + "proprio": torch.from_numpy(observation["proprio"]).unsqueeze(0).float().to(device), + "texts": [str(observation["text"])], + "task_names": [str(sample["task_name"])], + "task_ids": torch.as_tensor([int(sample["task_id"])], dtype=torch.long, device=device), + "history_images": history_images_tensor.to(device), + "history_depths": history_depths_tensor.to(device), + "history_depth_valid": history_depth_valid_tensor.to(device), + "history_camera_intrinsics": torch.from_numpy( + sample.get("history_camera_intrinsics", np.zeros((0, 3, 3, 3), dtype=np.float32)) + ).unsqueeze(0).float().to(device), + "history_camera_extrinsics": torch.from_numpy( + sample.get("history_camera_extrinsics", np.zeros((0, 3, 4, 4), dtype=np.float32)) + ).unsqueeze(0).float().to(device), + "history_camera_valid_mask": torch.from_numpy( + sample.get("history_camera_valid_mask", np.zeros((0, 3), dtype=np.float32)) + ).unsqueeze(0).float().to(device), + "history_proprio": torch.from_numpy( + sample.get("history_proprio", np.zeros((0, proprio_dim), dtype=np.float32)) + ).unsqueeze(0).float().to(device), + "history_actions": torch.from_numpy( + sample.get("history_actions", np.zeros((0, sample["action_chunk"].shape[-1]), dtype=np.float32)) + ).unsqueeze(0).float().to(device), + } + + +def _proposal_target_builder(model: torch.nn.Module, device: torch.device, resolution: int): + def _build(env: Any, observation: dict[str, Any], sample: dict[str, Any]) -> dict[str, Any]: + with torch.inference_mode(): + outputs = model( + **_prepare_model_inputs(observation, sample, device, resolution), + plan=False, + use_planner=False, + use_world_model=False, + use_proposal_candidates=True, + ) + proposal_candidates = outputs["proposal_candidates"][0].detach().float().cpu().numpy().astype(np.float32) + outcomes = [env.evaluate_action_chunk(candidate, rollout_horizon=env.rollout_horizon) for candidate in proposal_candidates] + proposal_target_retrieval_success = np.asarray([item["retrieval_success"] for item in outcomes], dtype=np.float32) + proposal_target_risk = np.clip( + np.asarray([item["final_disturbance_cost"] + item["reocclusion_rate"] for item in outcomes], dtype=np.float32), + 0.0, + 1.0, + ).astype(np.float32) + proposal_target_utility = np.asarray( + [float(env.candidate_outcome_utility(item)) for item in outcomes], + dtype=np.float32, + ) + return { + "proposal_target_action_chunks": proposal_candidates, + "proposal_target_retrieval_success": proposal_target_retrieval_success, + "proposal_target_risk": proposal_target_risk, + "proposal_target_utility": proposal_target_utility, + "proposal_target_mode_names": list(outputs.get("proposal_mode_names", [["unknown"]])[0]), + } + + return _build + +def main() -> None: + parser = argparse.ArgumentParser() + parser.add_argument("--config", required=True) + parser.add_argument("--checkpoint", default=None) + parser.add_argument("--device", default="cuda" if torch.cuda.is_available() else "cpu") + parser.add_argument("--train-output", default=None) + parser.add_argument("--val-output", default=None) + parser.add_argument("--dataset-suffix", default="selector_align") + args = parser.parse_args() + + cfg = OmegaConf.load(args.config) + checkpoint_path = Path(args.checkpoint) if args.checkpoint else _resolve_checkpoint_from_config(args.config) + device = torch.device(args.device) + model, _ = load_model(checkpoint_path, device) + model.eval() + + resolution = int(cfg.data.resolution) + builder = _proposal_target_builder(model, device, resolution) + dataset_version = dataset_version_with_suffix( + str(cfg.data.get("dataset_version", "reveal_proxy_v6")), + args.dataset_suffix, + ) + train_output = Path(args.train_output) if args.train_output else output_dataset_path(cfg.data.train_dataset_path, args.dataset_suffix) + val_output = Path(args.val_output) if args.val_output else output_dataset_path(cfg.data.val_dataset_path, args.dataset_suffix) + + bundles: dict[str, dict[str, Any]] = {} + for split, episodes_per_proxy, seed_offset, output_path in ( + ("train", int(cfg.data.train_episodes_per_proxy), 0, train_output), + ("val", int(cfg.data.val_episodes_per_proxy), 10_000, val_output), + ): + bundle = collect_teacher_dataset( + proxy_names=OmegaConf.to_container(cfg.data.proxies, resolve=True), + episodes_per_proxy=episodes_per_proxy, + resolution=resolution, + seed=int(cfg.data.seed) + seed_offset, + chunk_horizon=int(cfg.data.chunk_horizon), + rollout_horizon=int(cfg.data.rollout_horizon), + history_steps=int(cfg.data.get("history_steps", 2)), + planner_candidates=int(cfg.data.get("planner_candidates", 4)), + dataset_version=dataset_version, + proposal_target_builder=builder, + ) + save_teacher_dataset(output_path, bundle) + bundles[split] = { + "output_path": str(output_path), + "samples": len(bundle["samples"]), + "dataset_version": dataset_version, + } + print(json.dumps({"phase": "dataset_saved", "split": split, **bundles[split]}), flush=True) + + summary = { + "checkpoint": str(checkpoint_path), + "device": str(device), + "dataset_suffix": args.dataset_suffix, + "train": bundles["train"], + "val": bundles["val"], + } + summary_path = train_output.parent / f"proposal_dataset_build_{args.dataset_suffix}.json" + summary_path.write_text(json.dumps(summary, indent=2), encoding="utf-8") + print(json.dumps(summary, indent=2)) + + +if __name__ == "__main__": + main() diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/base.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/base.yaml new file mode 100644 index 0000000000000000000000000000000000000000..fb73bdc686b8faec0630de1c483d4e98b90e4764 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/base.yaml @@ -0,0 +1,20 @@ +defaults: + - model: backbone_only + - data: rlbench_3cam + - _self_ + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: true + +optim: + lr: 1.0e-4 + weight_decay: 1.0e-4 + +runtime: + batch_size: 8 + num_workers: 4 + seed: 0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_backbone_only.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_backbone_only.yaml new file mode 100644 index 0000000000000000000000000000000000000000..5dd10d5ab159dc95d3c51772867523f192fbf842 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_backbone_only.yaml @@ -0,0 +1,94 @@ +experiment_name: proxy_backbone_only +output_dir: /workspace/outputs/reveal_runs +device: cuda +seed: 7 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 96 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/data/reveal_proxy/proxy_train_v4_noleak_counterfactual.pt + val_dataset_path: /workspace/data/reveal_proxy/proxy_val_v4_noleak_counterfactual.pt + rebuild_dataset: true + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 2 + planner_candidates: 4 + seed: 7 + +optim: + epochs: 8 + batch_size: 16 + num_workers: 0 + lr: 0.001 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 128 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 128 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 256 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 128 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 128 + num_heads: 4 + num_layers: 2 + ff_dim: 256 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 128 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 128 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 128 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.1 + corridor: 0.1 + persistence: 0.05 + disturbance: 0.05 + world_model: 0.1 + belief: 0.05 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_backbone_only_clip.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_backbone_only_clip.yaml new file mode 100644 index 0000000000000000000000000000000000000000..6fb71e1d1cc567a19df8c45d0bc920c1aa2be7e2 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_backbone_only_clip.yaml @@ -0,0 +1,97 @@ +experiment_name: proxy_backbone_only_clip +output_dir: /workspace/outputs/reveal_runs +device: cuda +seed: 7 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/data/reveal_proxy/proxy_train_clip224_v4_noleak_counterfactual.pt + val_dataset_path: /workspace/data/reveal_proxy/proxy_val_clip224_v4_noleak_counterfactual.pt + rebuild_dataset: true + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 2 + planner_candidates: 4 + seed: 7 + +optim: + epochs: 4 + batch_size: 2 + num_workers: 0 + lr: 0.0003 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.1 + corridor: 0.1 + persistence: 0.05 + disturbance: 0.05 + world_model: 0.1 + belief: 0.05 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_backbone_only_smoke.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_backbone_only_smoke.yaml new file mode 100644 index 0000000000000000000000000000000000000000..331478991d99c11218b40755410179b7ed8428a3 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_backbone_only_smoke.yaml @@ -0,0 +1,100 @@ +experiment_name: proxy_backbone_only_smoke +output_dir: /workspace/outputs/smoke +device: cuda +seed: 11 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 64 + train_episodes_per_proxy: 6 + val_episodes_per_proxy: 2 + train_dataset_path: /workspace/data/reveal_proxy/proxy_train_smoke_v4.pt + val_dataset_path: /workspace/data/reveal_proxy/proxy_val_smoke_v4.pt + rebuild_dataset: true + chunk_horizon: 4 + rollout_horizon: 3 + history_steps: 2 + planner_candidates: 4 + seed: 11 + +optim: + epochs: 2 + batch_size: 8 + num_workers: 0 + lr: 0.001 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 64 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 64 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 128 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 64 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 64 + num_heads: 4 + num_layers: 2 + ff_dim: 128 + dropout: 0.1 + chunk_size: 4 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 4 + reveal_head: + hidden_dim: 64 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 3 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + world_model: + hidden_dim: 64 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 3 + planner: + hidden_dim: 64 + num_candidates: 4 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_nodepth.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_nodepth.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8fb54cda6056a7b86edd61d19d98a26c54ce8e49 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_nodepth.yaml @@ -0,0 +1,16 @@ +experiment_name: proxy_interaction_r3d_ablation_nodepth +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d +device: cuda +seed: 17 +data: {proxies: [foliage_proxy, bag_proxy, cloth_proxy], resolution: 224, dataset_version: reveal_proxy_v6_rgbd_elastic_state, train_episodes_per_proxy: 48, val_episodes_per_proxy: 16, train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3.pt, val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3.pt, rebuild_dataset: false, chunk_horizon: 8, rollout_horizon: 5, history_steps: 6, planner_candidates: 8, seed: 17} +optim: {epochs: 4, batch_size: 2, num_workers: 0, lr: 0.0003, weight_decay: 0.0001} +trainer: {policy_type: elastic_reveal, use_bf16: true, grad_clip_norm: 1.0, freeze_backbone: true, gradient_checkpointing: false, plan_during_train: true, plan_during_eval: true, support_mode_conditioning: true, planner_mode: trainable, use_depth: false, use_world_model: true, use_role_tokens: true, compute_equivariance_probe: true} +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 6, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: {action: 1.0, phase: 0.1, arm_role: 0.15, support_mode: 0.1, corridor: 0.15, persistence: 0.05, disturbance: 0.05, world_model: 0.25, belief: 0.05, visibility: 0.05, clearance: 0.05, support_stability: 0.05, reocclusion: 0.05, occluder_contact: 0.05, grasp_affordance: 0.05, planner_success: 0.25, planner_risk: 0.1, planner_ranking: 0.2, proposal_reconstruction: 0.1, proposal_success: 0.15, proposal_ranking: 0.2, proposal_diversity: 0.05, role_swap_consistency: 0.05} diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_noplanner.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_noplanner.yaml new file mode 100644 index 0000000000000000000000000000000000000000..5f4ae2f05e5a944a481142cd5454820083f3ca20 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_noplanner.yaml @@ -0,0 +1,16 @@ +experiment_name: proxy_interaction_r3d_ablation_noplanner +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d +device: cuda +seed: 17 +data: {proxies: [foliage_proxy, bag_proxy, cloth_proxy], resolution: 96, dataset_version: reveal_proxy_v6_rgbd_elastic_state, train_episodes_per_proxy: 48, val_episodes_per_proxy: 16, train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_v6_rgbd_stage2_dummy.pt, val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_v6_rgbd_stage2_dummy.pt, rebuild_dataset: false, chunk_horizon: 8, rollout_horizon: 5, history_steps: 6, planner_candidates: 8, seed: 17} +optim: {epochs: 10, batch_size: 16, num_workers: 0, lr: 0.001, weight_decay: 0.0001} +trainer: {policy_type: elastic_reveal, use_bf16: false, grad_clip_norm: 1.0, freeze_backbone: true, gradient_checkpointing: false, plan_during_train: false, plan_during_eval: false, support_mode_conditioning: true, planner_mode: off, use_depth: false, use_world_model: true, use_role_tokens: true, compute_equivariance_probe: true} +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 192, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: true} + fusion: {hidden_dim: 192, num_cameras: 3, num_layers: 2, num_heads: 4, ff_dim: 384, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 192, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 4, max_history_steps: 8} + decoder: {hidden_dim: 192, num_heads: 4, num_layers: 2, ff_dim: 384, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 6, planner_top_k: 4} + reveal_head: {hidden_dim: 192, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 4, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8} + world_model: {hidden_dim: 192, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 4, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2} + planner: {hidden_dim: 192, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 4, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: {action: 1.0} diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_norolesym.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_norolesym.yaml new file mode 100644 index 0000000000000000000000000000000000000000..89c9cbcabddc8d92d8f5d7b24920358019aa34b9 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_norolesym.yaml @@ -0,0 +1,16 @@ +experiment_name: proxy_interaction_r3d_ablation_norolesym +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d +device: cuda +seed: 17 +data: {proxies: [foliage_proxy, bag_proxy, cloth_proxy], resolution: 96, dataset_version: reveal_proxy_v6_rgbd_elastic_state, train_episodes_per_proxy: 48, val_episodes_per_proxy: 16, train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_v6_rgbd_stage2_dummy.pt, val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_v6_rgbd_stage2_dummy.pt, rebuild_dataset: false, chunk_horizon: 8, rollout_horizon: 5, history_steps: 6, planner_candidates: 8, seed: 17} +optim: {epochs: 10, batch_size: 16, num_workers: 0, lr: 0.001, weight_decay: 0.0001} +trainer: {policy_type: elastic_reveal, use_bf16: false, grad_clip_norm: 1.0, freeze_backbone: true, gradient_checkpointing: false, plan_during_train: true, plan_during_eval: true, support_mode_conditioning: true, planner_mode: trainable, use_depth: false, use_world_model: true, use_role_tokens: false, compute_equivariance_probe: false} +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 192, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: true} + fusion: {hidden_dim: 192, num_cameras: 3, num_layers: 2, num_heads: 4, ff_dim: 384, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 192, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 4, max_history_steps: 8} + decoder: {hidden_dim: 192, num_heads: 4, num_layers: 2, ff_dim: 384, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 6, planner_top_k: 4} + reveal_head: {hidden_dim: 192, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 4, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8} + world_model: {hidden_dim: 192, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 4, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2} + planner: {hidden_dim: 192, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 4, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: {action: 1.0} diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_nowm.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_nowm.yaml new file mode 100644 index 0000000000000000000000000000000000000000..59eb6162d0b352af25ee18108da725551f6514e6 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_ablation_nowm.yaml @@ -0,0 +1,16 @@ +experiment_name: proxy_interaction_r3d_ablation_nowm +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d +device: cuda +seed: 17 +data: {proxies: [foliage_proxy, bag_proxy, cloth_proxy], resolution: 96, dataset_version: reveal_proxy_v6_rgbd_elastic_state, train_episodes_per_proxy: 48, val_episodes_per_proxy: 16, train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_v6_rgbd_stage2_dummy.pt, val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_v6_rgbd_stage2_dummy.pt, rebuild_dataset: false, chunk_horizon: 8, rollout_horizon: 5, history_steps: 6, planner_candidates: 8, seed: 17} +optim: {epochs: 10, batch_size: 16, num_workers: 0, lr: 0.001, weight_decay: 0.0001} +trainer: {policy_type: elastic_reveal, use_bf16: false, grad_clip_norm: 1.0, freeze_backbone: true, gradient_checkpointing: false, plan_during_train: true, plan_during_eval: true, support_mode_conditioning: true, planner_mode: trainable, use_depth: false, use_world_model: false, use_role_tokens: true, compute_equivariance_probe: true} +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 192, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: true} + fusion: {hidden_dim: 192, num_cameras: 3, num_layers: 2, num_heads: 4, ff_dim: 384, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 192, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 4, max_history_steps: 8} + decoder: {hidden_dim: 192, num_heads: 4, num_layers: 2, ff_dim: 384, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 6, planner_top_k: 4} + reveal_head: {hidden_dim: 192, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 4, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8} + world_model: {hidden_dim: 192, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 4, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2} + planner: {hidden_dim: 192, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 4, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: {action: 1.0} diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage1_clip.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage1_clip.yaml new file mode 100644 index 0000000000000000000000000000000000000000..505c6433b304240a70f497bbec32b17f4ac32451 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage1_clip.yaml @@ -0,0 +1,72 @@ +experiment_name: proxy_interaction_r3d_stage1_clip +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d +device: cuda +seed: 7 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/reveal_runs/proxy_backbone_only_clip/checkpoint_best.pt +init_strict: false + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage1.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage1.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 7 + +optim: {epochs: 4, batch_size: 2, num_workers: 4, lr: 0.0003, weight_decay: 0.0001} + +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + use_depth: false + use_world_model: true + use_role_tokens: true + compute_equivariance_probe: true + +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 6, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} + +loss_weights: + action: 1.0 + phase: 0.1 + arm_role: 0.15 + support_mode: 0.1 + corridor: 0.15 + persistence: 0.05 + disturbance: 0.05 + world_model: 0.2 + belief: 0.05 + visibility: 0.05 + clearance: 0.05 + support_stability: 0.05 + reocclusion: 0.05 + occluder_contact: 0.05 + grasp_affordance: 0.05 + planner_success: 0.25 + planner_risk: 0.1 + planner_ranking: 0.2 + proposal_reconstruction: 0.1 + proposal_success: 0.15 + proposal_ranking: 0.2 + proposal_diversity: 0.05 + role_swap_consistency: 0.05 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage1_dummy.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage1_dummy.yaml new file mode 100644 index 0000000000000000000000000000000000000000..18bc90a23e4505348863b731fcb880870a394bf7 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage1_dummy.yaml @@ -0,0 +1,75 @@ +experiment_name: proxy_interaction_r3d_stage1_dummy +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d +device: cuda +seed: 13 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 96 + dataset_version: reveal_proxy_v6_rgbd_elastic_state + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_v6_rgbd_stage1_dummy.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_v6_rgbd_stage1_dummy.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 13 + +optim: + epochs: 4 + batch_size: 16 + num_workers: 4 + lr: 0.001 + weight_decay: 0.0001 + +trainer: + policy_type: elastic_reveal + use_bf16: false + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + use_depth: false + use_world_model: true + use_role_tokens: true + compute_equivariance_probe: true + +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 192, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: true} + fusion: {hidden_dim: 192, num_cameras: 3, num_layers: 2, num_heads: 4, ff_dim: 384, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 192, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 4, max_history_steps: 8} + decoder: {hidden_dim: 192, num_heads: 4, num_layers: 2, ff_dim: 384, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 6, planner_top_k: 4} + reveal_head: {hidden_dim: 192, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 4, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8} + world_model: {hidden_dim: 192, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 4, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2} + planner: {hidden_dim: 192, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 4, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} + +loss_weights: + action: 1.0 + phase: 0.15 + arm_role: 0.2 + support_mode: 0.15 + corridor: 0.2 + persistence: 0.1 + disturbance: 0.1 + world_model: 0.25 + belief: 0.05 + visibility: 0.05 + clearance: 0.05 + support_stability: 0.05 + reocclusion: 0.05 + occluder_contact: 0.05 + grasp_affordance: 0.05 + planner_success: 0.2 + planner_risk: 0.1 + planner_ranking: 0.1 + proposal_reconstruction: 0.2 + proposal_success: 0.1 + proposal_ranking: 0.1 + proposal_diversity: 0.05 + role_swap_consistency: 0.05 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage2_clip.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage2_clip.yaml new file mode 100644 index 0000000000000000000000000000000000000000..37d1ffa851fa0102e0ca70a3246cb7765cc78604 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage2_clip.yaml @@ -0,0 +1,18 @@ +experiment_name: proxy_interaction_r3d_stage2_clip +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d +device: cuda +seed: 11 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/reveal_runs/proxy_backbone_only_clip/checkpoint_best.pt +init_strict: false +data: {proxies: [foliage_proxy, bag_proxy, cloth_proxy], resolution: 224, dataset_version: reveal_proxy_v6_rgbd_elastic_state, train_episodes_per_proxy: 48, val_episodes_per_proxy: 16, train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage2.pt, val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage2.pt, rebuild_dataset: false, chunk_horizon: 8, rollout_horizon: 5, history_steps: 6, planner_candidates: 8, seed: 11} +optim: {epochs: 4, batch_size: 2, num_workers: 4, lr: 0.0003, weight_decay: 0.0001} +trainer: {policy_type: elastic_reveal, use_bf16: true, grad_clip_norm: 1.0, freeze_backbone: true, gradient_checkpointing: false, plan_during_train: true, plan_during_eval: true, support_mode_conditioning: true, planner_mode: trainable, use_depth: false, use_world_model: true, use_role_tokens: true, compute_equivariance_probe: true} +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 6, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: {action: 1.0, phase: 0.1, arm_role: 0.15, support_mode: 0.1, corridor: 0.15, persistence: 0.05, disturbance: 0.05, world_model: 0.25, belief: 0.05, visibility: 0.05, clearance: 0.05, support_stability: 0.05, reocclusion: 0.05, occluder_contact: 0.05, grasp_affordance: 0.05, planner_success: 0.25, planner_risk: 0.1, planner_ranking: 0.2, proposal_reconstruction: 0.1, proposal_success: 0.15, proposal_ranking: 0.2, proposal_diversity: 0.05, role_swap_consistency: 0.05} diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage2_dummy.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage2_dummy.yaml new file mode 100644 index 0000000000000000000000000000000000000000..bbe4faea5cd7e124a7255c01df8ecf0a4d5eab9b --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage2_dummy.yaml @@ -0,0 +1,17 @@ +experiment_name: proxy_interaction_r3d_stage2_dummy +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d +device: cuda +seed: 21 +defaults: [] +data: {proxies: [foliage_proxy, bag_proxy, cloth_proxy], resolution: 96, dataset_version: reveal_proxy_v6_rgbd_elastic_state, train_episodes_per_proxy: 48, val_episodes_per_proxy: 16, train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_v6_rgbd_stage2_dummy.pt, val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_v6_rgbd_stage2_dummy.pt, rebuild_dataset: false, chunk_horizon: 8, rollout_horizon: 5, history_steps: 6, planner_candidates: 8, seed: 21} +optim: {epochs: 4, batch_size: 16, num_workers: 4, lr: 0.001, weight_decay: 0.0001} +trainer: {policy_type: elastic_reveal, use_bf16: false, grad_clip_norm: 1.0, freeze_backbone: true, gradient_checkpointing: false, plan_during_train: true, plan_during_eval: true, support_mode_conditioning: true, planner_mode: trainable, use_depth: false, use_world_model: true, use_role_tokens: true, compute_equivariance_probe: true} +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 192, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: true} + fusion: {hidden_dim: 192, num_cameras: 3, num_layers: 2, num_heads: 4, ff_dim: 384, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 192, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 4, max_history_steps: 8} + decoder: {hidden_dim: 192, num_heads: 4, num_layers: 2, ff_dim: 384, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 6, planner_top_k: 4} + reveal_head: {hidden_dim: 192, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 4, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8} + world_model: {hidden_dim: 192, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 4, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2} + planner: {hidden_dim: 192, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 4, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: {action: 1.0, phase: 0.15, arm_role: 0.2, support_mode: 0.15, corridor: 0.2, persistence: 0.1, disturbance: 0.1, world_model: 0.3, belief: 0.05, visibility: 0.05, clearance: 0.05, support_stability: 0.05, reocclusion: 0.05, occluder_contact: 0.05, grasp_affordance: 0.05, planner_success: 0.2, planner_risk: 0.1, planner_ranking: 0.1, proposal_reconstruction: 0.2, proposal_success: 0.1, proposal_ranking: 0.1, proposal_diversity: 0.05, role_swap_consistency: 0.05} diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd.yaml new file mode 100644 index 0000000000000000000000000000000000000000..1d2adc7838700911f34078241cb1c0ded7063212 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd.yaml @@ -0,0 +1,18 @@ +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/reveal_runs/proxy_backbone_only_clip/checkpoint_best.pt +init_strict: false +data: {proxies: [foliage_proxy, bag_proxy, cloth_proxy], resolution: 224, dataset_version: reveal_proxy_v6_rgbd_elastic_state, train_episodes_per_proxy: 48, val_episodes_per_proxy: 16, train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3.pt, val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3.pt, rebuild_dataset: false, chunk_horizon: 8, rollout_horizon: 5, history_steps: 6, planner_candidates: 8, seed: 17} +optim: {epochs: 4, batch_size: 2, num_workers: 4, lr: 0.0003, weight_decay: 0.0001} +trainer: {policy_type: elastic_reveal, use_bf16: true, grad_clip_norm: 1.0, freeze_backbone: true, gradient_checkpointing: false, plan_during_train: true, plan_during_eval: true, support_mode_conditioning: true, planner_mode: trainable, use_depth: true, use_world_model: true, use_role_tokens: true, compute_equivariance_probe: true} +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 6, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: {action: 1.0, phase: 0.1, arm_role: 0.15, support_mode: 0.1, corridor: 0.15, persistence: 0.05, disturbance: 0.05, world_model: 0.25, belief: 0.05, visibility: 0.05, clearance: 0.05, support_stability: 0.05, reocclusion: 0.05, occluder_contact: 0.05, grasp_affordance: 0.05, planner_success: 0.25, planner_risk: 0.1, planner_ranking: 0.2, proposal_reconstruction: 0.1, proposal_success: 0.15, proposal_ranking: 0.2, proposal_diversity: 0.05, role_swap_consistency: 0.05} diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact.yaml new file mode 100644 index 0000000000000000000000000000000000000000..5b124c48336bb193fe191e8b9f2d3bc6e8eb73fe --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact.yaml @@ -0,0 +1,150 @@ +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_seed17 +output_dir: /workspace/outputs/r3d_handoff +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 3 + batch_size: 4 + num_workers: 24 + lr: 0.0001 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: true + use_role_tokens: true + compute_equivariance_probe: false +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + action_dim: 14 + history_steps: 6 + scene_history_steps: 3 + belief_history_steps: 8 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + scene_bank_size: 2 + belief_bank_size: 2 + num_heads: 8 + max_history_steps: 8 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 8 + num_phases: 5 + num_arm_roles: 4 + num_proposal_modes: 7 + planner_top_k: 4 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 8 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + num_tasks: 4 + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + field_size: 16 + num_heads: 8 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + belief_map_size: 32 + predict_belief_map: true + scene_bank_size: 2 + belief_bank_size: 2 + rollout_mode: compact_rollout + num_tasks: 4 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 8 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + top_k: 4 +loss_weights: + action: 1.0 + phase: 0.05 + arm_role: 0.1 + support_mode: 0.1 + corridor: 0.12 + persistence: 0.06 + disturbance: 0.06 + world_model: 0.2 + belief: 0.05 + visibility: 0.05 + clearance: 0.06 + support_stability: 0.06 + reocclusion: 0.06 + occluder_contact: 0.05 + grasp_affordance: 0.05 + planner_success: 0.2 + planner_risk: 0.08 + planner_ranking: 0.2 + proposal_reconstruction: 0.08 + proposal_success: 0.12 + proposal_ranking: 0.15 + proposal_diversity: 0.05 + role_swap_consistency: 0.02 + task_metrics: 0.05 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase.yaml new file mode 100644 index 0000000000000000000000000000000000000000..9ec43ab3486aecb48f365b3bf3acbe1f9d8615d2 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase.yaml @@ -0,0 +1,73 @@ +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17 +output_dir: /workspace/outputs/r3d_handoff_phase +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state_phase + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3_phase.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3_phase.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 3 + batch_size: 4 + num_workers: 24 + lr: 0.0001 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: true + use_role_tokens: true + compute_equivariance_probe: false +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 7, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, num_tasks: 4} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2, rollout_mode: compact_rollout, num_tasks: 4} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: + action: 1.0 + phase: 0.08 + arm_role: 0.1 + support_mode: 0.1 + corridor: 0.12 + persistence: 0.06 + disturbance: 0.06 + world_model: 0.2 + belief: 0.05 + visibility: 0.05 + clearance: 0.06 + support_stability: 0.06 + reocclusion: 0.06 + occluder_contact: 0.05 + grasp_affordance: 0.05 + planner_success: 0.2 + planner_risk: 0.08 + planner_ranking: 0.2 + proposal_reconstruction: 0.08 + proposal_success: 0.12 + proposal_ranking: 0.15 + proposal_diversity: 0.05 + role_swap_consistency: 0.02 + task_metrics: 0.05 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_base.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_base.yaml new file mode 100644 index 0000000000000000000000000000000000000000..7a00e67de133a745737bd8cba23ec9a5c68a57d2 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_base.yaml @@ -0,0 +1,73 @@ +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_base_seed17 +output_dir: /workspace/outputs/r3d_handoff_sprint +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state_phase + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3_phase.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3_phase.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 3 + batch_size: 4 + num_workers: 48 + lr: 0.0001 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: true + use_role_tokens: true + compute_equivariance_probe: false +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 7, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, num_tasks: 4} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2, rollout_mode: compact_rollout, num_tasks: 4} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: + action: 1.0 + phase: 0.08 + arm_role: 0.1 + support_mode: 0.1 + corridor: 0.12 + persistence: 0.06 + disturbance: 0.06 + world_model: 0.2 + belief: 0.05 + visibility: 0.05 + clearance: 0.06 + support_stability: 0.06 + reocclusion: 0.06 + occluder_contact: 0.05 + grasp_affordance: 0.05 + planner_success: 0.2 + planner_risk: 0.08 + planner_ranking: 0.2 + proposal_reconstruction: 0.08 + proposal_success: 0.12 + proposal_ranking: 0.15 + proposal_diversity: 0.05 + role_swap_consistency: 0.02 + task_metrics: 0.05 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune.yaml new file mode 100644 index 0000000000000000000000000000000000000000..a05038170ab26c05969083369f97b37e1b0c0316 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune.yaml @@ -0,0 +1,78 @@ +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_seed17 +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state_phase_selector_align + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3_phase_selector_align.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3_phase_selector_align.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 4 + batch_size: 8 + num_workers: 48 + lr: 0.0002 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: false + use_role_tokens: true + compute_equivariance_probe: false + trainable_parameter_prefixes: + - decoder.proposal_score + - decoder.proposal_mode_head + - decoder.proposal_mode_embeddings + - decoder.proposal_slot_embeddings +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 7, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, num_tasks: 4} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2, rollout_mode: compact_rollout, num_tasks: 4} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: + action: 1.0 + phase: 0.08 + arm_role: 0.1 + support_mode: 0.1 + corridor: 0.12 + persistence: 0.06 + disturbance: 0.06 + world_model: 0.0 + belief: 0.05 + visibility: 0.05 + clearance: 0.06 + support_stability: 0.06 + reocclusion: 0.06 + occluder_contact: 0.05 + grasp_affordance: 0.05 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 + proposal_reconstruction: 0.0 + proposal_success: 0.35 + proposal_ranking: 0.50 + proposal_diversity: 0.02 + role_swap_consistency: 0.0 + task_metrics: 0.05 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter3.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter3.yaml new file mode 100644 index 0000000000000000000000000000000000000000..81b6c77541ae4f4c19f304b03195c00c49c5f11f --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter3.yaml @@ -0,0 +1,80 @@ +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter3_seed17 +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state_phase_selector_align + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3_phase_selector_align.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3_phase_selector_align.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 6 + batch_size: 8 + num_workers: 48 + lr: 0.0001 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: false + use_role_tokens: true + compute_equivariance_probe: false + trainable_parameter_prefixes: + - decoder.proposal_score + - decoder.proposal_mode_head + - decoder.proposal_mode_embeddings + - decoder.proposal_slot_embeddings + - decoder.slot_delta + - decoder.mode_residual_heads +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 7, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, num_tasks: 4} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2, rollout_mode: compact_rollout, num_tasks: 4} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: + action: 1.0 + phase: 0.08 + arm_role: 0.1 + support_mode: 0.1 + corridor: 0.12 + persistence: 0.06 + disturbance: 0.06 + world_model: 0.0 + belief: 0.05 + visibility: 0.05 + clearance: 0.06 + support_stability: 0.06 + reocclusion: 0.06 + occluder_contact: 0.05 + grasp_affordance: 0.05 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 + proposal_reconstruction: 0.1 + proposal_success: 0.35 + proposal_ranking: 0.5 + proposal_diversity: 0.02 + role_swap_consistency: 0.0 + task_metrics: 0.05 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter5.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter5.yaml new file mode 100644 index 0000000000000000000000000000000000000000..a6c3b705d98e8293f1379963a0a5282c052fd5f0 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter5.yaml @@ -0,0 +1,80 @@ +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter5_seed17 +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state_phase_selector_align_iter1 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3_phase_selector_align_iter1.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3_phase_selector_align_iter1.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 4 + batch_size: 8 + num_workers: 48 + lr: 0.00005 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: false + use_role_tokens: true + compute_equivariance_probe: false + trainable_parameter_prefixes: + - decoder.proposal_score + - decoder.proposal_mode_head + - decoder.proposal_mode_embeddings + - decoder.proposal_slot_embeddings + - decoder.slot_delta + - decoder.mode_residual_heads +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 7, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, num_tasks: 4} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2, rollout_mode: compact_rollout, num_tasks: 4} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: + action: 1.0 + phase: 0.08 + arm_role: 0.1 + support_mode: 0.1 + corridor: 0.12 + persistence: 0.06 + disturbance: 0.06 + world_model: 0.0 + belief: 0.05 + visibility: 0.05 + clearance: 0.06 + support_stability: 0.06 + reocclusion: 0.06 + occluder_contact: 0.05 + grasp_affordance: 0.05 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 + proposal_reconstruction: 0.05 + proposal_success: 0.35 + proposal_ranking: 0.5 + proposal_diversity: 0.02 + role_swap_consistency: 0.0 + task_metrics: 0.05 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter6.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter6.yaml new file mode 100644 index 0000000000000000000000000000000000000000..992ad4745102cf7295f1b8cf4eb098b8e4e2c153 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter6.yaml @@ -0,0 +1,75 @@ +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter6_seed17 +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter5_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state_phase_selector_align_iter5_clothx2 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3_phase_selector_align_iter5_clothx2.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3_phase_selector_align_iter5.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 4 + batch_size: 8 + num_workers: 48 + lr: 0.00003 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: false + use_role_tokens: true + compute_equivariance_probe: false + trainable_parameter_prefixes: + - decoder.proposal_score +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 7, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, num_tasks: 4} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2, rollout_mode: compact_rollout, num_tasks: 4} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: + action: 0.0 + phase: 0.0 + arm_role: 0.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 + visibility: 0.0 + clearance: 0.0 + support_stability: 0.0 + reocclusion: 0.0 + occluder_contact: 0.0 + grasp_affordance: 0.0 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 + proposal_reconstruction: 0.0 + proposal_success: 0.5 + proposal_ranking: 0.75 + proposal_diversity: 0.0 + role_swap_consistency: 0.0 + task_metrics: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter7.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter7.yaml new file mode 100644 index 0000000000000000000000000000000000000000..51397d81b8aca439d1e14f6289c2329b45733db1 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter7.yaml @@ -0,0 +1,81 @@ +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter7_seed17 +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter6_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state_phase_selector_align_iter5_clothx2 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3_phase_selector_align_iter5_clothx2.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3_phase_selector_align_iter5.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 4 + batch_size: 8 + num_workers: 48 + lr: 0.00002 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: false + use_role_tokens: true + compute_equivariance_probe: false + trainable_parameter_prefixes: + - decoder.proposal_score + - decoder.proposal_mode_head + - decoder.proposal_mode_embeddings + - decoder.proposal_slot_embeddings + - decoder.slot_delta + - decoder.mode_residual_heads +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 7, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, num_tasks: 4} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2, rollout_mode: compact_rollout, num_tasks: 4} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: + action: 0.0 + phase: 0.0 + arm_role: 0.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 + visibility: 0.0 + clearance: 0.0 + support_stability: 0.0 + reocclusion: 0.0 + occluder_contact: 0.0 + grasp_affordance: 0.0 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 + proposal_reconstruction: 0.05 + proposal_success: 0.45 + proposal_ranking: 0.6 + proposal_diversity: 0.02 + proposal_mode: 0.2 + role_swap_consistency: 0.0 + task_metrics: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter8.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter8.yaml new file mode 100644 index 0000000000000000000000000000000000000000..af1b0337441d5dd0611ef6de98ee6dc9e4f1db96 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter8.yaml @@ -0,0 +1,82 @@ +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter8_seed17 +output_dir: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter6_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state_phase_selector_align_iter5_clothx2 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3_phase_selector_align_iter5_clothx2.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3_phase_selector_align_iter5.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 4 + batch_size: 8 + num_workers: 24 + lr: 0.00002 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: false + use_role_tokens: true + compute_equivariance_probe: false + trainable_parameter_prefixes: + - decoder.proposal_score + - decoder.proposal_mode_head + - decoder.proposal_mode_embeddings + - decoder.proposal_slot_embeddings + - decoder.slot_delta + - decoder.mode_residual_heads +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 7, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, num_tasks: 4} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2, rollout_mode: compact_rollout, num_tasks: 4} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: + action: 0.0 + phase: 0.0 + arm_role: 0.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 + visibility: 0.0 + clearance: 0.0 + support_stability: 0.0 + reocclusion: 0.0 + occluder_contact: 0.0 + grasp_affordance: 0.0 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 + proposal_reconstruction: 0.05 + proposal_success: 0.45 + proposal_ranking: 0.6 + proposal_mode: 0.2 + proposal_mode_cloth_only: true + proposal_diversity: 0.02 + role_swap_consistency: 0.0 + task_metrics: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial.yaml new file mode 100644 index 0000000000000000000000000000000000000000..7091366adcca6467003e66e8401020e8e0756602 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial.yaml @@ -0,0 +1,151 @@ +# Experimental sprint config. Keep for comparison only; do not use as the default base. +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_seed17 +output_dir: /workspace/outputs/r3d_handoff +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 5 + batch_size: 4 + num_workers: 24 + lr: 0.00015 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: true + use_role_tokens: true + compute_equivariance_probe: false +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + action_dim: 14 + history_steps: 6 + scene_history_steps: 3 + belief_history_steps: 8 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + scene_bank_size: 2 + belief_bank_size: 2 + num_heads: 8 + max_history_steps: 8 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 8 + num_phases: 5 + num_arm_roles: 4 + num_proposal_modes: 7 + planner_top_k: 4 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 8 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + num_tasks: 4 + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + field_size: 16 + num_heads: 8 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + belief_map_size: 32 + predict_belief_map: true + scene_bank_size: 2 + belief_bank_size: 2 + rollout_mode: spatial_rollout + num_tasks: 4 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 8 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + top_k: 4 +loss_weights: + action: 0.6 + phase: 0.05 + arm_role: 0.1 + support_mode: 0.1 + corridor: 0.15 + persistence: 0.08 + disturbance: 0.08 + world_model: 0.35 + belief: 0.05 + visibility: 0.05 + clearance: 0.08 + support_stability: 0.08 + reocclusion: 0.08 + occluder_contact: 0.05 + grasp_affordance: 0.05 + planner_success: 0.25 + planner_risk: 0.1 + planner_ranking: 0.25 + proposal_reconstruction: 0.05 + proposal_success: 0.2 + proposal_ranking: 0.25 + proposal_diversity: 0.05 + role_swap_consistency: 0.02 + task_metrics: 0.1 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase.yaml new file mode 100644 index 0000000000000000000000000000000000000000..5bb4a450b319272e8a50b029860f7c8c79dac918 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase.yaml @@ -0,0 +1,74 @@ +# Experimental sprint config. Keep for comparison only; do not use as the default base. +experiment_name: proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17 +output_dir: /workspace/outputs/r3d_handoff_phase +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +init_strict: false +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + dataset_version: reveal_proxy_v6_rgbd_elastic_state_phase + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3_phase.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3_phase.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 17 +optim: + epochs: 4 + batch_size: 4 + num_workers: 24 + lr: 0.00015 + weight_decay: 0.0001 +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: true + use_role_tokens: true + compute_equivariance_probe: false +policy: + backbone: {model_name: openai/clip-vit-base-patch32, hidden_dim: 512, max_text_tokens: 32, freeze_backbone: true, gradient_checkpointing: false, use_dummy_backbone: false} + fusion: {hidden_dim: 512, num_cameras: 3, num_layers: 4, num_heads: 8, ff_dim: 2048, dropout: 0.1, proprio_dim: 32, proprio_tokens: 1} + memory: {hidden_dim: 512, action_dim: 14, history_steps: 6, scene_history_steps: 3, belief_history_steps: 8, num_layers: 2, dropout: 0.1, memory_bank_size: 4, scene_bank_size: 2, belief_bank_size: 2, num_heads: 8, max_history_steps: 8} + decoder: {hidden_dim: 512, num_heads: 8, num_layers: 4, ff_dim: 2048, dropout: 0.1, chunk_size: 8, action_dim: 14, arm_action_dim: 7, num_candidates: 8, num_phases: 5, num_arm_roles: 4, num_proposal_modes: 7, planner_top_k: 4} + reveal_head: {hidden_dim: 512, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, belief_map_size: 32, field_size: 16, num_heads: 8, predict_belief_map: true, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, num_tasks: 4} + world_model: {hidden_dim: 512, action_dim: 14, num_support_modes: 3, num_approach_templates: 32, rollout_horizon: 5, field_size: 16, num_heads: 8, num_phases: 5, num_arm_roles: 4, num_interaction_tokens: 8, belief_map_size: 32, predict_belief_map: true, scene_bank_size: 2, belief_bank_size: 2, rollout_mode: spatial_rollout, num_tasks: 4} + planner: {hidden_dim: 512, num_candidates: 8, action_dim: 14, num_support_modes: 3, utility_margin: 0.1, num_heads: 8, num_layers: 2, num_phases: 5, num_arm_roles: 4, top_k: 4} +loss_weights: + action: 0.6 + phase: 0.08 + arm_role: 0.1 + support_mode: 0.1 + corridor: 0.15 + persistence: 0.08 + disturbance: 0.08 + world_model: 0.35 + belief: 0.05 + visibility: 0.05 + clearance: 0.08 + support_stability: 0.08 + reocclusion: 0.08 + occluder_contact: 0.05 + grasp_affordance: 0.05 + planner_success: 0.25 + planner_risk: 0.1 + planner_ranking: 0.25 + proposal_reconstruction: 0.05 + proposal_success: 0.2 + proposal_ranking: 0.25 + proposal_diversity: 0.05 + role_swap_consistency: 0.02 + task_metrics: 0.1 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2b1dfaddfd999a8f65467f62430698ecae88eb48 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state.yaml @@ -0,0 +1,122 @@ +experiment_name: proxy_interaction_state +output_dir: /workspace/VLAarchtests/artifacts/outputs/interaction +device: cuda +seed: 13 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 96 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_v4_noleak_counterfactual.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_v4_noleak_counterfactual.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 13 + +optim: + epochs: 8 + batch_size: 16 + num_workers: 0 + lr: 0.001 + weight_decay: 0.0001 + +trainer: + policy_type: interaction_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 128 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 128 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 256 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 128 + history_steps: 6 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + num_heads: 4 + max_history_steps: 8 + decoder: + hidden_dim: 128 + num_heads: 4 + num_layers: 2 + ff_dim: 256 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 8 + num_phases: 5 + num_arm_roles: 4 + reveal_head: + hidden_dim: 128 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + world_model: + hidden_dim: 128 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + field_size: 16 + num_heads: 4 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + planner: + hidden_dim: 128 + num_candidates: 8 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 4 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + +loss_weights: + action: 1.0 + support_mode: 0.15 + corridor: 0.2 + persistence: 0.1 + disturbance: 0.1 + world_model: 0.25 + belief: 0.05 + planner_success: 0.2 + planner_risk: 0.1 + planner_ranking: 0.1 + proposal_reconstruction: 0.2 + proposal_success: 0.1 + proposal_ranking: 0.1 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_actionhist.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_actionhist.yaml new file mode 100644 index 0000000000000000000000000000000000000000..4ef7e0bf99bc35dd182f0db5dc4b74525460aeb1 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_actionhist.yaml @@ -0,0 +1,125 @@ +experiment_name: proxy_interaction_state_actionhist +output_dir: /workspace/VLAarchtests/artifacts/outputs/interaction_debug +device: cuda +seed: 13 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 96 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_v5_actionhist.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_v5_actionhist.pt + rebuild_dataset: true + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 13 + +optim: + epochs: 10 + batch_size: 16 + num_workers: 0 + lr: 0.001 + weight_decay: 0.0001 + +trainer: + policy_type: interaction_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 128 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 128 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 256 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 128 + action_dim: 14 + history_steps: 6 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + num_heads: 4 + max_history_steps: 8 + decoder: + hidden_dim: 128 + num_heads: 4 + num_layers: 2 + ff_dim: 256 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 8 + num_phases: 5 + num_arm_roles: 4 + reveal_head: + hidden_dim: 128 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + world_model: + hidden_dim: 128 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + field_size: 16 + num_heads: 4 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + planner: + hidden_dim: 128 + num_candidates: 8 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 4 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + +loss_weights: + action: 1.0 + phase: 0.15 + arm_role: 0.2 + support_mode: 0.15 + corridor: 0.2 + persistence: 0.1 + disturbance: 0.1 + world_model: 0.25 + belief: 0.05 + planner_success: 0.2 + planner_risk: 0.1 + planner_ranking: 0.1 + proposal_reconstruction: 0.2 + proposal_success: 0.1 + proposal_ranking: 0.1 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_actionhist_smoke.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_actionhist_smoke.yaml new file mode 100644 index 0000000000000000000000000000000000000000..1eab6a2659ba212d5d25cf41dbe912f02bbf41f6 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_actionhist_smoke.yaml @@ -0,0 +1,125 @@ +experiment_name: proxy_interaction_state_actionhist_smoke +output_dir: /workspace/VLAarchtests/artifacts/outputs/interaction_debug +device: cuda +seed: 13 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 64 + train_episodes_per_proxy: 6 + val_episodes_per_proxy: 2 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_smoke_v5_actionhist.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_smoke_v5_actionhist.pt + rebuild_dataset: true + chunk_horizon: 4 + rollout_horizon: 3 + history_steps: 6 + planner_candidates: 4 + seed: 13 + +optim: + epochs: 4 + batch_size: 8 + num_workers: 0 + lr: 0.001 + weight_decay: 0.0001 + +trainer: + policy_type: interaction_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 64 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 64 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 128 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 64 + action_dim: 14 + history_steps: 6 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + num_heads: 4 + max_history_steps: 8 + decoder: + hidden_dim: 64 + num_heads: 4 + num_layers: 2 + ff_dim: 128 + dropout: 0.1 + chunk_size: 4 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 4 + num_phases: 5 + num_arm_roles: 4 + reveal_head: + hidden_dim: 64 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 3 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + world_model: + hidden_dim: 64 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 3 + field_size: 16 + num_heads: 4 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + planner: + hidden_dim: 64 + num_candidates: 4 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 4 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + +loss_weights: + action: 1.0 + phase: 0.15 + arm_role: 0.2 + support_mode: 0.15 + corridor: 0.2 + persistence: 0.1 + disturbance: 0.1 + world_model: 0.25 + belief: 0.05 + planner_success: 0.2 + planner_risk: 0.1 + planner_ranking: 0.1 + proposal_reconstruction: 0.2 + proposal_success: 0.1 + proposal_ranking: 0.1 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_clip_actionhist.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_clip_actionhist.yaml new file mode 100644 index 0000000000000000000000000000000000000000..0d21a00d04098cdd55396d2f289cf0e7c6127349 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_clip_actionhist.yaml @@ -0,0 +1,129 @@ +experiment_name: proxy_interaction_state_clip_actionhist +output_dir: /workspace/VLAarchtests/artifacts/outputs/interaction_debug +device: cuda +seed: 7 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/reveal_runs/proxy_backbone_only_clip/checkpoint_best.pt +init_strict: false + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_clip224_v5_actionhist.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_clip224_v5_actionhist.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 7 + +optim: + epochs: 4 + batch_size: 2 + num_workers: 0 + lr: 0.0003 + weight_decay: 0.0001 + +trainer: + policy_type: interaction_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + action_dim: 14 + history_steps: 6 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + num_heads: 8 + max_history_steps: 8 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 8 + num_phases: 5 + num_arm_roles: 4 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 8 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + field_size: 16 + num_heads: 8 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + belief_map_size: 32 + predict_belief_map: true + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 8 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + +loss_weights: + action: 1.0 + phase: 0.1 + arm_role: 0.15 + support_mode: 0.1 + corridor: 0.15 + persistence: 0.05 + disturbance: 0.05 + world_model: 0.2 + belief: 0.05 + planner_success: 0.25 + planner_risk: 0.1 + planner_ranking: 0.2 + proposal_reconstruction: 0.1 + proposal_success: 0.15 + proposal_ranking: 0.2 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_recency_oracleft.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_recency_oracleft.yaml new file mode 100644 index 0000000000000000000000000000000000000000..22d640aa098bedc131ab2d8334e8dd094b617f4b --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_recency_oracleft.yaml @@ -0,0 +1,127 @@ +experiment_name: proxy_interaction_state_recency_oracleft +output_dir: /workspace/VLAarchtests/artifacts/outputs/interaction_debug +device: cuda +seed: 13 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/interaction_debug/proxy_interaction_state_actionhist/checkpoint_best.pt +init_strict: true + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 96 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_v5_actionhist.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_v5_actionhist.pt + rebuild_dataset: false + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 6 + planner_candidates: 8 + seed: 13 + +optim: + epochs: 8 + batch_size: 16 + num_workers: 0 + lr: 0.0003 + weight_decay: 0.0001 + +trainer: + policy_type: interaction_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 128 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 128 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 256 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 128 + action_dim: 14 + history_steps: 6 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + num_heads: 4 + max_history_steps: 8 + decoder: + hidden_dim: 128 + num_heads: 4 + num_layers: 2 + ff_dim: 256 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 8 + num_phases: 5 + num_arm_roles: 4 + reveal_head: + hidden_dim: 128 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + world_model: + hidden_dim: 128 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + field_size: 16 + num_heads: 4 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + planner: + hidden_dim: 128 + num_candidates: 8 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 4 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + +loss_weights: + action: 1.0 + phase: 0.1 + arm_role: 0.15 + support_mode: 0.1 + corridor: 0.15 + persistence: 0.05 + disturbance: 0.05 + world_model: 0.2 + belief: 0.05 + planner_success: 0.25 + planner_risk: 0.1 + planner_ranking: 0.2 + proposal_reconstruction: 0.1 + proposal_success: 0.15 + proposal_ranking: 0.2 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_smoke.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_smoke.yaml new file mode 100644 index 0000000000000000000000000000000000000000..78f59fa5ace3440ccb8ad1e994f92ed41bf5d709 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_interaction_state_smoke.yaml @@ -0,0 +1,122 @@ +experiment_name: proxy_interaction_state_smoke +output_dir: /workspace/VLAarchtests/artifacts/outputs/interaction +device: cuda +seed: 13 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 64 + train_episodes_per_proxy: 6 + val_episodes_per_proxy: 2 + train_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_train_smoke_v4.pt + val_dataset_path: /workspace/VLAarchtests/artifacts/data/reveal_proxy/proxy_val_smoke_v4.pt + rebuild_dataset: false + chunk_horizon: 4 + rollout_horizon: 3 + history_steps: 6 + planner_candidates: 4 + seed: 13 + +optim: + epochs: 2 + batch_size: 8 + num_workers: 0 + lr: 0.001 + weight_decay: 0.0001 + +trainer: + policy_type: interaction_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 64 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 64 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 128 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 64 + history_steps: 6 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + num_heads: 4 + max_history_steps: 8 + decoder: + hidden_dim: 64 + num_heads: 4 + num_layers: 2 + ff_dim: 128 + dropout: 0.1 + chunk_size: 4 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 4 + num_phases: 5 + num_arm_roles: 4 + reveal_head: + hidden_dim: 64 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 3 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + world_model: + hidden_dim: 64 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 3 + field_size: 16 + num_heads: 4 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + planner: + hidden_dim: 64 + num_candidates: 4 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 4 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + +loss_weights: + action: 1.0 + support_mode: 0.15 + corridor: 0.2 + persistence: 0.1 + disturbance: 0.1 + world_model: 0.25 + belief: 0.05 + planner_success: 0.2 + planner_risk: 0.1 + planner_ranking: 0.1 + proposal_reconstruction: 0.2 + proposal_success: 0.1 + proposal_ranking: 0.1 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_reveal_state.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_reveal_state.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f6d455f215a535598bfc731665ceca4dedeefbd6 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_reveal_state.yaml @@ -0,0 +1,96 @@ +experiment_name: proxy_reveal_state +output_dir: /workspace/outputs/reveal_runs +device: cuda +seed: 7 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 96 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/data/reveal_proxy/proxy_train_v4_noleak_counterfactual.pt + val_dataset_path: /workspace/data/reveal_proxy/proxy_val_v4_noleak_counterfactual.pt + rebuild_dataset: true + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 2 + planner_candidates: 4 + seed: 7 + +optim: + epochs: 8 + batch_size: 16 + num_workers: 0 + lr: 0.001 + weight_decay: 0.0001 + +trainer: + policy_type: reveal_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 128 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 128 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 256 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 128 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 128 + num_heads: 4 + num_layers: 2 + ff_dim: 256 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 128 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + world_model: + hidden_dim: 128 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 128 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.15 + corridor: 0.2 + persistence: 0.1 + disturbance: 0.1 + world_model: 0.2 + belief: 0.05 + planner_success: 0.2 + planner_risk: 0.1 + planner_ranking: 0.1 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_reveal_state_clip.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_reveal_state_clip.yaml new file mode 100644 index 0000000000000000000000000000000000000000..43a1158ddd16d324d08b57e334a06141e617edc0 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_reveal_state_clip.yaml @@ -0,0 +1,99 @@ +experiment_name: proxy_reveal_state_clip +output_dir: /workspace/outputs/reveal_runs +device: cuda +seed: 7 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 224 + train_episodes_per_proxy: 48 + val_episodes_per_proxy: 16 + train_dataset_path: /workspace/data/reveal_proxy/proxy_train_clip224_v4_noleak_counterfactual.pt + val_dataset_path: /workspace/data/reveal_proxy/proxy_val_clip224_v4_noleak_counterfactual.pt + rebuild_dataset: true + chunk_horizon: 8 + rollout_horizon: 5 + history_steps: 2 + planner_candidates: 4 + seed: 7 + +optim: + epochs: 4 + batch_size: 2 + num_workers: 0 + lr: 0.0003 + weight_decay: 0.0001 + +trainer: + policy_type: reveal_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.15 + corridor: 0.2 + persistence: 0.1 + disturbance: 0.1 + world_model: 0.2 + belief: 0.05 + planner_success: 0.2 + planner_risk: 0.1 + planner_ranking: 0.1 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_reveal_state_smoke.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_reveal_state_smoke.yaml new file mode 100644 index 0000000000000000000000000000000000000000..78430358b8466449a734f47bc9c77e18ef4ebbaa --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/proxy_reveal_state_smoke.yaml @@ -0,0 +1,100 @@ +experiment_name: proxy_reveal_state_smoke +output_dir: /workspace/outputs/smoke +device: cuda +seed: 11 + +data: + proxies: [foliage_proxy, bag_proxy, cloth_proxy] + resolution: 64 + train_episodes_per_proxy: 6 + val_episodes_per_proxy: 2 + train_dataset_path: /workspace/data/reveal_proxy/proxy_train_smoke_v4.pt + val_dataset_path: /workspace/data/reveal_proxy/proxy_val_smoke_v4.pt + rebuild_dataset: false + chunk_horizon: 4 + rollout_horizon: 3 + history_steps: 2 + planner_candidates: 4 + seed: 11 + +optim: + epochs: 2 + batch_size: 8 + num_workers: 0 + lr: 0.001 + weight_decay: 0.0001 + +trainer: + policy_type: reveal_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: true + plan_during_eval: true + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 64 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 64 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 128 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 64 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 64 + num_heads: 4 + num_layers: 2 + ff_dim: 128 + dropout: 0.1 + chunk_size: 4 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 4 + reveal_head: + hidden_dim: 64 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 3 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + world_model: + hidden_dim: 64 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 3 + planner: + hidden_dim: 64 + num_candidates: 4 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.15 + corridor: 0.2 + persistence: 0.1 + disturbance: 0.1 + world_model: 0.2 + belief: 0.05 + planner_success: 0.2 + planner_risk: 0.1 + planner_ranking: 0.1 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_current.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_current.yaml new file mode 100644 index 0000000000000000000000000000000000000000..66ad0575b202c8207f0f86d7ba6f5d740fa06369 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_current.yaml @@ -0,0 +1,92 @@ +experiment_name: rlbench_lift_ball_backbone_only_clip_current +output_dir: /workspace/outputs/rlbench_current +device: cuda +seed: 17 +init_checkpoint: null +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball] + train_episodes: [0] + val_episodes: [1] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + +optim: + epochs: 10 + batch_size: 8 + num_workers: 0 + lr: 0.0002 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_current_4train.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_current_4train.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b26060d68a1ada81051d7f18f19434d2ac8093c1 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_current_4train.yaml @@ -0,0 +1,92 @@ +experiment_name: rlbench_lift_ball_backbone_only_clip_current_4train +output_dir: /workspace/outputs/rlbench_current +device: cuda +seed: 17 +init_checkpoint: null +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball] + train_episodes: [0, 1, 2, 3] + val_episodes: [4] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + +optim: + epochs: 10 + batch_size: 8 + num_workers: 2 + lr: 0.0002 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_current_wide.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_current_wide.yaml new file mode 100644 index 0000000000000000000000000000000000000000..bcededc717a328af61c0f7c7680727c640660212 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_current_wide.yaml @@ -0,0 +1,94 @@ +experiment_name: rlbench_lift_ball_backbone_only_clip_current_wide +output_dir: /workspace/outputs/rlbench_current +device: cuda +seed: 17 +init_checkpoint: /workspace/outputs/rlbench_current/rlbench_lift_ball_backbone_only_clip_current_3train/checkpoint_best.pt +init_strict: true + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball] + train_episodes: [0, 1, 2, 3, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31] + val_episodes: [32, 33, 34, 35, 36, 37, 38, 39] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + max_train_samples: 4096 + max_val_samples: 2048 + +optim: + epochs: 8 + batch_size: 16 + num_workers: 4 + lr: 0.0001 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_step1.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_step1.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2b137d6d8686d9f48c210040ca3b4a5657a55f78 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_lift_ball_backbone_only_clip_step1.yaml @@ -0,0 +1,95 @@ +experiment_name: rlbench_lift_ball_backbone_only_clip_step1 +output_dir: /workspace/outputs/rlbench_current +device: cuda +seed: 17 +init_checkpoint: /workspace/outputs/rlbench_current/rlbench_lift_ball_backbone_only_clip_current_wide/checkpoint_stable.pt +init_strict: true + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball] + train_episodes: [0, 1, 2, 3, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31] + val_episodes: [32, 33, 34, 35, 36, 37, 38, 39] + resolution: 224 + chunk_horizon: 8 + supervise_action_steps: 1 + proprio_dim: 32 + history_steps: 2 + max_train_samples: 4096 + max_val_samples: 2048 + +optim: + epochs: 8 + batch_size: 16 + num_workers: 4 + lr: 0.00005 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_open_drawer_interaction_smoke.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_open_drawer_interaction_smoke.yaml new file mode 100644 index 0000000000000000000000000000000000000000..92a4a0a653827053b7f5d0e188ec13c3bdb90a83 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_open_drawer_interaction_smoke.yaml @@ -0,0 +1,128 @@ +experiment_name: rlbench_open_drawer_interaction_smoke +output_dir: /workspace/VLAarchtests/artifacts/outputs/interaction +device: cuda +seed: 13 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/interaction/proxy_interaction_state_smoke/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/VLAarchtests/artifacts/data/rlbench_smoke_open_drawer + tasks: [open_drawer] + train_episodes: [0] + val_episodes: [1] + resolution: 128 + chunk_horizon: 4 + proprio_dim: 32 + history_steps: 6 + max_train_samples: 8 + max_val_samples: 4 + +optim: + epochs: 1 + batch_size: 2 + num_workers: 0 + lr: 0.0005 + weight_decay: 0.0001 + +trainer: + policy_type: interaction_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: true + support_mode_conditioning: true + planner_mode: proxy_pretrained + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 64 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 64 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 128 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 64 + history_steps: 6 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + num_heads: 4 + max_history_steps: 8 + decoder: + hidden_dim: 64 + num_heads: 4 + num_layers: 2 + ff_dim: 128 + dropout: 0.1 + chunk_size: 4 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 4 + num_phases: 5 + num_arm_roles: 4 + reveal_head: + hidden_dim: 64 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 3 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + world_model: + hidden_dim: 64 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 3 + field_size: 16 + num_heads: 4 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + belief_map_size: 32 + predict_belief_map: true + planner: + hidden_dim: 64 + num_candidates: 4 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + corridor_weight: 1.0 + persistence_weight: 0.5 + proposal_weight: 0.5 + task_progress_weight: 0.75 + disturbance_weight: 0.75 + reocclusion_weight: 0.5 + visibility_weight: 0.25 + num_heads: 4 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_peract2_13_interaction_state_dummy.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_peract2_13_interaction_state_dummy.yaml new file mode 100644 index 0000000000000000000000000000000000000000..23d37088b285654146c47afb69f85305dd80d2d1 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_peract2_13_interaction_state_dummy.yaml @@ -0,0 +1,132 @@ +experiment_name: rlbench_peract2_13_interaction_state_dummy +output_dir: /workspace/VLAarchtests/artifacts/outputs/interaction +device: cuda +seed: 13 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/interaction/proxy_interaction_state/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2 + tasks: + [ + bimanual_push_box, + bimanual_lift_ball, + bimanual_dual_push_buttons, + bimanual_pick_plate, + bimanual_put_item_in_drawer, + bimanual_put_bottle_in_fridge, + bimanual_handover_item, + bimanual_pick_laptop, + bimanual_straighten_rope, + bimanual_sweep_to_dustpan, + bimanual_lift_tray, + bimanual_handover_item_easy, + bimanual_take_tray_out_of_oven, + ] + train_episodes: [0] + val_episodes: [1] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 6 + +optim: + epochs: 2 + batch_size: 4 + num_workers: 0 + lr: 0.0005 + weight_decay: 0.0001 + +trainer: + policy_type: interaction_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: true + support_mode_conditioning: true + planner_mode: proxy_pretrained + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 128 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 128 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 256 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 128 + history_steps: 6 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + num_heads: 4 + max_history_steps: 8 + decoder: + hidden_dim: 128 + num_heads: 4 + num_layers: 2 + ff_dim: 256 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 8 + num_phases: 5 + num_arm_roles: 4 + reveal_head: + hidden_dim: 128 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + world_model: + hidden_dim: 128 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + field_size: 16 + num_heads: 4 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + planner: + hidden_dim: 128 + num_candidates: 8 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 4 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_push_box_backbone_only_clip_step1.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_push_box_backbone_only_clip_step1.yaml new file mode 100644 index 0000000000000000000000000000000000000000..48722eb0d62a68f38ce2a8541c7b609f2cc571a8 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_push_box_backbone_only_clip_step1.yaml @@ -0,0 +1,95 @@ +experiment_name: rlbench_push_box_backbone_only_clip_step1 +output_dir: /workspace/outputs/rlbench_current +device: cuda +seed: 17 +init_checkpoint: /workspace/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_common23/checkpoint_stable.pt +init_strict: true + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_push_box] + train_episodes: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79] + val_episodes: [80, 81, 82, 83, 84, 85, 86, 87, 88, 89] + resolution: 224 + chunk_horizon: 8 + supervise_action_steps: 1 + proprio_dim: 32 + history_steps: 2 + max_train_samples: 12288 + max_val_samples: 2048 + +optim: + epochs: 6 + batch_size: 32 + num_workers: 8 + lr: 0.00005 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip.yaml new file mode 100644 index 0000000000000000000000000000000000000000..5c5fdbecd431f77309536267a324ae123d545ffc --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip.yaml @@ -0,0 +1,92 @@ +experiment_name: rlbench_subset3_backbone_only_clip +output_dir: /workspace/outputs/rlbench_custom +device: cuda +seed: 7 +init_checkpoint: /workspace/outputs/reveal_runs/proxy_backbone_only_clip/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0] + val_episodes: [1] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + +optim: + epochs: 2 + batch_size: 2 + num_workers: 0 + lr: 0.0002 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.1 + corridor: 0.1 + persistence: 0.05 + disturbance: 0.05 + world_model: 0.1 + belief: 0.05 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_100demo_fair.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_100demo_fair.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b4a5ff81defe3b9d943168c53f2c0b5d40898938 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_100demo_fair.yaml @@ -0,0 +1,92 @@ +experiment_name: rlbench_subset3_backbone_only_clip_100demo_fair_seed17 +output_dir: /workspace/outputs/rlbench_true_baselines +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests_hf_rlbench/artifacts/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_common23/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2_subset3 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89] + val_episodes: [90, 91, 92, 93, 94, 95, 96, 97, 98, 99] + resolution: 256 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + +optim: + epochs: 6 + batch_size: 8 + num_workers: 24 + lr: 0.0001 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_100demo_fair_step1.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_100demo_fair_step1.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f938d863b06d981830b73e1e62e8b78f61a3e9a5 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_100demo_fair_step1.yaml @@ -0,0 +1,93 @@ +experiment_name: rlbench_subset3_backbone_only_clip_100demo_fair_step1_seed17 +output_dir: /workspace/outputs/rlbench_true_baselines +device: cuda +seed: 17 +init_checkpoint: /workspace/outputs/rlbench_true_baselines/rlbench_subset3_backbone_only_clip_100demo_fair_seed17/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2_subset3 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89] + val_episodes: [90, 91, 92, 93, 94, 95, 96, 97, 98, 99] + resolution: 256 + chunk_horizon: 8 + supervise_action_steps: 1 + proprio_dim: 32 + history_steps: 2 + +optim: + epochs: 6 + batch_size: 32 + num_workers: 24 + lr: 0.00005 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_100demo_fair_step1_full.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_100demo_fair_step1_full.yaml new file mode 100644 index 0000000000000000000000000000000000000000..e515ad8c8177035b0735fb34ae63d6afadd463dd --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_100demo_fair_step1_full.yaml @@ -0,0 +1,93 @@ +experiment_name: rlbench_subset3_backbone_only_clip_100demo_fair_step1_full_seed17 +output_dir: /workspace/outputs/rlbench_true_baselines +device: cuda +seed: 17 +init_checkpoint: /workspace/outputs/rlbench_true_baselines/rlbench_subset3_backbone_only_clip_100demo_fair_seed17/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2_subset3 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89] + val_episodes: [90, 91, 92, 93, 94, 95, 96, 97, 98, 99] + resolution: 256 + chunk_horizon: 8 + supervise_action_steps: 1 + proprio_dim: 32 + history_steps: 2 + +optim: + epochs: 6 + batch_size: 32 + num_workers: 24 + lr: 0.00005 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current.yaml new file mode 100644 index 0000000000000000000000000000000000000000..c8783450cb5f3295294407aa074e4c968f7cc64b --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current.yaml @@ -0,0 +1,94 @@ +experiment_name: rlbench_subset3_backbone_only_clip_current +output_dir: /workspace/outputs/rlbench_current +device: cuda +seed: 17 +init_checkpoint: null +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0, 1, 2, 3] + val_episodes: [4] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + max_train_samples: 2048 + max_val_samples: 512 + +optim: + epochs: 6 + batch_size: 8 + num_workers: 2 + lr: 0.0002 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current_common23.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current_common23.yaml new file mode 100644 index 0000000000000000000000000000000000000000..62843965661a7c4f3f4cc9184ebc08dff88cfac6 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current_common23.yaml @@ -0,0 +1,94 @@ +experiment_name: rlbench_subset3_backbone_only_clip_current_common23 +output_dir: /workspace/outputs/rlbench_current +device: cuda +seed: 17 +init_checkpoint: /workspace/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_valid9/checkpoint_best.pt +init_strict: true + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0, 1, 2, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25] + val_episodes: [26, 27, 28, 29] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + max_train_samples: 8192 + max_val_samples: 2048 + +optim: + epochs: 8 + batch_size: 16 + num_workers: 4 + lr: 0.0001 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current_valid9.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current_valid9.yaml new file mode 100644 index 0000000000000000000000000000000000000000..52fe9d422e0d26922ac1e0dc3a24a033e8ee0454 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_clip_current_valid9.yaml @@ -0,0 +1,94 @@ +experiment_name: rlbench_subset3_backbone_only_clip_current_valid9 +output_dir: /workspace/outputs/rlbench_current +device: cuda +seed: 17 +init_checkpoint: /workspace/outputs/rlbench_current/rlbench_lift_ball_backbone_only_clip_current_3train/checkpoint_best.pt +init_strict: true + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0, 1, 10, 11, 12, 13, 14, 15] + val_episodes: [16] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + max_train_samples: 4096 + max_val_samples: 1024 + +optim: + epochs: 8 + batch_size: 16 + num_workers: 4 + lr: 0.0001 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_dummy.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_dummy.yaml new file mode 100644 index 0000000000000000000000000000000000000000..c1a17e3c29893c1bed9897f0079a149bab56b53e --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_backbone_only_dummy.yaml @@ -0,0 +1,92 @@ +experiment_name: rlbench_subset3_backbone_only_dummy +output_dir: /workspace/outputs/rlbench_custom +device: cuda +seed: 7 +init_checkpoint: /workspace/outputs/reveal_runs/proxy_backbone_only/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0] + val_episodes: [1] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + +optim: + epochs: 2 + batch_size: 4 + num_workers: 0 + lr: 0.0005 + weight_decay: 0.0001 + +trainer: + policy_type: backbone_only + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 128 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 128 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 256 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 128 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 128 + num_heads: 4 + num_layers: 2 + ff_dim: 256 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 128 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + predict_belief_map: true + world_model: + hidden_dim: 128 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 128 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.1 + corridor: 0.1 + persistence: 0.05 + disturbance: 0.05 + world_model: 0.1 + belief: 0.05 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_elastic_reveal_proxy_iter6_100demo_fair.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_elastic_reveal_proxy_iter6_100demo_fair.yaml new file mode 100644 index 0000000000000000000000000000000000000000..80297b162f944f6bfe20937a764ee828080ae012 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_elastic_reveal_proxy_iter6_100demo_fair.yaml @@ -0,0 +1,150 @@ +experiment_name: rlbench_subset3_elastic_reveal_proxy_iter6_100demo_fair_seed17 +output_dir: /workspace/outputs/rlbench_true_baselines +device: cuda +seed: 17 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_v7_selector_finetune_iter6_seed17/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2_subset3 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89] + val_episodes: [90, 91, 92, 93, 94, 95, 96, 97, 98, 99] + resolution: 256 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 6 + +optim: + epochs: 6 + batch_size: 8 + num_workers: 24 + lr: 0.00005 + weight_decay: 0.0001 + +trainer: + policy_type: elastic_reveal + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: true + support_mode_conditioning: true + planner_mode: trainable + use_depth: true + use_world_model: false + use_role_tokens: true + compute_equivariance_probe: false + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + action_dim: 14 + history_steps: 6 + scene_history_steps: 3 + belief_history_steps: 8 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + scene_bank_size: 2 + belief_bank_size: 2 + num_heads: 8 + max_history_steps: 8 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 8 + num_phases: 5 + num_arm_roles: 4 + num_proposal_modes: 7 + planner_top_k: 4 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 8 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + num_tasks: 4 + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + field_size: 16 + num_heads: 8 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + belief_map_size: 32 + predict_belief_map: true + scene_bank_size: 2 + belief_bank_size: 2 + rollout_mode: compact_rollout + num_tasks: 4 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 8 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + top_k: 4 + +loss_weights: + action: 1.0 + phase: 0.0 + arm_role: 0.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 + visibility: 0.0 + clearance: 0.0 + support_stability: 0.0 + reocclusion: 0.0 + occluder_contact: 0.0 + grasp_affordance: 0.0 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 + proposal_reconstruction: 0.0 + proposal_success: 0.0 + proposal_ranking: 0.0 + proposal_diversity: 0.0 + role_swap_consistency: 0.0 + task_metrics: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_interaction_state_dummy.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_interaction_state_dummy.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2bad719a3a7ae9e5b09922cbfac78059cd20b524 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_interaction_state_dummy.yaml @@ -0,0 +1,117 @@ +experiment_name: rlbench_subset3_interaction_state_dummy +output_dir: /workspace/VLAarchtests/artifacts/outputs/interaction +device: cuda +seed: 13 +init_checkpoint: /workspace/VLAarchtests/artifacts/outputs/interaction/proxy_interaction_state_smoke/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0] + val_episodes: [1] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 6 + +optim: + epochs: 2 + batch_size: 4 + num_workers: 0 + lr: 0.0005 + weight_decay: 0.0001 + +trainer: + policy_type: interaction_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: true + support_mode_conditioning: true + planner_mode: proxy_pretrained + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 128 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 128 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 256 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 128 + history_steps: 6 + num_layers: 2 + dropout: 0.1 + memory_bank_size: 4 + num_heads: 4 + max_history_steps: 8 + decoder: + hidden_dim: 128 + num_heads: 4 + num_layers: 2 + ff_dim: 256 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + arm_action_dim: 7 + num_candidates: 8 + num_phases: 5 + num_arm_roles: 4 + reveal_head: + hidden_dim: 128 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + world_model: + hidden_dim: 128 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + field_size: 16 + num_heads: 4 + num_phases: 5 + num_arm_roles: 4 + num_interaction_tokens: 8 + planner: + hidden_dim: 128 + num_candidates: 8 + action_dim: 14 + num_support_modes: 3 + utility_margin: 0.1 + num_heads: 4 + num_layers: 2 + num_phases: 5 + num_arm_roles: 4 + +loss_weights: + action: 1.0 + support_mode: 0.0 + corridor: 0.0 + persistence: 0.0 + disturbance: 0.0 + world_model: 0.0 + belief: 0.0 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_reveal_state_clip.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_reveal_state_clip.yaml new file mode 100644 index 0000000000000000000000000000000000000000..6183511a4c2b601ac88523421d11c96be409a206 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_reveal_state_clip.yaml @@ -0,0 +1,97 @@ +experiment_name: rlbench_subset3_reveal_state_clip +output_dir: /workspace/outputs/rlbench_custom +device: cuda +seed: 7 +init_checkpoint: /workspace/outputs/reveal_runs/proxy_reveal_state_clip/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0] + val_episodes: [1] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + +optim: + epochs: 2 + batch_size: 2 + num_workers: 0 + lr: 0.0002 + weight_decay: 0.0001 + +trainer: + policy_type: reveal_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 512 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: false + fusion: + hidden_dim: 512 + num_cameras: 3 + num_layers: 4 + num_heads: 8 + ff_dim: 2048 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 512 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 512 + num_heads: 8 + num_layers: 4 + ff_dim: 2048 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 512 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + world_model: + hidden_dim: 512 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 512 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.15 + corridor: 0.2 + persistence: 0.1 + disturbance: 0.1 + world_model: 0.2 + belief: 0.05 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_reveal_state_dummy.yaml b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_reveal_state_dummy.yaml new file mode 100644 index 0000000000000000000000000000000000000000..109c6231c3f1c60eb0bdfb0e6a9d984680821a4b --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/configs/rlbench_subset3_reveal_state_dummy.yaml @@ -0,0 +1,97 @@ +experiment_name: rlbench_subset3_reveal_state_dummy +output_dir: /workspace/outputs/rlbench_custom +device: cuda +seed: 7 +init_checkpoint: /workspace/outputs/reveal_runs/proxy_reveal_state/checkpoint_best.pt +init_strict: false + +data: + dataset_root: /workspace/data/rlbench2 + tasks: [bimanual_lift_ball, bimanual_push_box, bimanual_dual_push_buttons] + train_episodes: [0] + val_episodes: [1] + resolution: 224 + chunk_horizon: 8 + proprio_dim: 32 + history_steps: 2 + +optim: + epochs: 2 + batch_size: 4 + num_workers: 0 + lr: 0.0005 + weight_decay: 0.0001 + +trainer: + policy_type: reveal_state + use_bf16: true + grad_clip_norm: 1.0 + freeze_backbone: true + gradient_checkpointing: false + plan_during_train: false + plan_during_eval: false + support_mode_conditioning: true + +policy: + backbone: + model_name: openai/clip-vit-base-patch32 + hidden_dim: 128 + max_text_tokens: 32 + freeze_backbone: true + gradient_checkpointing: false + use_dummy_backbone: true + fusion: + hidden_dim: 128 + num_cameras: 3 + num_layers: 2 + num_heads: 4 + ff_dim: 256 + dropout: 0.1 + proprio_dim: 32 + proprio_tokens: 1 + memory: + hidden_dim: 128 + history_steps: 2 + num_layers: 1 + dropout: 0.1 + decoder: + hidden_dim: 128 + num_heads: 4 + num_layers: 2 + ff_dim: 256 + dropout: 0.1 + chunk_size: 8 + action_dim: 14 + num_candidates: 8 + reveal_head: + hidden_dim: 128 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + belief_map_size: 32 + field_size: 16 + num_heads: 4 + predict_belief_map: true + world_model: + hidden_dim: 128 + action_dim: 14 + num_support_modes: 3 + num_approach_templates: 32 + rollout_horizon: 5 + planner: + hidden_dim: 128 + num_candidates: 8 + action_dim: 14 + utility_margin: 0.1 + +loss_weights: + action: 1.0 + support_mode: 0.15 + corridor: 0.2 + persistence: 0.1 + disturbance: 0.1 + world_model: 0.2 + belief: 0.05 + planner_success: 0.0 + planner_risk: 0.0 + planner_ranking: 0.0 diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/dataset_build_utils.py b/VLAarchtests/code/reveal_vla_bimanual/train/dataset_build_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..a4e6cd782616eb928910e6e763fb43a4c8a08126 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/dataset_build_utils.py @@ -0,0 +1,24 @@ +from __future__ import annotations + +from pathlib import Path + + +def append_suffix_once(value: str, suffix: str) -> str: + normalized_suffix = str(suffix).strip() + if not normalized_suffix: + return str(value) + value = str(value) + expected = f"_{normalized_suffix}" + if value.endswith(expected): + return value + return f"{value}{expected}" + + +def output_dataset_path(base_path: str | Path, suffix: str) -> Path: + base = Path(base_path) + resolved_stem = append_suffix_once(base.stem, suffix) + return base.with_name(f"{resolved_stem}{base.suffix}") + + +def dataset_version_with_suffix(dataset_version: str, suffix: str) -> str: + return append_suffix_once(str(dataset_version), suffix) diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/losses.py b/VLAarchtests/code/reveal_vla_bimanual/train/losses.py new file mode 100644 index 0000000000000000000000000000000000000000..bc036e0b5455a414be013ef316d2d1b67070dc8e --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/losses.py @@ -0,0 +1,760 @@ +from __future__ import annotations + +from dataclasses import dataclass + +import torch +import torch.nn.functional as F +from torch import Tensor + + +@dataclass +class LossWeights: + action: float = 1.0 + phase: float = 0.05 + arm_role: float = 0.2 + support_mode: float = 0.1 + corridor: float = 0.1 + persistence: float = 0.05 + disturbance: float = 0.05 + world_model: float = 0.1 + belief: float = 0.05 + visibility: float = 0.05 + clearance: float = 0.05 + support_stability: float = 0.05 + reocclusion: float = 0.05 + occluder_contact: float = 0.05 + grasp_affordance: float = 0.05 + planner_success: float = 0.1 + planner_risk: float = 0.05 + planner_ranking: float = 0.05 + proposal_reconstruction: float = 0.1 + proposal_success: float = 0.05 + proposal_ranking: float = 0.05 + proposal_mode: float = 0.05 + proposal_mode_cloth_only: bool = False + proposal_mode_task_filter: list[str] | None = None + proposal_diversity: float = 0.05 + role_swap_consistency: float = 0.05 + task_metrics: float = 0.05 + + +def chunk_bc_loss(pred_actions: Tensor, target_actions: Tensor, mask: Tensor | None = None) -> Tensor: + loss = F.smooth_l1_loss(pred_actions, target_actions, reduction="none") + if mask is not None: + loss = loss * mask.unsqueeze(-1) + return loss.sum() / mask.sum().clamp_min(1.0) + return loss.mean() + + +def _command_probability(command: Tensor) -> Tensor: + return (torch.tanh(command) + 1.0) * 0.5 + + +def infer_phase_targets_from_actions(action_chunk: Tensor) -> Tensor: + open_cmd = action_chunk[..., 0] + actor_reach = _command_probability(action_chunk[..., 8]) + retrieve_cmd = _command_probability(action_chunk[..., 13]) + + retrieve = retrieve_cmd >= 0.55 + recover = open_cmd <= -0.10 + reveal = open_cmd > 0.35 + hold = (~retrieve) & (~recover) & (~reveal) & (actor_reach >= 0.55) + + phase_target = torch.zeros_like(open_cmd, dtype=torch.long) + phase_target = torch.where(reveal, torch.ones_like(phase_target), phase_target) + phase_target = torch.where(hold, torch.full_like(phase_target, 2), phase_target) + phase_target = torch.where(retrieve, torch.full_like(phase_target, 3), phase_target) + phase_target = torch.where(recover, torch.full_like(phase_target, 4), phase_target) + return phase_target + + +def _role_targets_like(arm_role_logits: Tensor) -> Tensor: + role_target = torch.as_tensor([1, 2], device=arm_role_logits.device, dtype=torch.long) + expand_shape = [1] * (arm_role_logits.ndim - 2) + [2] + return role_target.view(*expand_shape).expand(*arm_role_logits.shape[:-1]) + + +def swap_arm_actions(action_chunk: Tensor) -> Tensor: + midpoint = action_chunk.shape[-1] // 2 + return torch.cat([action_chunk[..., midpoint:], action_chunk[..., :midpoint]], dim=-1) + + +def permutation_invariant_role_loss(arm_role_logits: Tensor) -> Tensor: + role_target = _role_targets_like(arm_role_logits) + swapped_target = role_target.flip(-1) + flat_logits = arm_role_logits.reshape(-1, arm_role_logits.shape[-1]) + loss_a = F.cross_entropy(flat_logits, role_target.reshape(-1), reduction="none").view(*role_target.shape) + loss_b = F.cross_entropy(flat_logits, swapped_target.reshape(-1), reduction="none").view(*role_target.shape) + return torch.minimum(loss_a.sum(dim=-1), loss_b.sum(dim=-1)).mean() + + +def role_swap_consistency_loss(pred: Tensor, target: Tensor) -> Tensor: + return F.smooth_l1_loss(pred, target) + + +def proposal_diversity_loss(proposal_candidates: Tensor, minimum_distance: float = 0.05) -> Tensor: + if proposal_candidates.ndim != 4 or proposal_candidates.shape[1] <= 1: + return proposal_candidates.new_tensor(0.0) + flat = proposal_candidates.flatten(start_dim=2) + distances = torch.cdist(flat, flat, p=1) + eye = torch.eye(distances.shape[-1], device=distances.device, dtype=torch.bool).unsqueeze(0) + valid = (~eye).expand(distances.shape[0], -1, -1) + if not valid.any(): + return proposal_candidates.new_tensor(0.0) + return torch.relu(minimum_distance - distances[valid]).mean() + + +def proposal_set_reconstruction_loss(proposal_candidates: Tensor, target_candidates: Tensor) -> Tensor: + if proposal_candidates.ndim != 4 or target_candidates.ndim != 4: + return proposal_candidates.new_tensor(0.0) + if proposal_candidates.shape[1] == 0 or target_candidates.shape[1] == 0: + return proposal_candidates.new_tensor(0.0) + flat_proposals = proposal_candidates.flatten(start_dim=2) + flat_targets = target_candidates.flatten(start_dim=2).to(dtype=flat_proposals.dtype) + distances = torch.cdist(flat_proposals, flat_targets, p=1) / float(max(1, flat_proposals.shape[-1])) + return 0.5 * (distances.min(dim=-1).values.mean() + distances.min(dim=-2).values.mean()) + + +def _proposal_target_batch(batch: dict[str, Tensor]) -> tuple[Tensor | None, Tensor | None, Tensor | None, Tensor | None]: + proposal_chunks = batch.get("proposal_target_action_chunks") + if proposal_chunks is None: + proposal_chunks = batch.get("candidate_action_chunks") + proposal_success = batch.get("proposal_target_retrieval_success") + if proposal_success is None: + proposal_success = batch.get("candidate_retrieval_success") + proposal_risk = batch.get("proposal_target_risk") + if proposal_risk is None: + proposal_risk = batch.get("candidate_risk") + proposal_utility = batch.get("proposal_target_utility") + if proposal_utility is None: + proposal_utility = batch.get("candidate_utility") + return proposal_chunks, proposal_success, proposal_risk, proposal_utility + + +def _proposal_mode_targets( + proposal_mode_assignments: Tensor, + proposal_success: Tensor, + proposal_utility: Tensor, + num_modes: int, +) -> tuple[Tensor, Tensor]: + batch_size, candidate_count = proposal_success.shape + mode_assignments = proposal_mode_assignments.view(-1)[:candidate_count].long().to(device=proposal_success.device) + mode_success = torch.zeros(batch_size, num_modes, dtype=proposal_success.dtype, device=proposal_success.device) + mode_utility = torch.full( + (batch_size, num_modes), + fill_value=-1e6, + dtype=proposal_utility.dtype, + device=proposal_utility.device, + ) + for mode_idx in range(num_modes): + mask = mode_assignments == mode_idx + if not torch.any(mask): + continue + mode_success[:, mode_idx] = proposal_success[:, mask].amax(dim=1) + mode_utility[:, mode_idx] = proposal_utility[:, mask].amax(dim=1) + no_mode = torch.isclose(mode_success.sum(dim=1), mode_success.new_zeros(batch_size)) + if torch.any(no_mode): + mode_utility[no_mode] = 0.0 + return mode_success, mode_utility + + +def _proposal_reconstruction_targets( + batch: dict[str, Tensor], + proposal_count: int, + fallback_targets: Tensor | None, +) -> Tensor | None: + task_name = batch.get("task_name") + if isinstance(task_name, str) and task_name == "bag" and fallback_targets is not None: + return fallback_targets + teacher_candidates = batch.get("candidate_action_chunks") + teacher_utility = batch.get("candidate_utility") + if teacher_candidates is None: + return fallback_targets + if teacher_utility is None or teacher_candidates.shape[1] <= 1: + return teacher_candidates + top_k = min(teacher_candidates.shape[1], max(1, proposal_count // 2)) + top_indices = teacher_utility.topk(k=top_k, dim=1).indices + gather_index = top_indices[..., None, None].expand( + -1, + -1, + teacher_candidates.shape[2], + teacher_candidates.shape[3], + ) + return teacher_candidates.gather(1, gather_index) + + +def _task_name_mask(batch: dict[str, Tensor | list[str] | tuple[str, ...] | str], task_name: str, batch_size: int, device: torch.device) -> Tensor | None: + return _task_name_mask_for_values(batch, [task_name], batch_size=batch_size, device=device) + + +def _task_name_mask_for_values( + batch: dict[str, Tensor | list[str] | tuple[str, ...] | str], + task_names: list[str] | tuple[str, ...], + batch_size: int, + device: torch.device, +) -> Tensor | None: + target_names = {str(name) for name in task_names} + task_names = batch.get("task_name") + if isinstance(task_names, str): + return torch.full((batch_size,), task_names in target_names, dtype=torch.bool, device=device) + if isinstance(task_names, (list, tuple)): + if len(task_names) < batch_size: + return None + values = [str(task_names[idx]) in target_names for idx in range(batch_size)] + return torch.as_tensor(values, dtype=torch.bool, device=device) + return None + + +def _resize_like(target: Tensor, prediction: Tensor) -> Tensor: + if target.shape == prediction.shape: + return target + if target.ndim == prediction.ndim == 4: + return F.interpolate(target.float(), size=prediction.shape[-2:], mode="bilinear", align_corners=False) + if target.ndim == 3 and prediction.ndim == 4: + return F.interpolate(target.unsqueeze(1).float(), size=prediction.shape[-2:], mode="bilinear", align_corners=False) + return target + + +def reveal_state_loss(pred: dict[str, Tensor], target: dict[str, Tensor], weights: LossWeights) -> dict[str, Tensor]: + losses = {} + if "phase_logits" in pred: + if "phase" in target: + phase_target = target["phase"].long() + else: + action_chunk = target.get("action_chunk") + if action_chunk is not None: + phase_target = infer_phase_targets_from_actions(action_chunk[:, 0]) + else: + phase_map = torch.as_tensor([2, 3, 0], device=target["support_mode"].device, dtype=torch.long) + phase_target = phase_map[target["support_mode"].long()] + losses["phase"] = F.cross_entropy(pred["phase_logits"], phase_target) + else: + losses["phase"] = pred["support_mode_logits"].new_tensor(0.0) + if "arm_role_logits" in pred: + role_ce = permutation_invariant_role_loss(pred["arm_role_logits"]) + role_probs = pred["arm_role_logits"].softmax(dim=-1) + role_gap = torch.mean(torch.abs(role_probs[:, 0] - role_probs[:, 1]), dim=-1) + role_separation = torch.relu(0.25 - role_gap).mean() + losses["arm_role"] = role_ce + 0.5 * role_separation + else: + losses["arm_role"] = pred["support_mode_logits"].new_tensor(0.0) + support_target = target["support_mode"].long() + losses["support_mode"] = F.cross_entropy(pred["support_mode_logits"], support_target) + losses["corridor"] = F.binary_cross_entropy_with_logits( + pred["corridor_logits"], + target["corridor_feasible"].float(), + ) + losses["persistence"] = F.mse_loss(pred["persistence_horizon"], target["persistence_horizon"].float()) + losses["disturbance"] = F.mse_loss(pred["disturbance_cost"], target["disturbance_cost"].float()) + if "belief_map" in pred and "belief_map" in target: + losses["belief"] = F.binary_cross_entropy_with_logits(pred["belief_map"], _resize_like(target["belief_map"].float(), pred["belief_map"])) + else: + losses["belief"] = pred["support_mode_logits"].new_tensor(0.0) + if "visibility_field" in pred and "visibility_map" in target: + losses["visibility"] = F.binary_cross_entropy_with_logits( + pred["visibility_field"], + _resize_like(target["visibility_map"].float(), pred["visibility_field"]), + ) + else: + losses["visibility"] = pred["support_mode_logits"].new_tensor(0.0) + if "clearance_field" in pred and "clearance_map" in target: + losses["clearance"] = F.binary_cross_entropy_with_logits( + pred["clearance_field"], + _resize_like(target["clearance_map"].float(), pred["clearance_field"]), + ) + else: + losses["clearance"] = pred["support_mode_logits"].new_tensor(0.0) + if "support_stability_field" in pred and "support_stability_map" in target: + losses["support_stability"] = F.binary_cross_entropy_with_logits( + pred["support_stability_field"], + _resize_like(target["support_stability_map"].float(), pred["support_stability_field"]), + ) + else: + losses["support_stability"] = pred["support_mode_logits"].new_tensor(0.0) + if "occluder_contact_field" in pred and "occluder_contact_map" in target: + losses["occluder_contact"] = F.binary_cross_entropy_with_logits( + pred["occluder_contact_field"], + _resize_like(target["occluder_contact_map"].float(), pred["occluder_contact_field"]), + ) + else: + losses["occluder_contact"] = pred["support_mode_logits"].new_tensor(0.0) + if "grasp_affordance_field" in pred and "grasp_affordance_map" in target: + losses["grasp_affordance"] = F.binary_cross_entropy_with_logits( + pred["grasp_affordance_field"], + _resize_like(target["grasp_affordance_map"].float(), pred["grasp_affordance_field"]), + ) + else: + losses["grasp_affordance"] = pred["support_mode_logits"].new_tensor(0.0) + if "reocclusion_logit" in pred and "corridor_feasible" in target: + target_reocclusion = target.get("reocclusion_target") + if target_reocclusion is None: + target_reocclusion = 1.0 - target["corridor_feasible"].float().amax(dim=-1) + if target_reocclusion.ndim < pred["reocclusion_logit"].ndim: + target_reocclusion = target_reocclusion.unsqueeze(-1).expand_as(pred["reocclusion_logit"]) + losses["reocclusion"] = F.binary_cross_entropy_with_logits(pred["reocclusion_logit"], target_reocclusion) + else: + losses["reocclusion"] = pred["support_mode_logits"].new_tensor(0.0) + if "persistence_uncertainty" in pred: + losses["uncertainty"] = pred["persistence_uncertainty"].mean() + else: + losses["uncertainty"] = pred["support_mode_logits"].new_tensor(0.0) + task_metric_pairs = ( + "opening_quality", + "actor_feasibility_score", + "gap_width", + "damage_proxy", + "release_collapse_rate", + "target_visibility_confidence", + "mouth_aperture", + "hold_quality", + "rim_slip_risk", + "insertable_actor_corridor", + "layer_separation_quality", + "fold_preservation", + "insertion_corridor", + "top_layer_stability", + "lift_too_much_risk", + ) + task_losses = [ + F.mse_loss(pred[key].float(), target[key].float()) + for key in task_metric_pairs + if key in pred and key in target + ] + losses["task_metrics"] = ( + torch.stack(task_losses).mean() + if task_losses + else pred["support_mode_logits"].new_tensor(0.0) + ) + return losses + + +def world_model_rollout_consistency_loss(pred_rollout: dict[str, Tensor], target_rollout: dict[str, Tensor]) -> Tensor: + has_candidates = pred_rollout["support_mode_logits"].ndim == 4 + candidate_dim = pred_rollout["support_mode_logits"].shape[1] if has_candidates else 1 + + def _expand_target(value: Tensor) -> Tensor: + if not has_candidates: + return value + if value.ndim >= 2 and value.shape[1] == candidate_dim: + return value + return value.unsqueeze(1).expand(-1, candidate_dim, *value.shape[1:]) + + horizon = min( + pred_rollout["support_mode_logits"].shape[-2], + target_rollout["support_mode"].shape[-1], + ) + pred_rollout = { + "support_mode_logits": pred_rollout["support_mode_logits"][..., :horizon, :], + "corridor_logits": pred_rollout["corridor_logits"][..., :horizon, :, :], + "persistence_horizon": pred_rollout["persistence_horizon"][..., :horizon, :], + "disturbance_cost": pred_rollout["disturbance_cost"][..., :horizon], + } + target_rollout = { + "support_mode": _expand_target(target_rollout["support_mode"][..., :horizon]), + "corridor_feasible": _expand_target(target_rollout["corridor_feasible"][..., :horizon, :, :]), + "persistence_horizon": _expand_target(target_rollout["persistence_horizon"][..., :horizon, :]), + "disturbance_cost": _expand_target(target_rollout["disturbance_cost"][..., :horizon]), + "action_chunk": _expand_target(target_rollout["action_chunk"][..., :horizon, :]), + } + if "phase" in target_rollout: + target_rollout["phase"] = _expand_target(target_rollout["phase"][..., :horizon]) + loss = ( + F.cross_entropy( + pred_rollout["support_mode_logits"].reshape(-1, pred_rollout["support_mode_logits"].shape[-1]), + target_rollout["support_mode"].reshape(-1).long(), + ) + + F.binary_cross_entropy_with_logits( + pred_rollout["corridor_logits"], + target_rollout["corridor_feasible"].float(), + ) + + F.mse_loss(pred_rollout["persistence_horizon"], target_rollout["persistence_horizon"].float()) + + F.mse_loss(pred_rollout["disturbance_cost"], target_rollout["disturbance_cost"].float()) + ) + if "phase_logits" in pred_rollout: + phase_target = target_rollout.get("phase") + if phase_target is None: + phase_target = infer_phase_targets_from_actions(target_rollout["action_chunk"]) + loss = loss + 0.5 * F.cross_entropy( + pred_rollout["phase_logits"].reshape(-1, pred_rollout["phase_logits"].shape[-1]), + phase_target.reshape(-1), + ) + if "arm_role_logits" in pred_rollout: + loss = loss + 0.25 * permutation_invariant_role_loss(pred_rollout["arm_role_logits"]) + optional_pairs = ( + ("target_belief_field", "belief_map", "rollout_belief_map"), + ("visibility_field", "visibility_map", "rollout_visibility_map"), + ("clearance_field", "clearance_map", "rollout_clearance_map"), + ("support_stability_field", "support_stability_map", "rollout_support_stability"), + ("occluder_contact_field", "occluder_contact_map", "rollout_occluder_contact_map"), + ("grasp_affordance_field", "grasp_affordance_map", "rollout_grasp_affordance_map"), + ("reocclusion_field", "reocclusion_map", "rollout_reocclusion_target"), + ) + for pred_key, _, target_key in optional_pairs: + if pred_key not in pred_rollout or target_key not in target_rollout: + continue + target_value = _expand_target(target_rollout[target_key][..., :horizon, ...]) + pred_value = pred_rollout[pred_key][..., :horizon, :, :, :] if pred_rollout[pred_key].ndim >= 6 else pred_rollout[pred_key][..., :horizon, :, :] + if target_value.ndim + 1 == pred_value.ndim: + target_value = target_value.unsqueeze(-3) + if pred_key in {"support_stability_field", "reocclusion_field"} and target_value.ndim == pred_value.ndim - 1: + target_value = target_value.unsqueeze(-1).unsqueeze(-1) + if pred_key == "support_stability_field" and target_value.ndim == pred_value.ndim - 2: + target_value = target_value.unsqueeze(-1).unsqueeze(-1) + if pred_key == "reocclusion_field" and target_value.ndim == pred_value.ndim - 2: + target_value = target_value.unsqueeze(-1).unsqueeze(-1) + loss = loss + 0.1 * F.binary_cross_entropy_with_logits(pred_value, target_value.float()) + return loss + + +def compute_total_loss( + model_output: dict[str, Tensor], + batch: dict[str, Tensor], + weights: LossWeights | None = None, +) -> dict[str, Tensor]: + weights = weights or LossWeights() + losses = { + "action": chunk_bc_loss( + model_output["action_mean"], + batch["action_chunk"], + mask=batch.get("action_mask"), + ), + } + total = weights.action * losses["action"] + + state_output = model_output.get("interaction_state") + if state_output is None: + state_output = model_output.get("reveal_state") + + if state_output is not None and "support_mode" in batch: + reveal_losses = reveal_state_loss(state_output, batch, weights) + losses.update(reveal_losses) + total = ( + total + + weights.phase * reveal_losses["phase"] + + weights.arm_role * reveal_losses["arm_role"] + + weights.support_mode * reveal_losses["support_mode"] + + weights.corridor * reveal_losses["corridor"] + + weights.persistence * reveal_losses["persistence"] + + weights.disturbance * reveal_losses["disturbance"] + + weights.belief * reveal_losses["belief"] + + weights.visibility * reveal_losses["visibility"] + + weights.clearance * reveal_losses["clearance"] + + weights.support_stability * reveal_losses["support_stability"] + + weights.occluder_contact * reveal_losses["occluder_contact"] + + weights.grasp_affordance * reveal_losses["grasp_affordance"] + + weights.reocclusion * reveal_losses["reocclusion"] + + weights.task_metrics * reveal_losses["task_metrics"] + + 0.01 * reveal_losses["uncertainty"] + ) + + if model_output.get("planned_rollout") and model_output.get("rollout_source", "learned") == "learned" and ( + "candidate_rollout_support_mode" in batch or "rollout_support_mode" in batch + ): + if "candidate_rollout_support_mode" in batch: + rollout_target = { + "support_mode": batch["candidate_rollout_support_mode"], + "corridor_feasible": batch["candidate_rollout_corridor_feasible"], + "persistence_horizon": batch["candidate_rollout_persistence_horizon"], + "disturbance_cost": batch["candidate_rollout_disturbance_cost"], + "action_chunk": batch["candidate_action_chunks"], + } + if "candidate_rollout_phase" in batch: + rollout_target["phase"] = batch["candidate_rollout_phase"] + for optional_key in ( + "candidate_rollout_belief_map", + "candidate_rollout_visibility_map", + "candidate_rollout_clearance_map", + "candidate_rollout_support_stability", + "candidate_rollout_reocclusion_target", + "candidate_rollout_occluder_contact_map", + "candidate_rollout_grasp_affordance_map", + ): + if optional_key in batch: + rollout_target[optional_key.replace("candidate_", "")] = batch[optional_key] + planner_indices = model_output.get("planner_topk_indices") + if planner_indices is not None: + for key, value in list(rollout_target.items()): + if isinstance(value, Tensor) and value.ndim >= 2 and value.shape[1] >= planner_indices.shape[1]: + expand_indices = planner_indices + while expand_indices.ndim < value.ndim: + expand_indices = expand_indices.unsqueeze(-1) + rollout_target[key] = value.gather( + 1, + expand_indices.expand(-1, -1, *value.shape[2:]), + ) + else: + rollout_target = { + "support_mode": batch["rollout_support_mode"], + "corridor_feasible": batch["rollout_corridor_feasible"], + "persistence_horizon": batch["rollout_persistence_horizon"], + "disturbance_cost": batch["rollout_disturbance_cost"], + "action_chunk": batch["action_chunk"], + } + if "rollout_phase" in batch: + rollout_target["phase"] = batch["rollout_phase"] + for optional_key in ( + "rollout_belief_map", + "rollout_visibility_map", + "rollout_clearance_map", + "rollout_support_stability", + "rollout_reocclusion_target", + "rollout_occluder_contact_map", + "rollout_grasp_affordance_map", + ): + if optional_key in batch: + rollout_target[optional_key] = batch[optional_key] + world_model_loss = world_model_rollout_consistency_loss( + model_output["planned_rollout"], + rollout_target, + ) + losses["world_model"] = world_model_loss + total = total + weights.world_model * world_model_loss + else: + losses["world_model"] = model_output["action_mean"].new_tensor(0.0) + + if "planner_success_logits" in model_output and "candidate_retrieval_success" in batch: + success_target = batch["candidate_retrieval_success"].float() + risk_target = batch.get("candidate_risk") + if risk_target is None: + risk_target = torch.clamp( + batch["candidate_final_disturbance_cost"].float() + batch["candidate_reocclusion_rate"].float(), + 0.0, + 1.0, + ) + utility_target = batch.get("candidate_utility") + planner_indices = model_output.get("planner_topk_indices") + if planner_indices is not None and success_target.shape[1] != model_output["planner_success_logits"].shape[1]: + success_target = success_target.gather(1, planner_indices) + risk_target = risk_target.gather(1, planner_indices) + if utility_target is not None: + utility_target = utility_target.gather(1, planner_indices) + if utility_target is None: + utility_target = success_target - risk_target + elif "utility_structured" in model_output: + utility_target = 0.5 * utility_target + 0.5 * model_output["utility_structured"].detach() + success_loss = F.binary_cross_entropy_with_logits(model_output["planner_success_logits"], success_target) + risk_loss = F.mse_loss(model_output["planner_risk_values"], risk_target.float()) + pred_diff = model_output["planner_scores"].unsqueeze(-1) - model_output["planner_scores"].unsqueeze(-2) + target_diff = utility_target.float().unsqueeze(-1) - utility_target.float().unsqueeze(-2) + ranking_mask = target_diff.abs() > 1e-4 + if ranking_mask.any(): + ranking_loss = torch.relu(0.1 - torch.sign(target_diff) * pred_diff)[ranking_mask].mean() + else: + ranking_loss = model_output["planner_scores"].new_tensor(0.0) + oracle_target = utility_target.argmax(dim=-1) + oracle_loss = F.cross_entropy(model_output["planner_scores"], oracle_target) + ranking_loss = ranking_loss + 0.5 * oracle_loss + losses["planner_success"] = success_loss + losses["planner_risk"] = risk_loss + losses["planner_ranking"] = ranking_loss + total = ( + total + + weights.planner_success * success_loss + + weights.planner_risk * risk_loss + + weights.planner_ranking * ranking_loss + ) + else: + losses["planner_success"] = model_output["action_mean"].new_tensor(0.0) + losses["planner_risk"] = model_output["action_mean"].new_tensor(0.0) + losses["planner_ranking"] = model_output["action_mean"].new_tensor(0.0) + + proposal_target_chunks, proposal_success_values, proposal_risk_values, proposal_utility_values = _proposal_target_batch(batch) + + if "proposal_candidates" in model_output: + reconstruction_losses = [] + batch_size = model_output["proposal_candidates"].shape[0] + task_names = batch.get("task_name") + for sample_idx in range(batch_size): + sample_batch: dict[str, Tensor | str] = {} + for key in ("candidate_action_chunks", "candidate_utility"): + value = batch.get(key) + if value is not None: + sample_batch[key] = value[sample_idx : sample_idx + 1] + if isinstance(task_names, list): + sample_batch["task_name"] = str(task_names[sample_idx]) + elif isinstance(task_names, tuple): + sample_batch["task_name"] = str(task_names[sample_idx]) + elif isinstance(task_names, str): + sample_batch["task_name"] = task_names + fallback_sample = ( + proposal_target_chunks[sample_idx : sample_idx + 1] + if proposal_target_chunks is not None + else None + ) + sample_targets = _proposal_reconstruction_targets( + sample_batch, # type: ignore[arg-type] + proposal_count=model_output["proposal_candidates"].shape[1], + fallback_targets=fallback_sample, + ) + if sample_targets is None: + continue + reconstruction_losses.append( + proposal_set_reconstruction_loss( + model_output["proposal_candidates"][sample_idx : sample_idx + 1], + sample_targets, + ) + ) + if reconstruction_losses: + proposal_reconstruction = torch.stack(reconstruction_losses).mean() + else: + proposal_reconstruction = model_output["action_mean"].new_tensor(0.0) + losses["proposal_reconstruction"] = proposal_reconstruction + total = total + weights.proposal_reconstruction * proposal_reconstruction + else: + losses["proposal_reconstruction"] = model_output["action_mean"].new_tensor(0.0) + + if "proposal_logits" in model_output and proposal_success_values is not None: + candidate_count = min( + model_output["proposal_logits"].shape[1], + proposal_success_values.shape[1], + ) + proposal_logits = model_output["proposal_logits"][:, :candidate_count] + proposal_success_target = proposal_success_values[:, :candidate_count].float() + proposal_utility = proposal_utility_values + if proposal_utility is None: + proposal_risk = proposal_risk_values + if proposal_risk is None: + proposal_risk = torch.clamp( + batch["candidate_final_disturbance_cost"].float() + batch["candidate_reocclusion_rate"].float(), + 0.0, + 1.0, + ) + proposal_utility = proposal_success_target - proposal_risk[:, :candidate_count] + else: + proposal_utility = proposal_utility[:, :candidate_count] + proposal_success_loss = F.binary_cross_entropy_with_logits( + proposal_logits, + proposal_success_target, + ) + proposal_pred_diff = proposal_logits.unsqueeze(-1) - proposal_logits.unsqueeze(-2) + proposal_target_diff = proposal_utility.float().unsqueeze(-1) - proposal_utility.float().unsqueeze(-2) + proposal_mask = proposal_target_diff.abs() > 1e-4 + if proposal_mask.any(): + proposal_ranking_loss = torch.relu(0.1 - torch.sign(proposal_target_diff) * proposal_pred_diff)[ + proposal_mask + ].mean() + else: + proposal_ranking_loss = model_output["proposal_logits"].new_tensor(0.0) + proposal_oracle_target = proposal_utility.argmax(dim=-1) + proposal_oracle_loss = F.cross_entropy(proposal_logits, proposal_oracle_target) + proposal_ranking_loss = proposal_ranking_loss + 0.5 * proposal_oracle_loss + losses["proposal_success"] = proposal_success_loss + losses["proposal_ranking"] = proposal_ranking_loss + total = ( + total + + weights.proposal_success * proposal_success_loss + + weights.proposal_ranking * proposal_ranking_loss + ) + else: + losses["proposal_success"] = model_output["action_mean"].new_tensor(0.0) + losses["proposal_ranking"] = model_output["action_mean"].new_tensor(0.0) + + if ( + "proposal_mode_logits" in model_output + and "proposal_mode_assignments" in model_output + and proposal_success_values is not None + ): + candidate_count = min( + proposal_success_values.shape[1], + proposal_utility_values.shape[1] if proposal_utility_values is not None else proposal_success_values.shape[1], + model_output["proposal_mode_assignments"].numel(), + ) + proposal_success_target = proposal_success_values[:, :candidate_count].float() + proposal_utility = proposal_utility_values + if proposal_utility is None: + proposal_risk = proposal_risk_values + if proposal_risk is None: + proposal_risk = torch.clamp( + batch["candidate_final_disturbance_cost"].float() + batch["candidate_reocclusion_rate"].float(), + 0.0, + 1.0, + ) + proposal_utility = proposal_success_target - proposal_risk[:, :candidate_count] + else: + proposal_utility = proposal_utility[:, :candidate_count].float() + mode_success_target, mode_utility_target = _proposal_mode_targets( + model_output["proposal_mode_assignments"], + proposal_success=proposal_success_target, + proposal_utility=proposal_utility, + num_modes=model_output["proposal_mode_logits"].shape[1], + ) + proposal_mode_logits = model_output["proposal_mode_logits"] + proposal_mode_success_loss = F.binary_cross_entropy_with_logits( + proposal_mode_logits, + mode_success_target, + reduction="none", + ) + proposal_mode_success_loss = proposal_mode_success_loss.mean(dim=-1) + proposal_mode_pred_diff = proposal_mode_logits.unsqueeze(-1) - proposal_mode_logits.unsqueeze(-2) + proposal_mode_target_diff = mode_utility_target.unsqueeze(-1) - mode_utility_target.unsqueeze(-2) + proposal_mode_mask = proposal_mode_target_diff.abs() > 1e-4 + proposal_mode_ranking_terms = torch.relu( + 0.1 - torch.sign(proposal_mode_target_diff) * proposal_mode_pred_diff + ) + proposal_mode_ranking_den = proposal_mode_mask.sum(dim=(-1, -2)).clamp_min(1) + proposal_mode_ranking_loss = (proposal_mode_ranking_terms * proposal_mode_mask).sum(dim=(-1, -2)) / proposal_mode_ranking_den + proposal_mode_ranking_loss = torch.where( + proposal_mode_mask.any(dim=(-1, -2)), + proposal_mode_ranking_loss, + proposal_mode_logits.new_zeros(proposal_mode_ranking_loss.shape), + ) + proposal_mode_oracle_target = mode_utility_target.argmax(dim=-1) + proposal_mode_oracle_loss = F.cross_entropy( + proposal_mode_logits, + proposal_mode_oracle_target, + reduction="none", + ) + proposal_mode_loss_per_sample = ( + proposal_mode_success_loss + + proposal_mode_ranking_loss + + 0.5 * proposal_mode_oracle_loss + ) + task_filter = weights.proposal_mode_task_filter + if task_filter: + filtered_mask = _task_name_mask_for_values( + batch, + task_names=list(task_filter), + batch_size=proposal_mode_loss_per_sample.shape[0], + device=proposal_mode_loss_per_sample.device, + ) + if filtered_mask is not None and filtered_mask.any(): + proposal_mode_loss = proposal_mode_loss_per_sample[filtered_mask].mean() + else: + proposal_mode_loss = proposal_mode_logits.new_tensor(0.0) + elif weights.proposal_mode_cloth_only: + cloth_mask = _task_name_mask( + batch, + task_name="cloth", + batch_size=proposal_mode_loss_per_sample.shape[0], + device=proposal_mode_loss_per_sample.device, + ) + if cloth_mask is not None and cloth_mask.any(): + proposal_mode_loss = proposal_mode_loss_per_sample[cloth_mask].mean() + else: + proposal_mode_loss = proposal_mode_logits.new_tensor(0.0) + else: + proposal_mode_loss = proposal_mode_loss_per_sample.mean() + losses["proposal_mode"] = proposal_mode_loss + total = total + weights.proposal_mode * proposal_mode_loss + else: + losses["proposal_mode"] = model_output["action_mean"].new_tensor(0.0) + + if "proposal_candidates" in model_output: + diversity_loss = proposal_diversity_loss(model_output["proposal_candidates"]) + losses["proposal_diversity"] = diversity_loss + total = total + weights.proposal_diversity * diversity_loss + else: + losses["proposal_diversity"] = model_output["action_mean"].new_tensor(0.0) + + if "equivariance_probe_action_mean" in model_output and "equivariance_target_action_mean" in model_output: + swap_loss = role_swap_consistency_loss( + model_output["equivariance_probe_action_mean"], + model_output["equivariance_target_action_mean"].detach(), + ) + losses["role_swap_consistency"] = swap_loss + total = total + weights.role_swap_consistency * swap_loss + else: + losses["role_swap_consistency"] = model_output["action_mean"].new_tensor(0.0) + + losses["total"] = total + return losses diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/run_experiment.py b/VLAarchtests/code/reveal_vla_bimanual/train/run_experiment.py new file mode 100644 index 0000000000000000000000000000000000000000..3ce5c90150fcf48dd3bae13d8a844c3adb812f02 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/run_experiment.py @@ -0,0 +1,322 @@ +from __future__ import annotations + +import argparse +import json +import time +from dataclasses import asdict +from pathlib import Path +from typing import Any + +import torch +from omegaconf import OmegaConf +from torch import Tensor +from torch.utils.data import DataLoader + +from models.action_decoder import ChunkDecoderConfig +from models.backbones import FrozenVLBackboneConfig +from models.multiview_fusion import MultiViewFusionConfig +from models.observation_memory import ObservationMemoryConfig +from models.planner import PlannerConfig +from models.policy import PolicyConfig +from models.reveal_head import RevealHeadConfig +from models.world_model import RevealWMConfig +from sim_reveal.dataset import RevealOfflineDataset, collect_teacher_dataset, load_teacher_dataset, save_teacher_dataset +from train.losses import LossWeights, compute_total_loss +from train.trainer import ( + BimanualTrainer, + TrainerConfig, + apply_trainable_parameter_prefixes, + apply_planner_mode, + build_policy, + planner_enabled, + policy_supports_planning, +) + + +def _move_batch_to_device(batch: dict[str, Any], device: torch.device) -> dict[str, Any]: + moved = {} + for key, value in batch.items(): + if isinstance(value, Tensor): + moved[key] = value.to(device) + else: + moved[key] = value + return moved + + +def _policy_config_from_omega(cfg: Any) -> PolicyConfig: + return PolicyConfig( + backbone=FrozenVLBackboneConfig(**OmegaConf.to_container(cfg.backbone, resolve=True)), + fusion=MultiViewFusionConfig(**OmegaConf.to_container(cfg.fusion, resolve=True)), + memory=ObservationMemoryConfig(**OmegaConf.to_container(cfg.get("memory", {}), resolve=True)), + decoder=ChunkDecoderConfig(**OmegaConf.to_container(cfg.decoder, resolve=True)), + reveal_head=RevealHeadConfig(**OmegaConf.to_container(cfg.reveal_head, resolve=True)), + world_model=RevealWMConfig(**OmegaConf.to_container(cfg.world_model, resolve=True)), + planner=PlannerConfig(**OmegaConf.to_container(cfg.planner, resolve=True)), + ) + + +def _trainer_config_from_omega(cfg: Any) -> TrainerConfig: + return TrainerConfig(**OmegaConf.to_container(cfg, resolve=True)) + + +def _loss_weights_from_omega(cfg: Any) -> LossWeights: + return LossWeights(**OmegaConf.to_container(cfg, resolve=True)) + + +def _load_init_checkpoint(model: torch.nn.Module, checkpoint_path: str | None, strict: bool) -> dict[str, Any] | None: + if not checkpoint_path: + return None + checkpoint = torch.load(Path(checkpoint_path), map_location="cpu", weights_only=False) + state_dict = checkpoint["state_dict"] + filtered_state_dict = state_dict + skipped_keys: list[str] = [] + if not strict: + current_state = model.state_dict() + filtered_state_dict = {} + for key, value in state_dict.items(): + current_value = current_state.get(key) + if current_value is None or current_value.shape != value.shape: + skipped_keys.append(key) + continue + filtered_state_dict[key] = value + incompatible = model.load_state_dict(filtered_state_dict, strict=strict) + return { + "path": str(checkpoint_path), + "loaded_keys": len(filtered_state_dict), + "skipped_shape_mismatch_keys": skipped_keys, + "missing_keys": list(incompatible.missing_keys), + "unexpected_keys": list(incompatible.unexpected_keys), + } + + +def _build_dataset_from_config(data_cfg: Any, split: str) -> dict[str, Any]: + dataset_path = data_cfg.get(f"{split}_dataset_path") + if dataset_path and Path(dataset_path).exists() and not data_cfg.get("rebuild_dataset", False): + return load_teacher_dataset(dataset_path) + + episodes = int(data_cfg[f"{split}_episodes_per_proxy"]) + dataset_bundle = collect_teacher_dataset( + proxy_names=OmegaConf.to_container(data_cfg.proxies, resolve=True), + episodes_per_proxy=episodes, + resolution=int(data_cfg.resolution), + seed=int(data_cfg.seed) + (10_000 if split == "val" else 0), + chunk_horizon=int(data_cfg.chunk_horizon), + rollout_horizon=int(data_cfg.rollout_horizon), + history_steps=int(data_cfg.get("history_steps", 2)), + planner_candidates=int(data_cfg.get("planner_candidates", 4)), + dataset_version=str(data_cfg.get("dataset_version", "reveal_proxy_v5_noleak_actionhist")), + ) + if dataset_path: + save_teacher_dataset(dataset_path, dataset_bundle) + return dataset_bundle + + +def _make_loader(samples: list[dict[str, Any]], resolution: int, batch_size: int, shuffle: bool, num_workers: int) -> DataLoader: + dataset = RevealOfflineDataset(samples, resolution=resolution) + return DataLoader( + dataset, + batch_size=batch_size, + shuffle=shuffle, + num_workers=num_workers, + pin_memory=torch.cuda.is_available(), + ) + + +def _aggregate_losses(loss_history: list[dict[str, float]]) -> dict[str, float]: + keys = sorted({key for record in loss_history for key in record}) + return { + key: sum(record.get(key, 0.0) for record in loss_history) / float(max(1, len(loss_history))) + for key in keys + } + + +def main() -> None: + parser = argparse.ArgumentParser() + parser.add_argument("--config", required=True) + parser.add_argument("--output-dir", default=None) + args = parser.parse_args() + + cfg = OmegaConf.load(args.config) + output_dir = Path(args.output_dir or cfg.output_dir) / cfg.experiment_name + output_dir.mkdir(parents=True, exist_ok=True) + + device = torch.device("cuda" if torch.cuda.is_available() and cfg.device == "cuda" else "cpu") + torch.manual_seed(int(cfg.seed)) + if torch.cuda.is_available(): + torch.cuda.manual_seed_all(int(cfg.seed)) + torch.backends.cuda.matmul.allow_tf32 = True + + train_bundle = _build_dataset_from_config(cfg.data, "train") + val_bundle = _build_dataset_from_config(cfg.data, "val") + print( + json.dumps( + { + "phase": "datasets_ready", + "train_samples": len(train_bundle["samples"]), + "val_samples": len(val_bundle["samples"]), + } + ), + flush=True, + ) + train_loader = _make_loader( + train_bundle["samples"], + resolution=int(cfg.data.resolution), + batch_size=int(cfg.optim.batch_size), + shuffle=True, + num_workers=int(cfg.optim.num_workers), + ) + val_loader = _make_loader( + val_bundle["samples"], + resolution=int(cfg.data.resolution), + batch_size=int(cfg.optim.batch_size), + shuffle=False, + num_workers=int(cfg.optim.num_workers), + ) + print(json.dumps({"phase": "loaders_ready"}), flush=True) + + policy_config = _policy_config_from_omega(cfg.policy) + trainer_config = _trainer_config_from_omega(cfg.trainer) + loss_weights = _loss_weights_from_omega(cfg.loss_weights) + model = build_policy(policy_config, trainer_config).to(device) + init_info = _load_init_checkpoint(model, cfg.get("init_checkpoint"), bool(cfg.get("init_strict", False))) + frozen_modules = apply_planner_mode(model, trainer_config) + trainable_parameter_names = apply_trainable_parameter_prefixes(model, trainer_config) + trainable_parameters = [parameter for parameter in model.parameters() if parameter.requires_grad] + optimizer = torch.optim.AdamW(trainable_parameters, lr=float(cfg.optim.lr), weight_decay=float(cfg.optim.weight_decay)) + trainer = BimanualTrainer(model=model, optimizer=optimizer, config=trainer_config) + + history: list[dict[str, Any]] = [] + best_val = float("inf") + best_checkpoint = output_dir / "checkpoint_best.pt" + train_start_time = time.time() + if device.type == "cuda": + torch.cuda.reset_peak_memory_stats(device) + print(json.dumps({"phase": "training_start", "epochs": int(cfg.optim.epochs)}), flush=True) + + for epoch in range(int(cfg.optim.epochs)): + epoch_start_time = time.time() + model.train() + train_losses: list[dict[str, float]] = [] + for batch in train_loader: + moved = _move_batch_to_device(batch, device) + loss_dict = trainer.training_step(moved, loss_weights=loss_weights) + train_losses.append({key: float(value.detach().cpu()) for key, value in loss_dict.items()}) + + model.eval() + val_losses: list[dict[str, float]] = [] + with torch.no_grad(): + for batch in val_loader: + moved = _move_batch_to_device(batch, device) + forward_kwargs = { + "images": moved["images"], + "proprio": moved["proprio"], + "texts": moved["texts"], + "task_names": moved.get("task_name"), + "task_ids": moved.get("task_id"), + "history_images": moved.get("history_images"), + "history_proprio": moved.get("history_proprio"), + "history_actions": moved.get("history_actions"), + "depths": moved.get("depths"), + "depth_valid": moved.get("depth_valid"), + "camera_intrinsics": moved.get("camera_intrinsics"), + "camera_extrinsics": moved.get("camera_extrinsics"), + "history_depths": moved.get("history_depths"), + "history_depth_valid": moved.get("history_depth_valid"), + "history_camera_intrinsics": moved.get("history_camera_intrinsics"), + "history_camera_extrinsics": moved.get("history_camera_extrinsics"), + } + if policy_supports_planning(trainer_config.policy_type): + forward_kwargs["plan"] = planner_enabled(trainer_config, during_eval=True) + forward_kwargs["support_mode_conditioning"] = trainer_config.support_mode_conditioning + if "candidate_action_chunks" in moved: + forward_kwargs["candidate_chunks_override"] = moved["candidate_action_chunks"] + if trainer_config.policy_type == "elastic_reveal": + forward_kwargs["depths"] = moved.get("depths") + forward_kwargs["depth_valid"] = moved.get("depth_valid") + forward_kwargs["camera_intrinsics"] = moved.get("camera_intrinsics") + forward_kwargs["camera_extrinsics"] = moved.get("camera_extrinsics") + forward_kwargs["history_depths"] = moved.get("history_depths") + forward_kwargs["history_depth_valid"] = moved.get("history_depth_valid") + forward_kwargs["history_camera_intrinsics"] = moved.get("history_camera_intrinsics") + forward_kwargs["history_camera_extrinsics"] = moved.get("history_camera_extrinsics") + forward_kwargs["history_camera_valid_mask"] = moved.get("history_camera_valid_mask") + forward_kwargs["use_depth"] = trainer_config.use_depth + forward_kwargs["use_world_model"] = trainer_config.use_world_model + forward_kwargs["use_planner"] = planner_enabled(trainer_config, during_eval=True) + forward_kwargs["use_role_tokens"] = trainer_config.use_role_tokens + forward_kwargs["history_steps_override"] = trainer_config.history_steps_override + forward_kwargs["compute_equivariance_probe"] = False + elif trainer_config.policy_type == "interaction_state": + forward_kwargs["use_role_tokens"] = trainer_config.use_role_tokens + forward_kwargs["history_steps_override"] = trainer_config.history_steps_override + output = model(**forward_kwargs) + losses = compute_total_loss(output, moved, weights=loss_weights) + val_losses.append({key: float(value.detach().cpu()) for key, value in losses.items()}) + + train_summary = _aggregate_losses(train_losses) + val_summary = _aggregate_losses(val_losses) + record = { + "epoch": epoch, + "train": train_summary, + "val": val_summary, + } + history.append(record) + print( + json.dumps( + { + "phase": "epoch_complete", + "epoch": epoch, + "train_total": train_summary["total"], + "val_total": val_summary["total"], + "epoch_time_sec": float(time.time() - epoch_start_time), + } + ), + flush=True, + ) + if val_summary["total"] <= best_val: + best_val = val_summary["total"] + torch.save( + { + "experiment_name": cfg.experiment_name, + "policy_config": asdict(policy_config), + "trainer_config": asdict(trainer_config), + "loss_weights": asdict(loss_weights), + "state_dict": model.state_dict(), + "history": history, + "data_resolution": int(cfg.data.resolution), + "init_info": init_info, + }, + best_checkpoint, + ) + + metrics_path = output_dir / "metrics.json" + metrics_path.write_text(json.dumps(history, indent=2), encoding="utf-8") + (output_dir / "config_resolved.yaml").write_text(OmegaConf.to_yaml(cfg, resolve=True), encoding="utf-8") + train_time_sec = float(time.time() - train_start_time) + peak_gpu_memory_mb = ( + float(torch.cuda.max_memory_allocated(device) / (1024.0 * 1024.0)) + if device.type == "cuda" + else 0.0 + ) + summary = { + "experiment_name": cfg.experiment_name, + "device": str(device), + "best_checkpoint": str(best_checkpoint), + "final_train_total": history[-1]["train"]["total"], + "final_val_total": history[-1]["val"]["total"], + "train_time_sec": train_time_sec, + "peak_gpu_memory_mb": peak_gpu_memory_mb, + "num_train_samples": len(train_bundle["samples"]), + "num_val_samples": len(val_bundle["samples"]), + "planner_mode": trainer_config.planner_mode, + "frozen_modules": frozen_modules, + "trainable_parameter_prefixes": list(trainer_config.trainable_parameter_prefixes), + "trainable_parameter_names": trainable_parameter_names, + "init_info": init_info, + } + (output_dir / "summary.json").write_text(json.dumps(summary, indent=2), encoding="utf-8") + print(json.dumps(summary, indent=2)) + + +if __name__ == "__main__": + main() diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/run_rlbench_experiment.py b/VLAarchtests/code/reveal_vla_bimanual/train/run_rlbench_experiment.py new file mode 100644 index 0000000000000000000000000000000000000000..df515511e0a444d429021a611797e11051482da1 --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/run_rlbench_experiment.py @@ -0,0 +1,273 @@ +from __future__ import annotations + +import argparse +import json +import time +from dataclasses import asdict +from pathlib import Path +from typing import Any + +import torch +from omegaconf import OmegaConf +from torch import Tensor +from torch.utils.data import DataLoader, WeightedRandomSampler + +from sim_rlbench.dataset import RLBenchOfflineChunkDataset +from train.run_experiment import ( + _aggregate_losses, + _loss_weights_from_omega, + _move_batch_to_device, + _policy_config_from_omega, + _trainer_config_from_omega, +) +from train.trainer import ( + BimanualTrainer, + apply_trainable_parameter_prefixes, + apply_planner_mode, + build_policy, + planner_enabled, + policy_supports_planning, +) + + +def _make_loader(dataset: RLBenchOfflineChunkDataset, batch_size: int, shuffle: bool, num_workers: int) -> DataLoader: + return DataLoader( + dataset, + batch_size=batch_size, + shuffle=shuffle, + num_workers=num_workers, + pin_memory=torch.cuda.is_available(), + ) + + +def _make_train_loader( + dataset: RLBenchOfflineChunkDataset, + batch_size: int, + num_workers: int, + sampler_min_norm: float, + sampler_power: float, +) -> DataLoader: + if float(sampler_min_norm) > 0.0 and float(sampler_power) > 0.0: + weights = dataset.sample_weights(min_norm=float(sampler_min_norm), power=float(sampler_power)) + sampler = WeightedRandomSampler(weights=weights.double(), num_samples=len(dataset), replacement=True) + return DataLoader( + dataset, + batch_size=batch_size, + shuffle=False, + sampler=sampler, + num_workers=num_workers, + pin_memory=torch.cuda.is_available(), + ) + return _make_loader(dataset, batch_size=batch_size, shuffle=True, num_workers=num_workers) + + +def _load_init_checkpoint(model: torch.nn.Module, checkpoint_path: str | None, strict: bool) -> dict[str, Any] | None: + if not checkpoint_path: + return None + checkpoint = torch.load(Path(checkpoint_path), map_location="cpu", weights_only=False) + state_dict = checkpoint["state_dict"] + filtered_state_dict = state_dict + skipped_keys: list[str] = [] + if not strict: + current_state = model.state_dict() + filtered_state_dict = {} + for key, value in state_dict.items(): + current_value = current_state.get(key) + if current_value is None or current_value.shape != value.shape: + skipped_keys.append(key) + continue + filtered_state_dict[key] = value + incompatible = model.load_state_dict(filtered_state_dict, strict=strict) + return { + "path": str(checkpoint_path), + "loaded_keys": len(filtered_state_dict), + "skipped_shape_mismatch_keys": skipped_keys, + "missing_keys": list(incompatible.missing_keys), + "unexpected_keys": list(incompatible.unexpected_keys), + } + + +def main() -> None: + parser = argparse.ArgumentParser() + parser.add_argument("--config", required=True) + parser.add_argument("--output-dir", default=None) + args = parser.parse_args() + + cfg = OmegaConf.load(args.config) + output_dir = Path(args.output_dir or cfg.output_dir) / cfg.experiment_name + output_dir.mkdir(parents=True, exist_ok=True) + + device = torch.device("cuda" if torch.cuda.is_available() and cfg.device == "cuda" else "cpu") + torch.manual_seed(int(cfg.seed)) + if torch.cuda.is_available(): + torch.cuda.manual_seed_all(int(cfg.seed)) + torch.backends.cuda.matmul.allow_tf32 = True + + train_dataset = RLBenchOfflineChunkDataset( + dataset_root=cfg.data.dataset_root, + tasks=OmegaConf.to_container(cfg.data.tasks, resolve=True), + episode_indices=OmegaConf.to_container(cfg.data.train_episodes, resolve=True), + resolution=int(cfg.data.resolution), + chunk_size=int(cfg.data.chunk_horizon), + proprio_dim=int(cfg.data.proprio_dim), + history_steps=int(cfg.data.get("history_steps", 2)), + supervise_action_steps=cfg.data.get("supervise_action_steps"), + max_samples=cfg.data.get("max_train_samples"), + ) + val_dataset = RLBenchOfflineChunkDataset( + dataset_root=cfg.data.dataset_root, + tasks=OmegaConf.to_container(cfg.data.tasks, resolve=True), + episode_indices=OmegaConf.to_container(cfg.data.val_episodes, resolve=True), + resolution=int(cfg.data.resolution), + chunk_size=int(cfg.data.chunk_horizon), + proprio_dim=int(cfg.data.proprio_dim), + history_steps=int(cfg.data.get("history_steps", 2)), + supervise_action_steps=cfg.data.get("supervise_action_steps"), + max_samples=cfg.data.get("max_val_samples"), + ) + train_loader = _make_train_loader( + train_dataset, + batch_size=int(cfg.optim.batch_size), + num_workers=int(cfg.optim.num_workers), + sampler_min_norm=float(cfg.optim.get("weighted_action_sampler_min_norm", 0.0)), + sampler_power=float(cfg.optim.get("weighted_action_sampler_power", 0.0)), + ) + val_loader = _make_loader( + val_dataset, + batch_size=int(cfg.optim.batch_size), + shuffle=False, + num_workers=int(cfg.optim.num_workers), + ) + print( + json.dumps( + { + "phase": "datasets_ready", + "train_samples": len(train_dataset), + "val_samples": len(val_dataset), + } + ), + flush=True, + ) + + policy_config = _policy_config_from_omega(cfg.policy) + trainer_config = _trainer_config_from_omega(cfg.trainer) + loss_weights = _loss_weights_from_omega(cfg.loss_weights) + model = build_policy(policy_config, trainer_config).to(device) + init_info = _load_init_checkpoint(model, cfg.get("init_checkpoint"), bool(cfg.get("init_strict", False))) + frozen_modules = apply_planner_mode(model, trainer_config) + trainable_parameter_names = apply_trainable_parameter_prefixes(model, trainer_config) + + trainable_parameters = [parameter for parameter in model.parameters() if parameter.requires_grad] + optimizer = torch.optim.AdamW(trainable_parameters, lr=float(cfg.optim.lr), weight_decay=float(cfg.optim.weight_decay)) + trainer = BimanualTrainer(model=model, optimizer=optimizer, config=trainer_config) + + history: list[dict[str, Any]] = [] + best_val = float("inf") + best_checkpoint = output_dir / "checkpoint_best.pt" + train_start_time = time.time() + print(json.dumps({"phase": "training_start", "epochs": int(cfg.optim.epochs)}), flush=True) + + for epoch in range(int(cfg.optim.epochs)): + epoch_start_time = time.time() + model.train() + train_losses: list[dict[str, float]] = [] + for batch in train_loader: + moved = _move_batch_to_device(batch, device) + loss_dict = trainer.training_step(moved, loss_weights=loss_weights) + train_losses.append({key: float(value.detach().cpu()) for key, value in loss_dict.items()}) + + model.eval() + val_losses: list[dict[str, float]] = [] + with torch.no_grad(): + for batch in val_loader: + moved = _move_batch_to_device(batch, device) + forward_kwargs = { + "images": moved["images"], + "proprio": moved["proprio"], + "texts": moved["texts"], + "history_images": moved.get("history_images"), + "history_proprio": moved.get("history_proprio"), + "history_actions": moved.get("history_actions"), + "depths": moved.get("depths"), + "depth_valid": moved.get("depth_valid"), + "camera_intrinsics": moved.get("camera_intrinsics"), + "camera_extrinsics": moved.get("camera_extrinsics"), + "history_depths": moved.get("history_depths"), + "history_depth_valid": moved.get("history_depth_valid"), + "history_camera_intrinsics": moved.get("history_camera_intrinsics"), + "history_camera_extrinsics": moved.get("history_camera_extrinsics"), + } + if policy_supports_planning(trainer_config.policy_type): + forward_kwargs["plan"] = planner_enabled(trainer_config, during_eval=True) + forward_kwargs["support_mode_conditioning"] = trainer_config.support_mode_conditioning + output = model(**forward_kwargs) + from train.losses import compute_total_loss + + losses = compute_total_loss(output, moved, weights=loss_weights) + val_losses.append({key: float(value.detach().cpu()) for key, value in losses.items()}) + + train_summary = _aggregate_losses(train_losses) + val_summary = _aggregate_losses(val_losses) + record = {"epoch": epoch, "train": train_summary, "val": val_summary} + history.append(record) + epoch_elapsed = time.time() - epoch_start_time + improved = val_summary["total"] <= best_val + if val_summary["total"] <= best_val: + best_val = val_summary["total"] + torch.save( + { + "experiment_name": cfg.experiment_name, + "policy_config": asdict(policy_config), + "trainer_config": asdict(trainer_config), + "loss_weights": asdict(loss_weights), + "state_dict": model.state_dict(), + "history": history, + "dataset_summary": { + "train": train_dataset.summary(), + "val": val_dataset.summary(), + }, + "init_info": init_info, + }, + best_checkpoint, + ) + print( + json.dumps( + { + "phase": "epoch_complete", + "epoch": epoch, + "train_total": train_summary["total"], + "val_total": val_summary["total"], + "best_val_total": best_val, + "best_checkpoint_updated": improved, + "epoch_seconds": epoch_elapsed, + } + ), + flush=True, + ) + + metrics_path = output_dir / "metrics.json" + metrics_path.write_text(json.dumps(history, indent=2), encoding="utf-8") + (output_dir / "config_resolved.yaml").write_text(OmegaConf.to_yaml(cfg, resolve=True), encoding="utf-8") + summary = { + "experiment_name": cfg.experiment_name, + "device": str(device), + "best_checkpoint": str(best_checkpoint), + "final_train_total": history[-1]["train"]["total"], + "final_val_total": history[-1]["val"]["total"], + "train_dataset": train_dataset.summary(), + "val_dataset": val_dataset.summary(), + "init_info": init_info, + "planner_mode": trainer_config.planner_mode, + "plan_enabled_for_train": planner_enabled(trainer_config, during_eval=False), + "plan_enabled_for_eval": planner_enabled(trainer_config, during_eval=True), + "frozen_modules": frozen_modules, + "trainable_parameter_prefixes": list(trainer_config.trainable_parameter_prefixes), + "trainable_parameter_names": trainable_parameter_names, + "train_seconds": time.time() - train_start_time, + } + (output_dir / "summary.json").write_text(json.dumps(summary, indent=2), encoding="utf-8") + print(json.dumps(summary, indent=2)) + + +if __name__ == "__main__": + main() diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/smoke_checks.py b/VLAarchtests/code/reveal_vla_bimanual/train/smoke_checks.py new file mode 100644 index 0000000000000000000000000000000000000000..6b0f2055677b975873ef6ba71a2c1bf5a290133d --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/smoke_checks.py @@ -0,0 +1,371 @@ +from __future__ import annotations + +import argparse +import json +from dataclasses import asdict +from pathlib import Path +from typing import Any + +import torch +from torch.utils.data import DataLoader + +from models.action_decoder import ChunkDecoderConfig +from models.backbones import FrozenVLBackboneConfig +from models.multiview_fusion import MultiViewFusionConfig +from models.observation_memory import ObservationMemoryConfig +from models.planner import PlannerConfig +from models.policy import PolicyConfig +from models.reveal_head import RevealHeadConfig +from models.world_model import RevealWMConfig +from sim_reveal.dataset import RGBD_PROXY_DATASET_VERSION, collect_teacher_dataset, dataset_from_bundle, load_teacher_dataset +from train.losses import LossWeights, compute_total_loss +from train.trainer import TrainerConfig, apply_planner_mode, build_policy, planner_enabled + + +def _move_batch_to_device(batch: dict[str, Any], device: torch.device) -> dict[str, Any]: + moved = {} + for key, value in batch.items(): + if isinstance(value, torch.Tensor): + moved[key] = value.to(device) + else: + moved[key] = value + return moved + + +def _small_policy_config() -> PolicyConfig: + hidden_dim = 64 + return PolicyConfig( + backbone=FrozenVLBackboneConfig( + model_name="openai/clip-vit-base-patch32", + hidden_dim=hidden_dim, + max_text_tokens=32, + freeze_backbone=True, + gradient_checkpointing=False, + use_dummy_backbone=True, + ), + fusion=MultiViewFusionConfig( + hidden_dim=hidden_dim, + num_cameras=3, + num_layers=2, + num_heads=4, + ff_dim=128, + dropout=0.1, + proprio_dim=32, + proprio_tokens=1, + ), + memory=ObservationMemoryConfig( + hidden_dim=hidden_dim, + history_steps=6, + num_layers=2, + dropout=0.1, + memory_bank_size=4, + num_heads=4, + max_history_steps=8, + ), + decoder=ChunkDecoderConfig( + hidden_dim=hidden_dim, + num_heads=4, + num_layers=2, + ff_dim=128, + dropout=0.1, + chunk_size=8, + action_dim=14, + arm_action_dim=7, + num_candidates=4, + num_phases=5, + num_arm_roles=4, + ), + reveal_head=RevealHeadConfig( + hidden_dim=hidden_dim, + num_support_modes=3, + num_approach_templates=32, + rollout_horizon=3, + belief_map_size=32, + field_size=16, + num_heads=4, + predict_belief_map=True, + num_phases=5, + num_arm_roles=4, + num_interaction_tokens=8, + ), + world_model=RevealWMConfig( + hidden_dim=hidden_dim, + action_dim=14, + num_support_modes=3, + num_approach_templates=32, + rollout_horizon=3, + field_size=16, + num_heads=4, + num_phases=5, + num_arm_roles=4, + num_interaction_tokens=8, + ), + planner=PlannerConfig( + hidden_dim=hidden_dim, + num_candidates=4, + action_dim=14, + num_support_modes=3, + utility_margin=0.1, + num_heads=4, + num_layers=2, + num_phases=5, + num_arm_roles=4, + ), + ) + + +def _trainer_config(planner_mode: str = "trainable", policy_type: str = "interaction_state") -> TrainerConfig: + return TrainerConfig( + policy_type=policy_type, + use_bf16=False, + grad_clip_norm=1.0, + freeze_backbone=True, + gradient_checkpointing=False, + plan_during_train=True, + plan_during_eval=True, + support_mode_conditioning=True, + planner_mode=planner_mode, + ) + + +def _synthetic_rlbench_batch( + batch_size: int, + chunk_size: int, + history_steps: int, + resolution: int, + device: torch.device, +) -> dict[str, Any]: + images = torch.rand(batch_size, 3, 3, resolution, resolution, device=device) + history_images = torch.rand(batch_size, history_steps, 3, 3, resolution, resolution, device=device) + proprio = torch.rand(batch_size, 32, device=device) + history_proprio = torch.rand(batch_size, history_steps, 32, device=device) + history_actions = torch.rand(batch_size, history_steps, 14, device=device) + action_chunk = torch.rand(batch_size, chunk_size, 14, device=device) + return { + "images": images, + "history_images": history_images, + "history_proprio": history_proprio, + "history_actions": history_actions, + "proprio": proprio, + "texts": ["synthetic dual-arm RLBench smoke task"] * batch_size, + "action_chunk": action_chunk, + } + + +def _check_output_shapes(outputs: dict[str, Any], batch_size: int, num_candidates: int, chunk_size: int) -> None: + required = ( + "action_mean", + "candidate_chunks", + "planned_chunk", + "interaction_state", + "reveal_state", + "planned_rollout", + "planner_success_logits", + "planner_risk_values", + "planner_scores", + "best_candidate_indices", + ) + missing = [key for key in required if key not in outputs] + if missing: + raise AssertionError(f"Missing keys from interaction policy output: {missing}") + if outputs["candidate_chunks"].shape != (batch_size, num_candidates, chunk_size, 14): + raise AssertionError(f"Unexpected candidate chunk shape: {tuple(outputs['candidate_chunks'].shape)}") + if outputs["planned_chunk"].shape != (batch_size, chunk_size, 14): + raise AssertionError(f"Unexpected planned chunk shape: {tuple(outputs['planned_chunk'].shape)}") + if outputs["planner_scores"].shape != (batch_size, num_candidates): + raise AssertionError(f"Unexpected planner score shape: {tuple(outputs['planner_scores'].shape)}") + rollout = outputs["planned_rollout"] + if rollout["phase_logits"].shape[:3] != (batch_size, num_candidates, chunk_size): + raise AssertionError(f"Unexpected rollout phase shape: {tuple(rollout['phase_logits'].shape)}") + + +def main() -> None: + parser = argparse.ArgumentParser() + parser.add_argument("--proxy-dataset", required=True) + parser.add_argument("--output-dir", required=True) + parser.add_argument("--batch-size", type=int, default=2) + args = parser.parse_args() + + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + policy_config = _small_policy_config() + loss_weights = LossWeights() + + proxy_bundle = load_teacher_dataset(args.proxy_dataset) + proxy_dataset = dataset_from_bundle(proxy_bundle, resolution=int(proxy_bundle["resolution"])) + proxy_loader = DataLoader(proxy_dataset, batch_size=args.batch_size, shuffle=False, num_workers=0) + proxy_batch = _move_batch_to_device(next(iter(proxy_loader)), device) + + proxy_trainer_config = _trainer_config(planner_mode="trainable") + proxy_model = build_policy(policy_config, proxy_trainer_config).to(device) + proxy_optimizer = torch.optim.AdamW( + [parameter for parameter in proxy_model.parameters() if parameter.requires_grad], + lr=1e-3, + ) + proxy_model.train() + proxy_optimizer.zero_grad(set_to_none=True) + proxy_outputs = proxy_model( + images=proxy_batch["images"], + proprio=proxy_batch["proprio"], + texts=proxy_batch["texts"], + history_images=proxy_batch.get("history_images"), + history_proprio=proxy_batch.get("history_proprio"), + history_actions=proxy_batch.get("history_actions"), + plan=True, + candidate_chunks_override=proxy_batch["candidate_action_chunks"], + ) + _check_output_shapes( + proxy_outputs, + batch_size=proxy_batch["images"].shape[0], + num_candidates=proxy_batch["candidate_action_chunks"].shape[1], + chunk_size=proxy_batch["action_chunk"].shape[1], + ) + proxy_losses = compute_total_loss(proxy_outputs, proxy_batch, weights=loss_weights) + proxy_losses["total"].backward() + proxy_grad_norm = float( + torch.nn.utils.clip_grad_norm_(proxy_model.parameters(), max_norm=10.0).detach().cpu() + ) + proxy_optimizer.step() + + rgbd_bundle = collect_teacher_dataset( + episodes_per_proxy=1, + resolution=32, + history_steps=2, + planner_candidates=4, + dataset_version=RGBD_PROXY_DATASET_VERSION, + ) + rgbd_dataset = dataset_from_bundle(rgbd_bundle, resolution=int(rgbd_bundle["resolution"])) + rgbd_loader = DataLoader(rgbd_dataset, batch_size=args.batch_size, shuffle=False, num_workers=0) + rgbd_batch = _move_batch_to_device(next(iter(rgbd_loader)), device) + elastic_trainer_config = _trainer_config(planner_mode="trainable", policy_type="elastic_reveal") + elastic_model = build_policy(policy_config, elastic_trainer_config).to(device) + elastic_model.eval() + with torch.no_grad(): + rgb_only_outputs = elastic_model( + images=rgbd_batch["images"], + proprio=rgbd_batch["proprio"], + texts=rgbd_batch["texts"], + history_images=rgbd_batch.get("history_images"), + history_proprio=rgbd_batch.get("history_proprio"), + history_actions=rgbd_batch.get("history_actions"), + plan=True, + use_depth=False, + ) + rgbd_outputs = elastic_model( + images=rgbd_batch["images"], + depths=rgbd_batch["depths"], + depth_valid=rgbd_batch["depth_valid"], + camera_intrinsics=rgbd_batch["camera_intrinsics"], + camera_extrinsics=rgbd_batch["camera_extrinsics"], + proprio=rgbd_batch["proprio"], + texts=rgbd_batch["texts"], + history_images=rgbd_batch.get("history_images"), + history_depths=rgbd_batch.get("history_depths"), + history_depth_valid=rgbd_batch.get("history_depth_valid"), + history_proprio=rgbd_batch.get("history_proprio"), + history_actions=rgbd_batch.get("history_actions"), + plan=True, + use_depth=True, + compute_equivariance_probe=True, + ) + noplanner_outputs = elastic_model( + images=rgbd_batch["images"], + depths=rgbd_batch["depths"], + depth_valid=rgbd_batch["depth_valid"], + proprio=rgbd_batch["proprio"], + texts=rgbd_batch["texts"], + history_images=rgbd_batch.get("history_images"), + history_depths=rgbd_batch.get("history_depths"), + history_depth_valid=rgbd_batch.get("history_depth_valid"), + history_proprio=rgbd_batch.get("history_proprio"), + history_actions=rgbd_batch.get("history_actions"), + plan=True, + use_depth=True, + use_planner=False, + ) + dataset_v6_required = ( + "depths", + "depth_valid", + "visibility_map", + "clearance_map", + "support_stability", + "reocclusion_target", + ) + missing_v6_fields = [key for key in dataset_v6_required if key not in rgbd_batch] + + rlbench_trainer_config = _trainer_config(planner_mode="proxy_pretrained") + rlbench_model = build_policy(policy_config, rlbench_trainer_config).to(device) + frozen_modules = apply_planner_mode(rlbench_model, rlbench_trainer_config) + rlbench_optimizer = torch.optim.AdamW( + [parameter for parameter in rlbench_model.parameters() if parameter.requires_grad], + lr=1e-3, + ) + rlbench_model.train() + rlbench_batch = _synthetic_rlbench_batch( + batch_size=args.batch_size, + chunk_size=policy_config.decoder.chunk_size, + history_steps=policy_config.memory.history_steps, + resolution=64, + device=device, + ) + rlbench_optimizer.zero_grad(set_to_none=True) + rlbench_outputs = rlbench_model( + images=rlbench_batch["images"], + proprio=rlbench_batch["proprio"], + texts=rlbench_batch["texts"], + history_images=rlbench_batch.get("history_images"), + history_proprio=rlbench_batch.get("history_proprio"), + history_actions=rlbench_batch.get("history_actions"), + plan=True, + ) + _check_output_shapes( + rlbench_outputs, + batch_size=rlbench_batch["images"].shape[0], + num_candidates=policy_config.decoder.num_candidates, + chunk_size=policy_config.decoder.chunk_size, + ) + rlbench_losses = compute_total_loss(rlbench_outputs, rlbench_batch, weights=loss_weights) + rlbench_losses["total"].backward() + rlbench_grad_norm = float( + torch.nn.utils.clip_grad_norm_(rlbench_model.parameters(), max_norm=10.0).detach().cpu() + ) + rlbench_optimizer.step() + + planner_gate = planner_enabled(rlbench_trainer_config, during_eval=True) + if not planner_gate: + raise AssertionError("planner_enabled should be true for interaction_state with planner_mode=proxy_pretrained") + + report = { + "proxy": { + "losses": {key: float(value.detach().cpu()) for key, value in proxy_losses.items()}, + "grad_norm": proxy_grad_norm, + "candidate_shape": list(proxy_outputs["candidate_chunks"].shape), + "rollout_phase_shape": list(proxy_outputs["planned_rollout"]["phase_logits"].shape), + }, + "rlbench": { + "losses": {key: float(value.detach().cpu()) for key, value in rlbench_losses.items()}, + "grad_norm": rlbench_grad_norm, + "candidate_shape": list(rlbench_outputs["candidate_chunks"].shape), + "rollout_phase_shape": list(rlbench_outputs["planned_rollout"]["phase_logits"].shape), + "planner_enabled_for_eval": planner_gate, + "frozen_modules": frozen_modules, + }, + "elastic_reveal": { + "rgb_only_candidate_shape": list(rgb_only_outputs["candidate_chunks"].shape), + "rgbd_candidate_shape": list(rgbd_outputs["candidate_chunks"].shape), + "rgbd_topk_shape": list(rgbd_outputs["planner_topk_indices"].shape), + "rgbd_rollout_shape": list(rgbd_outputs["planned_rollout"]["target_belief_field"].shape), + "noplanner_chunk_shape": list(noplanner_outputs["planned_chunk"].shape), + "equivariance_probe_shape": list(rgbd_outputs["equivariance_probe_action_mean"].shape), + "dataset_v6_missing_fields": missing_v6_fields, + }, + "policy_config": asdict(policy_config), + } + + output_dir = Path(args.output_dir) + output_dir.mkdir(parents=True, exist_ok=True) + (output_dir / "smoke_checks.json").write_text(json.dumps(report, indent=2), encoding="utf-8") + print(json.dumps(report, indent=2)) + + +if __name__ == "__main__": + main() diff --git a/VLAarchtests/code/reveal_vla_bimanual/train/trainer.py b/VLAarchtests/code/reveal_vla_bimanual/train/trainer.py new file mode 100644 index 0000000000000000000000000000000000000000..b54ff3ece05e6b18cc955ff861749e0442b89f7f --- /dev/null +++ b/VLAarchtests/code/reveal_vla_bimanual/train/trainer.py @@ -0,0 +1,160 @@ +from __future__ import annotations + +from dataclasses import dataclass +from typing import Sequence + +import torch +from torch import Tensor, nn + +from models.policy import ( + BackboneOnlyPolicy, + ElasticRevealBimanualPolicy, + InteractionBimanualPolicy, + PolicyConfig, + RevealBimanualPolicy, +) +from train.losses import LossWeights, compute_total_loss + + +@dataclass +class TrainerConfig: + policy_type: str = "backbone_only" + use_bf16: bool = True + grad_clip_norm: float = 1.0 + freeze_backbone: bool = True + gradient_checkpointing: bool = True + plan_during_train: bool = True + plan_during_eval: bool = True + support_mode_conditioning: bool = True + planner_mode: str = "trainable" + use_depth: bool = True + use_world_model: bool = True + use_role_tokens: bool = True + history_steps_override: int | None = None + compute_equivariance_probe: bool = True + trainable_parameter_prefixes: tuple[str, ...] = () + + +def build_policy(config: PolicyConfig, trainer_config: TrainerConfig) -> nn.Module: + config.backbone.freeze_backbone = trainer_config.freeze_backbone + config.backbone.gradient_checkpointing = trainer_config.gradient_checkpointing + if trainer_config.policy_type == "elastic_reveal": + return ElasticRevealBimanualPolicy(config) + if trainer_config.policy_type == "reveal_state": + return RevealBimanualPolicy(config) + if trainer_config.policy_type == "interaction_state": + return InteractionBimanualPolicy(config) + return BackboneOnlyPolicy(config) + + +def policy_supports_planning(policy_type: str) -> bool: + return policy_type in {"reveal_state", "interaction_state", "elastic_reveal"} + + +def planner_enabled(trainer_config: TrainerConfig, during_eval: bool) -> bool: + if not policy_supports_planning(trainer_config.policy_type): + return False + if trainer_config.planner_mode == "off": + return False + if during_eval: + return trainer_config.plan_during_eval + return trainer_config.plan_during_train + + +def apply_planner_mode(model: nn.Module, trainer_config: TrainerConfig) -> list[str]: + if trainer_config.planner_mode != "proxy_pretrained": + return [] + frozen_modules = [] + for module_name in ("interaction_head", "world_model", "planner"): + module = getattr(model, module_name, None) + if module is None: + continue + frozen_modules.append(module_name) + for parameter in module.parameters(): + parameter.requires_grad = False + return frozen_modules + + +def apply_trainable_parameter_prefixes(model: nn.Module, trainer_config: TrainerConfig) -> list[str]: + prefixes = tuple(str(prefix) for prefix in trainer_config.trainable_parameter_prefixes) + if not prefixes: + return [] + matched = [] + for name, parameter in model.named_parameters(): + trainable = any(name.startswith(prefix) for prefix in prefixes) + parameter.requires_grad = trainable + if trainable: + matched.append(name) + return matched + + +class BimanualTrainer: + def __init__(self, model: nn.Module, optimizer: torch.optim.Optimizer, config: TrainerConfig) -> None: + self.model = model + self.optimizer = optimizer + self.config = config + + def _autocast_context(self) -> torch.autocast: + if self.config.use_bf16 and torch.cuda.is_available(): + return torch.autocast(device_type="cuda", dtype=torch.bfloat16) + return torch.autocast(device_type="cpu", enabled=False) + + def training_step(self, batch: dict[str, Tensor | Sequence[str]], loss_weights: LossWeights | None = None) -> dict[str, Tensor]: + self.optimizer.zero_grad(set_to_none=True) + images = batch["images"] + proprio = batch["proprio"] + texts = batch.get("texts") + language_tokens = batch.get("language_tokens") + with self._autocast_context(): + task_names = batch.get("task_name") + texts_value = texts if isinstance(texts, Sequence) and not isinstance(texts, str) else None + task_name_value = task_names if isinstance(task_names, Sequence) and not isinstance(task_names, str) else None + forward_kwargs = { + "images": images, + "proprio": proprio, + "texts": texts_value, + "task_names": task_name_value, + "task_ids": batch.get("task_id"), + "language_tokens": language_tokens if isinstance(language_tokens, dict) else None, + "history_images": batch.get("history_images"), + "history_proprio": batch.get("history_proprio"), + "history_actions": batch.get("history_actions"), + "depths": batch.get("depths"), + "depth_valid": batch.get("depth_valid"), + "camera_intrinsics": batch.get("camera_intrinsics"), + "camera_extrinsics": batch.get("camera_extrinsics"), + "history_depths": batch.get("history_depths"), + "history_depth_valid": batch.get("history_depth_valid"), + "history_camera_intrinsics": batch.get("history_camera_intrinsics"), + "history_camera_extrinsics": batch.get("history_camera_extrinsics"), + } + if policy_supports_planning(self.config.policy_type): + forward_kwargs["plan"] = planner_enabled(self.config, during_eval=False) + forward_kwargs["support_mode_conditioning"] = self.config.support_mode_conditioning + if "candidate_action_chunks" in batch: + forward_kwargs["candidate_chunks_override"] = batch["candidate_action_chunks"] + if self.config.policy_type == "elastic_reveal": + forward_kwargs["depths"] = batch.get("depths") + forward_kwargs["depth_valid"] = batch.get("depth_valid") + forward_kwargs["camera_intrinsics"] = batch.get("camera_intrinsics") + forward_kwargs["camera_extrinsics"] = batch.get("camera_extrinsics") + forward_kwargs["history_depths"] = batch.get("history_depths") + forward_kwargs["history_depth_valid"] = batch.get("history_depth_valid") + forward_kwargs["history_camera_intrinsics"] = batch.get("history_camera_intrinsics") + forward_kwargs["history_camera_extrinsics"] = batch.get("history_camera_extrinsics") + forward_kwargs["history_camera_valid_mask"] = batch.get("history_camera_valid_mask") + forward_kwargs["use_depth"] = self.config.use_depth + forward_kwargs["use_world_model"] = self.config.use_world_model + forward_kwargs["use_planner"] = planner_enabled(self.config, during_eval=False) + forward_kwargs["use_role_tokens"] = self.config.use_role_tokens + forward_kwargs["history_steps_override"] = self.config.history_steps_override + forward_kwargs["compute_equivariance_probe"] = self.config.compute_equivariance_probe + elif self.config.policy_type == "interaction_state": + forward_kwargs["use_role_tokens"] = self.config.use_role_tokens + forward_kwargs["history_steps_override"] = self.config.history_steps_override + model_output = self.model(**forward_kwargs) + losses = compute_total_loss(model_output, batch, weights=loss_weights) + losses["total"].backward() + torch.nn.utils.clip_grad_norm_(self.model.parameters(), self.config.grad_clip_norm) + self.optimizer.step() + return losses diff --git a/VLAarchtests/code/upstream_local_patches/YARR/yarr/runners/_independent_env_runner.py b/VLAarchtests/code/upstream_local_patches/YARR/yarr/runners/_independent_env_runner.py new file mode 100644 index 0000000000000000000000000000000000000000..521c8cd8e565a0c072fdcf0bc85af9d38a3e54cf --- /dev/null +++ b/VLAarchtests/code/upstream_local_patches/YARR/yarr/runners/_independent_env_runner.py @@ -0,0 +1,303 @@ +import copy +import logging +import os +import time +import pandas as pd + +from multiprocessing import Process, Manager +from multiprocessing import get_start_method, set_start_method +from typing import Any + +import numpy as np +import torch +from yarr.agents.agent import Agent +from yarr.agents.agent import ScalarSummary +from yarr.agents.agent import Summary +from yarr.envs.env import Env +from yarr.utils.rollout_generator import RolloutGenerator +from yarr.utils.log_writer import LogWriter +from yarr.utils.process_str import change_case +from yarr.utils.video_utils import CircleCameraMotion, TaskRecorder + +from pyrep.objects.dummy import Dummy +from pyrep.objects.vision_sensor import VisionSensor + +from yarr.runners._env_runner import _EnvRunner + + +class _IndependentEnvRunner(_EnvRunner): + + def __init__(self, + train_env: Env, + eval_env: Env, + agent: Agent, + timesteps: int, + train_envs: int, + eval_envs: int, + rollout_episodes: int, + eval_episodes: int, + training_iterations: int, + eval_from_eps_number: int, + episode_length: int, + kill_signal: Any, + step_signal: Any, + num_eval_episodes_signal: Any, + eval_epochs_signal: Any, + eval_report_signal: Any, + log_freq: int, + rollout_generator: RolloutGenerator, + save_load_lock, + current_replay_ratio, + target_replay_ratio, + weightsdir: str = None, + logdir: str = None, + env_device: torch.device = None, + previous_loaded_weight_folder: str = '', + num_eval_runs: int = 1, + ): + + super().__init__(train_env, eval_env, agent, timesteps, + train_envs, eval_envs, rollout_episodes, eval_episodes, + training_iterations, eval_from_eps_number, episode_length, + kill_signal, step_signal, num_eval_episodes_signal, + eval_epochs_signal, eval_report_signal, log_freq, + rollout_generator, save_load_lock, current_replay_ratio, + target_replay_ratio, weightsdir, logdir, env_device, + previous_loaded_weight_folder, num_eval_runs) + + def _load_save(self): + if self._weightsdir is None: + logging.info("'weightsdir' was None, so not loading weights.") + return + while True: + weight_folders = [] + with self._save_load_lock: + if os.path.exists(self._weightsdir): + weight_folders = os.listdir(self._weightsdir) + if len(weight_folders) > 0: + weight_folders = sorted(map(int, weight_folders)) + # only load if there has been a new weight saving + if self._previous_loaded_weight_folder != weight_folders[-1]: + self._previous_loaded_weight_folder = weight_folders[-1] + d = os.path.join(self._weightsdir, str(weight_folders[-1])) + try: + self._agent.load_weights(d) + except FileNotFoundError: + # rare case when agent hasn't finished writing. + time.sleep(1) + self._agent.load_weights(d) + logging.info('Agent %s: Loaded weights: %s' % (self._name, d)) + self._new_weights = True + else: + self._new_weights = False + break + logging.info('Waiting for weights to become available.') + time.sleep(1) + + def _get_task_name(self): + if hasattr(self._eval_env, '_task_class'): + eval_task_name = change_case(self._eval_env._task_class.__name__) + multi_task = False + elif hasattr(self._eval_env, '_task_classes'): + if self._eval_env.active_task_id != -1: + task_id = (self._eval_env.active_task_id) % len(self._eval_env._task_classes) + eval_task_name = change_case(self._eval_env._task_classes[task_id].__name__) + else: + eval_task_name = '' + multi_task = True + else: + raise Exception('Neither task_class nor task_classes found in eval env') + return eval_task_name, multi_task + + def _run_eval_independent(self, name: str, + stats_accumulator, + weight, + writer_lock, + eval=True, + device_idx=0, + save_metrics=True, + cinematic_recorder_cfg=None): + + self._name = name + self._save_metrics = save_metrics + self._is_test_set = type(weight) == dict + + self._agent = copy.deepcopy(self._agent) + + device = torch.device('cuda:%d' % device_idx) if torch.cuda.device_count() > 1 else torch.device('cuda:0') + with writer_lock: # hack to prevent multiple CLIP downloads ... argh should use a separate lock + self._agent.build(training=False, device=device) + + logging.info('%s: Launching env.' % name) + np.random.seed() + + logging.info('Agent information:') + logging.info(self._agent) + + env = self._eval_env + env.eval = eval + env.launch() + + # initialize cinematic recorder if specified + rec_cfg = cinematic_recorder_cfg + if rec_cfg.enabled: + cam_placeholder = Dummy('cam_cinematic_placeholder') + cam = VisionSensor.create(rec_cfg.camera_resolution) + cam.set_pose(cam_placeholder.get_pose()) + cam.set_parent(cam_placeholder) + + cam_motion = CircleCameraMotion(cam, Dummy('cam_cinematic_base'), rec_cfg.rotate_speed) + tr = TaskRecorder(env, cam_motion, fps=rec_cfg.fps) + + env.env._action_mode.arm_action_mode.set_callable_each_step(tr.take_snap) + + if not os.path.exists(self._weightsdir): + raise Exception('No weights directory found.') + + # to save or not to save evaluation metrics (set as False for recording videos) + if self._save_metrics: + csv_file = 'eval_data.csv' if not self._is_test_set else 'test_data.csv' + writer = LogWriter(self._logdir, True, True, + env_csv=csv_file) + + # one weight for all tasks (used for validation) + if type(weight) == int: + logging.info('Evaluating weight %s' % weight) + weight_path = os.path.join(self._weightsdir, str(weight)) + seed_path = self._weightsdir.replace('/weights', '') + self._agent.load_weights(weight_path) + weight_name = str(weight) + + new_transitions = {'train_envs': 0, 'eval_envs': 0} + total_transitions = {'train_envs': 0, 'eval_envs': 0} + current_task_id = -1 + + for n_eval in range(self._num_eval_runs): + if rec_cfg.enabled: + tr._cam_motion.save_pose() + + # best weight for each task (used for test evaluation) + if type(weight) == dict: + task_name = list(weight.keys())[n_eval] + task_weight = weight[task_name] + weight_path = os.path.join(self._weightsdir, str(task_weight)) + seed_path = self._weightsdir.replace('/weights', '') + self._agent.load_weights(weight_path) + weight_name = str(task_weight) + print('Evaluating weight %s for %s' % (weight_name, task_name)) + + # evaluate on N tasks * M episodes per task = total eval episodes + for ep in range(self._eval_episodes): + eval_demo_seed = ep + self._eval_from_eps_number + logging.info('%s: Starting episode %d, seed %d.' % (name, ep, eval_demo_seed)) + + # the current task gets reset after every M episodes + episode_rollout = [] + generator = self._rollout_generator.generator( + self._step_signal, env, self._agent, + self._episode_length, self._timesteps, + eval, eval_demo_seed=eval_demo_seed, + record_enabled=rec_cfg.enabled) + try: + for replay_transition in generator: + while True: + if self._kill_signal.value: + env.shutdown() + return + if (eval or self._target_replay_ratio is None or + self._step_signal.value <= 0 or ( + self._current_replay_ratio.value > + self._target_replay_ratio)): + break + time.sleep(1) + logging.debug( + 'Agent. Waiting for replay_ratio %f to be more than %f' % + (self._current_replay_ratio.value, self._target_replay_ratio)) + + with self.write_lock: + if len(self.agent_summaries) == 0: + # Only store new summaries if the previous ones + # have been popped by the main env runner. + for s in self._agent.act_summaries(): + self.agent_summaries.append(s) + episode_rollout.append(replay_transition) + except StopIteration as e: + continue + except Exception as e: + env.shutdown() + raise e + + with self.write_lock: + for transition in episode_rollout: + self.stored_transitions.append((name, transition, eval)) + + new_transitions['eval_envs'] += 1 + total_transitions['eval_envs'] += 1 + stats_accumulator.step(transition, eval) + current_task_id = transition.info['active_task_id'] + + self._num_eval_episodes_signal.value += 1 + + task_name, _ = self._get_task_name() + reward = episode_rollout[-1].reward + lang_goal = env._lang_goal + print(f"Evaluating {task_name} | Episode {ep} | Score: {reward} | Lang Goal: {lang_goal}") + + # save recording + if rec_cfg.enabled: + success = reward > 0.99 + record_file = os.path.join(seed_path, 'videos', + '%s_w%s_s%s_%s.mp4' % (task_name, + weight_name, + eval_demo_seed, + 'succ' if success else 'fail')) + + lang_goal = self._eval_env._lang_goal + + tr.save(record_file, lang_goal, reward) + tr._cam_motion.restore_pose() + + # report summaries + summaries = [] + summaries.extend(stats_accumulator.pop()) + + eval_task_name, multi_task = self._get_task_name() + + if eval_task_name and multi_task: + for s in summaries: + if 'eval' in s.name: + s.name = '%s/%s' % (s.name, eval_task_name) + + if len(summaries) > 0: + if multi_task: + task_score = [s.value for s in summaries if f'eval_envs/return/{eval_task_name}' in s.name][0] + else: + task_score = [s.value for s in summaries if f'eval_envs/return' in s.name][0] + else: + task_score = float(reward) + summary_name = ( + f'eval_envs/return/{eval_task_name}' + if multi_task + else 'eval_envs/return' + ) + summaries.append(ScalarSummary(summary_name, task_score)) + + print(f"Finished {eval_task_name} | Final Score: {task_score}\n") + + if self._save_metrics: + with writer_lock: + writer.add_summaries(weight_name, summaries) + + self._new_transitions = {'train_envs': 0, 'eval_envs': 0} + self.agent_summaries[:] = [] + self.stored_transitions[:] = [] + + if self._save_metrics: + with writer_lock: + writer.end_iteration() + + logging.info('Finished evaluation.') + env.shutdown() + + def kill(self): + self._kill_signal.value = True diff --git a/VLAarchtests/code/upstream_local_patches/peract_bimanual/agents/bimanual_peract/qattention_peract_bc_agent.py b/VLAarchtests/code/upstream_local_patches/peract_bimanual/agents/bimanual_peract/qattention_peract_bc_agent.py new file mode 100644 index 0000000000000000000000000000000000000000..192b0d50546b071df7aa9022e56e6e36f5945894 --- /dev/null +++ b/VLAarchtests/code/upstream_local_patches/peract_bimanual/agents/bimanual_peract/qattention_peract_bc_agent.py @@ -0,0 +1,1066 @@ +import copy +import logging +import os +from typing import List + +import numpy as np +import torch +import torch.nn as nn +import torch.nn.functional as F +from torchvision import transforms +from pytorch3d import transforms as torch3d_tf +from yarr.agents.agent import ( + Agent, + ActResult, + ScalarSummary, + HistogramSummary, + ImageSummary, + Summary, +) + +from helpers import utils +from helpers.utils import visualise_voxel, stack_on_channel +from voxel.voxel_grid import VoxelGrid +from voxel.augmentation import apply_se3_augmentation +from einops import rearrange +from helpers.clip.core.clip import build_model, load_clip + +import transformers +from helpers.optim.lamb import Lamb + +from torch.nn.parallel import DistributedDataParallel as DDP + +NAME = "QAttentionAgent" + + +class QFunction(nn.Module): + def __init__( + self, + perceiver_encoder: nn.Module, + voxelizer: VoxelGrid, + bounds_offset: float, + rotation_resolution: float, + device, + training, + ): + super(QFunction, self).__init__() + self._rotation_resolution = rotation_resolution + self._voxelizer = voxelizer + self._bounds_offset = bounds_offset + self._qnet = perceiver_encoder.to(device) + + # distributed training + if training: + self._qnet = DDP(self._qnet, device_ids=[device]) + + def _argmax_3d(self, tensor_orig): + b, c, d, h, w = tensor_orig.shape # c will be one + idxs = tensor_orig.view(b, c, -1).argmax(-1) + indices = torch.cat([((idxs // h) // d), (idxs // h) % w, idxs % w], 1) + return indices + + def choose_highest_action(self, q_trans, q_rot_grip, q_collision): + coords = self._argmax_3d(q_trans) + rot_and_grip_indicies = None + ignore_collision = None + if q_rot_grip is not None: + q_rot = torch.stack( + torch.split( + q_rot_grip[:, :-2], int(360 // self._rotation_resolution), dim=1 + ), + dim=1, + ) + rot_and_grip_indicies = torch.cat( + [ + q_rot[:, 0:1].argmax(-1), + q_rot[:, 1:2].argmax(-1), + q_rot[:, 2:3].argmax(-1), + q_rot_grip[:, -2:].argmax(-1, keepdim=True), + ], + -1, + ) + ignore_collision = q_collision[:, -2:].argmax(-1, keepdim=True) + return coords, rot_and_grip_indicies, ignore_collision + + def forward( + self, + rgb_pcd, + proprio, + pcd, + lang_goal_emb, + lang_token_embs, + bounds=None, + prev_bounds=None, + prev_layer_voxel_grid=None, + ): + # rgb_pcd will be list of list (list of [rgb, pcd]) + b = rgb_pcd[0][0].shape[0] + pcd_flat = torch.cat([p.permute(0, 2, 3, 1).reshape(b, -1, 3) for p in pcd], 1) + + # flatten RGBs and Pointclouds + rgb = [rp[0] for rp in rgb_pcd] + feat_size = rgb[0].shape[1] + flat_imag_features = torch.cat( + [p.permute(0, 2, 3, 1).reshape(b, -1, feat_size) for p in rgb], 1 + ) + + # construct voxel grid + voxel_grid = self._voxelizer.coords_to_bounding_voxel_grid( + pcd_flat, coord_features=flat_imag_features, coord_bounds=bounds + ) + + # swap to channels fist + voxel_grid = voxel_grid.permute(0, 4, 1, 2, 3).detach() + + # batch bounds if necessary + if bounds.shape[0] != b: + bounds = bounds.repeat(b, 1) + + # forward pass + split_pred = self._qnet( + voxel_grid, + proprio, + lang_goal_emb, + lang_token_embs, + prev_layer_voxel_grid, + bounds, + prev_bounds, + ) + + return split_pred, voxel_grid + + +class QAttentionPerActBCAgent(Agent): + def __init__( + self, + layer: int, + coordinate_bounds: list, + perceiver_encoder: nn.Module, + camera_names: list, + batch_size: int, + voxel_size: int, + bounds_offset: float, + voxel_feature_size: int, + image_crop_size: int, + num_rotation_classes: int, + rotation_resolution: float, + lr: float = 0.0001, + lr_scheduler: bool = False, + training_iterations: int = 100000, + num_warmup_steps: int = 20000, + trans_loss_weight: float = 1.0, + rot_loss_weight: float = 1.0, + grip_loss_weight: float = 1.0, + collision_loss_weight: float = 1.0, + include_low_dim_state: bool = False, + image_resolution: list = None, + lambda_weight_l2: float = 0.0, + transform_augmentation: bool = True, + transform_augmentation_xyz: list = [0.0, 0.0, 0.0], + transform_augmentation_rpy: list = [0.0, 0.0, 180.0], + transform_augmentation_rot_resolution: int = 5, + optimizer_type: str = "adam", + num_devices: int = 1, + ): + self._layer = layer + self._coordinate_bounds = coordinate_bounds + self._perceiver_encoder = perceiver_encoder + self._voxel_feature_size = voxel_feature_size + self._bounds_offset = bounds_offset + self._image_crop_size = image_crop_size + self._lr = lr + self._lr_scheduler = lr_scheduler + self._training_iterations = training_iterations + self._num_warmup_steps = num_warmup_steps + self._trans_loss_weight = trans_loss_weight + self._rot_loss_weight = rot_loss_weight + self._grip_loss_weight = grip_loss_weight + self._collision_loss_weight = collision_loss_weight + self._include_low_dim_state = include_low_dim_state + self._image_resolution = image_resolution or [128, 128] + self._voxel_size = voxel_size + self._camera_names = camera_names + self._num_cameras = len(camera_names) + self._batch_size = batch_size + self._lambda_weight_l2 = lambda_weight_l2 + self._transform_augmentation = transform_augmentation + self._transform_augmentation_xyz = torch.from_numpy( + np.array(transform_augmentation_xyz) + ) + self._transform_augmentation_rpy = transform_augmentation_rpy + self._transform_augmentation_rot_resolution = ( + transform_augmentation_rot_resolution + ) + self._optimizer_type = optimizer_type + self._num_devices = num_devices + self._num_rotation_classes = num_rotation_classes + self._rotation_resolution = rotation_resolution + + self._cross_entropy_loss = nn.CrossEntropyLoss(reduction="none") + self._name = NAME + "_layer" + str(self._layer) + + def build(self, training: bool, device: torch.device = None): + self._training = training + + if device is None: + device = torch.device("cpu") + + self._device = device + + self._voxelizer = VoxelGrid( + coord_bounds=self._coordinate_bounds, + voxel_size=self._voxel_size, + device=device, + batch_size=self._batch_size if training else 1, + feature_size=self._voxel_feature_size, + max_num_coords=np.prod(self._image_resolution) * self._num_cameras, + ) + + self._q = ( + QFunction( + self._perceiver_encoder, + self._voxelizer, + self._bounds_offset, + self._rotation_resolution, + device, + training, + ) + .to(device) + .train(training) + ) + + grid_for_crop = ( + torch.arange(0, self._image_crop_size, device=device) + .unsqueeze(0) + .repeat(self._image_crop_size, 1) + .unsqueeze(-1) + ) + self._grid_for_crop = torch.cat( + [grid_for_crop.transpose(1, 0), grid_for_crop], dim=2 + ).unsqueeze(0) + + self._coordinate_bounds = torch.tensor( + self._coordinate_bounds, device=device + ).unsqueeze(0) + + if self._training: + # optimizer + if self._optimizer_type == "lamb": + self._optimizer = Lamb( + self._q.parameters(), + lr=self._lr, + weight_decay=self._lambda_weight_l2, + betas=(0.9, 0.999), + adam=False, + ) + elif self._optimizer_type == "adam": + self._optimizer = torch.optim.Adam( + self._q.parameters(), + lr=self._lr, + weight_decay=self._lambda_weight_l2, + ) + else: + raise Exception("Unknown optimizer type") + + # learning rate scheduler + if self._lr_scheduler: + self._scheduler = ( + transformers.get_cosine_with_hard_restarts_schedule_with_warmup( + self._optimizer, + num_warmup_steps=self._num_warmup_steps, + num_training_steps=self._training_iterations, + num_cycles=self._training_iterations // 10000, + ) + ) + + # one-hot zero tensors + self._action_trans_one_hot_zeros = torch.zeros( + ( + self._batch_size, + 1, + self._voxel_size, + self._voxel_size, + self._voxel_size, + ), + dtype=int, + device=device, + ) + self._action_rot_x_one_hot_zeros = torch.zeros( + (self._batch_size, self._num_rotation_classes), dtype=int, device=device + ) + self._action_rot_y_one_hot_zeros = torch.zeros( + (self._batch_size, self._num_rotation_classes), dtype=int, device=device + ) + self._action_rot_z_one_hot_zeros = torch.zeros( + (self._batch_size, self._num_rotation_classes), dtype=int, device=device + ) + self._action_grip_one_hot_zeros = torch.zeros( + (self._batch_size, 2), dtype=int, device=device + ) + self._action_ignore_collisions_one_hot_zeros = torch.zeros( + (self._batch_size, 2), dtype=int, device=device + ) + + # print total params + logging.info( + "# Q Params: %d" + % sum( + p.numel() + for name, p in self._q.named_parameters() + if p.requires_grad and "clip" not in name + ) + ) + else: + for param in self._q.parameters(): + param.requires_grad = False + + # load CLIP for encoding language goals during evaluation + model, _ = load_clip("RN50", jit=False) + self._clip_rn50 = build_model(model.state_dict()) + self._clip_rn50 = self._clip_rn50.float().to(device) + self._clip_rn50.eval() + del model + + self._voxelizer.to(device) + self._q.to(device) + + def _extract_crop(self, pixel_action, observation): + # Pixel action will now be (B, 2) + # observation = stack_on_channel(observation) + h = observation.shape[-1] + top_left_corner = torch.clamp( + pixel_action - self._image_crop_size // 2, 0, h - self._image_crop_size + ) + grid = self._grid_for_crop + top_left_corner.unsqueeze(1) + grid = ((grid / float(h)) * 2.0) - 1.0 # between -1 and 1 + # Used for cropping the images across a batch + # swap fro y x, to x, y + grid = torch.cat((grid[:, :, :, 1:2], grid[:, :, :, 0:1]), dim=-1) + crop = F.grid_sample(observation, grid, mode="nearest", align_corners=True) + return crop + + def _preprocess_inputs(self, replay_sample): + obs = [] + pcds = [] + self._crop_summary = [] + for n in self._camera_names: + rgb = replay_sample["%s_rgb" % n] + pcd = replay_sample["%s_point_cloud" % n] + + obs.append([rgb, pcd]) + pcds.append(pcd) + return obs, pcds + + def _act_preprocess_inputs(self, observation): + obs, pcds = [], [] + for n in self._camera_names: + rgb = observation["%s_rgb" % n] + pcd = observation["%s_point_cloud" % n] + + obs.append([rgb, pcd]) + pcds.append(pcd) + return obs, pcds + + def _get_value_from_voxel_index(self, q, voxel_idx): + b, c, d, h, w = q.shape + q_trans_flat = q.view(b, c, d * h * w) + flat_indicies = ( + voxel_idx[:, 0] * d * h + voxel_idx[:, 1] * h + voxel_idx[:, 2] + )[:, None].int() + highest_idxs = flat_indicies.unsqueeze(-1).repeat(1, c, 1) + chosen_voxel_values = q_trans_flat.gather(2, highest_idxs)[ + ..., 0 + ] # (B, trans + rot + grip) + return chosen_voxel_values + + def _get_value_from_rot_and_grip(self, rot_grip_q, rot_and_grip_idx): + q_rot = torch.stack( + torch.split( + rot_grip_q[:, :-2], int(360 // self._rotation_resolution), dim=1 + ), + dim=1, + ) # B, 3, 72 + q_grip = rot_grip_q[:, -2:] + rot_and_grip_values = torch.cat( + [ + q_rot[:, 0].gather(1, rot_and_grip_idx[:, 0:1]), + q_rot[:, 1].gather(1, rot_and_grip_idx[:, 1:2]), + q_rot[:, 2].gather(1, rot_and_grip_idx[:, 2:3]), + q_grip.gather(1, rot_and_grip_idx[:, 3:4]), + ], + -1, + ) + return rot_and_grip_values + + def _celoss(self, pred, labels): + return self._cross_entropy_loss(pred, labels.argmax(-1)) + + def _softmax_q_trans(self, q): + q_shape = q.shape + return F.softmax(q.reshape(q_shape[0], -1), dim=1).reshape(q_shape) + + def _softmax_q_rot_grip(self, q_rot_grip): + q_rot_x_flat = q_rot_grip[ + :, 0 * self._num_rotation_classes : 1 * self._num_rotation_classes + ] + q_rot_y_flat = q_rot_grip[ + :, 1 * self._num_rotation_classes : 2 * self._num_rotation_classes + ] + q_rot_z_flat = q_rot_grip[ + :, 2 * self._num_rotation_classes : 3 * self._num_rotation_classes + ] + q_grip_flat = q_rot_grip[:, 3 * self._num_rotation_classes :] + + q_rot_x_flat_softmax = F.softmax(q_rot_x_flat, dim=1) + q_rot_y_flat_softmax = F.softmax(q_rot_y_flat, dim=1) + q_rot_z_flat_softmax = F.softmax(q_rot_z_flat, dim=1) + q_grip_flat_softmax = F.softmax(q_grip_flat, dim=1) + + return torch.cat( + [ + q_rot_x_flat_softmax, + q_rot_y_flat_softmax, + q_rot_z_flat_softmax, + q_grip_flat_softmax, + ], + dim=1, + ) + + def _softmax_ignore_collision(self, q_collision): + q_collision_softmax = F.softmax(q_collision, dim=1) + return q_collision_softmax + + def update(self, step: int, replay_sample: dict) -> dict: + right_action_trans = replay_sample["right_trans_action_indicies"][ + :, self._layer * 3 : self._layer * 3 + 3 + ].int() + right_action_rot_grip = replay_sample["right_rot_grip_action_indicies"].int() + right_action_gripper_pose = replay_sample["right_gripper_pose"] + right_action_ignore_collisions = replay_sample["right_ignore_collisions"].int() + + left_action_trans = replay_sample["left_trans_action_indicies"][ + :, self._layer * 3 : self._layer * 3 + 3 + ].int() + left_action_rot_grip = replay_sample["left_rot_grip_action_indicies"].int() + left_action_gripper_pose = replay_sample["left_gripper_pose"] + left_action_ignore_collisions = replay_sample["left_ignore_collisions"].int() + + lang_goal_emb = replay_sample["lang_goal_emb"].float() + lang_token_embs = replay_sample["lang_token_embs"].float() + prev_layer_voxel_grid = replay_sample.get("prev_layer_voxel_grid", None) + prev_layer_bounds = replay_sample.get("prev_layer_bounds", None) + device = self._device + + bounds = self._coordinate_bounds.to(device) + if self._layer > 0: + right_cp = replay_sample[ + "right_attention_coordinate_layer_%d" % (self._layer - 1) + ] + + left_cp = replay_sample[ + "left_attention_coordinate_layer_%d" % (self._layer - 1) + ] + + right_bounds = torch.cat( + [right_cp - self._bounds_offset, right_cp + self._bounds_offset], dim=1 + ) + left_bounds = torch.cat( + [left_cp - self._bounds_offset, left_cp + self._bounds_offset], dim=1 + ) + + else: + right_bounds = bounds + left_bounds = bounds + + right_proprio = None + left_proprio = None + if self._include_low_dim_state: + right_proprio = replay_sample["right_low_dim_state"] + left_proprio = replay_sample["left_low_dim_state"] + + # ..TODO:: + # Can we add the coordinates of both robots? + # + + obs, pcd = self._preprocess_inputs(replay_sample) + + # batch size + bs = pcd[0].shape[0] + + # We can move the point cloud w.r.t to the other robot's cooridinate system + # similar to apply_se3_augmentation + # + + # SE(3) augmentation of point clouds and actions + if self._transform_augmentation: + from voxel import augmentation + + ( + right_action_trans, + right_action_rot_grip, + left_action_trans, + left_action_rot_grip, + pcd, + ) = augmentation.bimanual_apply_se3_augmentation( + pcd, + right_action_gripper_pose, + right_action_trans, + right_action_rot_grip, + left_action_gripper_pose, + left_action_trans, + left_action_rot_grip, + bounds, + self._layer, + self._transform_augmentation_xyz, + self._transform_augmentation_rpy, + self._transform_augmentation_rot_resolution, + self._voxel_size, + self._rotation_resolution, + self._device, + ) + else: + right_action_trans = right_action_trans.int() + left_action_trans = left_action_trans.int() + + proprio = torch.cat((right_proprio, left_proprio), dim=1) + + right_action = ( + right_action_trans, + right_action_rot_grip, + right_action_ignore_collisions, + ) + left_action = ( + left_action_trans, + left_action_rot_grip, + left_action_ignore_collisions, + ) + # forward pass + q, voxel_grid = self._q( + obs, + proprio, + pcd, + lang_goal_emb, + lang_token_embs, + bounds, + prev_layer_bounds, + prev_layer_voxel_grid, + ) + + ( + right_q_trans, + right_q_rot_grip, + right_q_collision, + left_q_trans, + left_q_rot_grip, + left_q_collision, + ) = q + + # argmax to choose best action + ( + right_coords, + right_rot_and_grip_indicies, + right_ignore_collision_indicies, + ) = self._q.choose_highest_action( + right_q_trans, right_q_rot_grip, right_q_collision + ) + + ( + left_coords, + left_rot_and_grip_indicies, + left_ignore_collision_indicies, + ) = self._q.choose_highest_action( + left_q_trans, left_q_rot_grip, left_q_collision + ) + + ( + right_q_trans_loss, + right_q_rot_loss, + right_q_grip_loss, + right_q_collision_loss, + ) = (0.0, 0.0, 0.0, 0.0) + left_q_trans_loss, left_q_rot_loss, left_q_grip_loss, left_q_collision_loss = ( + 0.0, + 0.0, + 0.0, + 0.0, + ) + + # translation one-hot + right_action_trans_one_hot = self._action_trans_one_hot_zeros.clone().detach() + left_action_trans_one_hot = self._action_trans_one_hot_zeros.clone().detach() + for b in range(bs): + right_gt_coord = right_action_trans[b, :].int() + right_action_trans_one_hot[ + b, :, right_gt_coord[0], right_gt_coord[1], right_gt_coord[2] + ] = 1 + left_gt_coord = left_action_trans[b, :].int() + left_action_trans_one_hot[ + b, :, left_gt_coord[0], left_gt_coord[1], left_gt_coord[2] + ] = 1 + + # translation loss + right_q_trans_flat = right_q_trans.view(bs, -1) + right_action_trans_one_hot_flat = right_action_trans_one_hot.view(bs, -1) + right_q_trans_loss = self._celoss( + right_q_trans_flat, right_action_trans_one_hot_flat + ) + left_q_trans_flat = left_q_trans.view(bs, -1) + left_action_trans_one_hot_flat = left_action_trans_one_hot.view(bs, -1) + left_q_trans_loss = self._celoss( + left_q_trans_flat, left_action_trans_one_hot_flat + ) + + q_trans_loss = right_q_trans_loss + left_q_trans_loss + + with_rot_and_grip = ( + len(right_rot_and_grip_indicies) > 0 and len(left_rot_and_grip_indicies) > 0 + ) + if with_rot_and_grip: + # rotation, gripper, and collision one-hots + right_action_rot_x_one_hot = self._action_rot_x_one_hot_zeros.clone() + right_action_rot_y_one_hot = self._action_rot_y_one_hot_zeros.clone() + right_action_rot_z_one_hot = self._action_rot_z_one_hot_zeros.clone() + right_action_grip_one_hot = self._action_grip_one_hot_zeros.clone() + right_action_ignore_collisions_one_hot = ( + self._action_ignore_collisions_one_hot_zeros.clone() + ) + + left_action_rot_x_one_hot = self._action_rot_x_one_hot_zeros.clone() + left_action_rot_y_one_hot = self._action_rot_y_one_hot_zeros.clone() + left_action_rot_z_one_hot = self._action_rot_z_one_hot_zeros.clone() + left_action_grip_one_hot = self._action_grip_one_hot_zeros.clone() + left_action_ignore_collisions_one_hot = ( + self._action_ignore_collisions_one_hot_zeros.clone() + ) + + for b in range(bs): + right_gt_rot_grip = right_action_rot_grip[b, :].int() + right_action_rot_x_one_hot[b, right_gt_rot_grip[0]] = 1 + right_action_rot_y_one_hot[b, right_gt_rot_grip[1]] = 1 + right_action_rot_z_one_hot[b, right_gt_rot_grip[2]] = 1 + right_action_grip_one_hot[b, right_gt_rot_grip[3]] = 1 + + right_gt_ignore_collisions = right_action_ignore_collisions[b, :].int() + right_action_ignore_collisions_one_hot[ + b, right_gt_ignore_collisions[0] + ] = 1 + + left_gt_rot_grip = left_action_rot_grip[b, :].int() + left_action_rot_x_one_hot[b, left_gt_rot_grip[0]] = 1 + left_action_rot_y_one_hot[b, left_gt_rot_grip[1]] = 1 + left_action_rot_z_one_hot[b, left_gt_rot_grip[2]] = 1 + left_action_grip_one_hot[b, left_gt_rot_grip[3]] = 1 + + left_gt_ignore_collisions = left_action_ignore_collisions[b, :].int() + left_action_ignore_collisions_one_hot[ + b, left_gt_ignore_collisions[0] + ] = 1 + + # flatten predictions + right_q_rot_x_flat = right_q_rot_grip[ + :, 0 * self._num_rotation_classes : 1 * self._num_rotation_classes + ] + right_q_rot_y_flat = right_q_rot_grip[ + :, 1 * self._num_rotation_classes : 2 * self._num_rotation_classes + ] + right_q_rot_z_flat = right_q_rot_grip[ + :, 2 * self._num_rotation_classes : 3 * self._num_rotation_classes + ] + right_q_grip_flat = right_q_rot_grip[:, 3 * self._num_rotation_classes :] + right_q_ignore_collisions_flat = right_q_collision + + left_q_rot_x_flat = left_q_rot_grip[ + :, 0 * self._num_rotation_classes : 1 * self._num_rotation_classes + ] + left_q_rot_y_flat = left_q_rot_grip[ + :, 1 * self._num_rotation_classes : 2 * self._num_rotation_classes + ] + left_q_rot_z_flat = left_q_rot_grip[ + :, 2 * self._num_rotation_classes : 3 * self._num_rotation_classes + ] + left_q_grip_flat = left_q_rot_grip[:, 3 * self._num_rotation_classes :] + left_q_ignore_collisions_flat = left_q_collision + + # rotation loss + right_q_rot_loss += self._celoss( + right_q_rot_x_flat, right_action_rot_x_one_hot + ) + right_q_rot_loss += self._celoss( + right_q_rot_y_flat, right_action_rot_y_one_hot + ) + right_q_rot_loss += self._celoss( + right_q_rot_z_flat, right_action_rot_z_one_hot + ) + + left_q_rot_loss += self._celoss( + left_q_rot_x_flat, left_action_rot_x_one_hot + ) + left_q_rot_loss += self._celoss( + left_q_rot_y_flat, left_action_rot_y_one_hot + ) + left_q_rot_loss += self._celoss( + left_q_rot_z_flat, left_action_rot_z_one_hot + ) + + # gripper loss + right_q_grip_loss += self._celoss( + right_q_grip_flat, right_action_grip_one_hot + ) + left_q_grip_loss += self._celoss(left_q_grip_flat, left_action_grip_one_hot) + + # collision loss + right_q_collision_loss += self._celoss( + right_q_ignore_collisions_flat, right_action_ignore_collisions_one_hot + ) + left_q_collision_loss += self._celoss( + left_q_ignore_collisions_flat, left_action_ignore_collisions_one_hot + ) + + q_trans_loss = right_q_trans_loss + left_q_trans_loss + q_rot_loss = right_q_rot_loss + left_q_rot_loss + q_grip_loss = right_q_grip_loss + left_q_grip_loss + q_collision_loss = right_q_collision_loss + left_q_collision_loss + + combined_losses = ( + (q_trans_loss * self._trans_loss_weight) + + (q_rot_loss * self._rot_loss_weight) + + (q_grip_loss * self._grip_loss_weight) + + (q_collision_loss * self._collision_loss_weight) + ) + total_loss = combined_losses.mean() + + self._optimizer.zero_grad() + total_loss.backward() + self._optimizer.step() + + self._summaries = { + "losses/total_loss": total_loss, + "losses/trans_loss": q_trans_loss.mean(), + "losses/rot_loss": q_rot_loss.mean() if with_rot_and_grip else 0.0, + "losses/grip_loss": q_grip_loss.mean() if with_rot_and_grip else 0.0, + "losses/right/trans_loss": q_trans_loss.mean(), + "losses/right/rot_loss": q_rot_loss.mean() if with_rot_and_grip else 0.0, + "losses/right/grip_loss": q_grip_loss.mean() if with_rot_and_grip else 0.0, + "losses/right/collision_loss": q_collision_loss.mean() + if with_rot_and_grip + else 0.0, + "losses/left/trans_loss": q_trans_loss.mean(), + "losses/left/rot_loss": q_rot_loss.mean() if with_rot_and_grip else 0.0, + "losses/left/grip_loss": q_grip_loss.mean() if with_rot_and_grip else 0.0, + "losses/left/collision_loss": q_collision_loss.mean() + if with_rot_and_grip + else 0.0, + "losses/collision_loss": q_collision_loss.mean() + if with_rot_and_grip + else 0.0, + } + + if self._lr_scheduler: + self._scheduler.step() + self._summaries["learning_rate"] = self._scheduler.get_last_lr()[0] + + self._vis_voxel_grid = voxel_grid[0] + self._right_vis_translation_qvalue = self._softmax_q_trans(right_q_trans[0]) + self._right_vis_max_coordinate = right_coords[0] + self._right_vis_gt_coordinate = right_action_trans[0] + + self._left_vis_translation_qvalue = self._softmax_q_trans(left_q_trans[0]) + self._left_vis_max_coordinate = left_coords[0] + self._left_vis_gt_coordinate = left_action_trans[0] + + # Note: PerAct doesn't use multi-layer voxel grids like C2FARM + # stack prev_layer_voxel_grid(s) from previous layers into a list + if prev_layer_voxel_grid is None: + prev_layer_voxel_grid = [voxel_grid] + else: + prev_layer_voxel_grid = prev_layer_voxel_grid + [voxel_grid] + + # stack prev_layer_bound(s) from previous layers into a list + if prev_layer_bounds is None: + prev_layer_bounds = [self._coordinate_bounds.repeat(bs, 1)] + else: + prev_layer_bounds = prev_layer_bounds + [bounds] + + return { + "total_loss": total_loss, + "prev_layer_voxel_grid": prev_layer_voxel_grid, + "prev_layer_bounds": prev_layer_bounds, + } + + def act(self, step: int, observation: dict, deterministic=False) -> ActResult: + deterministic = True + bounds = self._coordinate_bounds + prev_layer_voxel_grid = observation.get("prev_layer_voxel_grid", None) + prev_layer_bounds = observation.get("prev_layer_bounds", None) + lang_goal_tokens = observation.get("lang_goal_tokens", None).long() + + # extract CLIP language embs + with torch.no_grad(): + lang_goal_tokens = lang_goal_tokens.to(device=self._device) + ( + lang_goal_emb, + lang_token_embs, + ) = self._clip_rn50.encode_text_with_embeddings(lang_goal_tokens[0]) + + # voxelization resolution + res = (bounds[:, 3:] - bounds[:, :3]) / self._voxel_size + max_rot_index = int(360 // self._rotation_resolution) + right_proprio = None + left_proprio = None + + if self._include_low_dim_state: + right_proprio = observation["right_low_dim_state"] + left_proprio = observation["left_low_dim_state"] + right_proprio = right_proprio[0].to(self._device) + left_proprio = left_proprio[0].to(self._device) + + obs, pcd = self._act_preprocess_inputs(observation) + + # correct batch size and device + obs = [[o[0][0].to(self._device), o[1][0].to(self._device)] for o in obs] + + pcd = [p[0].to(self._device) for p in pcd] + lang_goal_emb = lang_goal_emb.to(self._device) + lang_token_embs = lang_token_embs.to(self._device) + bounds = torch.as_tensor(bounds, device=self._device) + prev_layer_voxel_grid = ( + prev_layer_voxel_grid.to(self._device) + if prev_layer_voxel_grid is not None + else None + ) + prev_layer_bounds = ( + prev_layer_bounds.to(self._device) + if prev_layer_bounds is not None + else None + ) + + proprio = torch.cat((right_proprio, left_proprio), dim=1) + + # inference + ( + right_q_trans, + right_q_rot_grip, + right_q_ignore_collisions, + left_q_trans, + left_q_rot_grip, + left_q_ignore_collisions, + ), vox_grid = self._q( + obs, + proprio, + pcd, + lang_goal_emb, + lang_token_embs, + bounds, + prev_layer_bounds, + prev_layer_voxel_grid, + ) + + # softmax Q predictions + right_q_trans = self._softmax_q_trans(right_q_trans) + left_q_trans = self._softmax_q_trans(left_q_trans) + + if right_q_rot_grip is not None: + right_q_rot_grip = self._softmax_q_rot_grip(right_q_rot_grip) + + if left_q_rot_grip is not None: + left_q_rot_grip = self._softmax_q_rot_grip(left_q_rot_grip) + + if right_q_ignore_collisions is not None: + right_q_ignore_collisions = self._softmax_ignore_collision( + right_q_ignore_collisions + ) + + if left_q_ignore_collisions is not None: + left_q_ignore_collisions = self._softmax_ignore_collision( + left_q_ignore_collisions + ) + + # argmax Q predictions + ( + right_coords, + right_rot_and_grip_indicies, + right_ignore_collisions, + ) = self._q.choose_highest_action( + right_q_trans, right_q_rot_grip, right_q_ignore_collisions + ) + ( + left_coords, + left_rot_and_grip_indicies, + left_ignore_collisions, + ) = self._q.choose_highest_action( + left_q_trans, left_q_rot_grip, left_q_ignore_collisions + ) + + if right_q_rot_grip is not None: + right_rot_grip_action = right_rot_and_grip_indicies + if right_q_ignore_collisions is not None: + right_ignore_collisions_action = right_ignore_collisions.int() + + if left_q_rot_grip is not None: + left_rot_grip_action = left_rot_and_grip_indicies + if left_q_ignore_collisions is not None: + left_ignore_collisions_action = left_ignore_collisions.int() + + right_coords = right_coords.int() + left_coords = left_coords.int() + + right_attention_coordinate = bounds[:, :3] + res * right_coords + res / 2 + left_attention_coordinate = bounds[:, :3] + res * left_coords + res / 2 + + # stack prev_layer_voxel_grid(s) into a list + # NOTE: PerAct doesn't used multi-layer voxel grids like C2FARM + if prev_layer_voxel_grid is None: + prev_layer_voxel_grid = [vox_grid] + else: + prev_layer_voxel_grid = prev_layer_voxel_grid + [vox_grid] + + if prev_layer_bounds is None: + prev_layer_bounds = [bounds] + else: + prev_layer_bounds = prev_layer_bounds + [bounds] + + observation_elements = { + "right_attention_coordinate": right_attention_coordinate, + "left_attention_coordinate": left_attention_coordinate, + "prev_layer_voxel_grid": prev_layer_voxel_grid, + "prev_layer_bounds": prev_layer_bounds, + } + info = { + "voxel_grid_depth%d" % self._layer: vox_grid, + "right_q_depth%d" % self._layer: right_q_trans, + "right_voxel_idx_depth%d" % self._layer: right_coords, + "left_q_depth%d" % self._layer: left_q_trans, + "left_voxel_idx_depth%d" % self._layer: left_coords, + } + self._act_voxel_grid = vox_grid[0] + self._right_act_max_coordinate = right_coords[0] + self._right_act_qvalues = right_q_trans[0].detach() + self._left_act_max_coordinate = left_coords[0] + self._left_act_qvalues = left_q_trans[0].detach() + + action = ( + right_coords, + right_rot_grip_action, + right_ignore_collisions, + left_coords, + left_rot_grip_action, + left_ignore_collisions, + ) + + return ActResult(action, observation_elements=observation_elements, info=info) + + def update_summaries(self) -> List[Summary]: + voxel_grid = self._vis_voxel_grid.detach().cpu().numpy() + summaries = [] + summaries.append( + ImageSummary( + "%s/right_update_qattention" % self._name, + transforms.ToTensor()( + visualise_voxel( + voxel_grid, + self._right_vis_translation_qvalue.detach().cpu().numpy(), + self._right_vis_max_coordinate.detach().cpu().numpy(), + self._right_vis_gt_coordinate.detach().cpu().numpy(), + ) + ), + ) + ) + summaries.append( + ImageSummary( + "%s/left_update_qattention" % self._name, + transforms.ToTensor()( + visualise_voxel( + voxel_grid, + self._left_vis_translation_qvalue.detach().cpu().numpy(), + self._left_vis_max_coordinate.detach().cpu().numpy(), + self._left_vis_gt_coordinate.detach().cpu().numpy(), + ) + ), + ) + ) + for n, v in self._summaries.items(): + summaries.append(ScalarSummary("%s/%s" % (self._name, n), v)) + + for name, crop in self._crop_summary: + crops = (torch.cat(torch.split(crop, 3, dim=1), dim=3) + 1.0) / 2.0 + summaries.extend([ImageSummary("%s/crops/%s" % (self._name, name), crops)]) + + for tag, param in self._q.named_parameters(): + # assert not torch.isnan(param.grad.abs() <= 1.0).all() + summaries.append( + HistogramSummary("%s/gradient/%s" % (self._name, tag), param.grad) + ) + summaries.append( + HistogramSummary("%s/weight/%s" % (self._name, tag), param.data) + ) + + return summaries + + def act_summaries(self) -> List[Summary]: + voxel_grid = self._act_voxel_grid.cpu().numpy() + right_q_attention = self._right_act_qvalues.cpu().numpy() + right_highlight_coordinate = self._right_act_max_coordinate.cpu().numpy() + left_q_attention = self._left_act_qvalues.cpu().numpy() + left_highlight_coordinate = self._left_act_max_coordinate.cpu().numpy() + try: + right_visualization = visualise_voxel( + voxel_grid, right_q_attention, right_highlight_coordinate + ) + left_visualization = visualise_voxel( + voxel_grid, left_q_attention, left_highlight_coordinate + ) + except Exception as exc: + logging.warning("Skipping act_summaries voxel render: %s", exc) + return [] + + return [ + ImageSummary( + f"{self._name}/right_act_Qattention", + transforms.ToTensor()(right_visualization), + ), + ImageSummary( + f"{self._name}/left_act_Qattention", + transforms.ToTensor()(left_visualization), + ), + ] + + def load_weights(self, savedir: str): + device = ( + self._device + if not self._training + else torch.device("cuda:%d" % self._device) + ) + weight_file = os.path.join(savedir, "%s.pt" % self._name) + state_dict = torch.load(weight_file, map_location=device) + + # load only keys that are in the current model + merged_state_dict = self._q.state_dict() + for k, v in state_dict.items(): + if not self._training: + k = k.replace("_qnet.module", "_qnet") + if k in merged_state_dict: + merged_state_dict[k] = v + else: + if "_voxelizer" not in k: + logging.warning("key %s not found in checkpoint" % k) + if not self._training: + # reshape voxelizer weights + b = merged_state_dict["_voxelizer._ones_max_coords"].shape[0] + merged_state_dict["_voxelizer._ones_max_coords"] = merged_state_dict[ + "_voxelizer._ones_max_coords" + ][0:1] + flat_shape = merged_state_dict["_voxelizer._flat_output"].shape[0] + merged_state_dict["_voxelizer._flat_output"] = merged_state_dict[ + "_voxelizer._flat_output" + ][0 : flat_shape // b] + merged_state_dict["_voxelizer._tiled_batch_indices"] = merged_state_dict[ + "_voxelizer._tiled_batch_indices" + ][0:1] + merged_state_dict["_voxelizer._index_grid"] = merged_state_dict[ + "_voxelizer._index_grid" + ][0:1] + self._q.load_state_dict(merged_state_dict) + print("loaded weights from %s" % weight_file) + + def save_weights(self, savedir: str): + torch.save(self._q.state_dict(), os.path.join(savedir, "%s.pt" % self._name)) diff --git a/VLAarchtests/results/2026-03-25-runpod/README.md b/VLAarchtests/results/2026-03-25-runpod/README.md new file mode 100644 index 0000000000000000000000000000000000000000..335272afeaefc0487fbfaf3cdbe9d8600734153d --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/README.md @@ -0,0 +1,124 @@ +# 2026-03-25 Runpod Raw Index + +This directory contains the source handoff instructions, raw report files copied from `/workspace/reports`, and a raw index for the artifacts produced in the `2026-03-25 UTC` session. + +## Source Handoff + +- `instructions.md` + +## Test Suite + +- Command: + - `PYTHONPATH=/workspace/VLAarchtests_work/code/reveal_vla_bimanual python -m pytest -q /workspace/VLAarchtests_work/tests` +- Result: + - `33 passed` + +## Generated Datasets + +| Path | Size (bytes) | +| --- | ---: | +| `artifacts/data/reveal_proxy/proxy_train_clip224_v6_rgbd_stage3_phase.pt` | 583377508 | +| `artifacts/data/reveal_proxy/proxy_val_clip224_v6_rgbd_stage3_phase.pt` | 200844508 | + +## Generated Checkpoints And Training Summaries + +| Directory | final_train_total | final_val_total | train_time_sec | peak_gpu_memory_mb | +| --- | ---: | ---: | ---: | ---: | +| `artifacts/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_seed17/` | 0.382780 | 0.372276 | 108.922691 | 2451.385742 | +| `artifacts/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_seed17/` | 0.518003 | 0.503869 | 163.313406 | 2924.821777 | +| `artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17/` | 0.385303 | 0.378928 | 128.965583 | 2450.287109 | +| `artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/` | 0.525366 | 0.507625 | 154.841441 | 2926.074707 | + +## Proxy Result Files + +### Serious Comparisons + +| File | Reference mean success | Compared mean success | Compared foliage | Compared bag | Compared cloth | +| --- | ---: | ---: | ---: | ---: | ---: | +| `reports/reveal_handoff_compare_serious/reveal_benchmark.json` | 0.583333 | 0.216667 | 0.330000 | 0.150000 | 0.170000 | +| `reports/reveal_handoff_compare_serious_compact/reveal_benchmark.json` | 0.583333 | 0.520000 | 0.660000 | 0.320000 | 0.580000 | +| `reports/reveal_phase_compare_serious_compact/reveal_benchmark.json` | 0.583333 | 0.513333 | 0.570000 | 0.420000 | 0.550000 | +| `reports/reveal_phase_compare_serious_spatial_compactwm/reveal_benchmark.json` | 0.583333 | 0.493333 | 0.640000 | 0.330000 | 0.510000 | + +### Compact-Phase Ablation Matrix + +| Ablation | mean_success | visibility_integral | reocclusion_rate | disturbance_cost | +| --- | ---: | ---: | ---: | ---: | +| `full_model` | 0.513333 | 39.978670 | 0.000000 | 0.343669 | +| `no_geometry` | 0.513333 | 39.983892 | 0.000000 | 0.343637 | +| `no_spatial_memory` | 0.496667 | 37.758093 | 0.002417 | 0.417673 | +| `compact_world_model` | 0.513333 | 39.978670 | 0.000000 | 0.343669 | +| `no_planner` | 0.433333 | 20.634101 | 0.019708 | 0.185775 | +| `gaussian_candidates_only` | 0.466667 | 16.719086 | 0.029561 | 0.477573 | +| `no_task_head` | 0.513333 | 38.128876 | 0.000000 | 0.344494 | +| `no_support_mode_conditioning` | 0.513333 | 39.978670 | 0.000000 | 0.343669 | + +Files: + +- `reports/reveal_phase_ablations_compact/ablations.json` +- `reports/reveal_phase_ablations_compact/ablations.md` +- `reports/reveal_phase_ablations_compact/ablations.partial.json` +- `reports/reveal_phase_ablations_spatial/ablations.partial.json` + +### Teacher Audit + +| Proxy | Baseline | teacher_success | baseline_success | success_delta | teacher_utility | baseline_utility | utility_delta | +| --- | --- | ---: | ---: | ---: | ---: | ---: | ---: | +| `foliage_proxy` | `reveal_only` | 1.000000 | 0.000000 | 1.000000 | 1.198432 | 0.140528 | 1.057904 | +| `foliage_proxy` | `retrieve_only` | 1.000000 | 0.000000 | 1.000000 | 1.198432 | -0.099185 | 1.297617 | +| `foliage_proxy` | `no_hold` | 1.000000 | 0.000000 | 1.000000 | 1.198432 | 0.084153 | 1.114280 | +| `foliage_proxy` | `random` | 1.000000 | 0.000000 | 1.000000 | 1.198432 | -0.138381 | 1.336814 | +| `bag_proxy` | `reveal_only` | 1.000000 | 0.000000 | 1.000000 | 1.196591 | 0.167617 | 1.028974 | +| `bag_proxy` | `retrieve_only` | 1.000000 | 0.000000 | 1.000000 | 1.196591 | -0.161481 | 1.358072 | +| `bag_proxy` | `no_hold` | 1.000000 | 0.000000 | 1.000000 | 1.196591 | 0.078455 | 1.118136 | +| `bag_proxy` | `random` | 1.000000 | 0.000000 | 1.000000 | 1.196591 | -0.181732 | 1.378323 | +| `cloth_proxy` | `reveal_only` | 1.000000 | 0.000000 | 1.000000 | 1.276440 | 0.347192 | 0.929249 | +| `cloth_proxy` | `retrieve_only` | 1.000000 | 0.000000 | 1.000000 | 1.276440 | 0.001142 | 1.275299 | +| `cloth_proxy` | `no_hold` | 1.000000 | 0.000000 | 1.000000 | 1.276440 | 0.507900 | 0.768540 | +| `cloth_proxy` | `random` | 1.000000 | 0.010000 | 0.990000 | 1.276440 | 0.166110 | 1.110330 | + +Files: + +- `reports/reveal_teacher_audit_serious/teacher_audit.json` +- `reports/reveal_teacher_audit_serious/teacher_audit.md` + +### Additional Proxy Report Files + +- `reports/reveal_smoke_mod/reveal_benchmark.json` +- `reports/reveal_smoke_nogeom/reveal_benchmark.json` +- `reports/reveal_smoke_noplanner/reveal_benchmark.json` +- `reports/reveal_handoff_compact_probe/reveal_benchmark.json` +- `reports/reveal_handoff_compact_train_probe/reveal_benchmark.json` +- `reports/reveal_phase_probe_compact/reveal_benchmark.json` +- `reports/reveal_phase_probe_spatial/reveal_benchmark.json` +- `reports/reveal_phase_probe_spatial_compactwm/reveal_benchmark.json` + +## RLBench Result Files + +### Full-Split PerAct2 Rollout Outputs + +| File | plan_requested | plan_applied | mean_success | +| --- | --- | --- | ---: | +| `reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/rollout_eval.json` | `true` | `true` | 0.000000 | +| `reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/rollout_eval.json` | `false` | `false` | 0.000000 | +| `reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/rollout_eval.json` | `true` | `true` | 0.000000 | + +### Single-Task RLBench Debug Outputs + +- `reports/rlbench_debug_baseline_pushbox/rollout_eval.json` +- `reports/rlbench_debug_compact_pushbox/rollout_eval.json` +- `reports/rlbench_debug_spatial_pushbox_nogeom/rollout_eval.json` + +## Environment Recreation Files + +- `environment/README.md` +- `environment/setup_same_machine.sh` +- `environment/validate_same_machine.sh` +- `environment/runtime_env_vars.sh` +- `environment/hardware_snapshot.txt` +- `environment/glxinfo_B.txt` +- `environment/upstream_revisions.txt` +- `environment/system_packages_same_machine.txt` +- `environment/rlbench_env_export.yaml` +- `environment/rlbench_env_explicit.txt` +- `environment/rlbench_pip_freeze.txt` diff --git a/VLAarchtests/results/2026-03-25-runpod/instructions.md b/VLAarchtests/results/2026-03-25-runpod/instructions.md new file mode 100644 index 0000000000000000000000000000000000000000..1d67df709efa531731495bf31918a0576f3113cd --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/instructions.md @@ -0,0 +1,717 @@ +# Developer handoff: structured bimanual reveal-and-retrieve under elastic occlusion + +Repo target: `lsnu/VLAarchtests` (current `main`, latest post-fix state). This handoff is written against the current `elastic_reveal` stack, not the older intermediate variants. + +## 1. Project introduction + +This project is a structured bimanual policy stack for reveal-and-retrieve tasks under partial observability and deformable or elastic occlusion. The eventual real-world targets are three Dobot X-trainer environments. The first is dense live foliage with hidden fake snails, where one arm must create and maintain a canopy gap while the other arm retrieves the target safely. The second is bag opening and retrieval, where one arm must open and hold the bag mouth while the other arm retrieves the target item. The third is suitcase or folded-cloth retrieval, where one arm must slightly lift and stabilize clothing layers while the other arm retrieves a hidden item without destroying the fold structure. + +The current repo already contains the right broad decomposition for this task family. It has a multi-view visual backbone, RGB-D support, an explicit reveal state head, observation memory, a compact world model, a coordinated bimanual action decoder, and a planner. The problem is not the structural idea. The problem is that several important pieces are only partially wired, too compact, or only validated on teacher-shaped proxy data. The current code is a good scaffold. It is not yet strong enough to justify “beats SOTA” claims on either public benchmarks or the three target task families. + +The current public evidence should be read narrowly. The most credible positive result in the repo is that RGB-D helps on the proxy benchmark. The planner, world model, and role-symmetry components are not yet validated strongly enough to claim they are the source of the gains. The RLBench / PerAct2 integration is also still mostly a launch and plumbing layer, not a mature benchmark suite. + +This handoff therefore has one purpose. Keep the structured reveal-and-retrieve idea, but harden the architecture and evaluation until there is a realistic chance of beating strong bimanual baselines on the three target environments. + +## 2. Current repo status (what exists, what is missing) + +The current core files are: + +`code/reveal_vla_bimanual/models/backbones.py` +`code/reveal_vla_bimanual/models/multiview_fusion.py` +`code/reveal_vla_bimanual/models/observation_memory.py` +`code/reveal_vla_bimanual/models/reveal_head.py` +`code/reveal_vla_bimanual/models/world_model.py` +`code/reveal_vla_bimanual/models/action_decoder.py` +`code/reveal_vla_bimanual/models/planner.py` +`code/reveal_vla_bimanual/models/policy.py` +`code/reveal_vla_bimanual/train/losses.py` +`code/reveal_vla_bimanual/sim_reveal/dataset.py` +`code/reveal_vla_bimanual/sim_reveal/procedural_envs.py` +`code/reveal_vla_bimanual/eval/run_reveal_benchmark.py` +`code/reveal_vla_bimanual/eval/run_rlbench_rollout_eval.py` +`code/reveal_vla_bimanual/eval/run_peract2_task_sweep.py` + +The current proxy benchmark already uses the correct three abstract task types (`foliage`, `bag`, `cloth`). That is good. The current dataset code also has explicit no-leak assertions, which is also good. + +The current weaknesses are specific and fixable. + +First, the geometry path is only partially wired. The backbone produces `depth_tokens`, `geometry_tokens`, and `camera_tokens`, but the policy only forwards RGB, depth, and camera tokens into fusion. The explicit `geometry_tokens` are dropped before fusion. In addition, camera geometry is incomplete. The current depth adapter encodes intrinsics and camera translation, but not an equally explicit camera rotation representation. For three-camera reveal tasks this is a real omission. + +Second, memory is too pooled and too global. The current memory path reduces scene history to pooled tokens before write decisions and bank updates. That is a novelty-gated summary memory. It is not a spatial occlusion memory. That is not enough for “hold the opening”, “the target is still probably behind this flap”, or “reveal progress will collapse if the revealer arm releases now”. + +Third, the world model is too compact. It is useful as a scaffold, but not as the state-transition core for elastic foliage, bag apertures, or layered cloth. It currently rolls a compact hidden state rather than a spatial field state. That makes it too weak for counterfactual planning over opening persistence, reocclusion, and safe actor insertion. + +Fourth, the planner is not trained on hard enough candidates. The current proxy data generation uses the teacher chunk and mostly Gaussian perturbations around it. That is enough to test ranking near a teacher, but not enough to teach the planner the actual failure modes that matter in these tasks (premature retrieval, releasing the opening, over-disturbing the scene, lifting the wrong cloth edge, etc.). + +Fifth, the state head is still too generic. It predicts a useful set of reveal-related fields, but it does not yet expose the right task-specific latent variables for foliage, bag, and folded cloth. Those tasks are not the same. They share the same reveal-and-retrieve pattern, but they do not share the same dominant failure modes. + +Sixth, the test suite is mostly contract-level. Those tests are useful, but they do not yet prove that the structured components work behaviorally. The RLBench side is similar. The launch smoke is only a plumbing check. The actual rollout evaluator exists, but it needs to become the main public benchmark path. + +## 3. The main design decision + +Do not collapse this into a generic monolithic VLA. That is not the likely win condition for these tasks. + +The highest-probability path is a stronger visual backbone plus an explicit structured reveal-and-retrieve stack. The reason is simple. Your target tasks are asymmetric, partially observable, persistence-sensitive, and reocclusion-sensitive. One arm often has to create and maintain a temporary affordance that only exists because of that arm’s continued state. Generic end-to-end BC can sometimes imitate the behavior, but these tasks strongly reward explicit representations of opening quality, hold persistence, target belief, reocclusion risk, and actor feasibility. + +The structured architecture should stay. It should just become spatial, task-aware, and evaluated honestly. + +## 4. Mandatory code changes + +### 4.1 Fix and strengthen the geometry path + +Files to change: + +`models/backbones.py` +`models/multiview_fusion.py` +`models/policy.py` +`tests/test_rgbd_forward_contract.py` (extend) +Add new tests: `tests/test_geometry_tokens_propagate.py`, `tests/test_camera_rotation_geometry.py` + +Exact changes: + +In `models/policy.py`, update the image encoding path so that `geometry_tokens` are passed from `backbone.encode_images(..., return_aux=True)` into the fusion module. Right now the policy forwards `rgb_tokens`, `depth_tokens`, and `camera_tokens`, but not `geometry_tokens`. This should be corrected first because it is an actual information-drop bug. + +In `models/multiview_fusion.py`, update the fusion interface to accept explicit `geometry_tokens`. The geometry attention path should fuse from a real concatenation or gated combination of `[depth_tokens, geometry_tokens, camera_tokens]`, rather than synthesizing “geometry” only from the surviving depth and camera paths. Keep the existing gated cross-attention pattern, but make the geometry path explicit and inspectable. + +In `models/backbones.py`, upgrade `DepthPatchAdapter` so that geometry features include camera orientation. Use a 6D rotation representation or a normalized quaternion plus translation. Also add per-patch viewing ray directions derived from intrinsics and camera pose. The three target environments all rely on view geometry and persistent multi-view correspondence. The current translation-only pose treatment is too weak. + +Add config flags that actually do something. The current `use_camera_geometry` style config needs to gate a real path, not just exist as a dormant option. Add separate switches for `use_depth_tokens`, `use_geometry_tokens`, and `use_camera_pose_tokens` so ablations are clean. + +Why this matters: the foliage and bag tasks are especially sensitive to camera geometry because small apparent gaps can be fake from one viewpoint and usable from another. The actor feasibility estimate should depend on geometry, not just appearance. + +### 4.2 Replace pooled novelty memory with spatial reveal memory + +Files to change: + +`models/observation_memory.py` +`models/policy.py` +`models/reveal_head.py` +Add new tests: `tests/test_spatial_memory_occlusion_persistence.py`, `tests/test_memory_slot_write_gating.py`, `tests/test_reocclusion_memory_regression.py` + +Exact changes: + +Keep the current memory modules as a fallback baseline, but add a new default path that stores low-resolution spatial memory instead of only pooled history summaries. The simplest realistic version is a two-branch memory: + +1. scene memory: a small bank of view-conditioned or canonicalized spatial tokens for persistent geometry and support structure; +2. belief memory: a spatial target-belief / reveal-state memory that carries uncertainty explicitly. + +The memory does not need to be large. An 8×8 or 12×12 field token grid per view (or a shared canonical field) is enough. The key requirement is that the write gate becomes spatial or slot-wise, not global only. The model must be able to update “the mouth is open here” without overwriting “the target is probably still here”. + +Add explicit channels or latent heads for: +- newly revealed regions +- still-visible regions +- reoccluded regions +- persistent hold or opening quality +- target belief uncertainty + +The world model and planner should consume this spatial memory directly. Do not average it away before planning. + +Why this matters: a reveal-and-retrieve policy that forgets where the useful opening was, or where the hidden object probably still is, will look competent in one-step imitation and fail in multi-step retrieval. + +### 4.3 Replace the compact world model with a spatial rollout model + +Files to change: + +`models/world_model.py` +`models/policy.py` +`train/losses.py` +Add new tests: `tests/test_world_model_null_rollout.py`, `tests/test_world_model_identity_rollout.py`, `tests/test_world_model_field_consistency.py`, `tests/test_world_model_task_adapter.py` + +Exact changes: + +Keep the current compact GRU world model only as an ablation. The default model should become a spatial latent rollout over field tokens or low-resolution maps. A realistic implementation is a ConvGRU or a token-wise recurrent transformer over a low-resolution field state. The world-model state should contain at least: + +- target belief field +- visibility or reveal field +- actor feasibility / corridor field +- opening quality or hold quality field +- persistence field +- disturbance / damage risk field +- reocclusion risk field +- support stability field + +Add task conditioning directly into the world model. A learned task embedding (`foliage`, `bag`, `cloth`) should modulate the transition. The dynamics are not the same and should not be forced into one unstructured transition model. + +Retain explicit ablation modes inside `models/world_model.py`: +- `identity_rollout` +- `null_rollout` +- `compact_rollout` (the current baseline) +- `spatial_rollout` (new default) + +These ablations must be real and deterministic. The world-model ablation confusion in the current repo shows why this needs to be explicit and unit-tested. + +Why this matters: the planner can only beat a simple decoder if its counterfactual rollouts capture persistence and collapse. Without a spatial world model, the “maintain opening while actor advances” pattern will be under-modeled. + +### 4.4 Make the reveal head task-aware + +Files to change: + +`models/reveal_head.py` +`train/losses.py` +`sim_reveal/dataset.py` +`sim_reveal/procedural_envs.py` +Add new tests: `tests/test_task_conditioned_head_shapes.py`, `tests/test_task_metric_monotonicity.py` + +Exact changes: + +Add a task embedding to the reveal head. Keep the shared trunk, but use task-specific adapters or low-rank heads for the final outputs. The head should still produce common fields, but each task must also expose the state variables that actually matter. + +For foliage, add: +- gap width or reveal corridor width +- canopy strain / damage risk +- occluder return tendency (reocclusion after release) +- target visibility confidence under flexible occluders + +For bag, add: +- mouth aperture width or area +- rim endpoint or rim grasp quality +- hold quality +- rim slip risk +- insertable actor corridor + +For cloth or suitcase, add: +- layer separation quality +- fold-preservation score +- insertion corridor +- top-layer stability +- “lift too much” risk + +The current generic fields (`actor_feasibility_field`, `persistence_field`, `risk_field`, `uncertainty_field`, `reocclusion`) are useful, but they are not enough. The planner needs the task-specific variables because the right action for bag opening is not the right action for layered cloth. + +### 4.5 Replace Gaussian candidate noise with semantic macro candidates plus continuous refinement + +Files to change: + +`models/action_decoder.py` +`models/planner.py` +`sim_reveal/dataset.py` +`sim_reveal/procedural_envs.py` +Add new tests: `tests/test_candidate_macro_coverage.py`, `tests/test_planner_reocclusion_gating.py`, `tests/test_proposal_semantic_diversity.py` + +Exact changes: + +Keep the current proposal mechanism as a fallback. The default candidate set should become a set of semantic macro modes, each refined by continuous deltas. + +The candidate vocabulary should be task-aware. + +For foliage: +- `sweep_left` +- `sweep_right` +- `pin_canopy` +- `widen_gap` +- `maintain_gap` +- `insert_actor` +- `retrieve` + +For bag: +- `pin_left_rim` +- `pin_right_rim` +- `widen_mouth` +- `maintain_mouth` +- `probe_inside` +- `insert_actor` +- `retrieve` + +For cloth: +- `lift_edge` +- `separate_layer` +- `stabilize_fold` +- `maintain_lift` +- `insert_actor` +- `retrieve` + +Represent these as discrete proposal tokens or a macro head in `action_decoder.py`, then produce continuous chunk deltas conditioned on the chosen macro. The planner should shortlist across macro families first and refine within each family second. That prevents “all candidates are tiny perturbations around the same wrong idea”. + +In `models/planner.py`, add hard feasibility gates before utility aggregation. Do not let the planner prefer “retrieve now” if actor feasibility, hold quality, or support stability are below threshold. Use worst-step or CVaR-style penalties for reocclusion and collapse, rather than only mean penalties. These tasks fail on bad tails, not just on averages. + +Why this matters: the current planner is too dependent on easy local ranking. Real reveal-and-retrieve requires semantically different plans, not just slightly different noise vectors. + +### 4.6 Change the loss stack to supervise what actually matters + +Files to change: + +`train/losses.py` +`train/trainer.py` (if needed for logging) +Add new tests: `tests/test_candidate_ranking_loss.py`, `tests/test_phase_labels_not_action_only.py`, `tests/test_planner_gradient_flow.py` + +Exact changes: + +Reduce dependence on heuristic phase labels inferred from the current action chunk. That heuristic is acceptable for early bootstrapping, but it should not remain the main source of phase supervision. Prefer simulator-side phase or subgoal labels where available. If those are not reliable, phase should be a weak auxiliary, not a strong driver. + +Add pairwise or listwise ranking loss over candidate action chunks using actual rollout utility labels. These labels should come from simulated outcomes, not just from “teacher is first, noise is worse”. + +Add consistency losses: +- predicted opening quality should correlate with rollout persistence +- predicted reocclusion should correlate with actual collapse after release +- predicted uncertainty should be calibrated against outcome uncertainty or visibility error + +Lower the relative weight of pure behavior cloning once ranking and rollout supervision are reliable. This project should not stay as BC-with-many-auxiliaries. + +## 5. Mandatory data-generation changes + +Files to change: + +`sim_reveal/dataset.py` +`sim_reveal/procedural_envs.py` +Add new tests: `tests/test_dataset_hard_negative_presence.py`, `tests/test_no_leak_with_new_labels.py`, `tests/test_teacher_audit.py` + +Exact changes: + +The dataset generation path must stop relying on teacher-plus-Gaussian-noise as the dominant source of planner candidates. Keep the teacher as one source, but add hard negative families that reflect actual task failures. + +Required negative families for all three tasks: + +1. premature retrieve: actor attempts retrieval before corridor and hold quality are sufficient; +2. reveal-with-release: revealer creates an opening but fails to maintain it; +3. over-disturbance: revealer opens aggressively but causes collapse or damage risk; +4. wrong-side or wrong-edge reveal: the opening is created in a useless place; +5. delayed actor entry: revealer holds too long and wastes time or destabilizes the scene; +6. actor path through weak corridor: actor enters where access exists visually but not safely. + +Required task-specific negative families: + +For foliage: +- swipe that increases visibility briefly but induces immediate reocclusion; +- push direction that hides the target from the actor side; +- gap on the wrong side of the target. + +For bag: +- one-rim lift that slips instead of widening the mouth; +- opening wide enough visually but not stable enough for actor insertion; +- actor reaches through the fabric instead of through the aperture. + +For cloth: +- lift too high and destroy fold structure; +- lift the wrong layer; +- retrieve path that drags clothing and unfolds the stack. + +The dataset should record candidate-level rollout outcomes for every candidate chunk: +- success +- reveal achieved +- visibility AUC +- hold persistence +- reocclusion rate +- disturbance cost +- fold-preservation (cloth) +- mouth aperture / hold quality (bag) +- damage proxy / gap width (foliage) + +This candidate-level outcome table should be the source of planner labels. + +Also add a teacher audit report. The current teacher is a useful bootstrap, but it is not enough to assume it is good. The audit should compare the teacher against reveal-only, retrieve-only, no-hold, and random policy baselines on the current proxy suite. + +## 6. Small but mandatory engineering cleanups + +These changes do not change model quality directly, but they reduce evaluation ambiguity and future regressions. + +In `tests/conftest.py`, remove the hardcoded `/workspace/VLAarchtests/code/reveal_vla_bimanual` path. Replace it with a path derived from `Path(__file__).resolve()` so tests run anywhere. + +In `eval/run_rlbench_rollout_eval.py`, preserve richer episode traces. Save chosen macro mode, planner scores, confidence, predicted reocclusion, path recoveries, noop fallbacks, and whether support-mode conditioning was enabled. + +In `eval/run_reveal_benchmark.py`, stop using only the default 24 episodes for serious comparisons. Keep 24 as a smoke benchmark, but add a “serious” mode at 100 or 200 episodes per proxy. + +In `eval/run_reveal_benchmark.py`, explicitly report `chunk_commit_steps` and do not leave the main reveal benchmark at a commit horizon of zero by default. These tasks are not purely one-step reactive. + +In the eval reporting utilities, add bootstrap confidence intervals and paired-seed comparisons. The differences you care about are often a few percentage points. Unpaired noisy comparisons are not enough. + +## 7. Exact new tests to verify the implementation + +The current repo has contract tests. Keep them. Add the following behavioral tests. + +### 7.1 Geometry and fusion tests + +`tests/test_geometry_tokens_propagate.py` + +Construct a tiny batch with fixed RGB and depth. Modify only camera rotation. Verify that: +1. `geometry_tokens` change, +2. the fused scene representation changes when geometry is enabled, +3. the fused scene representation does not change when geometry is disabled. + +`tests/test_camera_rotation_geometry.py` + +Use two cameras with identical translation and different rotation. Verify that the policy representation is rotation-sensitive after the geometry fix. This should fail on the current code and pass after the change. + +### 7.2 Spatial memory tests + +`tests/test_spatial_memory_occlusion_persistence.py` + +Use a scripted proxy sequence where the target is briefly visible, then fully occluded, then visible again. Verify that belief memory retains a localized target belief during occlusion and sharpens it after reappearance. This should test both persistence and uncertainty. + +`tests/test_memory_slot_write_gating.py` + +Feed a scene where only the opening region changes. Verify that only a minority of memory slots or cells update. This prevents global overwriting. + +`tests/test_reocclusion_memory_regression.py` + +Create a scripted “open then release” sequence. Verify that memory tracks reocclusion and that predicted hold quality declines. + +### 7.3 World-model tests + +`tests/test_world_model_null_rollout.py` + +Assert that `null_rollout` returns an exact or near-exact identity state and does not apply unintended updates. + +`tests/test_world_model_identity_rollout.py` + +Assert that `identity_rollout` preserves state across steps while leaving logging fields consistent. + +`tests/test_world_model_field_consistency.py` + +Roll out one deterministic proxy step and compare predicted next-step fields against simulator privileged fields. Enforce MAE thresholds per field, not only a single scalar. + +`tests/test_world_model_task_adapter.py` + +Use the same initial field state with different task embeddings. Verify that transitions differ in a consistent way. This catches dead task-conditioning code paths. + +### 7.4 Candidate and planner tests + +`tests/test_candidate_macro_coverage.py` + +Verify that the proposal generator returns at least one candidate from each required macro family when requested. + +`tests/test_planner_reocclusion_gating.py` + +Create a scripted case where one candidate retrieves immediately but causes opening collapse, and another candidate maintains the opening first. Verify that the planner picks the maintain-first plan. + +`tests/test_proposal_semantic_diversity.py` + +Do not measure diversity only by vector distance. Also verify macro-family diversity and rollout outcome diversity. + +### 7.5 Task-head tests + +`tests/test_task_conditioned_head_shapes.py` + +Verify output presence and shapes for all common fields and all task-specific fields. + +`tests/test_task_metric_monotonicity.py` + +Use small synthetic perturbations: +- increase aperture in bag: `opening_quality` should increase; +- increase canopy gap in foliage: `actor_feasibility` should increase; +- over-lift cloth: `fold_preservation` should decrease. + +These are not full scientific tests, but they catch dead or miswired heads quickly. + +### 7.6 Dataset and leakage tests + +`tests/test_dataset_hard_negative_presence.py` + +Sample dataset items and verify that candidate sets contain hard negative families, not just teacher-centered noise. + +`tests/test_no_leak_with_new_labels.py` + +Extend the no-leak assertions to cover all new task-specific labels and maps. The proxy dataset must keep using rendered observations only on the input side. + +`tests/test_teacher_audit.py` + +Require the teacher to beat random, retrieve-only, and reveal-only on the proxy metrics. If the teacher itself is weak, the whole planner training signal is questionable. + +### 7.7 Scripted proxy behavior suite + +Add a new deterministic behavioral test suite, for example under `tests/test_proxy_scripted_bench.py`. + +This suite should include 10 to 20 deterministic seeds per task with hand-designed initial states. The expected winner should be obvious. + +Required scripted cases: +- bag: `maintain_mouth` should beat `retrieve` immediately on hold persistence and success; +- foliage: `pin_canopy` should beat `random_swipe` on reocclusion and visibility AUC; +- cloth: `stabilize_fold` should beat `lift_high` on fold-preservation and success. + +The full model does not need to be perfect on these, but the planner should select the intended candidate at least 80 percent of the time. + +## 8. Exact benchmark plan to estimate performance + +Separate the benchmarks into two layers. The first layer verifies that the implementation behaves correctly. The second estimates real performance against baselines. + +### 8.1 Layer A: implementation-verification benchmarks + +These are not publication benchmarks. They are gates. + +Run the full unit and integration suite after every architecture milestone: + +```bash +PYTHONPATH=code/reveal_vla_bimanual pytest tests -q +``` + +After the new behavioral tests are added, require all of the following before moving on: +- all geometry propagation tests pass; +- the scripted proxy suite passes; +- world-model null and identity ablations pass exactly; +- candidate macro coverage passes; +- no-leak assertions pass with new task fields. + +Then run a deterministic proxy smoke benchmark on fixed seeds (for example 10 per task) to catch obvious regressions: + +```bash +cd code/reveal_vla_bimanual +python -m eval.run_reveal_benchmark \ + --model full=/abs/path/checkpoint.pt \ + --episodes 10 \ + --proxies foliage bag cloth \ + --chunk-commit-steps 4 \ + --output-root /abs/path/reports/reveal_smoke +``` + +This benchmark is only for regression detection. It is not a performance claim. + +### 8.2 Layer B: strengthened proxy benchmark (main task-aligned benchmark now) + +This should become the main internal benchmark until real teleop data exists. + +Use the existing `foliage`, `bag`, and `cloth` proxies, but strengthen them and evaluate seriously: +- at least 100 deterministic seeds per proxy for final comparisons; +- paired-seed evaluation across all ablations; +- chunk commit horizons of at least 4, and also report a 0/2/4 sweep once; +- no teacher involvement during evaluation. + +Run the base benchmark: + +```bash +cd code/reveal_vla_bimanual +python -m eval.run_reveal_benchmark \ + --model full=/abs/path/checkpoint.pt \ + --episodes 100 \ + --proxies foliage bag cloth \ + --chunk-commit-steps 4 \ + --output-root /abs/path/reports/reveal_full +``` + +Run required paired ablations from the same checkpoint family or retrained checkpoints: +- no geometry tokens +- no spatial memory +- compact world model instead of spatial +- no planner +- planner with Gaussian candidates only +- no task-conditioned head +- no support-mode conditioning + +The proxy benchmark must report at least these metrics: +- retrieve success +- reveal success +- target visibility AUC +- actor-feasibility AUC +- hold persistence +- reocclusion rate +- disturbance cost +- planner top-1 on candidate rollouts +- world-model next-step MAE +- uncertainty calibration +- candidate ranking NDCG + +Add task-specific metrics: +- foliage: gap width, damage proxy, release-collapse rate +- bag: aperture width or area, rim slip rate, insertion success +- cloth: fold-preservation score, layer separation quality, drag-induced disturbance + +Acceptance gate for continuing toward public baseline comparison: +- the full model should beat the current repo’s RGB-D baseline on mean proxy success and on at least two of the three proxies; +- planner-on should beat planner-off on at least two of the three proxies and on hard-negative candidate ranking; +- spatial world model should beat compact and null rollouts on persistence and reocclusion prediction; +- task-conditioned head should beat generic head on at least one task-specific metric per target task. + +### 8.3 Layer C: RLBench / PerAct2 bimanual rollout benchmark + +The repo already has the right hook for this. Use `run_rlbench_rollout_eval.py` and `run_peract2_task_sweep.py` as the main public benchmark entry points. Do not treat `run_peract2_launch_smoke.py` as evaluation. It is only a launch check. + +Run the full existing PerAct2 13-task split from `sim_rlbench/task_splits.py::PERACT2_BIMANUAL_TASKS`: + +```bash +cd code/reveal_vla_bimanual +python -m eval.run_peract2_task_sweep \ + --checkpoint /abs/path/checkpoint.pt \ + --output-root /abs/path/reports/peract2_13 \ + --episodes-per-task 25 \ + --episode-length 20 \ + --resolution 224 \ + --chunk-commit-steps 4 \ + --allow-unsupervised-planning \ + --headless +``` + +Also run direct single-task evaluations when debugging: + +```bash +cd code/reveal_vla_bimanual +python -m eval.run_rlbench_rollout_eval \ + --checkpoint /abs/path/checkpoint.pt \ + --output-dir /abs/path/reports/rlbench_debug \ + --tasks RightOpenDrawer \ + --episodes-per-task 25 \ + --episode-length 20 \ + --resolution 224 \ + --plan \ + --chunk-commit-steps 4 \ + --allow-unsupervised-planning \ + --headless +``` + +This benchmark is not a direct match to the three target tasks, but it is the main public bimanual sanity check. It measures whether the structured modifications hurt or help general bimanual competence. + +Required comparisons on this benchmark: +- current repo best checkpoint +- full improved model +- no-planner ablation +- compact world model ablation +- no geometry ablation +- no task-conditioning ablation + +If external baseline code is available, evaluate against: +- PerAct2 +- InterACT +- VoxAct-B +- AnyBimanual + +If compute allows, also compare against foundation-scale baselines as a separate category: +- TwinVLA +- RDT-1B + +Fairness requirements: +- same camera setup if possible (front plus both wrists); +- same resolution; +- same episode length and reset policy; +- same task list; +- same number of evaluation episodes; +- report whether baselines use extra large-scale pretraining. + +This benchmark should report: +- per-task success +- mean success +- mean return +- path recoveries +- noop fallbacks +- plan-on vs plan-off +- per-episode planner traces for error analysis + +### 8.4 Layer D: deformable-manipulation public benchmarks + +You do not yet have custom teleop data, so the closest public matches for bag and cloth should be used now. + +Recommended benchmarks: +- DeformableRavens +- SoftGym cloth tasks +- DaXBench cloth tasks + +The exact subset should be chosen based on available tasks, but the mapping is straightforward. Bag-like opening and insertion tasks are the closest public proxy for the bag environment. Cloth lifting, separation, and manipulation tasks are the closest public proxy for the suitcase environment. There is no equally good public foliage benchmark, so the strengthened foliage proxy will remain the main stand-in until custom data exists. + +Required evaluation protocol: +- same observation modalities across methods; +- same action horizon where possible; +- same random seeds; +- same episode budgets; +- report both success and task-specific deformation metrics. + +Add at least these extra metrics on the deformable benchmarks: +- opening quality or aperture quality +- hold persistence under actor motion +- reocclusion or collapse rate +- disturbance cost +- fold-preservation or structural-preservation score + +### 8.5 Layer E: optional exploratory / active-perception benchmark + +If EFM-10 or BAP code and data are actually available when implementation starts, add them. That benchmark is conceptually close to your task family because it measures exploratory plus focused manipulation under occlusion. Do not block the project on it if code is not readily usable. + +### 8.6 Layer F: optional broad generalization benchmark + +If time allows, add RoboTwin 2.0 as a general bimanual breadth check. It is not a direct target-task match, but it is useful for checking whether the structured reveal-and-retrieve bias damages general bimanual transfer. + +## 9. Baseline strategy + +There are two baseline groups and they should not be mixed carelessly. + +The first group is matched-data or matched-setting baselines. These are the most useful for fair engineering comparison. Use PerAct2, InterACT, VoxAct-B, and AnyBimanual if code is available in a compatible evaluation setting. + +The second group is foundation-scale baselines. These are useful, but they are not apples-to-apples unless you disclose the pretraining and model scale difference clearly. Use TwinVLA and RDT-1B in this category if compute allows. + +Do not declare victory because the improved model beats the current repo checkpoint. That is a necessary condition, not the target claim. + +## 10. Acceptance criteria for “ready to collect real data” + +Do not move into expensive teleop collection until all of the following are true. + +First, the geometry and spatial memory tests pass and stay green for multiple checkpoints. + +Second, the strengthened proxy benchmark shows that the full model beats the current repo baseline convincingly. The minimum bar should be improvement in overall proxy success plus improvement on at least two of the three task types. + +Third, planner-on must beat planner-off on hard-negative ranking and on task success. If the planner does not beat the decoder baseline, then the explicit planning stack is not yet earning its complexity. + +Fourth, the spatial world model must beat compact and null baselines on persistence and reocclusion prediction. If it does not, the planning story is still too weak. + +Fifth, the improved model should at least match strong public baselines on the RLBench / PerAct2 suite, and ideally exceed them on the tasks most related to opening, holding, uncovering, and coordinated retrieval. If it is significantly behind there, the architecture is still too immature. + +## 11. Recommended implementation order + +Phase 1 should fix information flow and evaluation trustworthiness. Implement geometry propagation, camera orientation encoding, and path cleanup in `tests/conftest.py`. Then add the new geometry tests and rerun the current proxy benchmark. + +Phase 2 should add task-aware semantic candidates and hard-negative data generation. This is the fastest path to making the planner meaningful without yet rewriting the full memory and world model stack. + +Phase 3 should add task-conditioned reveal outputs and the strengthened proxy metrics. At this stage the proxy benchmark should start reflecting the real task failure modes. + +Phase 4 should replace pooled memory and compact rollout with the new spatial memory and spatial world model. This is the biggest change and should only happen after the eval harness can tell whether it helped. + +Phase 5 should run the full internal ablation suite, then RLBench / PerAct2, then deformable public benchmarks, and only then decide whether the architecture is strong enough to justify real-data collection. + +## 12. What to avoid + +Do not treat launch smoke as performance evaluation. + +Do not keep teacher-centered Gaussian candidates as the main planner supervision source. + +Do not remove task structure in favor of a generic monolithic BC model unless the structured architecture clearly fails. Nothing in the current repo proves that. + +Do not use only mean success. These tasks need persistence, reocclusion, and structural-preservation metrics. + +Do not claim the current planner or current world model are validated. They are not, yet. + +## 13. Minimal first patch set (the first pull request) + +If only one implementation sprint is possible before deeper refactors, the first pull request should contain exactly this: + +1. fix `geometry_tokens` propagation from backbone to fusion to policy output; +2. add camera rotation encoding in `DepthPatchAdapter`; +3. add `tests/test_geometry_tokens_propagate.py` and `tests/test_camera_rotation_geometry.py`; +4. replace hardcoded path logic in `tests/conftest.py`; +5. extend `run_reveal_benchmark.py` reporting to save `chunk_commit_steps`, bootstrap confidence intervals, and paired-seed summaries; +6. add semantic macro candidates in `action_decoder.py` without yet deleting the Gaussian fallback; +7. add hard negative candidate generation in `sim_reveal/procedural_envs.py`; +8. add the deterministic scripted proxy benchmark suite. + +This first patch set will not make the model SOTA. It will make the repo trustworthy enough to support the larger refactor. + +## 14. Reference links + +Repo root: +https://huggingface.co/lsnu/VLAarchtests/tree/main + +Core files: +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/models/backbones.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/models/multiview_fusion.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/models/observation_memory.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/models/reveal_head.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/models/world_model.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/models/action_decoder.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/models/planner.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/models/policy.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/train/losses.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/sim_reveal/dataset.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/sim_reveal/procedural_envs.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/eval/run_reveal_benchmark.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/eval/run_rlbench_rollout_eval.py +https://huggingface.co/lsnu/VLAarchtests/blob/main/code/reveal_vla_bimanual/eval/run_peract2_task_sweep.py + +Public benchmark / baseline references to align against: +PerAct2 / RLBench2 bimanual benchmark: https://bimanual.github.io/ +InterACT: https://dannyran123.github.io/interact/ +VoxAct-B: https://voxact-b.github.io/ +AnyBimanual: https://anybimanual.github.io/ +TwinVLA: https://twinvla.github.io/ +RDT-1B: https://rdt-robotics.github.io/rdt-robotics/ +DeformableRavens: https://deformableravens.github.io/ +SoftGym: https://sites.google.com/view/softgym/home +DaXBench: https://daxbench.github.io/ +EFM / BAP: https://efmanipulation.github.io/ +RoboTwin 2.0: https://robotwin-platform.github.io/ + +## 15. Final recommendation + +The architecture should be pursued, but only in a narrower and more explicit form: task-structured bimanual reveal-and-retrieve under elastic occlusion. The current repo is close enough to that idea to be worth continuing. The most important next step is not collecting real data yet. It is making the geometry path real, making the planner learn from hard failure cases, and making the world model spatial enough that “maintain the opening while the other arm retrieves” is something the system can actually predict rather than merely imitate. diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_dual_push_buttons/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_dual_push_buttons/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..703834592e4da4c0e6683b6373959e27e1a91669 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_dual_push_buttons/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_dual_push_buttons`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_handover_item/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_handover_item/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..c4e1f4a62421521869e1204c3f7ac1ea9c777e47 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_handover_item/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_handover_item`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_handover_item_easy/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_handover_item_easy/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..4d77dd4eae1116b6eb1f774c8b9e12c1ed583438 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_handover_item_easy/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_handover_item_easy`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_lift_ball/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_lift_ball/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..07dbb85d6222a8baf0378a4e2c4dd2c3521443f1 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_lift_ball/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_lift_ball`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_lift_tray/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_lift_tray/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..5496516af65d68f8eec02f701f1fbb37d7951023 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_lift_tray/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_lift_tray`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_pick_laptop/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_pick_laptop/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..39fbc5b2b448763634bd48b9ce34efcf14330a35 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_pick_laptop/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_pick_laptop`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_pick_plate/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_pick_plate/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..8d28de6582f6ba14fd7ac69733488402dbd87696 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_pick_plate/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_pick_plate`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_push_box/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_push_box/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..b482aae4e0ea29ef31204488e1d3c34da5d00688 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_push_box/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_push_box`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_put_bottle_in_fridge/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_put_bottle_in_fridge/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..36343c57b9b37cb0fd681e2e5f2a551cd7ff2efc --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_put_bottle_in_fridge/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_put_bottle_in_fridge`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_put_item_in_drawer/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_put_item_in_drawer/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..a245539e0ca92e3eadc420c8090b298c431a22a7 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_put_item_in_drawer/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_put_item_in_drawer`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_straighten_rope/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_straighten_rope/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..0aceac6c34cd24ff7807067856d72b6847933a7b --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_straighten_rope/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_straighten_rope`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_sweep_to_dustpan/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_sweep_to_dustpan/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..1a4ea66d1d8cc392987b2431033e3474fcfddd75 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_sweep_to_dustpan/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_sweep_to_dustpan`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_take_tray_out_of_oven/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_take_tray_out_of_oven/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..9c09468ff833d3cd11eed32d9a4b5079306356f6 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/bimanual_take_tray_out_of_oven/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_take_tray_out_of_oven`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..a2a69fc0feb8537a22d83b342b634c31804b7851 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_baseline_ep1/baseline_rgbd_seed17_plan_split/rollout_eval.md @@ -0,0 +1,31 @@ +# PerAct2 13-Task Rollout Sweep + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Episodes per task: `1` +- Episode length: `20` +- Resolution: `224` +- No planner: `False` +- Disable task conditioning: `False` +- No geometry: `False` +- Compact world model: `False` +- Task count: `13` +- Error tasks: `[]` +- Mean success: `0.000` + +## Per-task + +- `bimanual_push_box`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_lift_ball`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_dual_push_buttons`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_pick_plate`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_put_item_in_drawer`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_put_bottle_in_fridge`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_handover_item`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_pick_laptop`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_straighten_rope`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_sweep_to_dustpan`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_lift_tray`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_handover_item_easy`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_take_tray_out_of_oven`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_dual_push_buttons/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_dual_push_buttons/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..7856f30aa315985d73417568a38822ebcf2e76f6 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_dual_push_buttons/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_dual_push_buttons`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_handover_item/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_handover_item/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..973ed49981c2115447939a3d228f3990717b4a4a --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_handover_item/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_handover_item`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_handover_item_easy/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_handover_item_easy/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..2221be72a6f46346da8c4d8f9ef2ebc1ac470958 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_handover_item_easy/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_handover_item_easy`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_lift_ball/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_lift_ball/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..a72bc68ef4382fe47f6c79b200ac55d7607d7437 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_lift_ball/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_lift_ball`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_lift_tray/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_lift_tray/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..75dd7f8ec754d9468bc300d67c9b56ac81a735ef --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_lift_tray/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_lift_tray`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_pick_laptop/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_pick_laptop/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..f6f825e285d9bf4569dace5e324bfbcfc9ad5d70 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_pick_laptop/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_pick_laptop`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_pick_plate/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_pick_plate/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..37dd356266a8cf1d4e54639e8fc6ea04dc71c43e --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_pick_plate/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_pick_plate`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_push_box/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_push_box/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..dcb31e31ce8660ba769eb982f61b33075d078b36 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_push_box/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_push_box`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_put_bottle_in_fridge/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_put_bottle_in_fridge/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..388d51347325af828c66dad306b76ca67f6e717d --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_put_bottle_in_fridge/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_put_bottle_in_fridge`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_put_item_in_drawer/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_put_item_in_drawer/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..f3c32aac7781f1e0511fe335483b736270cc5eb7 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_put_item_in_drawer/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_put_item_in_drawer`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_straighten_rope/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_straighten_rope/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..db29ab1935d530ee3512f3dee04cf87a0e8ca670 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_straighten_rope/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_straighten_rope`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_sweep_to_dustpan/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_sweep_to_dustpan/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..8321f6533361dab1bad7de2a1cbde7ff0ad1ca3a --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_sweep_to_dustpan/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_sweep_to_dustpan`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_take_tray_out_of_oven/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_take_tray_out_of_oven/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..e127641046b384e2ba2b054b41fa50ea308bd7b9 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/bimanual_take_tray_out_of_oven/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_take_tray_out_of_oven`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..213be94223d0ee2a6224ef1a97ccbb40936ebd10 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_noplan_split/rollout_eval.md @@ -0,0 +1,31 @@ +# PerAct2 13-Task Rollout Sweep + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `False` +- Plan applied: `False` +- Episodes per task: `1` +- Episode length: `20` +- Resolution: `224` +- No planner: `False` +- Disable task conditioning: `False` +- No geometry: `False` +- Compact world model: `False` +- Task count: `13` +- Error tasks: `[]` +- Mean success: `0.000` + +## Per-task + +- `bimanual_push_box`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_lift_ball`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_dual_push_buttons`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_pick_plate`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_put_item_in_drawer`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_put_bottle_in_fridge`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_handover_item`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_pick_laptop`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_straighten_rope`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_sweep_to_dustpan`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_lift_tray`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_handover_item_easy`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_take_tray_out_of_oven`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_dual_push_buttons/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_dual_push_buttons/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..5c4bc12d288f5b138dd4b0fafa33fa4ec98e22e1 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_dual_push_buttons/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_dual_push_buttons`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_handover_item/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_handover_item/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..6e1d1bb49c379b9f7a984f164e369900f2b3408c --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_handover_item/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_handover_item`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_handover_item_easy/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_handover_item_easy/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..733ecb85d16c1c10efb0ff712fa13e23ff5cb376 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_handover_item_easy/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_handover_item_easy`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_lift_ball/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_lift_ball/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..6b3fca30aab27037fd9d67e7f1b856768195445c --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_lift_ball/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_lift_ball`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_lift_tray/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_lift_tray/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..344229c4881b75b5f4e91ee0583af41492fa13d3 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_lift_tray/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_lift_tray`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_pick_laptop/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_pick_laptop/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..73a10c019e9a1bf97fc8f6a16b1c86151109d71f --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_pick_laptop/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_pick_laptop`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_pick_plate/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_pick_plate/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..0fb9a85841a1f7b709cb28aaec7d9583f752b926 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_pick_plate/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_pick_plate`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_push_box/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_push_box/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..fa9e76d747ef5c2c1311b5dc193f627c85ab1a0e --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_push_box/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_push_box`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_put_bottle_in_fridge/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_put_bottle_in_fridge/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..8b3ca4f521ef78e9bde754d0ce5c9e6d2a02e6fb --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_put_bottle_in_fridge/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_put_bottle_in_fridge`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_put_item_in_drawer/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_put_item_in_drawer/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..a4f9c0af314c07426d26847a91dbff16ec43a8ac --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_put_item_in_drawer/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_put_item_in_drawer`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_straighten_rope/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_straighten_rope/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..b9fb5d586cf675332a82aa9b1e344dc05b22c861 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_straighten_rope/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_straighten_rope`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_sweep_to_dustpan/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_sweep_to_dustpan/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..c1e2ff290041435465a8116424b6ad7a2ef5da65 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_sweep_to_dustpan/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_sweep_to_dustpan`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_take_tray_out_of_oven/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_take_tray_out_of_oven/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..00d635c8706cfb4d96536ba46a703779dcb416b1 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/bimanual_take_tray_out_of_oven/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `True` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_take_tray_out_of_oven`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..ec374b7e23b586cf66b265e4ccf01f613f37a2df --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/peract2_spatial_full_ep1/spatial_phase_seed17_plan_split/rollout_eval.md @@ -0,0 +1,31 @@ +# PerAct2 13-Task Rollout Sweep + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Episodes per task: `1` +- Episode length: `20` +- Resolution: `224` +- No planner: `False` +- Disable task conditioning: `False` +- No geometry: `False` +- Compact world model: `False` +- Task count: `13` +- Error tasks: `[]` +- Mean success: `0.000` + +## Per-task + +- `bimanual_push_box`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_lift_ball`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_dual_push_buttons`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_pick_plate`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_put_item_in_drawer`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_put_bottle_in_fridge`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_handover_item`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_pick_laptop`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_straighten_rope`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_sweep_to_dustpan`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_lift_tray`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_handover_item_easy`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] +- `bimanual_take_tray_out_of_oven`: mean_success=0.000, mean_return=0.000, path_recoveries=[0], noop_fallbacks=[0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compact_probe/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compact_probe/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..3ac2d8d895a1293faa5baccd93a95c8ff1c08080 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compact_probe/reveal_benchmark.md @@ -0,0 +1,18 @@ +# Reveal Proxy Benchmark + +## handoff_compact +- checkpoint: /workspace/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_seed17/checkpoint_best.pt +- benchmark_mode: smoke +- episodes: 30.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.533 +- visibility_integral: 25.370 +- corridor_availability: 0.730 +- reocclusion_rate: 0.005 +- persistence_horizon_mae: 1.332 +- disturbance_cost: 0.259 +- success_ci_low: 0.433 +- success_ci_high: 0.633 +- foliage_proxy_success: 0.567 +- bag_proxy_success: 0.467 +- cloth_proxy_success: 0.567 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compact_train_probe/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compact_train_probe/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..a2d23784acae9e21714d91fa881bbb58412436ed --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compact_train_probe/reveal_benchmark.md @@ -0,0 +1,18 @@ +# Reveal Proxy Benchmark + +## compact_train +- checkpoint: /workspace/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_seed17/checkpoint_best.pt +- benchmark_mode: smoke +- episodes: 30.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.367 +- visibility_integral: 45.611 +- corridor_availability: 0.899 +- reocclusion_rate: 0.000 +- persistence_horizon_mae: 0.560 +- disturbance_cost: 0.351 +- success_ci_low: 0.278 +- success_ci_high: 0.467 +- foliage_proxy_success: 0.433 +- bag_proxy_success: 0.533 +- cloth_proxy_success: 0.133 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compare_serious/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compare_serious/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..6a674e4df6cf51da15a0cdf6b0a77f212b14eab0 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compare_serious/reveal_benchmark.md @@ -0,0 +1,40 @@ +# Reveal Proxy Benchmark + +## base +- checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +- benchmark_mode: serious +- episodes: 100.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.583 +- visibility_integral: 28.273 +- corridor_availability: 0.805 +- reocclusion_rate: 0.080 +- persistence_horizon_mae: 1.138 +- disturbance_cost: 0.376 +- success_ci_low: 0.527 +- success_ci_high: 0.637 +- foliage_proxy_success: 0.560 +- bag_proxy_success: 0.500 +- cloth_proxy_success: 0.690 + +## handoff +- checkpoint: /workspace/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_seed17/checkpoint_best.pt +- benchmark_mode: serious +- episodes: 100.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.217 +- visibility_integral: 3.580 +- corridor_availability: 0.188 +- reocclusion_rate: 0.023 +- persistence_horizon_mae: 3.865 +- disturbance_cost: 0.344 +- success_ci_low: 0.167 +- success_ci_high: 0.263 +- foliage_proxy_success: 0.330 +- bag_proxy_success: 0.150 +- cloth_proxy_success: 0.170 +- paired_paired_episodes_vs_base: 300.000 +- paired_success_delta_vs_base: -0.367 +- paired_visibility_delta_vs_base: -24.693 +- paired_reocclusion_delta_vs_base: -0.057 +- paired_disturbance_delta_vs_base: -0.032 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compare_serious_compact/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compare_serious_compact/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..a159de50bf76a3fd02f321c4a75920e52a87affe --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_handoff_compare_serious_compact/reveal_benchmark.md @@ -0,0 +1,40 @@ +# Reveal Proxy Benchmark + +## base +- checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +- benchmark_mode: serious +- episodes: 100.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.583 +- visibility_integral: 28.219 +- corridor_availability: 0.805 +- reocclusion_rate: 0.080 +- persistence_horizon_mae: 1.141 +- disturbance_cost: 0.377 +- success_ci_low: 0.527 +- success_ci_high: 0.637 +- foliage_proxy_success: 0.560 +- bag_proxy_success: 0.500 +- cloth_proxy_success: 0.690 + +## handoff +- checkpoint: /workspace/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_seed17/checkpoint_best.pt +- benchmark_mode: serious +- episodes: 100.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.520 +- visibility_integral: 23.349 +- corridor_availability: 0.691 +- reocclusion_rate: 0.006 +- persistence_horizon_mae: 1.575 +- disturbance_cost: 0.257 +- success_ci_low: 0.463 +- success_ci_high: 0.577 +- foliage_proxy_success: 0.660 +- bag_proxy_success: 0.320 +- cloth_proxy_success: 0.580 +- paired_paired_episodes_vs_base: 300.000 +- paired_success_delta_vs_base: -0.063 +- paired_visibility_delta_vs_base: -4.870 +- paired_reocclusion_delta_vs_base: -0.074 +- paired_disturbance_delta_vs_base: -0.119 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_ablations_compact/ablations.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_ablations_compact/ablations.md new file mode 100644 index 0000000000000000000000000000000000000000..c8066343e463e971709a8609ce3c9879340902cc --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_ablations_compact/ablations.md @@ -0,0 +1,108 @@ +# Reveal Ablations + +## full_model +- mean_success: 0.513 +- visibility_integral: 39.979 +- corridor_availability: 0.889 +- reocclusion_rate: 0.000 +- persistence_horizon_mae: 0.568 +- disturbance_cost: 0.344 +- chunk_commit_steps: 4.000 + +## no_geometry +- mean_success: 0.513 +- visibility_integral: 39.984 +- corridor_availability: 0.889 +- reocclusion_rate: 0.000 +- persistence_horizon_mae: 0.568 +- disturbance_cost: 0.344 +- chunk_commit_steps: 4.000 +- paired_paired_episodes_vs_full_model: 300.000 +- paired_success_delta_vs_full_model: 0.000 +- paired_visibility_delta_vs_full_model: 0.005 +- paired_reocclusion_delta_vs_full_model: 0.000 +- paired_disturbance_delta_vs_full_model: -0.000 + +## no_spatial_memory +- mean_success: 0.497 +- visibility_integral: 37.758 +- corridor_availability: 0.894 +- reocclusion_rate: 0.002 +- persistence_horizon_mae: 0.666 +- disturbance_cost: 0.418 +- chunk_commit_steps: 4.000 +- paired_paired_episodes_vs_full_model: 300.000 +- paired_success_delta_vs_full_model: -0.017 +- paired_visibility_delta_vs_full_model: -2.221 +- paired_reocclusion_delta_vs_full_model: 0.002 +- paired_disturbance_delta_vs_full_model: 0.074 + +## compact_world_model +- mean_success: 0.513 +- visibility_integral: 39.979 +- corridor_availability: 0.889 +- reocclusion_rate: 0.000 +- persistence_horizon_mae: 0.568 +- disturbance_cost: 0.344 +- chunk_commit_steps: 4.000 +- paired_paired_episodes_vs_full_model: 300.000 +- paired_success_delta_vs_full_model: 0.000 +- paired_visibility_delta_vs_full_model: 0.000 +- paired_reocclusion_delta_vs_full_model: 0.000 +- paired_disturbance_delta_vs_full_model: 0.000 + +## no_planner +- mean_success: 0.433 +- visibility_integral: 20.634 +- corridor_availability: 0.536 +- reocclusion_rate: 0.020 +- persistence_horizon_mae: 2.664 +- disturbance_cost: 0.186 +- chunk_commit_steps: 4.000 +- paired_paired_episodes_vs_full_model: 300.000 +- paired_success_delta_vs_full_model: -0.080 +- paired_visibility_delta_vs_full_model: -19.345 +- paired_reocclusion_delta_vs_full_model: 0.020 +- paired_disturbance_delta_vs_full_model: -0.158 + +## gaussian_candidates_only +- mean_success: 0.467 +- visibility_integral: 16.719 +- corridor_availability: 0.576 +- reocclusion_rate: 0.030 +- persistence_horizon_mae: 2.758 +- disturbance_cost: 0.478 +- chunk_commit_steps: 4.000 +- paired_paired_episodes_vs_full_model: 300.000 +- paired_success_delta_vs_full_model: -0.047 +- paired_visibility_delta_vs_full_model: -23.260 +- paired_reocclusion_delta_vs_full_model: 0.030 +- paired_disturbance_delta_vs_full_model: 0.134 + +## no_task_head +- mean_success: 0.513 +- visibility_integral: 38.129 +- corridor_availability: 0.886 +- reocclusion_rate: 0.000 +- persistence_horizon_mae: 0.629 +- disturbance_cost: 0.344 +- chunk_commit_steps: 4.000 +- paired_paired_episodes_vs_full_model: 300.000 +- paired_success_delta_vs_full_model: 0.000 +- paired_visibility_delta_vs_full_model: -1.850 +- paired_reocclusion_delta_vs_full_model: 0.000 +- paired_disturbance_delta_vs_full_model: 0.001 + +## no_support_mode_conditioning +- mean_success: 0.513 +- visibility_integral: 39.979 +- corridor_availability: 0.889 +- reocclusion_rate: 0.000 +- persistence_horizon_mae: 0.568 +- disturbance_cost: 0.344 +- chunk_commit_steps: 4.000 +- paired_paired_episodes_vs_full_model: 300.000 +- paired_success_delta_vs_full_model: 0.000 +- paired_visibility_delta_vs_full_model: 0.000 +- paired_reocclusion_delta_vs_full_model: 0.000 +- paired_disturbance_delta_vs_full_model: 0.000 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_compare_serious_compact/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_compare_serious_compact/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..14e82b8d3f8a553e1ae45a99edb8af2214b47d64 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_compare_serious_compact/reveal_benchmark.md @@ -0,0 +1,40 @@ +# Reveal Proxy Benchmark + +## baseline +- checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +- benchmark_mode: serious +- episodes: 100.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.583 +- visibility_integral: 28.243 +- corridor_availability: 0.806 +- reocclusion_rate: 0.080 +- persistence_horizon_mae: 1.145 +- disturbance_cost: 0.380 +- success_ci_low: 0.527 +- success_ci_high: 0.637 +- foliage_proxy_success: 0.560 +- bag_proxy_success: 0.500 +- cloth_proxy_success: 0.690 + +## compact_phase +- checkpoint: /workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17/checkpoint_best.pt +- benchmark_mode: serious +- episodes: 100.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.513 +- visibility_integral: 39.979 +- corridor_availability: 0.889 +- reocclusion_rate: 0.000 +- persistence_horizon_mae: 0.568 +- disturbance_cost: 0.344 +- success_ci_low: 0.460 +- success_ci_high: 0.570 +- foliage_proxy_success: 0.570 +- bag_proxy_success: 0.420 +- cloth_proxy_success: 0.550 +- paired_paired_episodes_vs_baseline: 300.000 +- paired_success_delta_vs_baseline: -0.070 +- paired_visibility_delta_vs_baseline: 11.736 +- paired_reocclusion_delta_vs_baseline: -0.080 +- paired_disturbance_delta_vs_baseline: -0.036 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_compare_serious_spatial_compactwm/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_compare_serious_spatial_compactwm/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..14dfa8405a7b752081e9b5ff8420ce1de568b7b1 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_compare_serious_spatial_compactwm/reveal_benchmark.md @@ -0,0 +1,40 @@ +# Reveal Proxy Benchmark + +## baseline +- checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +- benchmark_mode: serious +- episodes: 100.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.583 +- visibility_integral: 28.219 +- corridor_availability: 0.805 +- reocclusion_rate: 0.080 +- persistence_horizon_mae: 1.139 +- disturbance_cost: 0.376 +- success_ci_low: 0.527 +- success_ci_high: 0.637 +- foliage_proxy_success: 0.560 +- bag_proxy_success: 0.500 +- cloth_proxy_success: 0.690 + +## spatial_phase +- checkpoint: /workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt +- benchmark_mode: serious +- episodes: 100.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.493 +- visibility_integral: 17.257 +- corridor_availability: 0.621 +- reocclusion_rate: 0.012 +- persistence_horizon_mae: 2.377 +- disturbance_cost: 0.230 +- success_ci_low: 0.437 +- success_ci_high: 0.550 +- foliage_proxy_success: 0.640 +- bag_proxy_success: 0.330 +- cloth_proxy_success: 0.510 +- paired_paired_episodes_vs_baseline: 300.000 +- paired_success_delta_vs_baseline: -0.090 +- paired_visibility_delta_vs_baseline: -10.961 +- paired_reocclusion_delta_vs_baseline: -0.068 +- paired_disturbance_delta_vs_baseline: -0.147 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_probe_compact/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_probe_compact/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..b9c2dc92012d50412f09c8094066b23c0ef5c9cf --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_probe_compact/reveal_benchmark.md @@ -0,0 +1,40 @@ +# Reveal Proxy Benchmark + +## baseline +- checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +- benchmark_mode: smoke +- episodes: 30.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.578 +- visibility_integral: 28.384 +- corridor_availability: 0.797 +- reocclusion_rate: 0.078 +- persistence_horizon_mae: 1.229 +- disturbance_cost: 0.385 +- success_ci_low: 0.478 +- success_ci_high: 0.678 +- foliage_proxy_success: 0.400 +- bag_proxy_success: 0.600 +- cloth_proxy_success: 0.733 + +## compact_phase +- checkpoint: /workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17/checkpoint_best.pt +- benchmark_mode: smoke +- episodes: 30.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.478 +- visibility_integral: 42.792 +- corridor_availability: 0.898 +- reocclusion_rate: 0.000 +- persistence_horizon_mae: 0.581 +- disturbance_cost: 0.357 +- success_ci_low: 0.378 +- success_ci_high: 0.578 +- foliage_proxy_success: 0.433 +- bag_proxy_success: 0.500 +- cloth_proxy_success: 0.500 +- paired_paired_episodes_vs_baseline: 90.000 +- paired_success_delta_vs_baseline: -0.100 +- paired_visibility_delta_vs_baseline: 14.409 +- paired_reocclusion_delta_vs_baseline: -0.078 +- paired_disturbance_delta_vs_baseline: -0.028 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_probe_spatial/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_probe_spatial/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..1a232895ef0ceeab1b151bab6e874fbad2b908ad --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_probe_spatial/reveal_benchmark.md @@ -0,0 +1,40 @@ +# Reveal Proxy Benchmark + +## baseline +- checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +- benchmark_mode: smoke +- episodes: 30.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.589 +- visibility_integral: 28.183 +- corridor_availability: 0.806 +- reocclusion_rate: 0.081 +- persistence_horizon_mae: 1.209 +- disturbance_cost: 0.377 +- success_ci_low: 0.489 +- success_ci_high: 0.689 +- foliage_proxy_success: 0.433 +- bag_proxy_success: 0.600 +- cloth_proxy_success: 0.733 + +## spatial_phase +- checkpoint: /workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt +- benchmark_mode: smoke +- episodes: 30.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.244 +- visibility_integral: 5.531 +- corridor_availability: 0.244 +- reocclusion_rate: 0.045 +- persistence_horizon_mae: 3.971 +- disturbance_cost: 0.246 +- success_ci_low: 0.166 +- success_ci_high: 0.333 +- foliage_proxy_success: 0.267 +- bag_proxy_success: 0.333 +- cloth_proxy_success: 0.133 +- paired_paired_episodes_vs_baseline: 90.000 +- paired_success_delta_vs_baseline: -0.344 +- paired_visibility_delta_vs_baseline: -22.651 +- paired_reocclusion_delta_vs_baseline: -0.036 +- paired_disturbance_delta_vs_baseline: -0.131 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_probe_spatial_compactwm/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_probe_spatial_compactwm/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..27967ff33c14fc0f9de80e05223a914a6334cdbe --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_phase_probe_spatial_compactwm/reveal_benchmark.md @@ -0,0 +1,18 @@ +# Reveal Proxy Benchmark + +## spatial_phase +- checkpoint: /workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt +- benchmark_mode: smoke +- episodes: 30.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.522 +- visibility_integral: 18.450 +- corridor_availability: 0.660 +- reocclusion_rate: 0.010 +- persistence_horizon_mae: 2.146 +- disturbance_cost: 0.238 +- success_ci_low: 0.433 +- success_ci_high: 0.622 +- foliage_proxy_success: 0.567 +- bag_proxy_success: 0.467 +- cloth_proxy_success: 0.533 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_smoke_mod/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_smoke_mod/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..edf6fea0502a04136c1f9e4ec371d3de5a6165ee --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_smoke_mod/reveal_benchmark.md @@ -0,0 +1,18 @@ +# Reveal Proxy Benchmark + +## full +- checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +- benchmark_mode: smoke +- episodes: 10.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.600 +- visibility_integral: 26.967 +- corridor_availability: 0.810 +- reocclusion_rate: 0.057 +- persistence_horizon_mae: 1.160 +- disturbance_cost: 0.370 +- success_ci_low: 0.433 +- success_ci_high: 0.767 +- foliage_proxy_success: 0.400 +- bag_proxy_success: 0.700 +- cloth_proxy_success: 0.700 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_smoke_nogeom/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_smoke_nogeom/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..360f2159276f66558a87604b4d6a973596366be0 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_smoke_nogeom/reveal_benchmark.md @@ -0,0 +1,18 @@ +# Reveal Proxy Benchmark + +## nogeom +- checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +- benchmark_mode: smoke +- episodes: 10.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.600 +- visibility_integral: 26.849 +- corridor_availability: 0.807 +- reocclusion_rate: 0.057 +- persistence_horizon_mae: 1.147 +- disturbance_cost: 0.367 +- success_ci_low: 0.433 +- success_ci_high: 0.767 +- foliage_proxy_success: 0.400 +- bag_proxy_success: 0.700 +- cloth_proxy_success: 0.700 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_smoke_noplanner/reveal_benchmark.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_smoke_noplanner/reveal_benchmark.md new file mode 100644 index 0000000000000000000000000000000000000000..cb3d74e2f92100b7b442840d51c22366afde9f71 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_smoke_noplanner/reveal_benchmark.md @@ -0,0 +1,18 @@ +# Reveal Proxy Benchmark + +## noplanner +- checkpoint: /workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt +- benchmark_mode: smoke +- episodes: 10.000 +- chunk_commit_steps: 4.000 +- mean_success: 0.600 +- visibility_integral: 27.823 +- corridor_availability: 0.819 +- reocclusion_rate: 0.057 +- persistence_horizon_mae: 1.129 +- disturbance_cost: 0.376 +- success_ci_low: 0.433 +- success_ci_high: 0.767 +- foliage_proxy_success: 0.400 +- bag_proxy_success: 0.700 +- cloth_proxy_success: 0.700 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/reveal_teacher_audit_serious/teacher_audit.md b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_teacher_audit_serious/teacher_audit.md new file mode 100644 index 0000000000000000000000000000000000000000..9f949c16ee76dd3c0404a055570b7bc57595fcd9 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/reveal_teacher_audit_serious/teacher_audit.md @@ -0,0 +1,145 @@ +# Reveal Teacher Audit + +## foliage_proxy:reveal_only +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.198 +- baseline_utility: 0.141 +- success_delta: 1.000 +- utility_delta: 1.058 +- hold_delta: -0.174 +- reocclusion_delta: 0.000 +- disturbance_delta: -0.341 + +## foliage_proxy:retrieve_only +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.198 +- baseline_utility: -0.099 +- success_delta: 1.000 +- utility_delta: 1.298 +- hold_delta: 0.708 +- reocclusion_delta: 0.000 +- disturbance_delta: 0.102 + +## foliage_proxy:no_hold +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.198 +- baseline_utility: 0.084 +- success_delta: 1.000 +- utility_delta: 1.114 +- hold_delta: 0.217 +- reocclusion_delta: -0.125 +- disturbance_delta: -0.093 + +## foliage_proxy:random +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.198 +- baseline_utility: -0.138 +- success_delta: 1.000 +- utility_delta: 1.337 +- hold_delta: 0.641 +- reocclusion_delta: -0.031 +- disturbance_delta: 0.028 + +## bag_proxy:reveal_only +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.197 +- baseline_utility: 0.168 +- success_delta: 1.000 +- utility_delta: 1.029 +- hold_delta: -0.185 +- reocclusion_delta: 0.000 +- disturbance_delta: -0.297 + +## bag_proxy:retrieve_only +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.197 +- baseline_utility: -0.161 +- success_delta: 1.000 +- utility_delta: 1.358 +- hold_delta: 0.666 +- reocclusion_delta: 0.000 +- disturbance_delta: 0.048 + +## bag_proxy:no_hold +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.197 +- baseline_utility: 0.078 +- success_delta: 1.000 +- utility_delta: 1.118 +- hold_delta: 0.150 +- reocclusion_delta: -0.125 +- disturbance_delta: -0.090 + +## bag_proxy:random +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.197 +- baseline_utility: -0.182 +- success_delta: 1.000 +- utility_delta: 1.378 +- hold_delta: 0.610 +- reocclusion_delta: -0.026 +- disturbance_delta: -0.001 + +## cloth_proxy:reveal_only +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.276 +- baseline_utility: 0.347 +- success_delta: 1.000 +- utility_delta: 0.929 +- hold_delta: -0.194 +- reocclusion_delta: 0.000 +- disturbance_delta: -0.239 + +## cloth_proxy:retrieve_only +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.276 +- baseline_utility: 0.001 +- success_delta: 1.000 +- utility_delta: 1.275 +- hold_delta: 0.694 +- reocclusion_delta: -0.006 +- disturbance_delta: 0.106 + +## cloth_proxy:no_hold +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.000 +- teacher_utility: 1.276 +- baseline_utility: 0.508 +- success_delta: 1.000 +- utility_delta: 0.769 +- hold_delta: -0.194 +- reocclusion_delta: 0.000 +- disturbance_delta: -0.043 + +## cloth_proxy:random +- episodes: 100.000 +- teacher_success: 1.000 +- baseline_success: 0.010 +- teacher_utility: 1.276 +- baseline_utility: 0.166 +- success_delta: 0.990 +- utility_delta: 1.110 +- hold_delta: 0.386 +- reocclusion_delta: -0.062 +- disturbance_delta: 0.085 diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/rlbench_debug_baseline_pushbox/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/rlbench_debug_baseline_pushbox/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..54175b3ac72816ea723ff58ebbfe2076a7923e2d --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/rlbench_debug_baseline_pushbox/rollout_eval.md @@ -0,0 +1,11 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Mean success: `0.000` + +## Per-task + +- `bimanual_push_box`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/rlbench_debug_compact_pushbox/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/rlbench_debug_compact_pushbox/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..2f5ce35c3722551cd5c1ecd05c310cbcc687c1ec --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/rlbench_debug_compact_pushbox/rollout_eval.md @@ -0,0 +1,11 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Mean success: `0.000` + +## Per-task + +- `bimanual_push_box`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/2026-03-25-runpod/reports/rlbench_debug_spatial_pushbox_nogeom/rollout_eval.md b/VLAarchtests/results/2026-03-25-runpod/reports/rlbench_debug_spatial_pushbox_nogeom/rollout_eval.md new file mode 100644 index 0000000000000000000000000000000000000000..d995b4abf020af1e1938572f5ea1029068fcc630 --- /dev/null +++ b/VLAarchtests/results/2026-03-25-runpod/reports/rlbench_debug_spatial_pushbox_nogeom/rollout_eval.md @@ -0,0 +1,14 @@ +# RLBench Rollout Eval + +- Checkpoint: `/workspace/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` +- Plan requested: `True` +- Plan applied: `True` +- Support-mode conditioning: `True` +- Task conditioning: `True` +- Geometry enabled: `False` +- World-model mode: `checkpoint_default` +- Mean success: `0.000` + +## Per-task + +- `bimanual_push_box`: mean_success=0.000, returns=[0.0] diff --git a/VLAarchtests/results/phase_tracking.md b/VLAarchtests/results/phase_tracking.md new file mode 100644 index 0000000000000000000000000000000000000000..630d97cce70e78e6a66d8e329b00399d4073a965 --- /dev/null +++ b/VLAarchtests/results/phase_tracking.md @@ -0,0 +1,175 @@ +# Phase Tracking + +Date closed: `2026-03-25 UTC` + +- Snapshot note: this Hugging Face snapshot does not contain `.git`, so a git commit hash is unavailable. +- Regression baselines: `/workspace/VLAarchtests/regression/baselines.md` +- Acceptance rule: only proxy metrics are used for phase acceptance. RLBench and PerAct2 remain integration-only checks. + +## Phase 0 + +- Status: completed. +- Historical baseline artifacts are locked in `/workspace/VLAarchtests/regression/baselines.md`. +- Historical dummy benchmark reference: + - interaction `0.5278` + - backbone `0.5556` + - reveal `0.5417` +- Historical CLIP benchmark reference: + - interaction `0.3056` + - backbone `0.3333` + - reveal `0.2083` + +## Phase 1 + +- Config: `proxy_interaction_r3d_stage1_dummy.yaml` +- Seeds: `13, 14, 15` +- Artifact roots: + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed13` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed14` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage1_dummy_seed15` +- Mean train time: `20.45 s` +- Mean peak GPU memory: `629.62 MB` +- 3-seed benchmark means: + - mean success: `0.5787` + - foliage success: `0.4444` + - bag success: `0.6111` + - cloth success: `0.6806` + - reocclusion rate: `0.0000` + - persistence horizon MAE: `1.9553` + - disturbance cost: `0.3649` + - planner top-1: `0.2832` + - planner regret: `0.0143` + - planner score/utility spearman: `0.2504` + - role collapse: `0.0000` + - proposal diversity: `0.0245` + - swap equivariance error: `0.00768` +- Ablations: + - `no_planner`: `0.5648` mean success, drop `0.0139` + - `no_role_symmetry`: `0.5833` mean success, delta `+0.0046` +- Gate decisions: + - hard success gate `>= 0.58`: fail by `0.0013` + - planner must matter: fail, `no_planner` drop is only `0.0139` + - planner top-1 `>= 0.30`: fail, measured `0.2832` + - role symmetry must matter: fail, `no_role_symmetry` is slightly better than full + - proposal collapse must not happen: pass, diversity stayed nonzero across all seeds +- Takeaway: the structure refactor improved over the historical interaction baseline (`0.5787` vs `0.5278`) and exceeded the historical dummy backbone baseline (`0.5556`), but it did not clear the phase-1 acceptance gates. + +## Phase 2 + +- Config: `proxy_interaction_r3d_stage2_dummy.yaml` +- Seeds: `21, 22, 23` +- Artifact roots: + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed21` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed22` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage2_dummy_seed23` +- Mean train time: `20.76 s` +- Mean peak GPU memory: `639.39 MB` +- 3-seed benchmark means: + - mean success: `0.5463` + - foliage success: `0.4444` + - bag success: `0.5417` + - cloth success: `0.6528` + - reocclusion rate: `0.0121` + - persistence horizon MAE: `2.2358` + - disturbance cost: `0.3148` + - planner top-1: `0.3442` + - planner regret: `0.0208` + - planner score/utility spearman: `0.2397` + - belief calibration brier: `0.00842` + - reocclusion calibration brier: `0.2745` + - swap equivariance error: `0.00504` +- Ablations: + - `no_world_model`: `0.5463` mean success, drop `0.0000` + - `short_history`: `0.5463` mean success, delta `0.0000` +- Gate decisions: + - hard success gate `>= 0.60`: fail + - `no_world_model` must hurt: fail; the `2026-03-25` post-fix null-rollout rerun remained at `0.5463`, drop `0.0000` + - full memory must stop losing to short history: hard gate passes narrowly because full equals short-history; preferred gate fails because full does not beat short-history + - state metrics should improve over phase 1: fail, reocclusion rate increased (`0.0000 -> 0.0121`), persistence MAE worsened (`1.9553 -> 2.2358`), and calibration worsened +- Takeaway: the expanded state/memory path did not validate on the dummy proxy benchmark. Planner classification improved, but the post-fix null-rollout rerun still left mean success unchanged. + +## Phase 3 + +- RGB-only compatibility configs: + - `proxy_interaction_r3d_stage1_clip.yaml` + - `proxy_interaction_r3d_stage2_clip.yaml` +- RGB-D config: `proxy_interaction_r3d_stage3_clip_rgbd.yaml` +- Artifact roots: + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed7` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed8` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage1_clip_seed9` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed11` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed12` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage2_clip_seed13` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed17` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed18` + - `/workspace/VLAarchtests/artifacts/outputs/r3d/proxy_interaction_r3d_stage3_clip_rgbd_seed19` +- RGB-only CLIP means: + - stage 1 clip mean success: `0.5324` + - stage 2 clip mean success: `0.4954` +- Stage 3 RGB-D means: + - mean train time: `145.93 s` + - mean peak GPU memory: `1952.12 MB` + - mean success: `0.5741` + - foliage success: `0.4861` + - bag success: `0.5417` + - cloth success: `0.6944` + - reocclusion rate: `0.0151` + - persistence horizon MAE: `1.7883` + - disturbance cost: `0.2258` + - planner top-1: `0.3265` + - planner regret: `0.0157` + - proposal diversity: `0.0270` + - swap equivariance error: `0.000094` +- `no_depth` ablation: + - mean success: `0.5231` + - absolute drop vs full: `0.0509` + - bag success drops `0.5417 -> 0.4722` + - foliage success drops `0.4861 -> 0.4167` +- Gate decisions: + - CLIP hard success gate `>= 0.37`: pass + - `no_depth` must hurt on at least one geometry-heavy proxy: pass + - no RGB-only regression: pass, both RGB-only CLIP configs still run and produce sane metrics +- Takeaway: the RGB-D path is the first phase that cleanly clears its acceptance gates. + +## Phase 4 + +- Unit tests: + - command: `PYTHONPATH=/workspace/venv_r3d/lib/python3.11/site-packages:/workspace/VLAarchtests/code/reveal_vla_bimanual:/usr/local/lib/python3.11/dist-packages python -m pytest -q /workspace/VLAarchtests/tests` + - result: `10 passed` +- RLBench import/config smoke: + - artifact: `/workspace/VLAarchtests/artifacts/outputs/r3d/rlbench_smokes/smoke_test_output.txt` + - status: pass + - imports `rlbench`, `pyrep`, `yarr` all resolved + - camera contract preserved: `front`, `wrist_left`, `wrist_right` at `224x224` +- RLBench launch smoke: + - artifact stdout: `/workspace/VLAarchtests/artifacts/outputs/r3d/rlbench_smokes/launch_smoke_open_drawer.txt` + - artifact stderr: `/workspace/VLAarchtests/artifacts/outputs/r3d/rlbench_smokes/launch_smoke_open_drawer.stderr` + - status: pass + - `open_drawer` resolves to `RightOpenDrawer` + - finite `18`-D action, camera shapes `[224, 224, 3]`, no crash +- RLBench open-drawer rollout: + - artifact: `/workspace/VLAarchtests/artifacts/outputs/r3d/rlbench_open_drawer_r3d_rollout/rollout_eval.json` + - status: pass as integration + - no import errors + - no historical workspace path error string + - rollout JSON written + - mean success remains `0.0`, so this is plumbing evidence only +- PerAct2 13-task smoke: + - artifact summary JSON: `/workspace/VLAarchtests/artifacts/outputs/r3d/peract2_13_launch_smoke/launch_smoke_summary.json` + - artifact summary markdown: `/workspace/VLAarchtests/artifacts/outputs/r3d/peract2_13_launch_smoke/launch_smoke_summary.md` + - status: pass as integration + - all `13/13` tasks launched + - finite action check: `13/13` + - summary JSON written +- Integration caveat: + - full multi-task rollout in a single process is not reliable with this CoppeliaSim build. A direct batched `run_rlbench_rollout_eval` attempt hit a Qt/OpenGL segfault after repeated env recycle, and the subprocess-isolated full rollout sweep was too slow to be a reasonable smoke. The accepted PerAct2 artifact is therefore the launch/noop smoke, which matches the stated gate: launch stability, finite actions, and written summary. + +## Final Decision + +- Phase 1: not accepted +- Phase 2: not accepted +- Phase 3: accepted +- Phase 4 integration: accepted + +Overall status: the repo-preserving R3D-VLA refactor is implemented, verified, and benchmarked. The strongest positive result is the RGB-D CLIP phase. The structural planner/world-model claims are still not validated strongly enough on the dummy proxy benchmark to support a stronger paper claim without more work. diff --git a/VLAarchtests/results/session_results_20260326.md b/VLAarchtests/results/session_results_20260326.md new file mode 100644 index 0000000000000000000000000000000000000000..605536c6b8ed55d77aad08af27d7275aafc621b9 --- /dev/null +++ b/VLAarchtests/results/session_results_20260326.md @@ -0,0 +1,105 @@ +# Session Results 2026-03-26 + +## Verification + +| Item | Value | +| --- | --- | +| command | `PYTHONPATH=/workspace/VLAarchtests_work/code/reveal_vla_bimanual python -m pytest -q /workspace/VLAarchtests_work/tests` | +| result | `33 passed` | + +## Proxy Checkpoints + +| Run | Checkpoint | Summary | +| --- | --- | --- | +| spatial handoff | `artifacts/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_seed17/checkpoint_best.pt` | `artifacts/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_seed17/summary.json` | +| compact handoff | `artifacts/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_seed17/checkpoint_best.pt` | `artifacts/outputs/r3d_handoff/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_seed17/summary.json` | +| compact-phase handoff | `artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17/checkpoint_best.pt` | `artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_compact_phase_seed17/summary.json` | +| spatial-phase handoff | `artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/checkpoint_best.pt` | `artifacts/outputs/r3d_handoff_phase/proxy_interaction_r3d_stage3_clip_rgbd_handoff_spatial_phase_seed17/summary.json` | + +## Proxy Raw Result Files + +| Artifact | File | +| --- | --- | +| smoke full | `artifacts/reports/reveal_smoke_mod/reveal_benchmark.json` | +| smoke no geometry | `artifacts/reports/reveal_smoke_nogeom/reveal_benchmark.json` | +| smoke no planner | `artifacts/reports/reveal_smoke_noplanner/reveal_benchmark.json` | +| serious spatial handoff compare | `artifacts/reports/reveal_handoff_compare_serious/reveal_benchmark.json` | +| serious compact-world-model compare | `artifacts/reports/reveal_handoff_compare_serious_compact/reveal_benchmark.json` | +| serious compact-phase compare | `artifacts/reports/reveal_phase_compare_serious_compact/reveal_benchmark.json` | +| serious spatial-phase compact-world-model compare | `artifacts/reports/reveal_phase_compare_serious_spatial_compactwm/reveal_benchmark.json` | +| compact-phase ablations | `artifacts/reports/reveal_phase_ablations_compact/ablations.json` | +| teacher audit | `artifacts/reports/reveal_teacher_audit_serious/teacher_audit.json` | + +## Proxy Raw Metrics + +| File | Raw values | +| --- | --- | +| `artifacts/reports/reveal_smoke_mod/reveal_benchmark.json` | mean success `0.60` | +| `artifacts/reports/reveal_smoke_nogeom/reveal_benchmark.json` | mean success `0.60` | +| `artifacts/reports/reveal_smoke_noplanner/reveal_benchmark.json` | mean success `0.60` | +| `artifacts/reports/reveal_handoff_compare_serious/reveal_benchmark.json` | baseline mean success `0.5833`, handoff mean success `0.2167` | +| `artifacts/reports/reveal_handoff_compare_serious_compact/reveal_benchmark.json` | baseline mean success `0.5833`, handoff mean success `0.5200` | +| `artifacts/reports/reveal_phase_compare_serious_compact/reveal_benchmark.json` | baseline mean success `0.5833`, compact-phase mean success `0.5133` | +| `artifacts/reports/reveal_phase_compare_serious_spatial_compactwm/reveal_benchmark.json` | baseline mean success `0.5833`, spatial-phase compact-world-model mean success `0.4933` | + +## Compact-Phase Ablation Metrics + +Source: `artifacts/reports/reveal_phase_ablations_compact/ablations.json` + +| Setting | Mean success | +| --- | ---: | +| full compact-phase | 0.5133 | +| `no_geometry` | 0.5133 | +| `no_spatial_memory` | 0.4967 | +| `compact_world_model` | 0.5133 | +| `no_planner` | 0.4333 | +| `gaussian_candidates_only` | 0.4667 | +| `no_task_head` | 0.5133 | +| `no_support_mode_conditioning` | 0.5133 | + +## RLBench Checkpoints + +| Run | Checkpoint | Summary or source | +| --- | --- | --- | +| subset3 valid9 | `artifacts/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_valid9/checkpoint_best.pt` | `artifacts/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_valid9/checkpoint_stable.pt` | +| subset3 common23 | `artifacts/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_common23/checkpoint_best.pt` | `artifacts/outputs/rlbench_current/rlbench_subset3_backbone_only_clip_current_common23/checkpoint_stable.pt` | +| lift-ball wide | `artifacts/outputs/rlbench_current/rlbench_lift_ball_backbone_only_clip_current_wide/checkpoint_best.pt` | `artifacts/outputs/rlbench_current/rlbench_lift_ball_backbone_only_clip_current_wide/checkpoint_stable.pt` | +| push-box step1 | `artifacts/outputs/rlbench_current/rlbench_push_box_backbone_only_clip_step1/checkpoint_best.pt` | epoch-0 checkpoint with history stored in the checkpoint file | + +## RLBench Direct-Policy Result Files + +| Artifact | File | +| --- | --- | +| dual-buttons baseline, IK rescale | `artifacts/reports/rlbench_dual_buttons_baseline_len100_ep1_ik_rescale/rollout_eval.json` | +| dual-buttons common23, IK rescale | `artifacts/reports/rlbench_dual_buttons_common23_len100_ep1_ik_rescale/rollout_eval.json` | +| push-box common23, IK rescale | `artifacts/reports/rlbench_push_box_common23_len100_ep1_ik_rescale/rollout_eval.json` | +| lift-ball wide, one-step replanning | `artifacts/reports/rlbench_lift_ball_wide_len160_ep1_ik_c1/rollout_eval.json` | +| push-box step1, one-step replanning | `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1/rollout_eval.json` | +| push-box step1, one-step replanning, `delta_scale=0.05` | `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1_s005/rollout_eval.json` | + +## RLBench Direct-Policy Raw Metrics + +| File | Mean success | Mean return | Path recoveries | Noop fallbacks | +| --- | ---: | ---: | --- | --- | +| `artifacts/reports/rlbench_dual_buttons_baseline_len100_ep1_ik_rescale/rollout_eval.json` | 0.0 | 0.0 | `[2]` | `[98]` | +| `artifacts/reports/rlbench_dual_buttons_common23_len100_ep1_ik_rescale/rollout_eval.json` | 0.0 | 0.0 | `[96]` | `[4]` | +| `artifacts/reports/rlbench_push_box_common23_len100_ep1_ik_rescale/rollout_eval.json` | 0.0 | 0.0 | `[98]` | `[1]` | +| `artifacts/reports/rlbench_lift_ball_wide_len160_ep1_ik_c1/rollout_eval.json` | 0.0 | 0.0 | `[148]` | `[11]` | +| `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1/rollout_eval.json` | 0.0 | 0.0 | `[177]` | `[0]` | +| `artifacts/reports/rlbench_push_box_step1_ep1_ik_c1_s005/rollout_eval.json` | 0.0 | 0.0 | `[180]` | `[0]` | + +## RLBench Retrieval Result Files + +| Artifact | File | +| --- | --- | +| push-box kNN, `bank_stride=4`, `top_k=5`, `time_window=8`, `episodes=1` | `artifacts/reports/rlbench_push_box_knn_step1_ep1/rollout_eval.json` | +| push-box kNN, `bank_stride=4`, `top_k=5`, `time_window=8`, `episodes=5` | `artifacts/reports/rlbench_push_box_knn_step1_ep5/rollout_eval.json` | +| push-box kNN, `bank_stride=1`, `top_k=1`, `time_window=4`, `episodes=5` | `artifacts/reports/rlbench_push_box_knn_step1_ep5_top1_dense/rollout_eval.json` | + +## RLBench Retrieval Raw Metrics + +| File | Bank size | Successes | Mean success | Mean return | Path recoveries | Noop fallbacks | +| --- | ---: | --- | ---: | ---: | --- | --- | +| `artifacts/reports/rlbench_push_box_knn_step1_ep1/rollout_eval.json` | 2815 | `[1.0]` | 1.0 | 1.0 | `[1]` | `[0]` | +| `artifacts/reports/rlbench_push_box_knn_step1_ep5/rollout_eval.json` | 2815 | `[0.0, 1.0, 0.0, 0.0, 0.0]` | 0.2 | 0.2 | `[0, 0, 45, 15, 0]` | `[0, 0, 0, 0, 0]` | +| `artifacts/reports/rlbench_push_box_knn_step1_ep5_top1_dense/rollout_eval.json` | 11259 | `[0.0, 0.0, 1.0, 1.0, 0.0]` | 0.4 | 0.4 | `[10, 0, 0, 0, 0]` | `[0, 0, 0, 0, 0]` | diff --git a/VLAarchtests/tests/conftest.py b/VLAarchtests/tests/conftest.py new file mode 100644 index 0000000000000000000000000000000000000000..5d431d5a7fbc260eb5b60ee9dd195d67b55bfbc2 --- /dev/null +++ b/VLAarchtests/tests/conftest.py @@ -0,0 +1,178 @@ +import sys +from pathlib import Path + +import pytest +import torch + +REPO_ROOT = Path(__file__).resolve().parents[1] +sys.path.insert(0, str(REPO_ROOT / "code" / "reveal_vla_bimanual")) + +from models.action_decoder import ChunkDecoderConfig +from models.backbones import FrozenVLBackboneConfig +from models.multiview_fusion import MultiViewFusionConfig +from models.observation_memory import ObservationMemoryConfig +from models.planner import PlannerConfig +from models.policy import PolicyConfig +from models.reveal_head import RevealHeadConfig +from models.world_model import RevealWMConfig +from train.trainer import TrainerConfig + + +@pytest.fixture +def tiny_policy_config(): + def _factory( + hidden_dim: int = 16, + chunk_size: int = 2, + num_candidates: int = 4, + top_k: int = 2, + field_size: int = 4, + belief_map_size: int = 8, + ) -> PolicyConfig: + return PolicyConfig( + backbone=FrozenVLBackboneConfig( + hidden_dim=hidden_dim, + freeze_backbone=True, + gradient_checkpointing=False, + use_dummy_backbone=True, + depth_patch_size=8, + ), + fusion=MultiViewFusionConfig( + hidden_dim=hidden_dim, + num_layers=1, + num_heads=4, + ff_dim=hidden_dim * 4, + dropout=0.0, + ), + memory=ObservationMemoryConfig( + hidden_dim=hidden_dim, + num_heads=4, + dropout=0.0, + history_steps=2, + scene_history_steps=2, + belief_history_steps=3, + max_history_steps=4, + scene_bank_size=2, + belief_bank_size=2, + ), + decoder=ChunkDecoderConfig( + hidden_dim=hidden_dim, + num_heads=4, + num_layers=1, + ff_dim=hidden_dim * 4, + dropout=0.0, + chunk_size=chunk_size, + num_candidates=num_candidates, + num_proposal_modes=7, + planner_top_k=top_k, + ), + reveal_head=RevealHeadConfig( + hidden_dim=hidden_dim, + num_heads=4, + field_size=field_size, + belief_map_size=belief_map_size, + predict_belief_map=True, + ), + world_model=RevealWMConfig( + hidden_dim=hidden_dim, + num_heads=4, + field_size=field_size, + belief_map_size=belief_map_size, + scene_bank_size=2, + belief_bank_size=2, + ), + planner=PlannerConfig( + hidden_dim=hidden_dim, + num_heads=4, + num_layers=1, + num_candidates=num_candidates, + top_k=top_k, + ), + ) + + return _factory + + +@pytest.fixture +def tiny_trainer_config(): + def _factory(policy_type: str = "elastic_reveal") -> TrainerConfig: + return TrainerConfig( + policy_type=policy_type, + use_bf16=False, + gradient_checkpointing=False, + freeze_backbone=True, + plan_during_train=True, + plan_during_eval=True, + ) + + return _factory + + +@pytest.fixture +def tiny_batch(): + def _factory( + batch_size: int = 2, + history_steps: int = 2, + resolution: int = 16, + chunk_size: int = 2, + ) -> dict[str, torch.Tensor | list[str]]: + images = torch.rand(batch_size, 3, 3, resolution, resolution) + depths = torch.rand(batch_size, 3, 1, resolution, resolution) + batch = { + "images": images, + "depths": depths, + "depth_valid": torch.ones_like(depths), + "camera_intrinsics": torch.eye(3).view(1, 1, 3, 3).expand(batch_size, 3, 3, 3).clone(), + "camera_extrinsics": torch.eye(4).view(1, 1, 4, 4).expand(batch_size, 3, 4, 4).clone(), + "camera_valid_mask": torch.ones(batch_size, 3), + "proprio": torch.rand(batch_size, 32), + "texts": ["test task"] * batch_size, + "task_name": ["bag"] * batch_size, + "task_id": torch.ones(batch_size, dtype=torch.long), + "task_names": ["bag"] * batch_size, + "task_ids": torch.ones(batch_size, dtype=torch.long), + "history_images": torch.rand(batch_size, history_steps, 3, 3, resolution, resolution), + "history_depths": torch.rand(batch_size, history_steps, 3, 1, resolution, resolution), + "history_depth_valid": torch.ones(batch_size, history_steps, 3, 1, resolution, resolution), + "history_camera_intrinsics": torch.eye(3).view(1, 1, 1, 3, 3).expand(batch_size, history_steps, 3, 3, 3).clone(), + "history_camera_extrinsics": torch.eye(4).view(1, 1, 1, 4, 4).expand(batch_size, history_steps, 3, 4, 4).clone(), + "history_camera_valid_mask": torch.ones(batch_size, history_steps, 3), + "history_proprio": torch.rand(batch_size, history_steps, 32), + "history_actions": torch.rand(batch_size, history_steps, 14), + "action_chunk": torch.rand(batch_size, chunk_size, 14), + } + return batch + + return _factory + + +@pytest.fixture +def tiny_state(): + def _factory(batch_size: int = 2, field_size: int = 4) -> dict[str, torch.Tensor]: + return { + "target_belief_field": torch.rand(batch_size, 1, field_size, field_size), + "visibility_field": torch.rand(batch_size, 1, field_size, field_size), + "clearance_field": torch.rand(batch_size, 2, field_size, field_size), + "occluder_contact_field": torch.rand(batch_size, 1, field_size, field_size), + "grasp_affordance_field": torch.rand(batch_size, 1, field_size, field_size), + "support_stability_field": torch.rand(batch_size, 1, field_size, field_size), + "persistence_field": torch.rand(batch_size, 1, field_size, field_size), + "reocclusion_field": torch.rand(batch_size, 1, field_size, field_size), + "disturbance_field": torch.rand(batch_size, 1, field_size, field_size), + "risk_field": torch.rand(batch_size, 1, field_size, field_size), + "uncertainty_field": torch.rand(batch_size, 1, field_size, field_size), + "access_field": torch.rand(batch_size, 3, field_size, field_size), + "support_mode_logits": torch.rand(batch_size, 3), + "phase_logits": torch.rand(batch_size, 5), + "arm_role_logits": torch.rand(batch_size, 2, 4), + "interaction_tokens": torch.rand(batch_size, 8, 16), + "field_tokens": torch.rand(batch_size, field_size * field_size, 16), + "latent_summary": torch.rand(batch_size, 16), + "corridor_logits": torch.rand(batch_size, 3, 32), + "persistence_horizon": torch.rand(batch_size, 3), + "disturbance_cost": torch.rand(batch_size), + "reocclusion_logit": torch.rand(batch_size, 3), + "belief_map": torch.rand(batch_size, 1, 8, 8), + "compact_state": torch.rand(batch_size, 30), + } + + return _factory diff --git a/VLAarchtests/tests/test_action_decoder_equivariance.py b/VLAarchtests/tests/test_action_decoder_equivariance.py new file mode 100644 index 0000000000000000000000000000000000000000..6499137e47a1b267a21e9ba1f46201141bf481f3 --- /dev/null +++ b/VLAarchtests/tests/test_action_decoder_equivariance.py @@ -0,0 +1,19 @@ +import torch + +from models.action_decoder import SymmetricCoordinatedChunkDecoder + + +def test_action_decoder_equivariance(tiny_policy_config, tiny_state): + config = tiny_policy_config() + decoder = SymmetricCoordinatedChunkDecoder(config.decoder) + state = tiny_state(field_size=config.reveal_head.field_size) + scene_tokens = torch.rand(2, 10, config.backbone.hidden_dim) + memory_tokens = torch.rand(2, config.memory.scene_bank_size + config.memory.belief_bank_size, config.backbone.hidden_dim) + output = decoder( + scene_tokens=scene_tokens, + interaction_state=state, + memory_tokens=memory_tokens, + compute_equivariance_probe=True, + ) + error = (output["equivariance_probe_action_mean"] - output["equivariance_target_action_mean"]).abs().mean() + assert float(error) < 0.1 diff --git a/VLAarchtests/tests/test_anybimanual_overlap_eval_summary.py b/VLAarchtests/tests/test_anybimanual_overlap_eval_summary.py new file mode 100644 index 0000000000000000000000000000000000000000..3176dbe97ef98aa0698e96cf9cd90b72012fc9ad --- /dev/null +++ b/VLAarchtests/tests/test_anybimanual_overlap_eval_summary.py @@ -0,0 +1,77 @@ +from __future__ import annotations + +from eval.summarize_anybimanual_overlap_eval import ( + _best_overlap_step, + _delta, + _last_overlap_step, + _merge_rows_by_step, +) + + +def _row(step: int, **values: str) -> dict[str, str]: + base = {"step": str(step)} + base.update(values) + return base + + +def test_merge_rows_by_step_fills_missing_values() -> None: + rows = [ + _row(600, **{"eval_envs/return/coordinated_push_box": "10"}), + _row(600, **{"eval_envs/return/coordinated_lift_ball": "4"}), + _row(600, **{"eval_envs/return/dual_push_buttons": "20"}), + ] + merged = _merge_rows_by_step(rows) + assert len(merged) == 1 + assert merged[0]["eval_envs/return/coordinated_push_box"] == "10" + assert merged[0]["eval_envs/return/coordinated_lift_ball"] == "4" + assert merged[0]["eval_envs/return/dual_push_buttons"] == "20" + + +def test_overlap_summary_picks_last_local_and_best_public() -> None: + local_rows = _merge_rows_by_step( + [ + _row( + 200, + **{ + "eval_envs/return/coordinated_push_box": "0", + "eval_envs/return/coordinated_lift_ball": "0", + "eval_envs/return/dual_push_buttons": "0", + }, + ), + _row( + 1000, + **{ + "eval_envs/return/coordinated_push_box": "15", + "eval_envs/return/coordinated_lift_ball": "8", + "eval_envs/return/dual_push_buttons": "20", + }, + ), + ] + ) + public_rows = _merge_rows_by_step( + [ + _row( + 50000, + **{ + "eval_envs/return/coordinated_push_box": "18", + "eval_envs/return/coordinated_lift_ball": "6", + "eval_envs/return/dual_push_buttons": "20", + }, + ), + _row( + 60000, + **{ + "eval_envs/return/coordinated_push_box": "20", + "eval_envs/return/coordinated_lift_ball": "8", + "eval_envs/return/dual_push_buttons": "24", + }, + ), + ] + ) + local_last = _last_overlap_step(local_rows, 25) + public_best = _best_overlap_step(public_rows, 25) + assert local_last["step"] == 1000 + assert public_best["step"] == 60000 + assert public_best["mean_success"] > local_last["mean_success"] + delta = _delta(local_last, public_best) + assert delta["mean_success_delta"] < 0.0 diff --git a/VLAarchtests/tests/test_anybimanual_resume_logic.py b/VLAarchtests/tests/test_anybimanual_resume_logic.py new file mode 100644 index 0000000000000000000000000000000000000000..a09b3c3a6d43c722755aee6ec6cf37b498d77fa5 --- /dev/null +++ b/VLAarchtests/tests/test_anybimanual_resume_logic.py @@ -0,0 +1,73 @@ +import os +import tempfile + +from yarr.runners.weight_init_utils import resolve_initial_weight_state + + +def _make_weight_dir(root, step): + os.makedirs(os.path.join(root, str(step)), exist_ok=True) + + +def test_anybimanual_prefers_existing_weights_when_resume_enabled(): + with tempfile.TemporaryDirectory() as weightsdir, tempfile.TemporaryDirectory() as pretrained_dir: + _make_weight_dir(weightsdir, 0) + _make_weight_dir(weightsdir, 200) + + start_iter, load_dir, load_source = resolve_initial_weight_state( + weightsdir=weightsdir, + load_existing_weights=True, + anybimanual=True, + pretrained_dir=pretrained_dir, + ) + + assert start_iter == 200 + assert load_dir == os.path.join(weightsdir, "200") + assert load_source == "resume" + + +def test_anybimanual_falls_back_to_pretrained_without_existing_weights(): + with tempfile.TemporaryDirectory() as weightsdir, tempfile.TemporaryDirectory() as pretrained_dir: + start_iter, load_dir, load_source = resolve_initial_weight_state( + weightsdir=weightsdir, + load_existing_weights=True, + anybimanual=True, + pretrained_dir=pretrained_dir, + ) + + assert start_iter == 0 + assert load_dir == pretrained_dir + assert load_source == "pretrained" + + +def test_non_anybimanual_with_no_resume_starts_fresh(): + with tempfile.TemporaryDirectory() as weightsdir: + _make_weight_dir(weightsdir, 0) + _make_weight_dir(weightsdir, 200) + + start_iter, load_dir, load_source = resolve_initial_weight_state( + weightsdir=weightsdir, + load_existing_weights=False, + anybimanual=False, + ) + + assert start_iter == 0 + assert load_dir is None + assert load_source is None + + +def test_anybimanual_raises_when_pretrained_dir_missing(): + with tempfile.TemporaryDirectory() as weightsdir: + missing_pretrained = os.path.join(weightsdir, "missing_pretrained") + + try: + resolve_initial_weight_state( + weightsdir=weightsdir, + load_existing_weights=False, + anybimanual=True, + pretrained_dir=missing_pretrained, + ) + raised = False + except FileNotFoundError: + raised = True + + assert raised diff --git a/VLAarchtests/tests/test_backbone_only_rgbd_forward.py b/VLAarchtests/tests/test_backbone_only_rgbd_forward.py new file mode 100644 index 0000000000000000000000000000000000000000..3c8fe4213cf263b8fb5671e90bd7ebf7660a42fd --- /dev/null +++ b/VLAarchtests/tests/test_backbone_only_rgbd_forward.py @@ -0,0 +1,27 @@ +from train.trainer import build_policy + + +def test_backbone_only_policy_accepts_rgbd_batch(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + policy = build_policy(config, tiny_trainer_config(policy_type="backbone_only")) + + output = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + ) + + assert output["action_mean"].shape[0] == batch["images"].shape[0] + assert output["scene_tokens"].shape[0] == batch["images"].shape[0] diff --git a/VLAarchtests/tests/test_benchmark_report_contains_task_and_stress_slices.py b/VLAarchtests/tests/test_benchmark_report_contains_task_and_stress_slices.py new file mode 100644 index 0000000000000000000000000000000000000000..8eca26d31f90a1769eb0af15539dede27d1a2146 --- /dev/null +++ b/VLAarchtests/tests/test_benchmark_report_contains_task_and_stress_slices.py @@ -0,0 +1,33 @@ +import torch + +from eval.metrics import summarize_episode_records +from eval.run_reveal_benchmark import evaluate_model +from sim_reveal.proxy_specs import sprint_benchmark_episode_specs + + +def test_benchmark_report_contains_task_and_stress_slices(): + specs = [] + for spec in sprint_benchmark_episode_specs(): + if spec["task_name"] == "foliage" and spec["stress_slice"] in {"nominal", "high_reocclusion"}: + specs.append(spec) + if spec["task_name"] == "bag" and spec["difficulty_bin"] == "hard": + specs.append(spec) + if len(specs) >= 3: + break + + metrics, episode_records = evaluate_model( + model=None, + device=torch.device("cpu"), + proxies=["foliage_proxy", "bag_proxy"], + episodes=None, + resolution=16, + episode_specs=specs, + controller="scripted", + ) + summary = summarize_episode_records(episode_records) + + assert "foliage" in metrics.per_task_success + assert "nominal" in (metrics.per_stress_success or {}) + assert "hard" in (metrics.per_difficulty_success or {}) + assert "foliage" in (metrics.task_stress_success or {}) + assert "high_reocclusion" in summary["per_stress_success"] diff --git a/VLAarchtests/tests/test_build_task_specialized_episode_specs.py b/VLAarchtests/tests/test_build_task_specialized_episode_specs.py new file mode 100644 index 0000000000000000000000000000000000000000..e4abfa9601f485f22e3031c8899d7c246d084b85 --- /dev/null +++ b/VLAarchtests/tests/test_build_task_specialized_episode_specs.py @@ -0,0 +1,39 @@ +from __future__ import annotations + +import json +import subprocess +import sys +from pathlib import Path + + +def test_build_task_specialized_episode_specs(tmp_path: Path) -> None: + output_path = tmp_path / "specs.json" + script_path = Path("/workspace/VLAarchtests/code/reveal_vla_bimanual/sim_reveal/build_task_specialized_episode_specs.py") + + subprocess.run( + [ + sys.executable, + str(script_path), + "--task-name", + "bag", + "--base-seed", + "123", + "--block", + "nominal,medium,2", + "--block", + "one_sided_slip,hard,3", + "--output-path", + str(output_path), + ], + check=True, + ) + + specs = json.loads(output_path.read_text(encoding="utf-8")) + assert len(specs) == 5 + assert all(spec["proxy_name"] == "bag_proxy" for spec in specs) + assert all(spec["task_name"] == "bag" for spec in specs) + assert all(spec["task_id"] == 1 for spec in specs) + assert specs[0]["stress_slice"] == "nominal" + assert specs[0]["difficulty_bin"] == "medium" + assert specs[-1]["stress_slice"] == "one_sided_slip" + assert specs[-1]["difficulty_bin"] == "hard" diff --git a/VLAarchtests/tests/test_camera_rotation_geometry.py b/VLAarchtests/tests/test_camera_rotation_geometry.py new file mode 100644 index 0000000000000000000000000000000000000000..ad69ba19f294f0f20c9c888916831e8ca0fee387 --- /dev/null +++ b/VLAarchtests/tests/test_camera_rotation_geometry.py @@ -0,0 +1,102 @@ +import torch + +from pytorch3d.transforms import euler_angles_to_matrix +from train.trainer import build_policy + + +def test_camera_rotation_geometry_changes_policy_representation( + tiny_policy_config, + tiny_trainer_config, + tiny_batch, +): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + extrinsics_a = batch["camera_extrinsics"].clone() + extrinsics_b = batch["camera_extrinsics"].clone() + shared_translation = torch.tensor([0.12, -0.05, 0.08], dtype=extrinsics_a.dtype) + extrinsics_a[:, 0, :3, 3] = shared_translation + extrinsics_b[:, 0, :3, 3] = shared_translation + extrinsics_b[:, 0, :3, :3] = euler_angles_to_matrix( + torch.tensor([[0.0, 0.0, 0.9]], dtype=extrinsics_b.dtype), + "XYZ", + )[0] + + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + policy.eval() + + output_a = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=extrinsics_a, + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=False, + use_geometry_tokens=True, + use_camera_pose_tokens=True, + ) + output_b = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=extrinsics_b, + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=False, + use_geometry_tokens=True, + use_camera_pose_tokens=True, + ) + output_disabled = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=extrinsics_a, + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=False, + use_geometry_tokens=False, + use_camera_pose_tokens=False, + ) + output_disabled_rotated = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=extrinsics_b, + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=False, + use_geometry_tokens=False, + use_camera_pose_tokens=False, + ) + + assert not torch.allclose(output_a["scene_tokens"], output_b["scene_tokens"]) + assert torch.allclose( + output_disabled["scene_tokens"], + output_disabled_rotated["scene_tokens"], + atol=1e-6, + rtol=1e-5, + ) diff --git a/VLAarchtests/tests/test_candidate_macro_coverage.py b/VLAarchtests/tests/test_candidate_macro_coverage.py new file mode 100644 index 0000000000000000000000000000000000000000..237bd2ec98b5a98b329a3c2c8f33e9bd1e4313e3 --- /dev/null +++ b/VLAarchtests/tests/test_candidate_macro_coverage.py @@ -0,0 +1,34 @@ +from models.action_decoder import proposal_mode_vocab +from train.trainer import build_policy + + +def test_candidate_macro_coverage(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config(num_candidates=7) + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + policy.eval() + + task_to_text = { + "foliage": ["create a gap in the foliage and retrieve the target"], + "bag": ["open the bag mouth and retrieve the target object"], + "cloth": ["lift the top layer enough to retrieve the hidden object"], + } + for task_name, texts in task_to_text.items(): + output = policy( + images=batch["images"][:1], + depths=batch["depths"][:1], + depth_valid=batch["depth_valid"][:1], + camera_intrinsics=batch["camera_intrinsics"][:1], + camera_extrinsics=batch["camera_extrinsics"][:1], + proprio=batch["proprio"][:1], + texts=texts, + history_images=batch["history_images"][:1], + history_depths=batch["history_depths"][:1], + history_depth_valid=batch["history_depth_valid"][:1], + history_proprio=batch["history_proprio"][:1], + history_actions=batch["history_actions"][:1], + plan=False, + ) + expected = set(proposal_mode_vocab(task_name, config.decoder.num_proposal_modes)) + observed = set(output["proposal_mode_names"][0]) + assert expected.issubset(observed) diff --git a/VLAarchtests/tests/test_candidate_ranking_loss.py b/VLAarchtests/tests/test_candidate_ranking_loss.py new file mode 100644 index 0000000000000000000000000000000000000000..3d99fd6d0c158022b7ecffa1c8750d8bce4e59b7 --- /dev/null +++ b/VLAarchtests/tests/test_candidate_ranking_loss.py @@ -0,0 +1,230 @@ +import torch + +from train.losses import LossWeights, compute_total_loss + + +def _model_output(planner_scores: torch.Tensor) -> dict[str, torch.Tensor]: + shape = planner_scores.shape + zeros = torch.zeros(shape, dtype=planner_scores.dtype, device=planner_scores.device) + return { + "action_mean": torch.zeros(shape[0], 1, 14, dtype=planner_scores.dtype, device=planner_scores.device), + "planner_scores": planner_scores, + "planner_success_logits": zeros, + "planner_risk_values": zeros, + } + + +def test_candidate_ranking_loss_prefers_oracle_order(): + batch = { + "action_chunk": torch.zeros(1, 1, 14), + "candidate_retrieval_success": torch.tensor([[1.0, 0.5, 0.0]]), + "candidate_final_disturbance_cost": torch.tensor([[0.0, 0.1, 0.2]]), + "candidate_reocclusion_rate": torch.tensor([[0.0, 0.1, 0.3]]), + "candidate_utility": torch.tensor([[1.0, 0.4, -0.5]]), + } + weights = LossWeights(action=0.0, planner_success=0.0, planner_risk=0.0, planner_ranking=1.0) + + aligned = compute_total_loss(_model_output(torch.tensor([[2.0, 0.5, -1.0]])), batch, weights=weights) + reversed_order = compute_total_loss(_model_output(torch.tensor([[-1.0, 0.5, 2.0]])), batch, weights=weights) + + assert float(aligned["planner_ranking"]) < float(reversed_order["planner_ranking"]) + + +def _proposal_model_output(proposal_logits: torch.Tensor) -> dict[str, torch.Tensor]: + return { + "action_mean": torch.zeros(proposal_logits.shape[0], 1, 14, dtype=proposal_logits.dtype, device=proposal_logits.device), + "proposal_logits": proposal_logits, + "proposal_mode_logits": torch.zeros(proposal_logits.shape[0], 2, dtype=proposal_logits.dtype, device=proposal_logits.device), + "proposal_mode_assignments": torch.tensor([0, 1] * ((proposal_logits.shape[1] + 1) // 2), dtype=torch.long, device=proposal_logits.device)[: proposal_logits.shape[1]], + "proposal_candidates": torch.zeros( + proposal_logits.shape[0], + proposal_logits.shape[1], + 1, + 14, + dtype=proposal_logits.dtype, + device=proposal_logits.device, + ), + } + + +def test_proposal_ranking_uses_aligned_targets_when_present(): + batch = { + "action_chunk": torch.zeros(1, 1, 14), + "candidate_action_chunks": torch.zeros(1, 3, 1, 14), + "candidate_retrieval_success": torch.tensor([[1.0, 0.0, 0.0]]), + "candidate_utility": torch.tensor([[1.0, -0.2, -0.4]]), + "proposal_target_action_chunks": torch.zeros(1, 3, 1, 14), + "proposal_target_retrieval_success": torch.tensor([[0.0, 1.0, 0.0]]), + "proposal_target_utility": torch.tensor([[-0.3, 1.0, -0.1]]), + "proposal_target_risk": torch.tensor([[0.8, 0.0, 0.2]]), + } + weights = LossWeights(action=0.0, proposal_reconstruction=0.0, proposal_success=0.0, proposal_ranking=1.0) + + aligned = compute_total_loss(_proposal_model_output(torch.tensor([[0.0, 2.0, -1.0]])), batch, weights=weights) + reversed_order = compute_total_loss(_proposal_model_output(torch.tensor([[2.0, -1.0, 0.0]])), batch, weights=weights) + + assert float(aligned["proposal_ranking"]) < float(reversed_order["proposal_ranking"]) + + +def test_proposal_reconstruction_uses_order_invariant_teacher_family(): + proposal_candidates = torch.zeros(1, 2, 1, 14) + proposal_candidates[0, 0, 0, 0] = 1.0 + proposal_candidates[0, 1, 0, 1] = 1.0 + batch = { + "action_chunk": torch.zeros(1, 1, 14), + "candidate_action_chunks": proposal_candidates.flip(1).clone(), + "proposal_target_action_chunks": torch.full_like(proposal_candidates, 5.0), + } + model_output = _proposal_model_output(torch.zeros(1, 2)) + model_output["proposal_candidates"] = proposal_candidates + weights = LossWeights(action=0.0, proposal_reconstruction=1.0, proposal_success=0.0, proposal_ranking=0.0, proposal_diversity=0.0) + + losses = compute_total_loss(model_output, batch, weights=weights) + + assert float(losses["proposal_reconstruction"]) < 1e-6 + + +def test_proposal_reconstruction_prefers_high_utility_teacher_subset(): + proposal_candidates = torch.zeros(1, 4, 1, 14) + proposal_candidates[0, 0, 0, 0] = 1.0 + proposal_candidates[0, 1, 0, 1] = 1.0 + proposal_candidates[0, 2, 0, 0] = 1.0 + proposal_candidates[0, 3, 0, 1] = 1.0 + teacher_candidates = torch.zeros(1, 4, 1, 14) + teacher_candidates[0, 0, 0, 1] = 1.0 + teacher_candidates[0, 1, 0, 0] = 1.0 + teacher_candidates[0, 2, 0, 2] = 5.0 + teacher_candidates[0, 3, 0, 3] = 5.0 + batch = { + "action_chunk": torch.zeros(1, 1, 14), + "candidate_action_chunks": teacher_candidates, + "candidate_utility": torch.tensor([[1.0, 0.9, -1.0, -2.0]]), + } + model_output = _proposal_model_output(torch.zeros(1, 4)) + model_output["proposal_candidates"] = proposal_candidates + weights = LossWeights(action=0.0, proposal_reconstruction=1.0, proposal_success=0.0, proposal_ranking=0.0, proposal_diversity=0.0) + + losses = compute_total_loss(model_output, batch, weights=weights) + + assert float(losses["proposal_reconstruction"]) < 1e-6 + + +def test_bag_proposal_reconstruction_anchors_to_fallback_targets(): + proposal_candidates = torch.zeros(1, 4, 1, 14) + proposal_candidates[0, 0, 0, 0] = 1.0 + proposal_candidates[0, 1, 0, 1] = 1.0 + proposal_candidates[0, 2, 0, 0] = 1.0 + proposal_candidates[0, 3, 0, 1] = 1.0 + teacher_candidates = torch.zeros(1, 4, 1, 14) + teacher_candidates[0, 0, 0, 2] = 5.0 + teacher_candidates[0, 1, 0, 3] = 5.0 + teacher_candidates[0, 2, 0, 4] = 5.0 + teacher_candidates[0, 3, 0, 5] = 5.0 + batch = { + "action_chunk": torch.zeros(1, 1, 14), + "task_name": ["bag"], + "candidate_action_chunks": teacher_candidates, + "candidate_utility": torch.tensor([[1.0, 0.9, -1.0, -2.0]]), + "proposal_target_action_chunks": proposal_candidates.clone(), + } + model_output = _proposal_model_output(torch.zeros(1, 4)) + model_output["proposal_candidates"] = proposal_candidates + weights = LossWeights(action=0.0, proposal_reconstruction=1.0, proposal_success=0.0, proposal_ranking=0.0, proposal_diversity=0.0) + + losses = compute_total_loss(model_output, batch, weights=weights) + + assert float(losses["proposal_reconstruction"]) < 1e-6 + + +def test_proposal_mode_loss_prefers_mode_with_highest_utility(): + batch = { + "action_chunk": torch.zeros(1, 1, 14), + "proposal_target_retrieval_success": torch.tensor([[1.0, 0.0, 1.0, 0.0]]), + "proposal_target_utility": torch.tensor([[0.9, -0.4, 0.8, -0.3]]), + "proposal_target_risk": torch.tensor([[0.0, 0.8, 0.1, 0.7]]), + } + weights = LossWeights( + action=0.0, + proposal_reconstruction=0.0, + proposal_success=0.0, + proposal_ranking=0.0, + proposal_mode=1.0, + proposal_diversity=0.0, + ) + + aligned = _proposal_model_output(torch.zeros(1, 4)) + aligned["proposal_mode_logits"] = torch.tensor([[2.0, -1.0]]) + aligned["proposal_mode_assignments"] = torch.tensor([0, 1, 0, 1], dtype=torch.long) + + reversed_order = _proposal_model_output(torch.zeros(1, 4)) + reversed_order["proposal_mode_logits"] = torch.tensor([[-1.0, 2.0]]) + reversed_order["proposal_mode_assignments"] = torch.tensor([0, 1, 0, 1], dtype=torch.long) + + aligned_losses = compute_total_loss(aligned, batch, weights=weights) + reversed_losses = compute_total_loss(reversed_order, batch, weights=weights) + + assert float(aligned_losses["proposal_mode"]) < float(reversed_losses["proposal_mode"]) + + +def test_proposal_mode_loss_can_focus_on_cloth_only(): + batch = { + "action_chunk": torch.zeros(2, 1, 14), + "task_name": ["cloth", "foliage"], + "proposal_target_retrieval_success": torch.tensor([[1.0, 0.0, 1.0, 0.0], [1.0, 0.0, 1.0, 0.0]]), + "proposal_target_utility": torch.tensor([[0.9, -0.4, 0.8, -0.3], [0.9, -0.4, 0.8, -0.3]]), + "proposal_target_risk": torch.tensor([[0.0, 0.8, 0.1, 0.7], [0.0, 0.8, 0.1, 0.7]]), + } + weights = LossWeights( + action=0.0, + proposal_reconstruction=0.0, + proposal_success=0.0, + proposal_ranking=0.0, + proposal_mode=1.0, + proposal_mode_cloth_only=True, + proposal_diversity=0.0, + ) + + aligned = _proposal_model_output(torch.zeros(2, 4)) + aligned["proposal_mode_logits"] = torch.tensor([[2.0, -1.0], [2.0, -1.0]]) + aligned["proposal_mode_assignments"] = torch.tensor([0, 1, 0, 1], dtype=torch.long) + + foliage_reversed = _proposal_model_output(torch.zeros(2, 4)) + foliage_reversed["proposal_mode_logits"] = torch.tensor([[2.0, -1.0], [-1.0, 2.0]]) + foliage_reversed["proposal_mode_assignments"] = torch.tensor([0, 1, 0, 1], dtype=torch.long) + + aligned_losses = compute_total_loss(aligned, batch, weights=weights) + foliage_reversed_losses = compute_total_loss(foliage_reversed, batch, weights=weights) + + assert torch.isclose(aligned_losses["proposal_mode"], foliage_reversed_losses["proposal_mode"]) + + +def test_proposal_mode_loss_can_focus_on_selected_tasks(): + batch = { + "action_chunk": torch.zeros(2, 1, 14), + "task_name": ["bag", "foliage"], + "proposal_target_retrieval_success": torch.tensor([[1.0, 0.0, 1.0, 0.0], [1.0, 0.0, 1.0, 0.0]]), + "proposal_target_utility": torch.tensor([[0.9, -0.4, 0.8, -0.3], [0.9, -0.4, 0.8, -0.3]]), + "proposal_target_risk": torch.tensor([[0.0, 0.8, 0.1, 0.7], [0.0, 0.8, 0.1, 0.7]]), + } + weights = LossWeights( + action=0.0, + proposal_reconstruction=0.0, + proposal_success=0.0, + proposal_ranking=0.0, + proposal_mode=1.0, + proposal_mode_task_filter=["bag"], + proposal_diversity=0.0, + ) + + aligned = _proposal_model_output(torch.zeros(2, 4)) + aligned["proposal_mode_logits"] = torch.tensor([[2.0, -1.0], [2.0, -1.0]]) + aligned["proposal_mode_assignments"] = torch.tensor([0, 1, 0, 1], dtype=torch.long) + + foliage_reversed = _proposal_model_output(torch.zeros(2, 4)) + foliage_reversed["proposal_mode_logits"] = torch.tensor([[2.0, -1.0], [-1.0, 2.0]]) + foliage_reversed["proposal_mode_assignments"] = torch.tensor([0, 1, 0, 1], dtype=torch.long) + + aligned_losses = compute_total_loss(aligned, batch, weights=weights) + foliage_reversed_losses = compute_total_loss(foliage_reversed, batch, weights=weights) + + assert torch.isclose(aligned_losses["proposal_mode"], foliage_reversed_losses["proposal_mode"]) diff --git a/VLAarchtests/tests/test_compose_task_routed_proxy_summary.py b/VLAarchtests/tests/test_compose_task_routed_proxy_summary.py new file mode 100644 index 0000000000000000000000000000000000000000..9c1124c208d9f7cb2d3d6ab7cd26de70a07fafdd --- /dev/null +++ b/VLAarchtests/tests/test_compose_task_routed_proxy_summary.py @@ -0,0 +1,25 @@ +from __future__ import annotations + +import json +from pathlib import Path + +from eval.compose_task_routed_proxy_summary import _load_records + + +def test_load_records_can_select_specific_label(tmp_path: Path) -> None: + path = tmp_path / "benchmark.json" + payload = { + "benchmark_config": {"controller": "model"}, + "iter8_bag": { + "episode_records": [{"task_name": "bag", "success": 0.4}], + }, + "iter9_bag": { + "episode_records": [{"task_name": "bag", "success": 0.5}], + }, + } + path.write_text(json.dumps(payload), encoding="utf-8") + + label, records = _load_records(path, "iter9_bag") + + assert label == "iter9_bag" + assert records == [{"task_name": "bag", "success": 0.5}] diff --git a/VLAarchtests/tests/test_dataset_build_utils.py b/VLAarchtests/tests/test_dataset_build_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..fed6b66b570638f89555393848d7d1d9d1e96c4a --- /dev/null +++ b/VLAarchtests/tests/test_dataset_build_utils.py @@ -0,0 +1,19 @@ +from pathlib import Path + +from train.dataset_build_utils import append_suffix_once, dataset_version_with_suffix, output_dataset_path + + +def test_append_suffix_once_idempotent(): + assert append_suffix_once("proxy_train_phase", "selector_align") == "proxy_train_phase_selector_align" + assert append_suffix_once("proxy_train_phase_selector_align", "selector_align") == "proxy_train_phase_selector_align" + + +def test_output_dataset_path_keeps_existing_suffix(): + expected = Path("/tmp/proxy_train_phase_selector_align.pt") + assert output_dataset_path("/tmp/proxy_train_phase.pt", "selector_align") == expected + assert output_dataset_path(expected, "selector_align") == expected + + +def test_dataset_version_with_suffix_keeps_existing_suffix(): + assert dataset_version_with_suffix("reveal_proxy_v6_phase", "selector_align") == "reveal_proxy_v6_phase_selector_align" + assert dataset_version_with_suffix("reveal_proxy_v6_phase_selector_align", "selector_align") == "reveal_proxy_v6_phase_selector_align" diff --git a/VLAarchtests/tests/test_dataset_hard_negative_presence.py b/VLAarchtests/tests/test_dataset_hard_negative_presence.py new file mode 100644 index 0000000000000000000000000000000000000000..1bc396c858bc93e0976d60fb624aa26c4381e5e1 --- /dev/null +++ b/VLAarchtests/tests/test_dataset_hard_negative_presence.py @@ -0,0 +1,25 @@ +from sim_reveal.dataset import collect_teacher_dataset +from sim_reveal.procedural_envs import available_proxy_names + + +def test_dataset_hard_negative_presence(): + dataset_bundle = collect_teacher_dataset( + proxy_names=available_proxy_names(), + episodes_per_proxy=1, + resolution=32, + seed=3, + chunk_horizon=4, + rollout_horizon=4, + planner_candidates=6, + ) + negative_families = set() + hard_negative_count = 0 + for sample in dataset_bundle["samples"]: + hard_negative_count += int(sum(sample["candidate_is_hard_negative"])) + negative_families.update( + family + for family in sample["candidate_negative_families"] + if family not in {"teacher", "positive"} + ) + assert hard_negative_count > 0 + assert {"premature_retrieve", "reveal_with_release"}.issubset(negative_families) diff --git a/VLAarchtests/tests/test_dataset_v6_keys.py b/VLAarchtests/tests/test_dataset_v6_keys.py new file mode 100644 index 0000000000000000000000000000000000000000..bace65303c48f24be27212cf775e85cf4ee3aba6 --- /dev/null +++ b/VLAarchtests/tests/test_dataset_v6_keys.py @@ -0,0 +1,65 @@ +from sim_reveal.dataset import RGBD_PROXY_DATASET_VERSION, collect_teacher_dataset, dataset_from_bundle + + +def test_dataset_v6_keys(): + bundle = collect_teacher_dataset( + episodes_per_proxy=1, + resolution=16, + history_steps=2, + planner_candidates=3, + dataset_version=RGBD_PROXY_DATASET_VERSION, + ) + dataset = dataset_from_bundle(bundle, resolution=16) + item = dataset[0] + for key in ( + "images", + "depths", + "depth_valid", + "belief_map", + "visibility_map", + "clearance_map", + "support_stability", + "reocclusion_target", + "candidate_rollout_belief_map", + ): + assert key in item + + +def test_phase_dataset_version_keeps_rgbd_path(): + bundle = collect_teacher_dataset( + proxy_names=["bag_proxy"], + episodes_per_proxy=1, + resolution=16, + history_steps=2, + planner_candidates=3, + dataset_version=RGBD_PROXY_DATASET_VERSION + "_phase", + ) + dataset = dataset_from_bundle(bundle, resolution=16) + item = dataset[0] + assert float(item["depth_valid"].sum()) > 0.0 + assert "phase" in item + assert "rollout_phase" in item + assert "candidate_rollout_phase" in item + + +def test_dataset_proposal_target_keys_roundtrip(): + bundle = collect_teacher_dataset( + proxy_names=["cloth_proxy"], + episodes_per_proxy=1, + resolution=16, + history_steps=2, + planner_candidates=3, + dataset_version=RGBD_PROXY_DATASET_VERSION + "_phase", + proposal_target_builder=lambda env, observation, sample: { + "proposal_target_action_chunks": sample["candidate_action_chunks"].copy(), + "proposal_target_retrieval_success": sample["candidate_retrieval_success"].copy(), + "proposal_target_risk": sample["candidate_risk"].copy(), + "proposal_target_utility": sample["candidate_utility"].copy(), + }, + ) + dataset = dataset_from_bundle(bundle, resolution=16) + item = dataset[0] + assert "proposal_target_action_chunks" in item + assert "proposal_target_retrieval_success" in item + assert "proposal_target_risk" in item + assert "proposal_target_utility" in item diff --git a/VLAarchtests/tests/test_dual_memory_contract.py b/VLAarchtests/tests/test_dual_memory_contract.py new file mode 100644 index 0000000000000000000000000000000000000000..044b024cff5fb8fd32bdda9120ce91d75afb2df2 --- /dev/null +++ b/VLAarchtests/tests/test_dual_memory_contract.py @@ -0,0 +1,17 @@ +import torch + +from models.observation_memory import DualObservationMemory + + +def test_dual_memory_contract(tiny_policy_config): + config = tiny_policy_config() + memory = DualObservationMemory(config.memory) + scene_tokens = torch.rand(2, 12, config.backbone.hidden_dim) + history_scene_tokens = torch.rand(2, 3, 12, config.backbone.hidden_dim) + history_actions = torch.rand(2, 3, 14) + output = memory(scene_tokens, history_scene_tokens=history_scene_tokens, history_actions=history_actions) + assert output["scene_memory_tokens"].shape[1] == config.memory.scene_bank_size + assert output["belief_memory_tokens"].shape[1] == config.memory.belief_bank_size + assert output["memory_tokens"].shape[1] == config.memory.scene_bank_size + config.memory.belief_bank_size + assert torch.all(output["memory_write_rate"] >= 0.0) + assert torch.all(output["memory_write_rate"] <= 1.0) diff --git a/VLAarchtests/tests/test_dual_push_full_arch_utils.py b/VLAarchtests/tests/test_dual_push_full_arch_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..2df181fd550814aa693f7c7d03c60de0748359f9 --- /dev/null +++ b/VLAarchtests/tests/test_dual_push_full_arch_utils.py @@ -0,0 +1,57 @@ +from __future__ import annotations + +import torch + +from eval.dual_push_full_arch_utils import combine_hybrid_candidates + + +def test_combine_hybrid_candidates_preserves_base_and_adds_bridge_and_residuals() -> None: + base = torch.tensor( + [ + [1.0, 2.0], + [3.0, 4.0], + ] + ) + action_mean = torch.tensor( + [ + [2.0, 4.0], + [6.0, 8.0], + ] + ) + shortlisted = torch.tensor( + [ + [ + [3.0, 6.0], + [9.0, 12.0], + ], + [ + [1.0, 1.0], + [1.0, 1.0], + ], + ] + ) + shortlisted_logits = torch.tensor([0.5, -0.25]) + + candidates, logits, mode_names = combine_hybrid_candidates( + base_chunk=base, + action_mean=action_mean, + shortlisted_candidates=shortlisted, + shortlisted_logits=shortlisted_logits, + shortlisted_mode_names=["mode_a", "mode_b"], + residual_scale=0.25, + bridge_blend=0.5, + ) + + assert candidates.shape == (4, 2, 2) + torch.testing.assert_close(candidates[0], base) + torch.testing.assert_close(candidates[1], base + 0.5 * (action_mean - base)) + torch.testing.assert_close(candidates[2], base + 0.25 * (shortlisted[0] - action_mean)) + torch.testing.assert_close(candidates[3], base + 0.25 * (shortlisted[1] - action_mean)) + assert logits is not None + torch.testing.assert_close(logits, torch.tensor([0.0, 0.0, 0.5, -0.25])) + assert mode_names == [ + "retargeted_demo_base", + "retargeted_demo_bridge", + "residual::mode_a", + "residual::mode_b", + ] diff --git a/VLAarchtests/tests/test_dual_push_retarget_utils.py b/VLAarchtests/tests/test_dual_push_retarget_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..1568780dc6bd4ee8a482546f817d6abbc6c024dc --- /dev/null +++ b/VLAarchtests/tests/test_dual_push_retarget_utils.py @@ -0,0 +1,130 @@ +from __future__ import annotations + +import numpy as np + +from eval.dual_push_retarget_utils import ( + backproject_depth_to_world, + delta_action_from_absolute_targets, + estimate_dual_push_target_positions_from_front_rgbd, + extract_dual_push_button_positions, + make_bimanual_absolute_action, + parse_dual_push_target_colors, + retarget_demo_pose_to_live_button, +) + + +def test_extract_dual_push_button_positions_reads_expected_slices() -> None: + state = np.arange(136, dtype=np.float32) + + button0, button1, button2 = extract_dual_push_button_positions(state) + + assert button0.tolist() == [7.0, 8.0, 9.0] + assert button1.tolist() == [14.0, 15.0, 16.0] + assert button2.tolist() == [21.0, 22.0, 23.0] + + +def test_retarget_demo_pose_to_live_button_translates_position_only() -> None: + demo_pose = np.array([0.4, 0.5, 0.6, 0.0, 0.0, 0.0, 1.0], dtype=np.float32) + demo_button = np.array([0.1, 0.2, 0.3], dtype=np.float32) + live_button = np.array([0.3, -0.1, 0.7], dtype=np.float32) + + retargeted = retarget_demo_pose_to_live_button(demo_pose, demo_button, live_button) + + np.testing.assert_allclose(retargeted[:3], np.array([0.6, 0.2, 1.0], dtype=np.float32)) + np.testing.assert_allclose(retargeted[3:], demo_pose[3:]) + + +def test_make_bimanual_absolute_action_packs_expected_layout() -> None: + right_pose = np.array([1, 2, 3, 0, 0, 0, 1], dtype=np.float32) + left_pose = np.array([4, 5, 6, 0, 0, 1, 0], dtype=np.float32) + + action = make_bimanual_absolute_action(right_pose, left_pose, 1.0, 0.0) + + assert action.shape == (18,) + np.testing.assert_allclose(action[:7], right_pose) + np.testing.assert_allclose(action[9:16], left_pose) + assert action[7] == 1.0 + assert action[8] == 1.0 + assert action[16] == 0.0 + assert action[17] == 1.0 + + +def test_delta_action_from_absolute_targets_matches_translation_and_gripper() -> None: + current_right = np.array([0.1, 0.2, 0.3, 0.0, 0.0, 0.0, 1.0], dtype=np.float32) + current_left = np.array([-0.1, 0.4, 0.2, 0.0, 0.0, 0.0, 1.0], dtype=np.float32) + target_right = np.array([0.15, 0.1, 0.35, 0.0, 0.0, 0.0, 1.0], dtype=np.float32) + target_left = np.array([-0.05, 0.5, 0.25, 0.0, 0.0, 0.0, 1.0], dtype=np.float32) + + delta = delta_action_from_absolute_targets( + current_right, + current_left, + target_right, + target_left, + right_gripper_open=1.0, + left_gripper_open=0.0, + ) + + np.testing.assert_allclose(delta[:3], np.array([0.05, -0.1, 0.05], dtype=np.float32), atol=1e-6) + np.testing.assert_allclose(delta[7:10], np.array([0.05, 0.1, 0.05], dtype=np.float32), atol=1e-6) + np.testing.assert_allclose(delta[3:6], np.zeros(3, dtype=np.float32), atol=1e-6) + np.testing.assert_allclose(delta[10:13], np.zeros(3, dtype=np.float32), atol=1e-6) + assert delta[6] == 1.0 + assert delta[13] == 0.0 + + +def test_delta_action_from_absolute_targets_captures_rotation_delta() -> None: + current_right = np.array([0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0], dtype=np.float32) + current_left = np.array([0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0], dtype=np.float32) + half_turn_z_xyzw = np.array([0.0, 0.0, np.sin(np.pi / 4.0), np.cos(np.pi / 4.0)], dtype=np.float32) + target_right = np.concatenate([np.zeros(3, dtype=np.float32), half_turn_z_xyzw], axis=0) + target_left = current_left.copy() + + delta = delta_action_from_absolute_targets( + current_right, + current_left, + target_right, + target_left, + right_gripper_open=1.0, + left_gripper_open=1.0, + ) + + np.testing.assert_allclose(delta[:3], np.zeros(3, dtype=np.float32), atol=1e-6) + np.testing.assert_allclose(delta[7:13], np.zeros(6, dtype=np.float32), atol=1e-6) + assert abs(float(delta[5])) > 1.4 + + +def test_parse_dual_push_target_colors_reads_both_targets() -> None: + assert parse_dual_push_target_colors("push the olive and the orange buttons") == ("olive", "orange") + + +def test_backproject_depth_to_world_handles_signed_focal_lengths() -> None: + depth = np.array([[0.75]], dtype=np.float32) + intrinsics = np.array([[-100.0, 0.0, 0.0], [0.0, -100.0, 0.0], [0.0, 0.0, 1.0]], dtype=np.float32) + extrinsics = np.eye(4, dtype=np.float32) + + points = backproject_depth_to_world(depth, intrinsics, extrinsics) + + np.testing.assert_allclose(points[0, 0], np.array([0.0, 0.0, 0.75], dtype=np.float32)) + + +def test_estimate_dual_push_target_positions_from_front_rgbd_finds_color_centers() -> None: + rgb = np.zeros((3, 8, 8), dtype=np.float32) + depth = np.full((8, 8), 0.75, dtype=np.float32) + rgb[:, 2:4, 1:3] = np.array([128.0, 128.0, 0.0], dtype=np.float32)[:, None, None] / 255.0 + rgb[:, 2:4, 5:7] = np.array([255.0, 128.0, 0.0], dtype=np.float32)[:, None, None] / 255.0 + intrinsics = np.array([[-100.0, 0.0, 3.5], [0.0, -100.0, 3.5], [0.0, 0.0, 1.0]], dtype=np.float32) + extrinsics = np.eye(4, dtype=np.float32) + + right, left = estimate_dual_push_target_positions_from_front_rgbd( + rgb, + depth, + intrinsics, + extrinsics, + "push the olive and the orange buttons", + ) + + assert right is not None + assert left is not None + assert right[0] > left[0] + np.testing.assert_allclose(right[2], 0.75, atol=1e-4) + np.testing.assert_allclose(left[2], 0.75, atol=1e-4) diff --git a/VLAarchtests/tests/test_eval_toggle_paths_work.py b/VLAarchtests/tests/test_eval_toggle_paths_work.py new file mode 100644 index 0000000000000000000000000000000000000000..71252309b4b359d789a24073cacabefd7c5f0283 --- /dev/null +++ b/VLAarchtests/tests/test_eval_toggle_paths_work.py @@ -0,0 +1,74 @@ +import torch + +from eval.run_reveal_benchmark import _policy_outputs +from train.trainer import build_policy + + +def _options(**overrides): + base = { + "disable_planner": False, + "disable_memory": False, + "disable_task_conditioning": False, + "disable_geometry": False, + "disable_camera_pose": False, + "disable_shortlist": False, + "ignore_proposal_logits": False, + "ignore_proposal_logits_in_shortlist": False, + "ignore_proposal_logits_in_planner": False, + "disable_support_mode_conditioning": False, + "disable_world_model": False, + "disable_depth": False, + "disable_role_tokens": False, + "short_history": False, + "rollout_mode_override": None, + "use_proposal_candidates": True, + } + base.update(overrides) + return base + + +def test_eval_toggle_paths_work(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + model = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + model.eval() + + base = _policy_outputs(model, batch, _options(), disable_planner_for_selection=False) + no_planner = _policy_outputs(model, batch, _options(disable_planner=True), disable_planner_for_selection=False) + no_memory = _policy_outputs(model, batch, _options(disable_memory=True), disable_planner_for_selection=True) + no_task = _policy_outputs(model, batch, _options(disable_task_conditioning=True), disable_planner_for_selection=True) + no_geometry = _policy_outputs(model, batch, _options(disable_geometry=True, disable_camera_pose=True), disable_planner_for_selection=True) + no_shortlist = _policy_outputs(model, batch, _options(disable_shortlist=True), disable_planner_for_selection=False) + ignore_shortlist_logits = _policy_outputs( + model, + batch, + _options(ignore_proposal_logits_in_shortlist=True), + disable_planner_for_selection=False, + ) + ignore_planner_logits = _policy_outputs( + model, + batch, + _options(ignore_proposal_logits_in_planner=True), + disable_planner_for_selection=False, + ) + ignore_proposal_logits = _policy_outputs(model, batch, _options(ignore_proposal_logits=True), disable_planner_for_selection=False) + + assert torch.count_nonzero(no_planner["planner_scores"]) == 0 + assert torch.allclose( + no_memory["memory_output"]["memory_tokens"], + torch.zeros_like(no_memory["memory_output"]["memory_tokens"]), + ) + assert not torch.allclose(base["interaction_state"]["support_mode_logits"], no_task["interaction_state"]["support_mode_logits"]) + assert not torch.allclose(base["scene_tokens"], no_geometry["scene_tokens"]) + assert no_shortlist["planner_topk_indices"].shape[1] == base["candidate_chunks"].shape[1] + assert base["proposal_logits_used_for_shortlist"] + assert base["proposal_logits_used_for_planner"] + assert not ignore_shortlist_logits["proposal_logits_used_for_shortlist"] + assert ignore_shortlist_logits["proposal_logits_used_for_planner"] + assert ignore_planner_logits["proposal_logits_used_for_shortlist"] + assert not ignore_planner_logits["proposal_logits_used_for_planner"] + assert torch.equal(base["planner_topk_indices"], ignore_planner_logits["planner_topk_indices"]) + assert not torch.allclose(base["planner_scores"], ignore_planner_logits["planner_scores"]) + assert not ignore_proposal_logits["proposal_logits_used_for_shortlist"] + assert not ignore_proposal_logits["proposal_logits_used_for_planner"] + assert not torch.allclose(base["planner_scores"], ignore_proposal_logits["planner_scores"]) diff --git a/VLAarchtests/tests/test_explicit_task_metadata_overrides_text.py b/VLAarchtests/tests/test_explicit_task_metadata_overrides_text.py new file mode 100644 index 0000000000000000000000000000000000000000..7196514b61e46c7d0276d99f06749fbd6965396f --- /dev/null +++ b/VLAarchtests/tests/test_explicit_task_metadata_overrides_text.py @@ -0,0 +1,37 @@ +from train.trainer import build_policy + + +def test_explicit_task_metadata_overrides_text(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + batch["texts"] = ["foliage canopy leaves snail"] * batch["images"].shape[0] + batch["task_name"] = ["bag"] * batch["images"].shape[0] + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + policy.eval() + + output = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=False, + ) + + assert output["task_names"] == ["bag"] * batch["images"].shape[0] + assert output["proposal_task_names"] == ["bag"] * batch["images"].shape[0] + assert output["proposal_task_ids"].tolist() == [1] * batch["images"].shape[0] + assert all("sweep" not in name for name in output["proposal_mode_names"][0]) + assert any("rim" in name or "mouth" in name for name in output["proposal_mode_names"][0]) diff --git a/VLAarchtests/tests/test_geometry_matters_under_camera_perturbation.py b/VLAarchtests/tests/test_geometry_matters_under_camera_perturbation.py new file mode 100644 index 0000000000000000000000000000000000000000..6953d4e12bf4cf4018b7cfc88ee0e75bb089a7cb --- /dev/null +++ b/VLAarchtests/tests/test_geometry_matters_under_camera_perturbation.py @@ -0,0 +1,91 @@ +import torch + +from pytorch3d.transforms import euler_angles_to_matrix +from train.trainer import build_policy + + +def test_geometry_matters_under_camera_perturbation(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + rotated_extrinsics = batch["camera_extrinsics"].clone() + rotation = euler_angles_to_matrix( + torch.tensor([[0.0, 0.8, 0.0]], dtype=rotated_extrinsics.dtype), + "XYZ", + )[0] + rotated_extrinsics[:, 1, :3, :3] = rotation + + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + policy.eval() + + geometry_on = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=rotated_extrinsics, + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + use_geometry_tokens=True, + use_camera_pose_tokens=True, + use_world_model=False, + use_planner=False, + ) + geometry_off = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=rotated_extrinsics, + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + use_geometry_tokens=False, + use_camera_pose_tokens=False, + use_world_model=False, + use_planner=False, + ) + nominal_off = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + use_geometry_tokens=False, + use_camera_pose_tokens=False, + use_world_model=False, + use_planner=False, + ) + + assert not torch.allclose(geometry_on["scene_tokens"], geometry_off["scene_tokens"]) + assert torch.allclose(geometry_off["scene_tokens"], nominal_off["scene_tokens"], atol=1e-6, rtol=1e-5) diff --git a/VLAarchtests/tests/test_geometry_tokens_propagate.py b/VLAarchtests/tests/test_geometry_tokens_propagate.py new file mode 100644 index 0000000000000000000000000000000000000000..3c02fadbe2ccb38f180ce04ceb46396ae6f29ea1 --- /dev/null +++ b/VLAarchtests/tests/test_geometry_tokens_propagate.py @@ -0,0 +1,93 @@ +import torch + +from pytorch3d.transforms import euler_angles_to_matrix +from train.trainer import build_policy + + +def _rotated_extrinsics(extrinsics: torch.Tensor, angle_radians: float) -> torch.Tensor: + rotated = extrinsics.clone() + rotation = euler_angles_to_matrix( + torch.tensor([[0.0, angle_radians, 0.0]], dtype=rotated.dtype), + "XYZ", + )[0] + rotated[:, 1, :3, :3] = rotation + return rotated + + +def test_geometry_tokens_propagate(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + policy.eval() + + rotated_extrinsics = _rotated_extrinsics(batch["camera_extrinsics"], angle_radians=0.7) + + encoded_a = policy.backbone.encode_images( + batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + return_aux=True, + ) + encoded_b = policy.backbone.encode_images( + batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=rotated_extrinsics, + return_aux=True, + ) + assert not torch.allclose(encoded_a["geometry_tokens"], encoded_b["geometry_tokens"]) + + scene_a = policy._encode_scene_with_optional_depth( + images=batch["images"], + proprio=batch["proprio"], + texts=batch["texts"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + use_depth=True, + use_geometry_tokens=True, + use_camera_pose_tokens=True, + )["scene_tokens"] + scene_b = policy._encode_scene_with_optional_depth( + images=batch["images"], + proprio=batch["proprio"], + texts=batch["texts"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=rotated_extrinsics, + use_depth=True, + use_geometry_tokens=True, + use_camera_pose_tokens=True, + )["scene_tokens"] + assert not torch.allclose(scene_a, scene_b) + + scene_disabled = policy._encode_scene_with_optional_depth( + images=batch["images"], + proprio=batch["proprio"], + texts=batch["texts"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + use_depth=True, + use_geometry_tokens=False, + use_camera_pose_tokens=False, + )["scene_tokens"] + scene_disabled_rotated = policy._encode_scene_with_optional_depth( + images=batch["images"], + proprio=batch["proprio"], + texts=batch["texts"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=rotated_extrinsics, + use_depth=True, + use_geometry_tokens=False, + use_camera_pose_tokens=False, + )["scene_tokens"] + assert torch.allclose(scene_disabled, scene_disabled_rotated, atol=1e-6, rtol=1e-5) diff --git a/VLAarchtests/tests/test_history_camera_geometry_propagates.py b/VLAarchtests/tests/test_history_camera_geometry_propagates.py new file mode 100644 index 0000000000000000000000000000000000000000..0fb3f589bbed773098264f7c11de0f414cb67ecc --- /dev/null +++ b/VLAarchtests/tests/test_history_camera_geometry_propagates.py @@ -0,0 +1,68 @@ +import torch + +from pytorch3d.transforms import euler_angles_to_matrix +from train.trainer import build_policy + + +def test_history_camera_geometry_propagates(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + policy.eval() + + rotated_history = batch["history_camera_extrinsics"].clone() + rotation = euler_angles_to_matrix( + torch.tensor([[0.0, 0.5, 0.0]], dtype=rotated_history.dtype), + "XYZ", + )[0] + rotated_history[:, :, 1, :3, :3] = rotation + + base = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + use_geometry_tokens=True, + use_camera_pose_tokens=True, + plan=False, + ) + rotated = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=rotated_history, + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + use_geometry_tokens=True, + use_camera_pose_tokens=True, + plan=False, + ) + + assert base["history_geometry_inputs_present"] is True + assert base["history_geometry_used"] is True + assert float(base["history_geometry_valid_mask"].sum()) > 0.0 + assert not torch.allclose(base["history_scene_tokens"], rotated["history_scene_tokens"]) diff --git a/VLAarchtests/tests/test_history_geometry_validity_mask.py b/VLAarchtests/tests/test_history_geometry_validity_mask.py new file mode 100644 index 0000000000000000000000000000000000000000..710ee0a80602d8ce36d091f998f8fc46af93f5d5 --- /dev/null +++ b/VLAarchtests/tests/test_history_geometry_validity_mask.py @@ -0,0 +1,91 @@ +import torch + +from pytorch3d.transforms import euler_angles_to_matrix +from train.trainer import build_policy + + +def test_history_geometry_validity_mask(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + policy.eval() + + masked_validity = batch["history_camera_valid_mask"].clone() + masked_validity[:, 1] = 0.0 + rotated_history = batch["history_camera_extrinsics"].clone() + rotation = euler_angles_to_matrix( + torch.tensor([[0.0, 1.0, 0.0]], dtype=rotated_history.dtype), + "XYZ", + )[0] + rotated_history[:, 1, 1, :3, :3] = rotation + + masked_reference = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_camera_valid_mask=masked_validity, + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + use_geometry_tokens=True, + use_camera_pose_tokens=True, + plan=False, + ) + masked_rotated = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=rotated_history, + history_camera_valid_mask=masked_validity, + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + use_geometry_tokens=True, + use_camera_pose_tokens=True, + plan=False, + ) + unmasked_rotated = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=rotated_history, + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + use_geometry_tokens=True, + use_camera_pose_tokens=True, + plan=False, + ) + + assert torch.equal(masked_reference["history_geometry_valid_mask"], masked_validity) + assert torch.allclose(masked_reference["history_scene_tokens"], masked_rotated["history_scene_tokens"], atol=1e-6, rtol=1e-5) + assert not torch.allclose(masked_reference["history_scene_tokens"], unmasked_rotated["history_scene_tokens"]) diff --git a/VLAarchtests/tests/test_memory_matters_under_high_reocclusion.py b/VLAarchtests/tests/test_memory_matters_under_high_reocclusion.py new file mode 100644 index 0000000000000000000000000000000000000000..39a541447ac24d1f51e6acd51417ca5c553949d7 --- /dev/null +++ b/VLAarchtests/tests/test_memory_matters_under_high_reocclusion.py @@ -0,0 +1,67 @@ +import torch + +from train.trainer import build_policy + + +def test_memory_matters_under_high_reocclusion(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + batch["images"].zero_() + batch["depths"].zero_() + batch["history_images"][:, 0] = 1.0 + batch["history_depths"][:, 0] = 1.0 + + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + policy.eval() + + with_memory = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + use_memory=True, + use_world_model=False, + use_planner=False, + ) + without_memory = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + task_names=batch["task_name"], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + use_memory=False, + use_world_model=False, + use_planner=False, + ) + + assert with_memory["memory_output"]["belief_memory_tokens"].norm() > 0.0 + assert torch.allclose( + without_memory["memory_output"]["belief_memory_tokens"], + torch.zeros_like(without_memory["memory_output"]["belief_memory_tokens"]), + ) + assert not torch.allclose(with_memory["interaction_state"]["latent_summary"], without_memory["interaction_state"]["latent_summary"]) diff --git a/VLAarchtests/tests/test_memory_slot_write_gating.py b/VLAarchtests/tests/test_memory_slot_write_gating.py new file mode 100644 index 0000000000000000000000000000000000000000..e1cdb77d802e16dff7d79f17bd637ae62aa71c5e --- /dev/null +++ b/VLAarchtests/tests/test_memory_slot_write_gating.py @@ -0,0 +1,18 @@ +import torch + +from models.observation_memory import DualObservationMemory + + +def test_memory_slot_write_gating(tiny_policy_config): + config = tiny_policy_config(hidden_dim=16) + config.memory.scene_bank_size = 4 + config.memory.belief_bank_size = 4 + memory = DualObservationMemory(config.memory) + scene_tokens = torch.zeros(1, 12, config.backbone.hidden_dim) + history_scene_tokens = torch.zeros(1, 2, 12, config.backbone.hidden_dim) + history_actions = torch.zeros(1, 2, 14) + scene_tokens[:, :3] = 1.0 + output = memory(scene_tokens, history_scene_tokens=history_scene_tokens, history_actions=history_actions) + active_slots = int((output["scene_write_gate"][0] > 0.2).sum().item()) + assert active_slots <= 2 + assert int(output["scene_write_gate"][0].argmax().item()) == 0 diff --git a/VLAarchtests/tests/test_no_leak_with_new_labels.py b/VLAarchtests/tests/test_no_leak_with_new_labels.py new file mode 100644 index 0000000000000000000000000000000000000000..792fc1ba5d2832632bf7805ff93bd0f2a3c74f6a --- /dev/null +++ b/VLAarchtests/tests/test_no_leak_with_new_labels.py @@ -0,0 +1,26 @@ +from sim_reveal.dataset import RevealOfflineDataset, collect_teacher_dataset + + +def test_no_leak_with_new_labels(): + bundle = collect_teacher_dataset( + proxy_names=["bag_proxy"], + episodes_per_proxy=1, + resolution=32, + seed=123, + chunk_horizon=4, + rollout_horizon=3, + history_steps=2, + planner_candidates=4, + dataset_version="reveal_proxy_v6_rgbd_elastic_state", + ) + dataset = RevealOfflineDataset(bundle["samples"], resolution=32) + item = dataset[0] + for key in ( + "gap_width", + "hold_quality", + "mouth_aperture", + "fold_preservation", + "lift_too_much_risk", + ): + assert key in item + assert "gap_width" not in item["texts"].lower() diff --git a/VLAarchtests/tests/test_phase_labels_not_action_only.py b/VLAarchtests/tests/test_phase_labels_not_action_only.py new file mode 100644 index 0000000000000000000000000000000000000000..d2ad891b8b310d8b55e9dd6c4b507bbd6c186b90 --- /dev/null +++ b/VLAarchtests/tests/test_phase_labels_not_action_only.py @@ -0,0 +1,24 @@ +import torch + +from train.losses import LossWeights, reveal_state_loss + + +def test_phase_labels_not_action_only(): + pred = { + "support_mode_logits": torch.zeros(1, 3), + "phase_logits": torch.tensor([[0.0, 0.0, 0.0, 0.0, 8.0]]), + "arm_role_logits": torch.zeros(1, 2, 4), + "corridor_logits": torch.zeros(1, 3, 32), + "persistence_horizon": torch.zeros(1, 3), + "disturbance_cost": torch.zeros(1), + } + target = { + "support_mode": torch.zeros(1, dtype=torch.long), + "phase": torch.tensor([4], dtype=torch.long), + "corridor_feasible": torch.zeros(1, 3, 32), + "persistence_horizon": torch.zeros(1, 3), + "disturbance_cost": torch.zeros(1), + "action_chunk": torch.tensor([[[0.0] * 13 + [1.0]]], dtype=torch.float32), + } + losses = reveal_state_loss(pred, target, weights=LossWeights()) + assert float(losses["phase"]) < 0.05 diff --git a/VLAarchtests/tests/test_planner_beats_random_on_oracle_candidates.py b/VLAarchtests/tests/test_planner_beats_random_on_oracle_candidates.py new file mode 100644 index 0000000000000000000000000000000000000000..c9deceff1e27db7dffeffe1b69fe7a60fa896949 --- /dev/null +++ b/VLAarchtests/tests/test_planner_beats_random_on_oracle_candidates.py @@ -0,0 +1,28 @@ +import numpy as np + +from eval.metrics import planner_regret, planner_top1_accuracy + + +def test_planner_beats_random_on_oracle_candidates(): + oracle_utility = np.asarray( + [ + [0.10, 0.90, 0.20], + [0.15, 0.25, 0.95], + [0.80, 0.10, 0.20], + ], + dtype=np.float32, + ) + oracle_indices = oracle_utility.argmax(axis=-1) + candidate0_indices = np.zeros((oracle_utility.shape[0],), dtype=np.int64) + random_indices = np.asarray([2, 0, 1], dtype=np.int64) + + oracle_scores = oracle_utility.copy() + candidate0_scores = np.zeros_like(oracle_utility) + candidate0_scores[:, 0] = 1.0 + random_scores = np.zeros_like(oracle_utility) + random_scores[np.arange(random_indices.shape[0]), random_indices] = 1.0 + + assert planner_regret(oracle_indices, oracle_utility) < planner_regret(random_indices, oracle_utility) + assert planner_regret(oracle_indices, oracle_utility) < planner_regret(candidate0_indices, oracle_utility) + assert planner_top1_accuracy(oracle_scores, oracle_utility) > planner_top1_accuracy(random_scores, oracle_utility) + assert planner_top1_accuracy(oracle_scores, oracle_utility) > planner_top1_accuracy(candidate0_scores, oracle_utility) diff --git a/VLAarchtests/tests/test_planner_gradient_flow.py b/VLAarchtests/tests/test_planner_gradient_flow.py new file mode 100644 index 0000000000000000000000000000000000000000..b7a042e3b7aad21645a5874cb0da5d4690068deb --- /dev/null +++ b/VLAarchtests/tests/test_planner_gradient_flow.py @@ -0,0 +1,29 @@ +import torch + +from train.losses import LossWeights, compute_total_loss + + +def test_planner_gradient_flow(): + planner_scores = torch.tensor([[0.2, -0.1, 0.0]], requires_grad=True) + success_logits = torch.tensor([[0.0, 0.0, 0.0]], requires_grad=True) + risk_values = torch.tensor([[0.2, 0.2, 0.2]], requires_grad=True) + model_output = { + "action_mean": torch.zeros(1, 1, 14), + "planner_scores": planner_scores, + "planner_success_logits": success_logits, + "planner_risk_values": risk_values, + } + batch = { + "action_chunk": torch.zeros(1, 1, 14), + "candidate_retrieval_success": torch.tensor([[1.0, 0.0, 0.0]]), + "candidate_final_disturbance_cost": torch.tensor([[0.0, 0.2, 0.4]]), + "candidate_reocclusion_rate": torch.tensor([[0.0, 0.1, 0.2]]), + "candidate_utility": torch.tensor([[1.0, 0.1, -0.6]]), + } + weights = LossWeights(action=0.0, planner_success=0.2, planner_risk=0.1, planner_ranking=1.0) + losses = compute_total_loss(model_output, batch, weights=weights) + losses["total"].backward() + assert planner_scores.grad is not None + assert success_logits.grad is not None + assert risk_values.grad is not None + assert float(planner_scores.grad.abs().sum()) > 0.0 diff --git a/VLAarchtests/tests/test_planner_reocclusion_gating.py b/VLAarchtests/tests/test_planner_reocclusion_gating.py new file mode 100644 index 0000000000000000000000000000000000000000..7045ffd4b4626a7e60c22f664c5cf4d01e4b7d8a --- /dev/null +++ b/VLAarchtests/tests/test_planner_reocclusion_gating.py @@ -0,0 +1,49 @@ +import torch + +from models.planner import CascadePlanner + + +def test_planner_reocclusion_gating_prefers_maintain_first(tiny_policy_config, tiny_state): + config = tiny_policy_config(num_candidates=2, top_k=2, field_size=4) + planner = CascadePlanner(config.planner) + for parameter in planner.residual.parameters(): + parameter.data.zero_() + + initial_state = tiny_state(batch_size=1, field_size=4) + candidate_chunks = torch.zeros(1, 2, config.decoder.chunk_size, config.decoder.action_dim) + candidate_chunks[:, 0, :, -1] = 1.0 + candidate_chunks[:, 1, :, 0] = 0.2 + + low = torch.full((1, 2, config.world_model.rollout_horizon, 1, 4, 4), 0.05) + high = torch.full((1, 2, config.world_model.rollout_horizon, 1, 4, 4), 0.90) + clearance = torch.cat([low.expand(-1, -1, -1, 1, -1, -1), high.expand(-1, -1, -1, 1, -1, -1)], dim=3) + access = torch.full((1, 2, config.world_model.rollout_horizon, 3, 4, 4), 0.05) + access[:, 1] = 0.90 + support = torch.full((1, 2, config.world_model.rollout_horizon, 1, 4, 4), -4.0) + support[:, 1] = 4.0 + persistence = torch.full((1, 2, config.world_model.rollout_horizon, 1, 4, 4), 0.05) + persistence[:, 1] = 0.95 + reocclusion = torch.full((1, 2, config.world_model.rollout_horizon, 1, 4, 4), 0.95) + reocclusion[:, 1] = 0.05 + + rollout_state = { + "target_belief_field": high.clone(), + "visibility_field": high.clone(), + "clearance_field": clearance, + "occluder_contact_field": high.clone(), + "grasp_affordance_field": high.clone(), + "support_stability_field": support, + "persistence_field": persistence, + "reocclusion_field": reocclusion, + "disturbance_field": low.clone(), + "access_field": access, + } + + selected = planner.select_best( + initial_state=initial_state, + candidate_chunks=candidate_chunks, + rollout_state=rollout_state, + proposal_mode_names=[["retrieve", "maintain_gap"]], + ) + assert selected["feasibility_penalty"][0, 0] > 0.0 + assert selected["best_indices"].item() == 1 diff --git a/VLAarchtests/tests/test_planner_structured_utility.py b/VLAarchtests/tests/test_planner_structured_utility.py new file mode 100644 index 0000000000000000000000000000000000000000..c1a37ce133f8ca30a800f7661c139745ddbecf0b --- /dev/null +++ b/VLAarchtests/tests/test_planner_structured_utility.py @@ -0,0 +1,31 @@ +import torch + +from models.planner import CascadePlanner + + +def test_planner_structured_utility(tiny_policy_config, tiny_state): + config = tiny_policy_config() + planner = CascadePlanner(config.planner) + initial_state = tiny_state(batch_size=1, field_size=config.reveal_head.field_size) + candidate_chunks = torch.zeros(1, 2, config.decoder.chunk_size, 14) + candidate_chunks[:, 0, :, -1] = 2.0 + rollout_state = { + "target_belief_field": torch.zeros(1, 2, config.decoder.chunk_size, 1, config.reveal_head.field_size, config.reveal_head.field_size), + "visibility_field": torch.zeros(1, 2, config.decoder.chunk_size, 1, config.reveal_head.field_size, config.reveal_head.field_size), + "clearance_field": torch.zeros(1, 2, config.decoder.chunk_size, 2, config.reveal_head.field_size, config.reveal_head.field_size), + "occluder_contact_field": torch.zeros(1, 2, config.decoder.chunk_size, 1, config.reveal_head.field_size, config.reveal_head.field_size), + "grasp_affordance_field": torch.zeros(1, 2, config.decoder.chunk_size, 1, config.reveal_head.field_size, config.reveal_head.field_size), + "support_stability_field": torch.ones(1, 2, config.decoder.chunk_size, 1, config.reveal_head.field_size, config.reveal_head.field_size), + "persistence_field": torch.zeros(1, 2, config.decoder.chunk_size, 1, config.reveal_head.field_size, config.reveal_head.field_size), + "reocclusion_field": torch.zeros(1, 2, config.decoder.chunk_size, 1, config.reveal_head.field_size, config.reveal_head.field_size), + "disturbance_field": torch.zeros(1, 2, config.decoder.chunk_size, 1, config.reveal_head.field_size, config.reveal_head.field_size), + "access_field": torch.zeros(1, 2, config.decoder.chunk_size, 3, config.reveal_head.field_size, config.reveal_head.field_size), + } + rollout_state["target_belief_field"][:, 0] = 2.0 + rollout_state["visibility_field"][:, 0] = 1.5 + rollout_state["clearance_field"][:, 0] = 1.0 + rollout_state["persistence_field"][:, 0] = 1.0 + rollout_state["access_field"][:, 0] = 2.0 + selected = planner.select_best(initial_state, candidate_chunks, rollout_state) + assert int(selected["best_indices"][0]) == 0 + assert selected["utility_structured"].shape == (1, 2) diff --git a/VLAarchtests/tests/test_policy_topk_cascade.py b/VLAarchtests/tests/test_policy_topk_cascade.py new file mode 100644 index 0000000000000000000000000000000000000000..f94ebd266571453d228428f8cbae97d49f4e593f --- /dev/null +++ b/VLAarchtests/tests/test_policy_topk_cascade.py @@ -0,0 +1,68 @@ +import torch + +from train.trainer import build_policy + + +def test_policy_topk_cascade(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config(num_candidates=4, top_k=2) + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + output = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=True, + ) + assert output["planner_topk_indices"].shape[1] == config.planner.top_k + assert output["planned_rollout"]["target_belief_field"].shape[1] == config.planner.top_k + assert (output["best_candidate_indices"] < config.decoder.num_candidates).all() + + +def test_policy_null_rollout_ablation_keeps_planner_interface( + tiny_policy_config, + tiny_trainer_config, + tiny_batch, +): + config = tiny_policy_config(num_candidates=4, top_k=2) + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + output = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=True, + use_world_model=False, + use_planner=True, + ) + rollout = output["planned_rollout"] + current_state = output["interaction_state"] + assert output["rollout_source"] == "identity" + assert output["planner_topk_indices"].shape[1] == config.planner.top_k + assert rollout["target_belief_field"].shape[1] == config.planner.top_k + repeated_belief = current_state["target_belief_field"].detach().unsqueeze(1).unsqueeze(2).expand_as( + rollout["target_belief_field"] + ) + repeated_phase = current_state["phase_logits"].detach().unsqueeze(1).unsqueeze(2).expand_as( + rollout["phase_logits"] + ) + assert output["utility_total"].shape == (batch["images"].shape[0], config.planner.top_k) + assert torch.allclose(rollout["target_belief_field"], repeated_belief) + assert torch.allclose(rollout["phase_logits"], repeated_phase) diff --git a/VLAarchtests/tests/test_proposal_diversity.py b/VLAarchtests/tests/test_proposal_diversity.py new file mode 100644 index 0000000000000000000000000000000000000000..6fb0a4c8745012e69e57c87343105ce713edd255 --- /dev/null +++ b/VLAarchtests/tests/test_proposal_diversity.py @@ -0,0 +1,9 @@ +import torch + +from train.losses import proposal_diversity_loss + + +def test_proposal_diversity(): + collapsed = torch.zeros(2, 4, 2, 14) + diverse = torch.randn(2, 4, 2, 14) + assert proposal_diversity_loss(collapsed) > proposal_diversity_loss(diverse) diff --git a/VLAarchtests/tests/test_proposal_mode_names_label_base_action.py b/VLAarchtests/tests/test_proposal_mode_names_label_base_action.py new file mode 100644 index 0000000000000000000000000000000000000000..340c987a0a840324e65a03a1d96b01745649d9de --- /dev/null +++ b/VLAarchtests/tests/test_proposal_mode_names_label_base_action.py @@ -0,0 +1,35 @@ +from __future__ import annotations + +import torch + +from models.action_decoder import ChunkDecoderConfig, SymmetricCoordinatedChunkDecoder + + +def test_proposal_mode_names_label_slot0_as_base_action() -> None: + config = ChunkDecoderConfig( + hidden_dim=32, + num_heads=4, + num_layers=1, + ff_dim=64, + dropout=0.0, + chunk_size=2, + action_dim=14, + arm_action_dim=7, + num_candidates=8, + num_phases=5, + num_arm_roles=4, + num_proposal_modes=7, + planner_top_k=4, + ) + decoder = SymmetricCoordinatedChunkDecoder(config) + base_action = torch.zeros(1, config.chunk_size, config.action_dim) + pooled_context = torch.zeros(1, config.action_dim + (config.hidden_dim * 2)) + + _, _, _, proposal_mode_names = decoder._proposal_outputs( + base_action=base_action, + pooled_context=pooled_context, + task_names=["bag"], + ) + + assert proposal_mode_names[0][0] == "base_action" + assert "widen_mouth" in proposal_mode_names[0] diff --git a/VLAarchtests/tests/test_proposal_semantic_diversity.py b/VLAarchtests/tests/test_proposal_semantic_diversity.py new file mode 100644 index 0000000000000000000000000000000000000000..6cadd8b8e6b31b013ad9c9e2662bdda75a8b9767 --- /dev/null +++ b/VLAarchtests/tests/test_proposal_semantic_diversity.py @@ -0,0 +1,19 @@ +import numpy as np + +from sim_reveal.procedural_envs import BAG_PROXY, make_proxy_env + + +def test_proposal_semantic_diversity(): + env = make_proxy_env(proxy_name=BAG_PROXY.name, resolution=32, seed=7, rollout_horizon=4) + _, _ = env.reset(seed=7) + teacher_chunk, _ = env.teacher_chunk_and_rollout(chunk_horizon=4, rollout_horizon=4) + candidates, outcomes = env.sample_candidate_action_chunks( + teacher_chunk=teacher_chunk, + num_candidates=6, + rollout_horizon=4, + ) + + assert candidates.shape[0] == 6 + assert len(set(outcomes["candidate_macro_names"])) >= 4 + assert len(set(outcomes["candidate_negative_families"])) >= 3 + assert float(np.std(outcomes["candidate_utility"])) > 0.0 diff --git a/VLAarchtests/tests/test_proxy_scripted_bench.py b/VLAarchtests/tests/test_proxy_scripted_bench.py new file mode 100644 index 0000000000000000000000000000000000000000..58248f1b0c0119cd35c865164d9629235baa82e6 --- /dev/null +++ b/VLAarchtests/tests/test_proxy_scripted_bench.py @@ -0,0 +1,58 @@ +from sim_reveal.procedural_envs import BAG_PROXY, CLOTH_PROXY, FOLIAGE_PROXY, make_proxy_env + + +def test_proxy_scripted_bench(): + bag_wins = 0 + foliage_wins = 0 + cloth_wins = 0 + for seed in range(10): + bag_env = make_proxy_env(proxy_name=BAG_PROXY.name, resolution=32, seed=seed, rollout_horizon=4) + bag_env.reset(seed=seed) + maintain = bag_env.evaluate_action_chunk(bag_env.macro_action_chunk("maintain_mouth", chunk_horizon=4), rollout_horizon=4) + retrieve = bag_env.evaluate_action_chunk(bag_env.macro_action_chunk("premature_retrieve", chunk_horizon=4), rollout_horizon=4) + if (maintain["hold_persistence"] >= retrieve["hold_persistence"]) and (maintain["reocclusion_rate"] <= retrieve["reocclusion_rate"]): + bag_wins += 1 + + foliage_env = make_proxy_env(proxy_name=FOLIAGE_PROXY.name, resolution=32, seed=seed, rollout_horizon=4) + foliage_env.reset(seed=seed) + pin = foliage_env.evaluate_action_chunk(foliage_env.macro_action_chunk("pin_canopy", chunk_horizon=4), rollout_horizon=4) + swipe = foliage_env.evaluate_action_chunk(foliage_env.macro_action_chunk("foliage_immediate_reocclusion", chunk_horizon=4), rollout_horizon=4) + if (pin["reocclusion_rate"] <= swipe["reocclusion_rate"]) and (pin["visibility_integral"] >= swipe["visibility_integral"]): + foliage_wins += 1 + + cloth_env = make_proxy_env(proxy_name=CLOTH_PROXY.name, resolution=32, seed=seed, rollout_horizon=4) + cloth_env.reset(seed=seed) + stabilize = cloth_env.evaluate_action_chunk(cloth_env.macro_action_chunk("stabilize_fold", chunk_horizon=4), rollout_horizon=4) + lift_high = cloth_env.evaluate_action_chunk(cloth_env.macro_action_chunk("cloth_lift_high", chunk_horizon=4), rollout_horizon=4) + if (stabilize["candidate_fold_preservation"] >= lift_high["candidate_fold_preservation"]) and ( + stabilize["final_disturbance_cost"] <= lift_high["final_disturbance_cost"] + ): + cloth_wins += 1 + + assert bag_wins >= 8 + assert foliage_wins >= 8 + assert cloth_wins >= 8 + + +def test_cloth_candidate_utility_penalizes_fold_damage(): + cloth_env = make_proxy_env(proxy_name=CLOTH_PROXY.name, resolution=32, seed=0, rollout_horizon=4) + gentle_reveal = { + "retrieval_success": 0.0, + "final_disturbance_cost": 0.18, + "reocclusion_rate": 0.02, + "candidate_layer_separation_quality": 0.92, + "candidate_fold_preservation": 0.78, + "candidate_top_layer_stability": 0.82, + "candidate_lift_too_much_risk": 0.08, + } + destructive_reveal = { + "retrieval_success": 0.0, + "final_disturbance_cost": 0.52, + "reocclusion_rate": 0.02, + "candidate_layer_separation_quality": 0.92, + "candidate_fold_preservation": 0.06, + "candidate_top_layer_stability": 0.18, + "candidate_lift_too_much_risk": 0.42, + } + + assert cloth_env.candidate_outcome_utility(gentle_reveal) > cloth_env.candidate_outcome_utility(destructive_reveal) diff --git a/VLAarchtests/tests/test_proxy_stress_profile_metadata_roundtrip.py b/VLAarchtests/tests/test_proxy_stress_profile_metadata_roundtrip.py new file mode 100644 index 0000000000000000000000000000000000000000..23d6c4d8e55129d378dd78a261b7f3de7e2ab5d3 --- /dev/null +++ b/VLAarchtests/tests/test_proxy_stress_profile_metadata_roundtrip.py @@ -0,0 +1,44 @@ +from sim_reveal.dataset import collect_teacher_dataset, dataset_from_bundle, load_teacher_dataset, save_teacher_dataset +from sim_reveal.proxy_specs import sprint_benchmark_episode_specs +from eval.run_reveal_benchmark import evaluate_model +import torch + + +def test_proxy_stress_profile_metadata_roundtrip(tmp_path): + specs = [] + seen = set() + for spec in sprint_benchmark_episode_specs(): + key = (spec["task_name"], spec["stress_slice"], spec["difficulty_bin"]) + if key in seen: + continue + specs.append(spec) + seen.add(key) + if len(specs) >= 6: + break + + bundle = collect_teacher_dataset( + resolution=16, + history_steps=2, + planner_candidates=3, + episode_specs=specs, + ) + path = tmp_path / "stress_roundtrip.pt" + save_teacher_dataset(path, bundle) + loaded = load_teacher_dataset(path) + dataset = dataset_from_bundle(loaded, resolution=16) + + item = dataset[0] + assert item["task_name"] in {"foliage", "bag", "cloth"} + assert item["stress_slice"] in {spec["stress_slice"] for spec in specs} + assert item["difficulty_bin"] in {"medium", "hard"} + + _, episode_records = evaluate_model( + model=None, + device=torch.device("cpu"), + proxies=sorted({spec["proxy_name"] for spec in specs}), + episodes=None, + resolution=16, + episode_specs=specs, + controller="scripted", + ) + assert {record["stress_slice"] for record in episode_records}.issuperset({spec["stress_slice"] for spec in specs[:3]}) diff --git a/VLAarchtests/tests/test_reocclusion_memory_regression.py b/VLAarchtests/tests/test_reocclusion_memory_regression.py new file mode 100644 index 0000000000000000000000000000000000000000..0a29a1b4ed513a7b15eb536a789ea03abedf5809 --- /dev/null +++ b/VLAarchtests/tests/test_reocclusion_memory_regression.py @@ -0,0 +1,27 @@ +import torch + +from models.observation_memory import DualObservationMemory + + +def test_reocclusion_memory_regression(tiny_policy_config): + config = tiny_policy_config(hidden_dim=16) + config.memory.scene_bank_size = 4 + config.memory.belief_bank_size = 4 + memory = DualObservationMemory(config.memory) + open_scene = torch.zeros(1, 12, config.backbone.hidden_dim) + open_scene[:, :3] = 1.0 + closed_scene = torch.zeros_like(open_scene) + history = torch.stack([open_scene[0], open_scene[0]], dim=0).unsqueeze(0) + history_actions = torch.zeros(1, 2, 14) + + closed_output = memory(closed_scene, history_scene_tokens=history, history_actions=history_actions) + closed_no_history = memory( + closed_scene, + history_scene_tokens=torch.zeros_like(history), + history_actions=history_actions, + ) + belief_norm = closed_output["belief_memory_tokens"].norm() + belief_delta = (closed_output["belief_memory_tokens"] - closed_no_history["belief_memory_tokens"]).norm() + + assert belief_norm > 0.0 + assert belief_delta > 1e-3 diff --git a/VLAarchtests/tests/test_retrieve_gating_blocks_premature_retrieve.py b/VLAarchtests/tests/test_retrieve_gating_blocks_premature_retrieve.py new file mode 100644 index 0000000000000000000000000000000000000000..9bba7c672470458477e26958ccea8e7445f0a7cb --- /dev/null +++ b/VLAarchtests/tests/test_retrieve_gating_blocks_premature_retrieve.py @@ -0,0 +1,39 @@ +import torch + +from models.planner import CascadePlanner + + +def test_retrieve_gating_blocks_premature_retrieve(tiny_policy_config, tiny_state): + config = tiny_policy_config() + planner = CascadePlanner(config.planner) + initial_state = {key: value[:1] for key, value in tiny_state(field_size=config.reveal_head.field_size).items()} + rollout_horizon = config.world_model.rollout_horizon + field_size = config.reveal_head.field_size + unsafe = torch.full((1, rollout_horizon, 1, field_size, field_size), 0.05) + safe = torch.full((1, rollout_horizon, 1, field_size, field_size), 0.85) + unsafe_access = torch.full((1, rollout_horizon, 3, field_size, field_size), -6.0) + safe_access = torch.full((1, rollout_horizon, 3, field_size, field_size), 6.0) + rollout_state = { + "target_belief_field": torch.stack([safe, safe], dim=1), + "visibility_field": torch.stack([safe, safe], dim=1), + "clearance_field": torch.stack([safe.expand(-1, -1, 2, -1, -1), safe.expand(-1, -1, 2, -1, -1)], dim=1), + "occluder_contact_field": torch.stack([safe, safe], dim=1), + "grasp_affordance_field": torch.stack([safe, safe], dim=1), + "support_stability_field": torch.stack([unsafe, safe], dim=1), + "persistence_field": torch.stack([unsafe, safe], dim=1), + "reocclusion_field": torch.stack([safe, unsafe], dim=1), + "disturbance_field": torch.stack([safe, unsafe], dim=1), + "access_field": torch.stack([unsafe_access, safe_access], dim=1), + } + candidate_chunks = torch.zeros(1, 2, config.decoder.chunk_size, config.decoder.action_dim) + candidate_chunks[:, 0, :, -1] = 1.0 + proposal_mode_names = [["retrieve", "maintain_gap"]] + + selected = planner.select_best( + initial_state=initial_state, + candidate_chunks=candidate_chunks, + rollout_state=rollout_state, + proposal_mode_names=proposal_mode_names, + ) + + assert int(selected["best_indices"].item()) == 1 diff --git a/VLAarchtests/tests/test_rgb_backward_compat.py b/VLAarchtests/tests/test_rgb_backward_compat.py new file mode 100644 index 0000000000000000000000000000000000000000..3189e36308907f9bc4b9135e33c69c57358bbae6 --- /dev/null +++ b/VLAarchtests/tests/test_rgb_backward_compat.py @@ -0,0 +1,33 @@ +from train.trainer import build_policy + + +def test_rgb_backward_compat(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + + interaction_policy = build_policy(config, tiny_trainer_config(policy_type="interaction_state")) + interaction_output = interaction_policy( + images=batch["images"], + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=True, + ) + assert interaction_output["action_mean"].shape[-1] == 14 + assert interaction_output["candidate_chunks"].shape[1] == config.decoder.num_candidates + + elastic_policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + elastic_output = elastic_policy( + images=batch["images"], + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=True, + use_depth=False, + ) + assert elastic_output["action_mean"].shape[-1] == 14 + assert elastic_output["planned_chunk"].shape == elastic_output["action_mean"].shape diff --git a/VLAarchtests/tests/test_rgbd_forward_contract.py b/VLAarchtests/tests/test_rgbd_forward_contract.py new file mode 100644 index 0000000000000000000000000000000000000000..b486614c60310f6dfef2f1a4788a82b96b30f51c --- /dev/null +++ b/VLAarchtests/tests/test_rgbd_forward_contract.py @@ -0,0 +1,34 @@ +from train.trainer import build_policy + + +def test_rgbd_forward_contract(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + output = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=True, + compute_equivariance_probe=True, + ) + assert output["action_mean"].shape[0] == batch["images"].shape[0] + assert output["depth_tokens"] is not None + assert output["geometry_tokens"] is not None + assert output["camera_tokens"] is not None + assert output["proposal_candidates"].shape[1] == config.decoder.num_candidates + assert output["planner_topk_indices"].shape[1] == config.planner.top_k + assert output["planned_rollout"]["target_belief_field"].shape[1] == config.planner.top_k + assert "opening_quality" in output["interaction_state"] + assert "gap_width" in output["interaction_state"] + assert "hold_quality" in output["interaction_state"] + assert output["equivariance_probe_action_mean"].shape == output["equivariance_target_action_mean"].shape diff --git a/VLAarchtests/tests/test_rlbench_dataset_rgbd_geometry.py b/VLAarchtests/tests/test_rlbench_dataset_rgbd_geometry.py new file mode 100644 index 0000000000000000000000000000000000000000..5f466bea7e064a4b70d507a4abf96f6eb08617f9 --- /dev/null +++ b/VLAarchtests/tests/test_rlbench_dataset_rgbd_geometry.py @@ -0,0 +1,111 @@ +from __future__ import annotations + +import pickle +from pathlib import Path +from types import SimpleNamespace + +import numpy as np +from PIL import Image + +from sim_rlbench.dataset import RLBENCH_DEPTH_SCALE, RLBenchOfflineChunkDataset + + +def _arm(pose_xyz: tuple[float, float, float], gripper_open: float) -> SimpleNamespace: + return SimpleNamespace( + gripper_pose=np.asarray([*pose_xyz, 0.0, 0.0, 0.0, 1.0], dtype=np.float32), + joint_positions=np.linspace(0.0, 0.6, 7, dtype=np.float32), + gripper_open=float(gripper_open), + ) + + +def _encode_depth_png(normalized_depth: np.ndarray) -> Image.Image: + scaled = np.clip(np.round(normalized_depth * RLBENCH_DEPTH_SCALE), 0, RLBENCH_DEPTH_SCALE).astype(np.uint32) + rgb = np.zeros((*scaled.shape, 3), dtype=np.uint8) + rgb[..., 0] = ((scaled >> 16) & 255).astype(np.uint8) + rgb[..., 1] = ((scaled >> 8) & 255).astype(np.uint8) + rgb[..., 2] = (scaled & 255).astype(np.uint8) + return Image.fromarray(rgb, mode="RGB") + + +def _obs(step: int) -> SimpleNamespace: + offset = 0.01 * float(step) + base_intrinsics = np.array( + [ + [40.0, 0.0, 4.0], + [0.0, 40.0, 4.0], + [0.0, 0.0, 1.0], + ], + dtype=np.float32, + ) + return SimpleNamespace( + right=_arm((0.10 + offset, 0.20, 0.30), 1.0), + left=_arm((-0.10 - offset, 0.15, 0.25), 0.0), + misc={ + "front_camera_intrinsics": base_intrinsics, + "wrist_left_camera_intrinsics": base_intrinsics, + "wrist_right_camera_intrinsics": base_intrinsics, + "front_camera_extrinsics": np.eye(4, dtype=np.float32), + "wrist_left_camera_extrinsics": np.eye(4, dtype=np.float32), + "wrist_right_camera_extrinsics": np.eye(4, dtype=np.float32), + "front_camera_near": 0.2, + "wrist_left_camera_near": 0.2, + "wrist_right_camera_near": 0.2, + "front_camera_far": 1.2, + "wrist_left_camera_far": 1.2, + "wrist_right_camera_far": 1.2, + }, + ) + + +def _write_rgb_frame(directory: Path, step: int, value: int) -> None: + directory.mkdir(parents=True, exist_ok=True) + image = np.full((8, 8, 3), fill_value=value, dtype=np.uint8) + Image.fromarray(image).save(directory / f"rgb_{step:04d}.png") + + +def _write_depth_frame(directory: Path, step: int, depth_value: float) -> None: + directory.mkdir(parents=True, exist_ok=True) + normalized = np.full((8, 8), fill_value=depth_value, dtype=np.float32) + _encode_depth_png(normalized).save(directory / f"depth_{step:04d}.png") + + +def test_rlbench_dataset_emits_rgbd_geometry(tmp_path: Path) -> None: + task_name = "bimanual_push_box" + episode_dir = tmp_path / task_name / "all_variations" / "episodes" / "episode0" + episode_dir.mkdir(parents=True, exist_ok=True) + + with (episode_dir / "variation_descriptions.pkl").open("wb") as handle: + pickle.dump(["push the box together"], handle) + with (episode_dir / "low_dim_obs.pkl").open("wb") as handle: + pickle.dump([_obs(0), _obs(1)], handle) + + for camera_name, pixel_value in (("front", 32), ("wrist_left", 96), ("wrist_right", 160)): + camera_dir = episode_dir / f"{camera_name}_rgb" + _write_rgb_frame(camera_dir, 0, pixel_value) + _write_rgb_frame(camera_dir, 1, pixel_value + 1) + depth_dir = episode_dir / f"{camera_name}_depth" + _write_depth_frame(depth_dir, 0, 0.5) + _write_depth_frame(depth_dir, 1, 0.6) + + dataset = RLBenchOfflineChunkDataset( + dataset_root=tmp_path, + tasks=[task_name], + episode_indices=[0], + resolution=4, + chunk_size=2, + history_steps=1, + ) + item = dataset[0] + + assert tuple(item["depths"].shape) == (3, 1, 4, 4) + assert tuple(item["depth_valid"].shape) == (3, 1, 4, 4) + assert tuple(item["camera_intrinsics"].shape) == (3, 3, 3) + assert tuple(item["camera_extrinsics"].shape) == (3, 4, 4) + assert tuple(item["history_depths"].shape) == (1, 3, 1, 4, 4) + assert tuple(item["history_camera_intrinsics"].shape) == (1, 3, 3, 3) + assert tuple(item["history_camera_extrinsics"].shape) == (1, 3, 4, 4) + assert item["camera_valid_mask"].tolist() == [1.0, 1.0, 1.0] + assert item["history_camera_valid_mask"].tolist() == [[1.0, 1.0, 1.0]] + assert float(item["depths"][0].mean()) > 0.6 + assert np.isclose(float(item["camera_intrinsics"][0, 0, 0]), 20.0) + assert np.isclose(float(item["camera_intrinsics"][0, 1, 1]), 20.0) diff --git a/VLAarchtests/tests/test_rlbench_dataset_task_metadata.py b/VLAarchtests/tests/test_rlbench_dataset_task_metadata.py new file mode 100644 index 0000000000000000000000000000000000000000..b1793fee0fb0202f9806c123cbc0baa20c948289 --- /dev/null +++ b/VLAarchtests/tests/test_rlbench_dataset_task_metadata.py @@ -0,0 +1,79 @@ +from __future__ import annotations + +import pickle +from pathlib import Path +from types import SimpleNamespace + +import numpy as np +from PIL import Image +import torch +from torch.utils.data import DataLoader + +from sim_rlbench.dataset import RLBenchOfflineChunkDataset, sample_weight_from_action_norms + + +def _arm(pose_xyz: tuple[float, float, float], gripper_open: float) -> SimpleNamespace: + return SimpleNamespace( + gripper_pose=np.asarray([*pose_xyz, 0.0, 0.0, 0.0, 1.0], dtype=np.float32), + joint_positions=np.linspace(0.0, 0.6, 7, dtype=np.float32), + gripper_open=float(gripper_open), + ) + + +def _obs(step: int) -> SimpleNamespace: + offset = 0.01 * float(step) + return SimpleNamespace( + right=_arm((0.10 + offset, 0.20, 0.30), 1.0), + left=_arm((-0.10 - offset, 0.15, 0.25), 0.0), + ) + + +def _write_rgb_frame(directory: Path, step: int, value: int) -> None: + directory.mkdir(parents=True, exist_ok=True) + image = np.full((8, 8, 3), fill_value=value, dtype=np.uint8) + Image.fromarray(image).save(directory / f"rgb_{step:04d}.png") + + +def test_rlbench_dataset_emits_task_metadata(tmp_path: Path) -> None: + task_name = "bimanual_push_box" + episode_dir = tmp_path / task_name / "all_variations" / "episodes" / "episode0" + episode_dir.mkdir(parents=True, exist_ok=True) + + with (episode_dir / "variation_descriptions.pkl").open("wb") as handle: + pickle.dump(["push the box together"], handle) + with (episode_dir / "low_dim_obs.pkl").open("wb") as handle: + pickle.dump([_obs(0), _obs(1)], handle) + + for camera_name, pixel_value in (("front", 32), ("wrist_left", 96), ("wrist_right", 160)): + camera_dir = episode_dir / f"{camera_name}_rgb" + _write_rgb_frame(camera_dir, 0, pixel_value) + _write_rgb_frame(camera_dir, 1, pixel_value + 1) + + dataset = RLBenchOfflineChunkDataset( + dataset_root=tmp_path, + tasks=[task_name], + episode_indices=[0], + resolution=8, + chunk_size=2, + history_steps=1, + ) + + item = dataset[0] + assert item["task"] == task_name + assert item["task_name"] == task_name + assert int(item["task_id"]) == -1 + assert item["texts"] == "push the box together" + + batch = next(iter(DataLoader(dataset, batch_size=1, shuffle=False))) + assert batch["task_name"] == [task_name] + assert batch["task_id"].tolist() == [-1] + + +def test_sample_weight_from_action_norms_biases_large_actions() -> None: + weights = sample_weight_from_action_norms( + torch.tensor([0.01, 0.05, 0.20], dtype=torch.float32), + min_norm=0.05, + power=2.0, + ) + + assert np.allclose(weights.numpy(), np.asarray([1.0, 1.0, 16.0], dtype=np.float32)) diff --git a/VLAarchtests/tests/test_rlbench_init_checkpoint.py b/VLAarchtests/tests/test_rlbench_init_checkpoint.py new file mode 100644 index 0000000000000000000000000000000000000000..488b18fb5b3c9abb71796a56fb0f3f344fea9b63 --- /dev/null +++ b/VLAarchtests/tests/test_rlbench_init_checkpoint.py @@ -0,0 +1,36 @@ +from __future__ import annotations + +from pathlib import Path + +import torch + +from train.run_rlbench_experiment import _load_init_checkpoint + + +class _TinyModule(torch.nn.Module): + def __init__(self) -> None: + super().__init__() + self.weight = torch.nn.Parameter(torch.zeros(2, 2)) + self.bias = torch.nn.Parameter(torch.zeros(2)) + + +def test_load_init_checkpoint_skips_shape_mismatch_when_not_strict(tmp_path: Path) -> None: + model = _TinyModule() + checkpoint_path = tmp_path / "checkpoint.pt" + torch.save( + { + "state_dict": { + "weight": torch.ones(3, 3), + "bias": torch.full((2,), 5.0), + } + }, + checkpoint_path, + ) + + info = _load_init_checkpoint(model, str(checkpoint_path), strict=False) + + assert info is not None + assert info["loaded_keys"] == 1 + assert info["skipped_shape_mismatch_keys"] == ["weight"] + assert torch.allclose(model.bias, torch.full((2,), 5.0)) + assert torch.allclose(model.weight, torch.zeros(2, 2)) diff --git a/VLAarchtests/tests/test_rlbench_knn_eval_scene_kwargs.py b/VLAarchtests/tests/test_rlbench_knn_eval_scene_kwargs.py new file mode 100644 index 0000000000000000000000000000000000000000..ea5007832639fd7810b0ce2d3c318b4c7d952e70 --- /dev/null +++ b/VLAarchtests/tests/test_rlbench_knn_eval_scene_kwargs.py @@ -0,0 +1,67 @@ +from __future__ import annotations + +import torch + +from eval.knn_bank_utils import filter_bank_by_action_norm +from eval.scene_encode_utils import scene_encode_kwargs + + +def test_scene_encode_kwargs_omits_rgbd_for_clip_policy() -> None: + batch = { + "depths": torch.ones(1, 3, 1, 8, 8), + "depth_valid": torch.ones(1, 3, 1, 8, 8), + "camera_intrinsics": torch.ones(1, 3, 3, 3), + "camera_extrinsics": torch.ones(1, 3, 4, 4), + } + + kwargs = scene_encode_kwargs(batch, device=torch.device("cpu"), model_uses_rgbd=False) + + assert kwargs == {} + + +def test_scene_encode_kwargs_includes_rgbd_for_rgbd_policy() -> None: + batch = { + "depths": torch.ones(1, 3, 1, 8, 8), + "depth_valid": torch.ones(1, 3, 1, 8, 8), + "camera_intrinsics": torch.ones(1, 3, 3, 3), + "camera_extrinsics": torch.ones(1, 3, 4, 4), + } + + kwargs = scene_encode_kwargs(batch, device=torch.device("cpu"), model_uses_rgbd=True) + + assert set(kwargs) == {"depths", "depth_valid", "camera_intrinsics", "camera_extrinsics"} + assert kwargs["depths"].shape == (1, 3, 1, 8, 8) + assert kwargs["camera_extrinsics"].shape == (1, 3, 4, 4) + + +def test_filter_bank_by_action_norm_filters_small_motion_actions() -> None: + bank = { + "features": torch.arange(9, dtype=torch.float32).view(3, 3), + "actions": torch.tensor( + [ + [0.0] * 14, + [0.04, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.04, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], + [0.2, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], + ], + dtype=torch.float32, + ), + "steps": torch.tensor([0, 1, 2], dtype=torch.int64), + } + + filtered = filter_bank_by_action_norm(bank, min_action_norm=0.1) + + assert filtered["features"].shape[0] == 1 + assert filtered["steps"].tolist() == [2] + + +def test_filter_bank_by_action_norm_preserves_bank_when_threshold_removes_everything() -> None: + bank = { + "features": torch.arange(6, dtype=torch.float32).view(2, 3), + "actions": torch.zeros(2, 14, dtype=torch.float32), + "steps": torch.tensor([0, 1], dtype=torch.int64), + } + + filtered = filter_bank_by_action_norm(bank, min_action_norm=1.0) + + assert filtered["features"].shape[0] == 2 + assert filtered["steps"].tolist() == [0, 1] diff --git a/VLAarchtests/tests/test_rlbench_pickle_bootstrap.py b/VLAarchtests/tests/test_rlbench_pickle_bootstrap.py new file mode 100644 index 0000000000000000000000000000000000000000..8e7019bf4a97dfb170813e71588b8f536beace6a --- /dev/null +++ b/VLAarchtests/tests/test_rlbench_pickle_bootstrap.py @@ -0,0 +1,17 @@ +from __future__ import annotations + +import sys + +from sim_rlbench.dataset import _ensure_rlbench_pickle_modules + + +def test_rlbench_pickle_bootstrap_avoids_pyrep(monkeypatch) -> None: + for key in list(sys.modules): + if key == "pyrep" or key == "rlbench" or key.startswith("rlbench."): + monkeypatch.delitem(sys.modules, key, raising=False) + + _ensure_rlbench_pickle_modules() + + assert "rlbench.demo" in sys.modules + assert "rlbench.backend.observation" in sys.modules + assert "pyrep" not in sys.modules diff --git a/VLAarchtests/tests/test_rlbench_task_resolver_aliases.py b/VLAarchtests/tests/test_rlbench_task_resolver_aliases.py new file mode 100644 index 0000000000000000000000000000000000000000..af0cad3d04a6fd7c300c57492a7527fd63a4d3a8 --- /dev/null +++ b/VLAarchtests/tests/test_rlbench_task_resolver_aliases.py @@ -0,0 +1,48 @@ +from __future__ import annotations + +import importlib +import sys +import types + + +def test_task_resolver_maps_overlap_aliases(monkeypatch) -> None: + calls: list[tuple[str, bool]] = [] + + def fake_task_file_to_task_class(task_name: str, bimanual: bool = False): + calls.append((task_name, bimanual)) + return {"task_name": task_name, "bimanual": bimanual} + + rlbench_pkg = types.ModuleType("rlbench") + backend_pkg = types.ModuleType("rlbench.backend") + utils_pkg = types.ModuleType("rlbench.backend.utils") + utils_pkg.task_file_to_task_class = fake_task_file_to_task_class + + monkeypatch.setitem(sys.modules, "rlbench", rlbench_pkg) + monkeypatch.setitem(sys.modules, "rlbench.backend", backend_pkg) + monkeypatch.setitem(sys.modules, "rlbench.backend.utils", utils_pkg) + sys.modules.pop("sim_rlbench.task_resolver", None) + + resolver = importlib.import_module("sim_rlbench.task_resolver") + + assert resolver.resolve_task_class("bimanual_push_box") == { + "task_name": "coordinated_push_box", + "bimanual": True, + } + assert resolver.resolve_task_class("bimanual_lift_ball") == { + "task_name": "coordinated_lift_ball", + "bimanual": True, + } + assert resolver.resolve_task_class("bimanual_dual_push_buttons") == { + "task_name": "dual_push_buttons", + "bimanual": True, + } + assert resolver.resolve_task_class("open_drawer") == { + "task_name": "right_open_drawer", + "bimanual": True, + } + assert calls == [ + ("coordinated_push_box", True), + ("coordinated_lift_ball", True), + ("dual_push_buttons", True), + ("right_open_drawer", True), + ] diff --git a/VLAarchtests/tests/test_role_loss_permutation.py b/VLAarchtests/tests/test_role_loss_permutation.py new file mode 100644 index 0000000000000000000000000000000000000000..c277109edbbaa911d44058584c1eb18463eb9d24 --- /dev/null +++ b/VLAarchtests/tests/test_role_loss_permutation.py @@ -0,0 +1,16 @@ +import torch + +from train.losses import permutation_invariant_role_loss + + +def test_role_loss_permutation(): + logits = torch.tensor( + [ + [[0.1, 4.0, 0.0, -1.0], [0.1, 0.0, 4.0, -1.0]], + [[0.1, 0.0, 4.0, -1.0], [0.1, 4.0, 0.0, -1.0]], + ], + dtype=torch.float32, + ) + loss_original = permutation_invariant_role_loss(logits) + loss_swapped = permutation_invariant_role_loss(logits.flip(1)) + torch.testing.assert_close(loss_original, loss_swapped) diff --git a/VLAarchtests/tests/test_rvt_backbone_forward.py b/VLAarchtests/tests/test_rvt_backbone_forward.py new file mode 100644 index 0000000000000000000000000000000000000000..b4ddf2e82c7ecab3adb098af36c9803484dba511 --- /dev/null +++ b/VLAarchtests/tests/test_rvt_backbone_forward.py @@ -0,0 +1,141 @@ +from __future__ import annotations + +import torch + +from models.action_decoder import ChunkDecoderConfig +from models.backbones import FrozenVLBackbone, FrozenVLBackboneConfig +from models.rvt_backbone import RVTVisualEncoder +from models.multiview_fusion import MultiViewFusionConfig +from models.observation_memory import ObservationMemoryConfig +from models.planner import PlannerConfig +from models.policy import PolicyConfig +from models.reveal_head import RevealHeadConfig +from models.world_model import RevealWMConfig +from train.trainer import TrainerConfig, build_policy + + +def _camera_batch() -> tuple[torch.Tensor, torch.Tensor]: + intrinsics = torch.eye(3).view(1, 1, 3, 3).expand(1, 3, 3, 3).clone() + intrinsics[:, :, 0, 0] = 30.0 + intrinsics[:, :, 1, 1] = 30.0 + intrinsics[:, :, 0, 2] = 16.0 + intrinsics[:, :, 1, 2] = 16.0 + extrinsics = torch.eye(4).view(1, 1, 4, 4).expand(1, 3, 4, 4).clone() + extrinsics[:, 1, 0, 3] = -0.1 + extrinsics[:, 2, 0, 3] = 0.1 + return intrinsics, extrinsics + + +def test_rvt_backbone_emits_five_view_tokens() -> None: + backbone = FrozenVLBackbone( + FrozenVLBackboneConfig( + backbone_type="rvt", + hidden_dim=512, + max_text_tokens=77, + freeze_backbone=True, + gradient_checkpointing=False, + rvt_point_stride=4, + rvt_max_points_per_view=128, + ) + ) + texts = ["move the box together"] + language_tokens = backbone.tokenize_text(texts, device=torch.device("cpu")) + text_features = backbone.encode_text(language_tokens["input_ids"], language_tokens["attention_mask"]) + intrinsics, extrinsics = _camera_batch() + tokens = backbone.encode_images( + images=torch.rand(1, 3, 3, 32, 32), + proprio=torch.rand(1, 32), + language_tokens=text_features, + depths=torch.rand(1, 3, 1, 32, 32) * 0.3 + 0.2, + camera_intrinsics=intrinsics, + camera_extrinsics=extrinsics, + ) + + assert tuple(tokens.shape) == (1, 5, 400, 512) + + +def test_rvt_backbone_uses_fixed_scene_bounds_for_normalization() -> None: + encoder = RVTVisualEncoder( + checkpoint_path="/workspace/models/rvt_official/rvt/model_14.pth", + mvt_cfg_path="/workspace/models/rvt_official/rvt/mvt_cfg.yaml", + output_dim=512, + input_proprio_dim=32, + renderer_device="cpu", + point_stride=4, + max_points_per_view=128, + ) + points = torch.tensor( + [ + [-0.3, -0.5, 0.6], + [0.7, 0.5, 1.6], + [0.2, 0.0, 1.1], + ], + dtype=torch.float32, + ) + normalized = encoder._normalize_world_points(points) + + assert torch.allclose(normalized[0], torch.tensor([-1.0, -1.0, -1.0])) + assert torch.allclose(normalized[1], torch.tensor([1.0, 1.0, 1.0])) + assert torch.allclose(normalized[2], torch.tensor([0.0, 0.0, 0.0]), atol=1e-6) + + +def test_backbone_only_policy_accepts_rvt_backbone() -> None: + intrinsics, extrinsics = _camera_batch() + policy = build_policy( + PolicyConfig( + backbone=FrozenVLBackboneConfig( + backbone_type="rvt", + hidden_dim=512, + max_text_tokens=77, + freeze_backbone=True, + gradient_checkpointing=False, + rvt_point_stride=4, + rvt_max_points_per_view=128, + ), + fusion=MultiViewFusionConfig( + hidden_dim=512, + num_cameras=5, + num_layers=1, + num_heads=8, + ff_dim=1024, + dropout=0.0, + proprio_dim=32, + ), + memory=ObservationMemoryConfig( + hidden_dim=512, + history_steps=1, + num_layers=1, + dropout=0.0, + ), + decoder=ChunkDecoderConfig( + hidden_dim=512, + num_heads=8, + num_layers=1, + ff_dim=1024, + dropout=0.0, + chunk_size=2, + action_dim=14, + num_candidates=2, + ), + reveal_head=RevealHeadConfig(hidden_dim=512), + world_model=RevealWMConfig(hidden_dim=512), + planner=PlannerConfig(hidden_dim=512, num_candidates=2), + ), + TrainerConfig( + policy_type="backbone_only", + use_bf16=False, + freeze_backbone=True, + gradient_checkpointing=False, + ), + ) + outputs = policy( + images=torch.rand(1, 3, 3, 32, 32), + depths=torch.rand(1, 3, 1, 32, 32) * 0.3 + 0.2, + camera_intrinsics=intrinsics, + camera_extrinsics=extrinsics, + proprio=torch.rand(1, 32), + texts=["move the box together"], + ) + + assert tuple(outputs["scene_tokens"].shape) == (1, 2007, 512) + assert tuple(outputs["action_mean"].shape) == (1, 2, 14) diff --git a/VLAarchtests/tests/test_spatial_memory_occlusion_persistence.py b/VLAarchtests/tests/test_spatial_memory_occlusion_persistence.py new file mode 100644 index 0000000000000000000000000000000000000000..0371d9f6a4d1cdaa3efffc52438036adca95e593 --- /dev/null +++ b/VLAarchtests/tests/test_spatial_memory_occlusion_persistence.py @@ -0,0 +1,35 @@ +import torch + +from models.observation_memory import DualObservationMemory + + +def _slot_scene(hidden_dim: int, slot_idx: int, slot_size: int = 3) -> torch.Tensor: + scene = torch.zeros(1, slot_size * 4, hidden_dim) + start = slot_idx * slot_size + scene[:, start : start + slot_size] = 1.0 + return scene + + +def test_spatial_memory_occlusion_persistence(tiny_policy_config): + config = tiny_policy_config(hidden_dim=16) + config.memory.scene_bank_size = 4 + config.memory.belief_bank_size = 4 + memory = DualObservationMemory(config.memory) + visible = _slot_scene(config.backbone.hidden_dim, 0) + occluded = torch.zeros_like(visible) + history = torch.stack([visible[0], occluded[0]], dim=0).unsqueeze(0) + history_actions = torch.zeros(1, 2, 14) + + during_occlusion = memory(occluded, history_scene_tokens=history, history_actions=history_actions) + no_history = memory( + occluded, + history_scene_tokens=torch.zeros_like(history), + history_actions=history_actions, + ) + on_reappearance = memory(visible, history_scene_tokens=history, history_actions=history_actions) + + occluded_delta = (during_occlusion["belief_memory_tokens"] - no_history["belief_memory_tokens"]).norm() + reappeared_delta = (on_reappearance["belief_memory_tokens"] - during_occlusion["belief_memory_tokens"]).norm() + + assert occluded_delta > 1e-3 + assert reappeared_delta > 1e-3 diff --git a/VLAarchtests/tests/test_summarize_rvt_overlap_branch.py b/VLAarchtests/tests/test_summarize_rvt_overlap_branch.py new file mode 100644 index 0000000000000000000000000000000000000000..77a4ffcf0b30c06b084b28bc9cafddd1f476ab6d --- /dev/null +++ b/VLAarchtests/tests/test_summarize_rvt_overlap_branch.py @@ -0,0 +1,54 @@ +from __future__ import annotations + +from eval.summarize_rvt_overlap_branch import _branch_summary + + +def test_branch_summary_reports_floor_and_gate(tmp_path) -> None: + stage1 = tmp_path / "stage1.json" + anyb = tmp_path / "anyb.json" + stage1.write_text( + """ +{ + "checkpoint": "/tmp/stage1.pt", + "mean_success": 0.2, + "tasks": { + "bimanual_push_box": {"mean_success": 0.1, "mean_return": 0.1}, + "bimanual_lift_ball": {"mean_success": 0.2, "mean_return": 0.2}, + "bimanual_dual_push_buttons": {"mean_success": 0.3, "mean_return": 0.3} + } +} +""".strip(), + encoding="utf-8", + ) + anyb.write_text( + """ +{ + "local_last_complete_step": { + "step": 1000, + "mean_success": 0.16, + "per_task_success": { + "coordinated_push_box": 0.0, + "coordinated_lift_ball": 0.0, + "dual_push_buttons": 0.48 + } + }, + "public_best_overlap_step": { + "step": 60000, + "mean_success": 0.6933333333333334, + "per_task_success": { + "coordinated_push_box": 0.8, + "coordinated_lift_ball": 0.32, + "dual_push_buttons": 0.96 + } + } +} +""".strip(), + encoding="utf-8", + ) + + summary = _branch_summary(stage1, anyb, None) + + assert summary["stage1_frozen"]["mean_success"] == 0.2 + assert summary["stage2_unfreeze_top2"] is None + assert summary["gates"]["stage1_clears_local_floor"] is True + assert summary["gates"]["stage2_clears_local_floor"] is False diff --git a/VLAarchtests/tests/test_task_conditioned_head_shapes.py b/VLAarchtests/tests/test_task_conditioned_head_shapes.py new file mode 100644 index 0000000000000000000000000000000000000000..d369faafbfc0ed715812303e758c96690dd90142 --- /dev/null +++ b/VLAarchtests/tests/test_task_conditioned_head_shapes.py @@ -0,0 +1,31 @@ +import torch + +from models.reveal_head import ElasticOcclusionStateHead + + +def test_task_conditioned_head_shapes(tiny_policy_config): + config = tiny_policy_config() + head = ElasticOcclusionStateHead(config.reveal_head) + scene_tokens = torch.rand(3, 12, config.backbone.hidden_dim) + memory_tokens = torch.rand( + 3, + config.memory.scene_bank_size + config.memory.belief_bank_size, + config.backbone.hidden_dim, + ) + output = head( + scene_tokens, + memory_tokens=memory_tokens, + task_names=["foliage", "bag", "cloth"], + ) + for key in ( + "opening_quality", + "actor_feasibility_score", + "gap_width", + "hold_quality", + "fold_preservation", + "lift_too_much_risk", + ): + assert key in output + assert output[key].shape == (3,) + assert output["opening_quality_field"].shape[1] == 1 + assert output["newly_revealed_field"].shape[1] == 1 diff --git a/VLAarchtests/tests/test_task_metric_monotonicity.py b/VLAarchtests/tests/test_task_metric_monotonicity.py new file mode 100644 index 0000000000000000000000000000000000000000..b0d44a21bffe74cc8ae6951364aeffe0ce067ce7 --- /dev/null +++ b/VLAarchtests/tests/test_task_metric_monotonicity.py @@ -0,0 +1,34 @@ +import torch + +from models.reveal_head import compute_task_metrics_from_fields + + +def _metrics(access_level: float, disturbance_level: float) -> dict[str, torch.Tensor]: + access_field = torch.full((1, 3, 4, 4), access_level) + persistence_field = torch.full((1, 1, 4, 4), 0.6) + disturbance_field = torch.full((1, 1, 4, 4), disturbance_level) + reocclusion_field = torch.full((1, 1, 4, 4), 0.1) + visibility_field = torch.full((1, 1, 4, 4), 0.6) + clearance_field = torch.full((1, 2, 4, 4), access_level) + support_stability_field = torch.full((1, 1, 4, 4), 0.7) + uncertainty_field = torch.full((1, 1, 4, 4), 0.2) + return compute_task_metrics_from_fields( + access_field=access_field, + persistence_field=persistence_field, + disturbance_field=disturbance_field, + reocclusion_field=reocclusion_field, + visibility_field=visibility_field, + clearance_field=clearance_field, + support_stability_field=support_stability_field, + uncertainty_field=uncertainty_field, + ) + + +def test_task_metric_monotonicity(): + low_open = _metrics(access_level=0.1, disturbance_level=0.2) + high_open = _metrics(access_level=0.9, disturbance_level=0.2) + over_lift = _metrics(access_level=0.9, disturbance_level=0.8) + + assert high_open["mouth_aperture"] > low_open["mouth_aperture"] + assert high_open["actor_feasibility_score"] > low_open["actor_feasibility_score"] + assert over_lift["fold_preservation"] < high_open["fold_preservation"] diff --git a/VLAarchtests/tests/test_task_routed_model_eval.py b/VLAarchtests/tests/test_task_routed_model_eval.py new file mode 100644 index 0000000000000000000000000000000000000000..c59f33be75393919540710e1dafc261a690ab274 --- /dev/null +++ b/VLAarchtests/tests/test_task_routed_model_eval.py @@ -0,0 +1,118 @@ +from __future__ import annotations + +from pathlib import Path + +import pytest +import torch + +import eval.run_reveal_benchmark as benchmark + + +def _record(spec: dict[str, object], success: float) -> dict[str, object]: + return { + "proxy_name": str(spec["proxy_name"]), + "task_name": str(spec["task_name"]), + "task_id": int(spec["task_id"]), + "stress_slice": str(spec.get("stress_slice", "nominal")), + "difficulty_bin": str(spec.get("difficulty_bin", "medium")), + "seed": int(spec["seed"]), + "episode_index": int(spec.get("episode_index", 0)), + "controller": "model", + "resolved_task_name": str(spec["task_name"]), + "success": float(success), + "visibility_integral": 1.0, + "corridor_availability": 1.0, + "reocclusion_rate": 0.0, + "disturbance_cost": 0.1, + "premature_retrieve_rate": 0.0, + "reocclusion_after_reveal": 0.0, + "planner_regret": 0.0, + "step_trace": [], + "chosen_candidate_families": [], + "episode_metadata": {}, + } + + +def test_parse_task_routed_models_rejects_duplicates() -> None: + with pytest.raises(ValueError, match="Duplicate routed model key"): + benchmark._parse_task_routed_models(["bag=/tmp/a.pt", "bag=/tmp/b.pt"]) + + +def test_resolve_task_routed_key_precedence() -> None: + routes = { + "bag": "/tmp/task.pt", + "bag_proxy": "/tmp/proxy.pt", + "3": "/tmp/id.pt", + "default": "/tmp/default.pt", + } + assert benchmark._resolve_task_routed_key({"task_name": "bag", "proxy_name": "bag_proxy", "task_id": 3}, routes) == "bag" + assert benchmark._resolve_task_routed_key({"task_name": "other", "proxy_name": "bag_proxy", "task_id": 3}, routes) == "bag_proxy" + assert benchmark._resolve_task_routed_key({"task_name": "other", "proxy_name": "other_proxy", "task_id": 3}, routes) == "3" + assert benchmark._resolve_task_routed_key({"task_name": "other", "proxy_name": "other_proxy", "task_id": 8}, routes) == "default" + + +def test_evaluate_task_routed_models_combines_records(monkeypatch: pytest.MonkeyPatch) -> None: + loaded_paths: list[str] = [] + eval_calls: list[tuple[int, tuple[str, ...]]] = [] + + def fake_load_model(checkpoint_path: str | Path, device: torch.device): + loaded_paths.append(str(checkpoint_path)) + checkpoint_name = Path(str(checkpoint_path)).name + if checkpoint_name == "shared.pt": + resolution = 104 + elif checkpoint_name == "iter6.pt": + resolution = 96 + else: + resolution = 112 + return object(), {"data_resolution": resolution, "_shape_mismatch_keys": []} + + def fake_evaluate_model( + model, + device, + proxies, + episodes, + resolution, + ablation=None, + chunk_commit_steps=None, + episode_specs=None, + controller="model", + controller_options=None, + ): + del model, device, proxies, episodes, ablation, chunk_commit_steps, controller, controller_options + assert episode_specs is not None + eval_calls.append((resolution, tuple(str(spec["task_name"]) for spec in episode_specs))) + records = [] + for spec in episode_specs: + success = 0.9 if str(spec["task_name"]) == "foliage" else 0.5 + records.append(_record(spec, success)) + return None, records + + monkeypatch.setattr(benchmark, "load_model", fake_load_model) + monkeypatch.setattr(benchmark, "evaluate_model", fake_evaluate_model) + + specs = [ + {"proxy_name": "foliage_proxy", "task_name": "foliage", "task_id": 0, "seed": 1}, + {"proxy_name": "bag_proxy", "task_name": "bag", "task_id": 1, "seed": 2}, + {"proxy_name": "cloth_proxy", "task_name": "cloth", "task_id": 2, "seed": 3}, + ] + metrics, records, route_details = benchmark.evaluate_task_routed_models( + routed_models={ + "foliage": "/tmp/iter6.pt", + "bag": "/tmp/shared.pt", + "cloth": "/tmp/shared.pt", + }, + device=torch.device("cpu"), + proxies=["foliage_proxy", "bag_proxy", "cloth_proxy"], + episodes=None, + resolution=None, + episode_specs=specs, + ) + + assert sorted(loaded_paths) == ["/tmp/iter6.pt", "/tmp/shared.pt"] + assert sorted(eval_calls) == [(96, ("foliage",)), (104, ("bag", "cloth"))] + assert metrics.per_task_success == {"bag": 0.5, "cloth": 0.5, "foliage": 0.9} + assert pytest.approx(metrics.mean_success, rel=1e-6) == (0.5 + 0.5 + 0.9) / 3.0 + assert sorted(record["model_route_key"] for record in records) == ["bag", "cloth", "foliage"] + assert route_details["bag"]["episodes"] == 1 + assert route_details["cloth"]["episodes"] == 1 + assert route_details["foliage"]["resolution"] == 96 diff --git a/VLAarchtests/tests/test_teacher_audit.py b/VLAarchtests/tests/test_teacher_audit.py new file mode 100644 index 0000000000000000000000000000000000000000..41989dd4d9a78c700fe12ebf975ee1aecd1fb759 --- /dev/null +++ b/VLAarchtests/tests/test_teacher_audit.py @@ -0,0 +1,25 @@ +import numpy as np + +from sim_reveal.procedural_envs import available_proxy_names, make_proxy_env + + +def _mean_utility(proxy_name: str, baseline_name: str, seeds: range) -> float: + utilities = [] + for seed in seeds: + env = make_proxy_env(proxy_name=proxy_name, resolution=32, seed=seed, rollout_horizon=4) + _, _ = env.reset(seed=seed) + chunk = env.baseline_action_chunk(baseline_name, chunk_horizon=4) + outcome = env.evaluate_action_chunk(chunk, rollout_horizon=4) + utility = float(outcome["retrieval_success"]) - float(outcome["final_disturbance_cost"]) - float(outcome["reocclusion_rate"]) + utilities.append(utility) + return float(np.mean(utilities)) + + +def test_teacher_audit(): + seeds = range(5) + for proxy_name in available_proxy_names(): + teacher_utility = _mean_utility(proxy_name, "teacher", seeds) + assert teacher_utility >= _mean_utility(proxy_name, "random", seeds) + assert teacher_utility >= _mean_utility(proxy_name, "retrieve_only", seeds) + assert teacher_utility >= _mean_utility(proxy_name, "reveal_only", seeds) + assert teacher_utility >= _mean_utility(proxy_name, "no_hold", seeds) diff --git a/VLAarchtests/tests/test_text_routing_only_used_as_fallback.py b/VLAarchtests/tests/test_text_routing_only_used_as_fallback.py new file mode 100644 index 0000000000000000000000000000000000000000..4a51e02c50f4fca19f6dea7be8e09ce9e6f5216a --- /dev/null +++ b/VLAarchtests/tests/test_text_routing_only_used_as_fallback.py @@ -0,0 +1,52 @@ +from train.trainer import build_policy + + +def test_text_routing_only_used_as_fallback(tiny_policy_config, tiny_trainer_config, tiny_batch): + config = tiny_policy_config() + batch = tiny_batch(chunk_size=config.decoder.chunk_size) + batch["texts"] = ["foliage canopy leaves snail"] * batch["images"].shape[0] + policy = build_policy(config, tiny_trainer_config(policy_type="elastic_reveal")) + policy.eval() + + fallback_output = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=False, + ) + metadata_output = policy( + images=batch["images"], + depths=batch["depths"], + depth_valid=batch["depth_valid"], + camera_intrinsics=batch["camera_intrinsics"], + camera_extrinsics=batch["camera_extrinsics"], + proprio=batch["proprio"], + texts=batch["texts"], + task_names=["bag"] * batch["images"].shape[0], + task_ids=batch["task_id"], + history_images=batch["history_images"], + history_depths=batch["history_depths"], + history_depth_valid=batch["history_depth_valid"], + history_camera_intrinsics=batch["history_camera_intrinsics"], + history_camera_extrinsics=batch["history_camera_extrinsics"], + history_camera_valid_mask=batch["history_camera_valid_mask"], + history_proprio=batch["history_proprio"], + history_actions=batch["history_actions"], + plan=False, + ) + + assert fallback_output["task_names"] == ["foliage"] * batch["images"].shape[0] + assert metadata_output["task_names"] == ["bag"] * batch["images"].shape[0] + assert fallback_output["proposal_mode_names"][0][0] != metadata_output["proposal_mode_names"][0][0] diff --git a/VLAarchtests/tests/test_world_model_field_consistency.py b/VLAarchtests/tests/test_world_model_field_consistency.py new file mode 100644 index 0000000000000000000000000000000000000000..17df50d5aa0c2bc5f3d88de9a6e920140064f281 --- /dev/null +++ b/VLAarchtests/tests/test_world_model_field_consistency.py @@ -0,0 +1,16 @@ +import torch + +from models.world_model import ElasticOcclusionWorldModel + + +def test_world_model_field_consistency(tiny_policy_config, tiny_state): + config = tiny_policy_config() + config.world_model.rollout_mode = "null_rollout" + model = ElasticOcclusionWorldModel(config.world_model) + state = tiny_state(field_size=config.reveal_head.field_size) + scene_tokens = torch.rand(2, 12, config.backbone.hidden_dim) + action_chunk = torch.rand(2, config.decoder.chunk_size, 14) + output = model(scene_tokens=scene_tokens, interaction_state=state, action_chunk=action_chunk) + target = state["clearance_field"].unsqueeze(1).expand(-1, config.decoder.chunk_size, -1, -1, -1) + mae = (output["clearance_field"] - target).abs().mean() + assert float(mae) < 1e-6 diff --git a/VLAarchtests/tests/test_world_model_identity_rollout.py b/VLAarchtests/tests/test_world_model_identity_rollout.py new file mode 100644 index 0000000000000000000000000000000000000000..f9e497ce3f5e2c6b67f271bebe97a1f245cc263e --- /dev/null +++ b/VLAarchtests/tests/test_world_model_identity_rollout.py @@ -0,0 +1,17 @@ +import torch + +from models.world_model import ElasticOcclusionWorldModel + + +def test_world_model_identity_rollout(tiny_policy_config, tiny_state): + config = tiny_policy_config() + config.world_model.rollout_mode = "identity_rollout" + model = ElasticOcclusionWorldModel(config.world_model) + state = tiny_state(field_size=config.reveal_head.field_size) + scene_tokens = torch.rand(2, 12, config.backbone.hidden_dim) + action_chunk = torch.rand(2, config.decoder.chunk_size, 14) + output = model(scene_tokens=scene_tokens, interaction_state=state, action_chunk=action_chunk) + expected_roles = state["arm_role_logits"].unsqueeze(1).expand(-1, config.decoder.chunk_size, -1, -1) + assert torch.allclose(output["arm_role_logits"], expected_roles) + expected_visibility = state["visibility_field"].unsqueeze(1).expand(-1, config.decoder.chunk_size, -1, -1, -1) + assert torch.allclose(output["visibility_field"], expected_visibility) diff --git a/VLAarchtests/tests/test_world_model_null_rollout.py b/VLAarchtests/tests/test_world_model_null_rollout.py new file mode 100644 index 0000000000000000000000000000000000000000..1f77c80f94080d9e504d6fc6f2a865469541ab10 --- /dev/null +++ b/VLAarchtests/tests/test_world_model_null_rollout.py @@ -0,0 +1,17 @@ +import torch + +from models.world_model import ElasticOcclusionWorldModel + + +def test_world_model_null_rollout(tiny_policy_config, tiny_state): + config = tiny_policy_config() + config.world_model.rollout_mode = "null_rollout" + model = ElasticOcclusionWorldModel(config.world_model) + state = tiny_state(field_size=config.reveal_head.field_size) + scene_tokens = torch.rand(2, 12, config.backbone.hidden_dim) + action_chunk = torch.rand(2, config.decoder.chunk_size, 14) + output = model(scene_tokens=scene_tokens, interaction_state=state, action_chunk=action_chunk) + expected = state["target_belief_field"].unsqueeze(1).expand(-1, config.decoder.chunk_size, -1, -1, -1) + assert torch.allclose(output["target_belief_field"], expected) + expected_support = state["support_mode_logits"].unsqueeze(1).expand(-1, config.decoder.chunk_size, -1) + assert torch.allclose(output["support_mode_logits"], expected_support) diff --git a/VLAarchtests/tests/test_world_model_state_contract.py b/VLAarchtests/tests/test_world_model_state_contract.py new file mode 100644 index 0000000000000000000000000000000000000000..dc03d32aa45b2e4ca8df595ce236380e12a60e7a --- /dev/null +++ b/VLAarchtests/tests/test_world_model_state_contract.py @@ -0,0 +1,23 @@ +import torch + +from models.world_model import ElasticOcclusionWorldModel + + +def test_world_model_state_contract(tiny_policy_config, tiny_state): + config = tiny_policy_config() + model = ElasticOcclusionWorldModel(config.world_model) + state = tiny_state(field_size=config.reveal_head.field_size) + action_chunk = torch.rand(2, config.decoder.chunk_size, 14) + scene_tokens = torch.rand(2, 12, config.backbone.hidden_dim) + state["scene_memory_tokens"] = torch.rand(2, config.memory.scene_bank_size, config.backbone.hidden_dim) + state["belief_memory_tokens"] = torch.rand(2, config.memory.belief_bank_size, config.backbone.hidden_dim) + output = model( + scene_tokens=scene_tokens, + interaction_state=state, + action_chunk=action_chunk, + scene_memory_tokens=state["scene_memory_tokens"], + belief_memory_tokens=state["belief_memory_tokens"], + ) + assert output["target_belief_field"].shape[:3] == (2, config.decoder.chunk_size, 1) + assert output["scene_memory_tokens"].shape[2] == config.memory.scene_bank_size + assert output["belief_memory_tokens"].shape[2] == config.memory.belief_bank_size diff --git a/VLAarchtests/tests/test_world_model_task_adapter.py b/VLAarchtests/tests/test_world_model_task_adapter.py new file mode 100644 index 0000000000000000000000000000000000000000..d7a1014ec63d46b36e6553fd303aa494349222ce --- /dev/null +++ b/VLAarchtests/tests/test_world_model_task_adapter.py @@ -0,0 +1,32 @@ +import torch + +from models.world_model import ElasticOcclusionWorldModel + + +def test_world_model_task_adapter(tiny_policy_config, tiny_state): + config = tiny_policy_config() + config.world_model.rollout_mode = "spatial_rollout" + model = ElasticOcclusionWorldModel(config.world_model) + state = tiny_state(field_size=config.reveal_head.field_size) + state["scene_memory_tokens"] = torch.rand(1, config.memory.scene_bank_size, config.backbone.hidden_dim) + state["belief_memory_tokens"] = torch.rand(1, config.memory.belief_bank_size, config.backbone.hidden_dim) + state = {key: value[:1] for key, value in state.items()} + scene_tokens = torch.rand(1, 12, config.backbone.hidden_dim) + action_chunk = torch.zeros(1, config.decoder.chunk_size, 14) + foliage = model( + scene_tokens=scene_tokens, + interaction_state=state, + action_chunk=action_chunk, + scene_memory_tokens=state["scene_memory_tokens"], + belief_memory_tokens=state["belief_memory_tokens"], + task_names=["foliage"], + ) + bag = model( + scene_tokens=scene_tokens, + interaction_state=state, + action_chunk=action_chunk, + scene_memory_tokens=state["scene_memory_tokens"], + belief_memory_tokens=state["belief_memory_tokens"], + task_names=["bag"], + ) + assert not torch.allclose(foliage["support_mode_logits"], bag["support_mode_logits"]) diff --git a/baselines/AnyBimanual/Peract-LF_AnyBimanual/config.yaml b/baselines/AnyBimanual/Peract-LF_AnyBimanual/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..56a6d90c6ccab7e6c1acce209b6cef4018945af1 --- /dev/null +++ b/baselines/AnyBimanual/Peract-LF_AnyBimanual/config.yaml @@ -0,0 +1,139 @@ +ddp: + master_addr: localhost + master_port: 13985 + num_devices: 2 +rlbench: + task_name: perlf+ab + tasks: + - bimanual_pick_laptop + - bimanual_pick_plate + - bimanual_straighten_rope + - coordinated_lift_ball + - coordinated_lift_tray + - coordinated_push_box + - coordinated_put_bottle_in_fridge + - dual_push_buttons + - handover_item + - bimanual_sweep_to_dustpan + - coordinated_take_tray_out_of_oven + - handover_item_easy + demos: 100 + demo_path: /mnt/disk_1/tengbo/bimanual_data/train + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: '' +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /mnt/disk_2/tengbo/replay/ + max_parallel_processes: 32 + task_folder: multi +framework: + log_freq: 1000 + save_freq: 10000 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 100001 + gpu: 0 + env_gpu: 0 + logdir: /mnt/disk_1/tengbo/peract_bimanual/log + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: true + wandb_project: '' + wandb_group: perlf+ab + seed: 0 + wandb_name: perlf+ab + use_skill: true + use_pretrained: false + use_prefix: false + frozen: '' + anybimanual: true + augmentation_type: ab +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic diff --git a/baselines/AnyBimanual/Peract-LF_AnyBimanual/eval_data.csv b/baselines/AnyBimanual/Peract-LF_AnyBimanual/eval_data.csv new file mode 100644 index 0000000000000000000000000000000000000000..3a97aa989a8f454843ae304c1176b3b00b5bfe06 --- /dev/null +++ b/baselines/AnyBimanual/Peract-LF_AnyBimanual/eval_data.csv @@ -0,0 +1,6 @@ +step,eval_envs/return/bimanual_pick_laptop,eval_envs/length/bimanual_pick_laptop,eval_envs/total_transitions/bimanual_pick_laptop,eval_envs/return/bimanual_pick_plate,eval_envs/length/bimanual_pick_plate,eval_envs/total_transitions/bimanual_pick_plate,eval_envs/return/bimanual_straighten_rope,eval_envs/length/bimanual_straighten_rope,eval_envs/total_transitions/bimanual_straighten_rope,eval_envs/return/coordinated_lift_ball,eval_envs/length/coordinated_lift_ball,eval_envs/total_transitions/coordinated_lift_ball,eval_envs/return/coordinated_lift_tray,eval_envs/length/coordinated_lift_tray,eval_envs/total_transitions/coordinated_lift_tray,eval_envs/return/coordinated_push_box,eval_envs/length/coordinated_push_box,eval_envs/total_transitions/coordinated_push_box,eval_envs/return/coordinated_put_bottle_in_fridge,eval_envs/length/coordinated_put_bottle_in_fridge,eval_envs/total_transitions/coordinated_put_bottle_in_fridge,eval_envs/return/dual_push_buttons,eval_envs/length/dual_push_buttons,eval_envs/total_transitions/dual_push_buttons,eval_envs/return/handover_item,eval_envs/length/handover_item,eval_envs/total_transitions/handover_item,eval_envs/return/bimanual_sweep_to_dustpan,eval_envs/length/bimanual_sweep_to_dustpan,eval_envs/total_transitions/bimanual_sweep_to_dustpan,eval_envs/return/coordinated_take_tray_out_of_oven,eval_envs/length/coordinated_take_tray_out_of_oven,eval_envs/total_transitions/coordinated_take_tray_out_of_oven,eval_envs/return/handover_item_easy,eval_envs/length/handover_item_easy,eval_envs/total_transitions/handover_item_easy +50000,0.0,25.0,625,4.0,24.76,1244,0.0,25.0,1869,0.0,25.0,2494,0.0,25.0,3119,0.0,25.0,3744,0.0,25.0,4369,20.0,21.84,4915,0.0,25.0,5540,0.0,25.0,6165,0.0,25.0,6790,8.0,24.0,7390 +60000,8.0,25.0,625,4.0,24.48,1237,4.0,25.0,1862,8.0,23.24,2443,4.0,25.0,3068,20.0,25.0,3693,4.0,25.0,4318,24.0,21.56,4857,4.0,25.0,5482,24.0,25.0,6107,0.0,25.0,6732,12.0,24.6,7347 +70000,4.0,25.0,625,12.0,23.24,1206,4.0,25.0,1831,0.0,25.0,2456,0.0,25.0,3081,12.0,25.0,3706,0.0,25.0,4331,12.0,23.16,4910,0.0,25.0,5535,16.0,25.0,6228,0.0,25.0,6160,8.0,25.0,6785 +60000,0.0,25.0,50 +60000,0.0,25.0,50 diff --git a/baselines/AnyBimanual_evalroot/live_eval_subset3_ep1.log b/baselines/AnyBimanual_evalroot/live_eval_subset3_ep1.log new file mode 100644 index 0000000000000000000000000000000000000000..ea226e5a33c1c9050c8d8eeeea818586068e03fa --- /dev/null +++ b/baselines/AnyBimanual_evalroot/live_eval_subset3_ep1.log @@ -0,0 +1,156 @@ +/workspace/third_party/AnyBimanual/eval.py:183: UserWarning: +The version_base parameter is not specified. +Please specify a compatability version level, or None. +Will assume defaults for version 1.1 + @hydra.main(config_name="eval", config_path="conf") +/workspace/envs/rlbench/lib/python3.10/site-packages/hydra/_internal/defaults_list.py:251: UserWarning: In 'eval': Defaults list is missing `_self_`. See https://hydra.cc/docs/1.2/upgrades/1.0_to_1.1/default_composition_order for more information + warnings.warn(msg, UserWarning) +/workspace/envs/rlbench/lib/python3.10/site-packages/hydra/core/default_element.py:124: UserWarning: In 'method/PERACT_BC': Usage of deprecated keyword in package header '# @package _group_'. +See https://hydra.cc/docs/1.2/upgrades/1.0_to_1.1/changes_to_package_header for more information + deprecation_warning( +/workspace/envs/rlbench/lib/python3.10/site-packages/hydra/_internal/hydra.py:119: UserWarning: Future Hydra versions will no longer change working directory at job runtime by default. +See https://hydra.cc/docs/1.2/upgrades/1.1_to_1.2/changes_to_job_working_dir/ for more information. + ret = run_job( +[2026-03-30 00:25:56,978][root][INFO] - +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +rlbench: + task_name: perlf+ab + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demo_path: /my/demo/path + episode_length: 25 + cameras: + - over_shoulder_left + - over_shoulder_right + - overhead + - wrist_right + - wrist_left + - front + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + time_in_state: true + headless: true + gripper_mode: BimanualDiscrete + arm_action_mode: BimanualEndEffectorPoseViaPlanning + action_mode: BimanualMoveArmThenGripper +framework: + tensorboard_logging: true + csv_logging: true + gpu: 0 + logdir: /workspace/baselines/AnyBimanual_evalroot + start_seed: 0 + record_every_n: 5 + eval_envs: 1 + eval_from_eps_number: 0 + eval_episodes: 1 + eval_type: 60000 + eval_save_metrics: true +cinematic_recorder: + enabled: false + camera_resolution: + - 1280 + - 720 + fps: 30 + rotate_speed: 0.005 + save_path: /tmp/videos/ + +[2026-03-30 00:25:56,989][root][INFO] - Using env device cuda:0. +[2026-03-30 00:25:56,998][root][INFO] - Evaluating seed 0. +[2026-03-30 00:25:56,999][root][INFO] - Using method PERACT_BC with type leader_follower +/workspace/third_party/AnyBimanual/eval.py:183: UserWarning: +The version_base parameter is not specified. +Please specify a compatability version level, or None. +Will assume defaults for version 1.1 + @hydra.main(config_name="eval", config_path="conf") +Weight: [60000] +/workspace/third_party/AnyBimanual/eval.py:183: UserWarning: +The version_base parameter is not specified. +Please specify a compatability version level, or None. +Will assume defaults for version 1.1 + @hydra.main(config_name="eval", config_path="conf") +Process Process-2: +Traceback (most recent call last): + File "/workspace/envs/rlbench/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap + self.run() + File "/workspace/envs/rlbench/lib/python3.10/multiprocessing/process.py", line 108, in run + self._target(*self._args, **self._kwargs) + File "/workspace/third_party/AnyBimanual/third_party/YARR/yarr/runners/independent_env_runner.py", line 85, in start + eval_env = CustomMultiTaskRLBenchEnv( + File "/workspace/third_party/AnyBimanual/helpers/custom_rlbench_env.py", line 309, in __init__ + super(CustomMultiTaskRLBenchEnv, self).__init__( + File "/workspace/third_party/AnyBimanual/third_party/YARR/yarr/envs/rlbench_env.py", line 256, in __init__ + self._rlbench_env = Environment( + File "/workspace/third_party/AnyBimanual/third_party/RLBench/rlbench/environment.py", line 79, in __init__ + self._check_dataset_structure() + File "/workspace/third_party/AnyBimanual/third_party/RLBench/rlbench/environment.py", line 87, in _check_dataset_structure + raise RuntimeError( +RuntimeError: Data set root does not exists: /my/demo/path +[W330 00:26:30.826965297 CudaIPCTypes.cpp:16] Producer process has been terminated before all shared CUDA tensors released. See Note [Sharing CUDA tensors] diff --git a/baselines/AnyBimanual_evalroot/live_eval_subset3_ep1_compat.log b/baselines/AnyBimanual_evalroot/live_eval_subset3_ep1_compat.log new file mode 100644 index 0000000000000000000000000000000000000000..d94e7fe400d592b32ffdd4c052764a32cc059d17 --- /dev/null +++ b/baselines/AnyBimanual_evalroot/live_eval_subset3_ep1_compat.log @@ -0,0 +1,191 @@ +/workspace/third_party/AnyBimanual/eval.py:183: UserWarning: +The version_base parameter is not specified. +Please specify a compatability version level, or None. +Will assume defaults for version 1.1 + @hydra.main(config_name="eval", config_path="conf") +/workspace/envs/rlbench/lib/python3.10/site-packages/hydra/_internal/defaults_list.py:251: UserWarning: In 'eval': Defaults list is missing `_self_`. See https://hydra.cc/docs/1.2/upgrades/1.0_to_1.1/default_composition_order for more information + warnings.warn(msg, UserWarning) +/workspace/envs/rlbench/lib/python3.10/site-packages/hydra/core/default_element.py:124: UserWarning: In 'method/PERACT_BC': Usage of deprecated keyword in package header '# @package _group_'. +See https://hydra.cc/docs/1.2/upgrades/1.0_to_1.1/changes_to_package_header for more information + deprecation_warning( +/workspace/envs/rlbench/lib/python3.10/site-packages/hydra/_internal/hydra.py:119: UserWarning: Future Hydra versions will no longer change working directory at job runtime by default. +See https://hydra.cc/docs/1.2/upgrades/1.1_to_1.2/changes_to_job_working_dir/ for more information. + ret = run_job( +[2026-03-30 00:29:42,649][root][INFO] - +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +rlbench: + task_name: perlf+ab + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demo_path: /workspace/baselines/AnyBimanual_dummy_demo_root + episode_length: 25 + cameras: + - over_shoulder_left + - over_shoulder_right + - overhead + - wrist_right + - wrist_left + - front + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + time_in_state: true + headless: true + gripper_mode: BimanualDiscrete + arm_action_mode: BimanualEndEffectorPoseViaPlanning + action_mode: BimanualMoveArmThenGripper +framework: + tensorboard_logging: true + csv_logging: true + gpu: 0 + logdir: /workspace/baselines/AnyBimanual_evalroot + start_seed: 0 + record_every_n: 5 + eval_envs: 1 + eval_from_eps_number: 0 + eval_episodes: 1 + eval_type: 60000 + eval_save_metrics: true +cinematic_recorder: + enabled: false + camera_resolution: + - 1280 + - 720 + fps: 30 + rotate_speed: 0.005 + save_path: /tmp/videos/ + +[2026-03-30 00:29:42,660][root][INFO] - Using env device cuda:0. +[2026-03-30 00:29:42,671][root][INFO] - Evaluating seed 0. +[2026-03-30 00:29:42,671][root][INFO] - Using method PERACT_BC with type leader_follower +/workspace/third_party/AnyBimanual/eval.py:183: UserWarning: +The version_base parameter is not specified. +Please specify a compatability version level, or None. +Will assume defaults for version 1.1 + @hydra.main(config_name="eval", config_path="conf") +Weight: [60000] +/workspace/third_party/AnyBimanual/eval.py:183: UserWarning: +The version_base parameter is not specified. +Please specify a compatability version level, or None. +Will assume defaults for version 1.1 + @hydra.main(config_name="eval", config_path="conf") +/workspace/third_party/AnyBimanual/eval.py:183: UserWarning: +The version_base parameter is not specified. +Please specify a compatability version level, or None. +Will assume defaults for version 1.1 + @hydra.main(config_name="eval", config_path="conf") +[03/30/26 00:30:27] INFO INFO:root:eval_env: _independent_env_runner.py:130 + Launching env. + INFO INFO:root:Agent _independent_env_runner.py:133 + information: + INFO INFO:root: +[03/30/26 00:30:29] INFO INFO:root:Using dual panda robot environment.py:117 + INFO INFO:root:Setting control arm_action_modes.py:79 + mode for both robots + WARNING WARNING:root:not sure how task_environment.py:57 + _robot_shapes are used is + used. + INFO INFO:root:Evaluating _independent_env_runner.py:164 + weight 60000 +loaded weights from /workspace/baselines/AnyBimanual_evalroot/perlf+ab/PERACT_BC/seed0/weights/60000/checkpoint_peract_bc_leader_layer_0.pt +loaded weights from /workspace/baselines/AnyBimanual_evalroot/perlf+ab/PERACT_BC/seed0/weights/60000/checkpoint_peract_bc_follower_layer_0.pt + Tasks: 0%| | 0/3 [00:00 +[03/30/26 00:28:32] INFO INFO:root:Using dual panda robot environment.py:117 + INFO INFO:root:Setting control arm_action_modes.py:79 + mode for both robots + WARNING WARNING:root:not sure how task_environment.py:57 + _robot_shapes are used is + used. + INFO INFO:root:Evaluating _independent_env_runner.py:164 + weight 60000 +Process Process-2: +Traceback (most recent call last): + File "/workspace/envs/rlbench/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap + self.run() + File "/workspace/envs/rlbench/lib/python3.10/multiprocessing/process.py", line 108, in run + self._target(*self._args, **self._kwargs) + File "/workspace/third_party/AnyBimanual/third_party/YARR/yarr/runners/independent_env_runner.py", line 121, in start + self._internal_env_runner._run_eval_independent('eval_env', + File "/workspace/third_party/AnyBimanual/third_party/YARR/yarr/runners/_independent_env_runner.py", line 167, in _run_eval_independent + self._agent.load_weights(weight_path) + File "/workspace/third_party/AnyBimanual/third_party/YARR/yarr/agents/agent.py", line 337, in load_weights + self.leader_agent.load_weights(savedir) + File "/workspace/third_party/AnyBimanual/helpers/preprocess_agent.py", line 125, in load_weights + self._pose_agent.load_weights(savedir) + File "/workspace/third_party/AnyBimanual/agents/peract_bc/qattention_stack_agent.py", line 128, in load_weights + qa.load_weights(savedir) + File "/workspace/third_party/AnyBimanual/agents/peract_bc/qattention_peract_bc_agent.py", line 934, in load_weights + self._q.load_state_dict(merged_state_dict) + File "/workspace/envs/rlbench/lib/python3.10/site-packages/torch/nn/modules/module.py", line 2639, in load_state_dict + raise RuntimeError( +RuntimeError: Error(s) in loading state_dict for QFunction: + size mismatch for _qnet.skill_manager.embed_voxel.weight: copying a param with shape torch.Size([256, 128]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.embed_voxel.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.embed_lang.weight: copying a param with shape torch.Size([256, 128]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.embed_lang.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.wte.weight: copying a param with shape torch.Size([1, 256]) from checkpoint, the shape in current model is torch.Size([1, 128]). + size mismatch for _qnet.skill_manager.transformer.h.0.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.0.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.0.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.0.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.0.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.0.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.0.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.0.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.0.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.0.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.0.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.0.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.1.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.1.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.1.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.1.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.1.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.1.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.1.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.1.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.1.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.1.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.1.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.1.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.2.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.2.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.2.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.2.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.2.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.2.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.2.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.2.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.2.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.2.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.2.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.2.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.3.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.3.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.3.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.3.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.3.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.3.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.3.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.3.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.3.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.3.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.3.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.3.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.4.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.4.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.4.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.4.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.4.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.4.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.4.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.4.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.4.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.4.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.4.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.4.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.5.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.5.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.5.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.5.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.5.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.5.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.5.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.5.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.5.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.5.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.5.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.5.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.6.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.6.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.6.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.6.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.6.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.6.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.6.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.6.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.6.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.6.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.6.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.6.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.7.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.7.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.7.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.7.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.7.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.7.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.7.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.7.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.7.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.7.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.7.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.7.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.8.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.8.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.8.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.8.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.8.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.8.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.8.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.8.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.8.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.8.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.8.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.8.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.9.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.9.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.9.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.9.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.9.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.9.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.9.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.9.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.9.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.9.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.9.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.9.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.10.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.10.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.10.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.10.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.10.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.10.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.10.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.10.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.10.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.10.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.10.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.10.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.11.ln_1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.11.ln_1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.11.attn.c_attn.weight: copying a param with shape torch.Size([256, 768]) from checkpoint, the shape in current model is torch.Size([128, 384]). + size mismatch for _qnet.skill_manager.transformer.h.11.attn.c_attn.bias: copying a param with shape torch.Size([768]) from checkpoint, the shape in current model is torch.Size([384]). + size mismatch for _qnet.skill_manager.transformer.h.11.attn.c_proj.weight: copying a param with shape torch.Size([256, 256]) from checkpoint, the shape in current model is torch.Size([128, 128]). + size mismatch for _qnet.skill_manager.transformer.h.11.attn.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.11.ln_2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.11.ln_2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.h.11.mlp.c_fc.weight: copying a param with shape torch.Size([256, 1024]) from checkpoint, the shape in current model is torch.Size([128, 512]). + size mismatch for _qnet.skill_manager.transformer.h.11.mlp.c_fc.bias: copying a param with shape torch.Size([1024]) from checkpoint, the shape in current model is torch.Size([512]). + size mismatch for _qnet.skill_manager.transformer.h.11.mlp.c_proj.weight: copying a param with shape torch.Size([1024, 256]) from checkpoint, the shape in current model is torch.Size([512, 128]). + size mismatch for _qnet.skill_manager.transformer.h.11.mlp.c_proj.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.ln_f.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.transformer.ln_f.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.embed_ln.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.embed_ln.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]). + size mismatch for _qnet.skill_manager.predict_logits.weight: copying a param with shape torch.Size([18, 256]) from checkpoint, the shape in current model is torch.Size([18, 128]). +QMutex: destroying locked mutex +[W330 00:28:41.721655714 CudaIPCTypes.cpp:16] Producer process has been terminated before all shared CUDA tensors released. See Note [Sharing CUDA tensors] diff --git a/baselines/AnyBimanual_evalroot/perlf+ab/PERACT_BC/seed0/config.yaml b/baselines/AnyBimanual_evalroot/perlf+ab/PERACT_BC/seed0/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..56a6d90c6ccab7e6c1acce209b6cef4018945af1 --- /dev/null +++ b/baselines/AnyBimanual_evalroot/perlf+ab/PERACT_BC/seed0/config.yaml @@ -0,0 +1,139 @@ +ddp: + master_addr: localhost + master_port: 13985 + num_devices: 2 +rlbench: + task_name: perlf+ab + tasks: + - bimanual_pick_laptop + - bimanual_pick_plate + - bimanual_straighten_rope + - coordinated_lift_ball + - coordinated_lift_tray + - coordinated_push_box + - coordinated_put_bottle_in_fridge + - dual_push_buttons + - handover_item + - bimanual_sweep_to_dustpan + - coordinated_take_tray_out_of_oven + - handover_item_easy + demos: 100 + demo_path: /mnt/disk_1/tengbo/bimanual_data/train + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: '' +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /mnt/disk_2/tengbo/replay/ + max_parallel_processes: 32 + task_folder: multi +framework: + log_freq: 1000 + save_freq: 10000 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 100001 + gpu: 0 + env_gpu: 0 + logdir: /mnt/disk_1/tengbo/peract_bimanual/log + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: true + wandb_project: '' + wandb_group: perlf+ab + seed: 0 + wandb_name: perlf+ab + use_skill: true + use_pretrained: false + use_prefix: false + frozen: '' + anybimanual: true + augmentation_type: ab +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic diff --git a/baselines/AnyBimanual_evalroot/perlf+ab/PERACT_BC/seed0/eval_data.csv b/baselines/AnyBimanual_evalroot/perlf+ab/PERACT_BC/seed0/eval_data.csv new file mode 100644 index 0000000000000000000000000000000000000000..3a97aa989a8f454843ae304c1176b3b00b5bfe06 --- /dev/null +++ b/baselines/AnyBimanual_evalroot/perlf+ab/PERACT_BC/seed0/eval_data.csv @@ -0,0 +1,6 @@ +step,eval_envs/return/bimanual_pick_laptop,eval_envs/length/bimanual_pick_laptop,eval_envs/total_transitions/bimanual_pick_laptop,eval_envs/return/bimanual_pick_plate,eval_envs/length/bimanual_pick_plate,eval_envs/total_transitions/bimanual_pick_plate,eval_envs/return/bimanual_straighten_rope,eval_envs/length/bimanual_straighten_rope,eval_envs/total_transitions/bimanual_straighten_rope,eval_envs/return/coordinated_lift_ball,eval_envs/length/coordinated_lift_ball,eval_envs/total_transitions/coordinated_lift_ball,eval_envs/return/coordinated_lift_tray,eval_envs/length/coordinated_lift_tray,eval_envs/total_transitions/coordinated_lift_tray,eval_envs/return/coordinated_push_box,eval_envs/length/coordinated_push_box,eval_envs/total_transitions/coordinated_push_box,eval_envs/return/coordinated_put_bottle_in_fridge,eval_envs/length/coordinated_put_bottle_in_fridge,eval_envs/total_transitions/coordinated_put_bottle_in_fridge,eval_envs/return/dual_push_buttons,eval_envs/length/dual_push_buttons,eval_envs/total_transitions/dual_push_buttons,eval_envs/return/handover_item,eval_envs/length/handover_item,eval_envs/total_transitions/handover_item,eval_envs/return/bimanual_sweep_to_dustpan,eval_envs/length/bimanual_sweep_to_dustpan,eval_envs/total_transitions/bimanual_sweep_to_dustpan,eval_envs/return/coordinated_take_tray_out_of_oven,eval_envs/length/coordinated_take_tray_out_of_oven,eval_envs/total_transitions/coordinated_take_tray_out_of_oven,eval_envs/return/handover_item_easy,eval_envs/length/handover_item_easy,eval_envs/total_transitions/handover_item_easy +50000,0.0,25.0,625,4.0,24.76,1244,0.0,25.0,1869,0.0,25.0,2494,0.0,25.0,3119,0.0,25.0,3744,0.0,25.0,4369,20.0,21.84,4915,0.0,25.0,5540,0.0,25.0,6165,0.0,25.0,6790,8.0,24.0,7390 +60000,8.0,25.0,625,4.0,24.48,1237,4.0,25.0,1862,8.0,23.24,2443,4.0,25.0,3068,20.0,25.0,3693,4.0,25.0,4318,24.0,21.56,4857,4.0,25.0,5482,24.0,25.0,6107,0.0,25.0,6732,12.0,24.6,7347 +70000,4.0,25.0,625,12.0,23.24,1206,4.0,25.0,1831,0.0,25.0,2456,0.0,25.0,3081,12.0,25.0,3706,0.0,25.0,4331,12.0,23.16,4910,0.0,25.0,5535,16.0,25.0,6228,0.0,25.0,6160,8.0,25.0,6785 +60000,0.0,25.0,50 +60000,0.0,25.0,50 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11114.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11114.replay new file mode 100644 index 0000000000000000000000000000000000000000..0b0059758f11be94b84d5c5bca24f2d8861036f1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11114.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bcce2c240a0b9ffa00151b097b1a56baf8455e8ac2b6b8c2f07b132a099e3c5 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11115.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11115.replay new file mode 100644 index 0000000000000000000000000000000000000000..a2e4745c6ff798160198ed93ad5746b8994134c1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11115.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1d71187d6575ebe2157b26b2c8330ff2d2054f0e73262e1818e79bf00032bec +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11116.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11116.replay new file mode 100644 index 0000000000000000000000000000000000000000..eba119301c74ddf57418f5a19dcf6ba3145b65e7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11116.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5000adfa195b598749b4a5e36963afa200b2740d4ef9528972b0fba277c826ec +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11117.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11117.replay new file mode 100644 index 0000000000000000000000000000000000000000..9ca2ae46bc7ab8067f949557c4d30e38941c1136 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11117.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7d82930b417d78bd0fa81bb1a71d8eea520f687c6f351858d9e77d66aa5c9bf +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11118.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11118.replay new file mode 100644 index 0000000000000000000000000000000000000000..696882e23da799fb811bb2896ad44672fd50f747 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11118.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44fe21db834eafa79c28684743ac0ade3b48dc80deeb07454d4dcf538a9f852f +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11119.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11119.replay new file mode 100644 index 0000000000000000000000000000000000000000..26dc16b0d9f598ce9d4c3e8ad2e4c5643fbf2801 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11119.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a737465cdedb51384224e5b447a181ecc4a1ad4572ec2a7ea8a6d8496ce497c2 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11120.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11120.replay new file mode 100644 index 0000000000000000000000000000000000000000..a2e4745c6ff798160198ed93ad5746b8994134c1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11120.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1d71187d6575ebe2157b26b2c8330ff2d2054f0e73262e1818e79bf00032bec +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11121.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11121.replay new file mode 100644 index 0000000000000000000000000000000000000000..eba119301c74ddf57418f5a19dcf6ba3145b65e7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11121.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5000adfa195b598749b4a5e36963afa200b2740d4ef9528972b0fba277c826ec +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11122.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11122.replay new file mode 100644 index 0000000000000000000000000000000000000000..9ca2ae46bc7ab8067f949557c4d30e38941c1136 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11122.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7d82930b417d78bd0fa81bb1a71d8eea520f687c6f351858d9e77d66aa5c9bf +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11123.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11123.replay new file mode 100644 index 0000000000000000000000000000000000000000..57dd60d75eecb986f85fcd17d244eaaff8d33248 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11123.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49cc19cf8b2875602a6f86239cfba7fef7fc3b4260d8de411ccd3f7a8ad21989 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11124.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11124.replay new file mode 100644 index 0000000000000000000000000000000000000000..864253fd90575e26612727c3c6da166669139148 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11124.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7beffb53bd47f3b6725c74ecc7f309267f7750b7ed2cfedc213082c4d7a6e323 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11125.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11125.replay new file mode 100644 index 0000000000000000000000000000000000000000..a2e4745c6ff798160198ed93ad5746b8994134c1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11125.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1d71187d6575ebe2157b26b2c8330ff2d2054f0e73262e1818e79bf00032bec +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11126.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11126.replay new file mode 100644 index 0000000000000000000000000000000000000000..eba119301c74ddf57418f5a19dcf6ba3145b65e7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11126.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5000adfa195b598749b4a5e36963afa200b2740d4ef9528972b0fba277c826ec +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11127.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11127.replay new file mode 100644 index 0000000000000000000000000000000000000000..9ca2ae46bc7ab8067f949557c4d30e38941c1136 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11127.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7d82930b417d78bd0fa81bb1a71d8eea520f687c6f351858d9e77d66aa5c9bf +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11128.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11128.replay new file mode 100644 index 0000000000000000000000000000000000000000..696882e23da799fb811bb2896ad44672fd50f747 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11128.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44fe21db834eafa79c28684743ac0ade3b48dc80deeb07454d4dcf538a9f852f +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11129.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11129.replay new file mode 100644 index 0000000000000000000000000000000000000000..a320881e05c6bb043451e4aa779b610eb6024879 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11129.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07bcd183360793960900a89577fbf7e52898b04d262810da1e47334eac34b1ec +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11130.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11130.replay new file mode 100644 index 0000000000000000000000000000000000000000..a2e4745c6ff798160198ed93ad5746b8994134c1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11130.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1d71187d6575ebe2157b26b2c8330ff2d2054f0e73262e1818e79bf00032bec +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11131.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11131.replay new file mode 100644 index 0000000000000000000000000000000000000000..eba119301c74ddf57418f5a19dcf6ba3145b65e7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11131.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5000adfa195b598749b4a5e36963afa200b2740d4ef9528972b0fba277c826ec +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11132.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11132.replay new file mode 100644 index 0000000000000000000000000000000000000000..9ca2ae46bc7ab8067f949557c4d30e38941c1136 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11132.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7d82930b417d78bd0fa81bb1a71d8eea520f687c6f351858d9e77d66aa5c9bf +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11133.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11133.replay new file mode 100644 index 0000000000000000000000000000000000000000..57dd60d75eecb986f85fcd17d244eaaff8d33248 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11133.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49cc19cf8b2875602a6f86239cfba7fef7fc3b4260d8de411ccd3f7a8ad21989 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11134.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11134.replay new file mode 100644 index 0000000000000000000000000000000000000000..2ecd399605cce7d8d61facff2456fb2ae2fc56da --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11134.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8741db7dc2e2dd29b5efe4587f1e4d28718131b4e617976d7dade968fc2e85ea +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11135.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11135.replay new file mode 100644 index 0000000000000000000000000000000000000000..4f02b730d20c8812141b82d93d1c58d6ac53ff6b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11135.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88385045233d57dc90d27ce3d0bea1f3603f5a3508d522722b89364822876fd9 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11136.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11136.replay new file mode 100644 index 0000000000000000000000000000000000000000..1eaddd6a2393e5b16cc6de9bd517ec523b2a38d3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11136.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c29e326e5e675d6620b57d30d8b19133e448cb6dc7b6774ea5155e5cf7ccf0a +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11137.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11137.replay new file mode 100644 index 0000000000000000000000000000000000000000..40d75c9075c2b979544f291a36cf509fc8d4f55e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11137.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:517966d3c227294f93594c5e1e80c31c36b6cff48181505ae136ae5ae5c3a378 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11138.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11138.replay new file mode 100644 index 0000000000000000000000000000000000000000..32ebda06e67221879cb724c042118634a3827809 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11138.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d852a8d6f5dfdbff44d3b37c5a27bb50dfbc4b6b7f67c1bb96af6db6f82840c1 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11139.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11139.replay new file mode 100644 index 0000000000000000000000000000000000000000..63b2f0690cbb239eced521e5bdad1a1493b9e833 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11139.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62fb1cf15705bebb7c5806fcdfd7fbe49d4095d3d64441609908e1e6d94d2594 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11140.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11140.replay new file mode 100644 index 0000000000000000000000000000000000000000..db7cb2163ad62b498ec0565058db0920dff4fc23 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11140.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a037a5b4bff938ba1d1a3f83ed75cef6a236c4f2eca44021d11d515db8da1d5a +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11141.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11141.replay new file mode 100644 index 0000000000000000000000000000000000000000..ed9c74cbfecb9c064c9541aed584b1dfbecbec11 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11141.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:160dfdd2e9302701640ff6a154f093bc6692f85c410afb025e0c1e4ebdf21fec +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11142.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11142.replay new file mode 100644 index 0000000000000000000000000000000000000000..afc7b7e2afd56350163024adb1050ca010ed28a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11142.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c85305b58daf7498215b1bcf070dda88ff0ce31ac8b1a276ca4e7d6af46b36b8 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11143.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11143.replay new file mode 100644 index 0000000000000000000000000000000000000000..e73bf1b0e7c049df4dc79b3e07e70a651f5a2747 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11143.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54b408f8a94107c7a5d15de8df617c03c851a186f6d7212c0c2c657fd849b5f3 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11144.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11144.replay new file mode 100644 index 0000000000000000000000000000000000000000..8b1c8c8ed8f6ad5223795ec1a330d6db1a687b2d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11144.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8022ba5574cb37f525f17d9a73e81fc4200720e9e766d010283cfbc5f5153787 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11145.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11145.replay new file mode 100644 index 0000000000000000000000000000000000000000..10617c2dedc77c04904754c13aa4fc9b7571db0a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11145.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0dc80e063f52823fb019a35db1d0523e72e63cd9faedef5773803c3d7478b5e +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11146.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11146.replay new file mode 100644 index 0000000000000000000000000000000000000000..afc7b7e2afd56350163024adb1050ca010ed28a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11146.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c85305b58daf7498215b1bcf070dda88ff0ce31ac8b1a276ca4e7d6af46b36b8 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11147.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11147.replay new file mode 100644 index 0000000000000000000000000000000000000000..a0f71485c81bea14f149ab1c84d260ff01dfc311 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11147.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22f6ed35ae9235ce2e174343c0d53a64fdbbdafaa9bfd6e642ce4177cc8ed13b +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11148.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11148.replay new file mode 100644 index 0000000000000000000000000000000000000000..8b1c8c8ed8f6ad5223795ec1a330d6db1a687b2d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11148.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8022ba5574cb37f525f17d9a73e81fc4200720e9e766d010283cfbc5f5153787 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11149.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11149.replay new file mode 100644 index 0000000000000000000000000000000000000000..94a9af8ab06bc492b1eadd4185a0433f57f46eba --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11149.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42c98272563d71ded59b16473dc1d650e1796ea6ec7f648f098da96270ba5962 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11150.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11150.replay new file mode 100644 index 0000000000000000000000000000000000000000..547ade2b859f641afdcf6d81addb97c53f90529f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11150.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2871b83b160784877b412f8592e717ad967c5bba158f6b5dc6f004b9b1edb94 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11151.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11151.replay new file mode 100644 index 0000000000000000000000000000000000000000..f5b36ff53a79c43ff81e63b660d5e7763533b32a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11151.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1429cf6463f34b9dd8d0e89b59a5b7941ecd93a1da2f831c628a82dfb208ad8 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11152.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11152.replay new file mode 100644 index 0000000000000000000000000000000000000000..30ce2aa0fba717a2de2865d9e82fdb8f44ec3ec9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11152.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3095304b347cf50f81c7785cbf127c7da9df06272fae6e7790311efb3d08cc26 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11153.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11153.replay new file mode 100644 index 0000000000000000000000000000000000000000..d506e93e0ff31cbe1c5a29ef6ef8f4a0e717f83c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11153.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11b54f12090f6561f1e18fb04838fedf4fab628fe65af49f77b3c2c16b929fef +size 3624033 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11154.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11154.replay new file mode 100644 index 0000000000000000000000000000000000000000..965affbef475499cad669414224476e3b1a3dfbd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11154.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:457aa49130c9b0942420e7fd206b910107e28c162c0eb1ef2249b264344cbe74 +size 3624047 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11155.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11155.replay new file mode 100644 index 0000000000000000000000000000000000000000..993149e5d596c5cb3e8b8abb6e796498765a49ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11155.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1401edc8a8c7756530a0359f69b04cb70762bf59ca2e14a5dc85972127616222 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11156.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11156.replay new file mode 100644 index 0000000000000000000000000000000000000000..547ade2b859f641afdcf6d81addb97c53f90529f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11156.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2871b83b160784877b412f8592e717ad967c5bba158f6b5dc6f004b9b1edb94 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11157.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11157.replay new file mode 100644 index 0000000000000000000000000000000000000000..f5b36ff53a79c43ff81e63b660d5e7763533b32a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11157.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1429cf6463f34b9dd8d0e89b59a5b7941ecd93a1da2f831c628a82dfb208ad8 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11158.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11158.replay new file mode 100644 index 0000000000000000000000000000000000000000..30ce2aa0fba717a2de2865d9e82fdb8f44ec3ec9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11158.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3095304b347cf50f81c7785cbf127c7da9df06272fae6e7790311efb3d08cc26 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11159.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11159.replay new file mode 100644 index 0000000000000000000000000000000000000000..d506e93e0ff31cbe1c5a29ef6ef8f4a0e717f83c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11159.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11b54f12090f6561f1e18fb04838fedf4fab628fe65af49f77b3c2c16b929fef +size 3624033 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11160.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11160.replay new file mode 100644 index 0000000000000000000000000000000000000000..965affbef475499cad669414224476e3b1a3dfbd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11160.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:457aa49130c9b0942420e7fd206b910107e28c162c0eb1ef2249b264344cbe74 +size 3624047 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11161.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11161.replay new file mode 100644 index 0000000000000000000000000000000000000000..a7146f29b611441bdcbe220c08a595314bc24b0c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11161.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:469efdf51b46fa265dde5dcddec341f08b3ea57c646326bbfdc5c0cb1176040b +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11162.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11162.replay new file mode 100644 index 0000000000000000000000000000000000000000..547ade2b859f641afdcf6d81addb97c53f90529f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11162.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2871b83b160784877b412f8592e717ad967c5bba158f6b5dc6f004b9b1edb94 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11163.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11163.replay new file mode 100644 index 0000000000000000000000000000000000000000..f5b36ff53a79c43ff81e63b660d5e7763533b32a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11163.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1429cf6463f34b9dd8d0e89b59a5b7941ecd93a1da2f831c628a82dfb208ad8 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11164.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11164.replay new file mode 100644 index 0000000000000000000000000000000000000000..30ce2aa0fba717a2de2865d9e82fdb8f44ec3ec9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11164.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3095304b347cf50f81c7785cbf127c7da9df06272fae6e7790311efb3d08cc26 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11165.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11165.replay new file mode 100644 index 0000000000000000000000000000000000000000..d506e93e0ff31cbe1c5a29ef6ef8f4a0e717f83c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11165.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11b54f12090f6561f1e18fb04838fedf4fab628fe65af49f77b3c2c16b929fef +size 3624033 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11166.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11166.replay new file mode 100644 index 0000000000000000000000000000000000000000..965affbef475499cad669414224476e3b1a3dfbd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11166.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:457aa49130c9b0942420e7fd206b910107e28c162c0eb1ef2249b264344cbe74 +size 3624047 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11167.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11167.replay new file mode 100644 index 0000000000000000000000000000000000000000..fa362f27fe3fdeb82185203a0deec9b1d07d1e46 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11167.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efa5060e0d18019d83a9ab10e489af0825135283b4bcf003133c978b3fe5d0ae +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11168.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11168.replay new file mode 100644 index 0000000000000000000000000000000000000000..547ade2b859f641afdcf6d81addb97c53f90529f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11168.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2871b83b160784877b412f8592e717ad967c5bba158f6b5dc6f004b9b1edb94 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11169.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11169.replay new file mode 100644 index 0000000000000000000000000000000000000000..f5b36ff53a79c43ff81e63b660d5e7763533b32a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11169.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1429cf6463f34b9dd8d0e89b59a5b7941ecd93a1da2f831c628a82dfb208ad8 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11170.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11170.replay new file mode 100644 index 0000000000000000000000000000000000000000..30ce2aa0fba717a2de2865d9e82fdb8f44ec3ec9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11170.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3095304b347cf50f81c7785cbf127c7da9df06272fae6e7790311efb3d08cc26 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11171.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11171.replay new file mode 100644 index 0000000000000000000000000000000000000000..d506e93e0ff31cbe1c5a29ef6ef8f4a0e717f83c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11171.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11b54f12090f6561f1e18fb04838fedf4fab628fe65af49f77b3c2c16b929fef +size 3624033 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11172.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11172.replay new file mode 100644 index 0000000000000000000000000000000000000000..965affbef475499cad669414224476e3b1a3dfbd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11172.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:457aa49130c9b0942420e7fd206b910107e28c162c0eb1ef2249b264344cbe74 +size 3624047 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11173.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11173.replay new file mode 100644 index 0000000000000000000000000000000000000000..aae0bbc4bd337444cb9a6e85b76a1ba04a99bf33 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11173.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e61acaed7975a76c9fa2a53017822233170411ff66154129aba7a3eed1aa9a1 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11174.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11174.replay new file mode 100644 index 0000000000000000000000000000000000000000..547ade2b859f641afdcf6d81addb97c53f90529f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11174.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2871b83b160784877b412f8592e717ad967c5bba158f6b5dc6f004b9b1edb94 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11175.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11175.replay new file mode 100644 index 0000000000000000000000000000000000000000..f5b36ff53a79c43ff81e63b660d5e7763533b32a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11175.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1429cf6463f34b9dd8d0e89b59a5b7941ecd93a1da2f831c628a82dfb208ad8 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11176.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11176.replay new file mode 100644 index 0000000000000000000000000000000000000000..30ce2aa0fba717a2de2865d9e82fdb8f44ec3ec9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11176.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3095304b347cf50f81c7785cbf127c7da9df06272fae6e7790311efb3d08cc26 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11177.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11177.replay new file mode 100644 index 0000000000000000000000000000000000000000..d506e93e0ff31cbe1c5a29ef6ef8f4a0e717f83c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11177.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11b54f12090f6561f1e18fb04838fedf4fab628fe65af49f77b3c2c16b929fef +size 3624033 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11178.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11178.replay new file mode 100644 index 0000000000000000000000000000000000000000..965affbef475499cad669414224476e3b1a3dfbd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11178.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:457aa49130c9b0942420e7fd206b910107e28c162c0eb1ef2249b264344cbe74 +size 3624047 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11179.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11179.replay new file mode 100644 index 0000000000000000000000000000000000000000..db698255c376604e184697378dada69a54f5111d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11179.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abc495ca775e90bebaa55ad1d7457c24fcf76376eecf26b167224b2408485c78 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11180.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11180.replay new file mode 100644 index 0000000000000000000000000000000000000000..aae1c23fce044a430c973e7bdec455c0a2b87002 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11180.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc4b2d2d84d4c3c3e80dc4213150f7d3e95142124ac5bc67b7bf1ef293c0e270 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11181.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11181.replay new file mode 100644 index 0000000000000000000000000000000000000000..1a77b61043fa756c6db7d5dd20fa083ea79d5124 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11181.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cf24c0e8fe313ab543322222bc51f9085957643376f36a11a0583876b7641df +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11182.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11182.replay new file mode 100644 index 0000000000000000000000000000000000000000..9d0a4d5f0f1223e8c6bca31f1073e5322aefcd97 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11182.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68e3d21d310af1929b338ccb7f21b028ac93c722b7760f988f00d62e008d594d +size 3624033 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11183.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11183.replay new file mode 100644 index 0000000000000000000000000000000000000000..ec5327fea9031b3f21697567f595ee2563b9a145 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11183.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9b112c96a735c012734d7af3bb4b8eb12b7f8946bdb0a01930bb6c1f4a92dcd +size 3624047 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11184.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11184.replay new file mode 100644 index 0000000000000000000000000000000000000000..b05a77688763d53965015ca7a9c4d0b9aea915e4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11184.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:625f70e91fe33d8ed1834b723c35df19cf88e460da8063d86aa74bb52cca9b7c +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11185.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11185.replay new file mode 100644 index 0000000000000000000000000000000000000000..aae1c23fce044a430c973e7bdec455c0a2b87002 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11185.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc4b2d2d84d4c3c3e80dc4213150f7d3e95142124ac5bc67b7bf1ef293c0e270 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11186.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11186.replay new file mode 100644 index 0000000000000000000000000000000000000000..1a77b61043fa756c6db7d5dd20fa083ea79d5124 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11186.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cf24c0e8fe313ab543322222bc51f9085957643376f36a11a0583876b7641df +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11187.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11187.replay new file mode 100644 index 0000000000000000000000000000000000000000..9d0a4d5f0f1223e8c6bca31f1073e5322aefcd97 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11187.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68e3d21d310af1929b338ccb7f21b028ac93c722b7760f988f00d62e008d594d +size 3624033 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11188.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11188.replay new file mode 100644 index 0000000000000000000000000000000000000000..ec5327fea9031b3f21697567f595ee2563b9a145 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11188.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9b112c96a735c012734d7af3bb4b8eb12b7f8946bdb0a01930bb6c1f4a92dcd +size 3624047 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11189.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11189.replay new file mode 100644 index 0000000000000000000000000000000000000000..4920d8077ac3312d8295210f1a971db05c7553b6 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11189.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fe423b4a97173c781d599febefab4e10aa133b5884913d5deacfe17915a7403 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11190.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11190.replay new file mode 100644 index 0000000000000000000000000000000000000000..aae1c23fce044a430c973e7bdec455c0a2b87002 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11190.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc4b2d2d84d4c3c3e80dc4213150f7d3e95142124ac5bc67b7bf1ef293c0e270 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11191.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11191.replay new file mode 100644 index 0000000000000000000000000000000000000000..1a77b61043fa756c6db7d5dd20fa083ea79d5124 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11191.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cf24c0e8fe313ab543322222bc51f9085957643376f36a11a0583876b7641df +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11192.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11192.replay new file mode 100644 index 0000000000000000000000000000000000000000..9d0a4d5f0f1223e8c6bca31f1073e5322aefcd97 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11192.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68e3d21d310af1929b338ccb7f21b028ac93c722b7760f988f00d62e008d594d +size 3624033 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11193.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11193.replay new file mode 100644 index 0000000000000000000000000000000000000000..ec5327fea9031b3f21697567f595ee2563b9a145 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11193.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9b112c96a735c012734d7af3bb4b8eb12b7f8946bdb0a01930bb6c1f4a92dcd +size 3624047 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11194.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11194.replay new file mode 100644 index 0000000000000000000000000000000000000000..f501d4453116c5eafad37b12db7e4b6fbb23924a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11194.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cee28594b7f9e86c2d7797c2052ccb7af78b47ecc5a3e044933d719fddcd56c5 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11195.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11195.replay new file mode 100644 index 0000000000000000000000000000000000000000..6e4eb0604f923cee7b977f73e7c5417caacc0186 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11195.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:388a4ac71cd3e95bbe9af95d438f3b5e01584b52dc42c8c579308eb501765b79 +size 3624033 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11196.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11196.replay new file mode 100644 index 0000000000000000000000000000000000000000..e239901a6f3412ef7b6bcbac452f0569bb7514f8 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11196.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fab0825da93a99009dea03572a47191cf48c1c8b50f8e5bd145c67fe8f30561 +size 3624047 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11197.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11197.replay new file mode 100644 index 0000000000000000000000000000000000000000..881e7073c3b0cf281ce182f1e74bddac76d6472c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11197.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a3e6d62dd33380af113d35b73e6ba1cede31669471e5226c8facebcc8d7d050 +size 3624026 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11198.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11198.replay new file mode 100644 index 0000000000000000000000000000000000000000..6e4eb0604f923cee7b977f73e7c5417caacc0186 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11198.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:388a4ac71cd3e95bbe9af95d438f3b5e01584b52dc42c8c579308eb501765b79 +size 3624033 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11199.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11199.replay new file mode 100644 index 0000000000000000000000000000000000000000..e239901a6f3412ef7b6bcbac452f0569bb7514f8 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11199.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fab0825da93a99009dea03572a47191cf48c1c8b50f8e5bd145c67fe8f30561 +size 3624047 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11200.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11200.replay new file mode 100644 index 0000000000000000000000000000000000000000..d870dc0e157ea83349e6d4da2c769a762383e24e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11200.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dcd0e2199ac4a5f60eca8cbdf27a3ba23e270c7520d21fcc4001aa82716354c +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11201.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11201.replay new file mode 100644 index 0000000000000000000000000000000000000000..94a334f0da329aff80e4929b245082b9fa62c7be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11201.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28b835677d9821f3b39ad6f6ccad32ca279383cbe581e6f5df92ca3dbde81393 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11202.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11202.replay new file mode 100644 index 0000000000000000000000000000000000000000..348068387c2eba08b2ee6608a8cd796341f8f7c1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11202.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a723e03f1262fb841e75d0b688b578943a0849d0c8bb21279a587e6ad7e1114b +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11203.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11203.replay new file mode 100644 index 0000000000000000000000000000000000000000..aecd983d1d816614a1a5036aa933961825af7587 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11203.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9da3458757c2239906d5d5090f234ddd45b1595fc192a2b059d4bbf6c9c280f +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11204.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11204.replay new file mode 100644 index 0000000000000000000000000000000000000000..94a334f0da329aff80e4929b245082b9fa62c7be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11204.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28b835677d9821f3b39ad6f6ccad32ca279383cbe581e6f5df92ca3dbde81393 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11205.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11205.replay new file mode 100644 index 0000000000000000000000000000000000000000..f19c6489067e87d6c178eedceeec7ac10367bac0 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11205.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88f079dfc6531ed7a06a48deaf3243c087c9e446b95dceda35b41c23738c10d5 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11206.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11206.replay new file mode 100644 index 0000000000000000000000000000000000000000..cc1dc16087e55760bfd54ee0a377359aca887280 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11206.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee411ec8e3c76c0f6706d51dc7c9325fb81f6efb261e7777835d5ba213147aed +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11207.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11207.replay new file mode 100644 index 0000000000000000000000000000000000000000..94a334f0da329aff80e4929b245082b9fa62c7be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11207.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28b835677d9821f3b39ad6f6ccad32ca279383cbe581e6f5df92ca3dbde81393 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11208.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11208.replay new file mode 100644 index 0000000000000000000000000000000000000000..348068387c2eba08b2ee6608a8cd796341f8f7c1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11208.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a723e03f1262fb841e75d0b688b578943a0849d0c8bb21279a587e6ad7e1114b +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11209.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11209.replay new file mode 100644 index 0000000000000000000000000000000000000000..565030461d650ef85483228d35e57f11d15ff67a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11209.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e49e9ed0926f180a687095f9594b820c860bcf0902bc75646c0407862662eed4 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11210.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11210.replay new file mode 100644 index 0000000000000000000000000000000000000000..94a334f0da329aff80e4929b245082b9fa62c7be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11210.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28b835677d9821f3b39ad6f6ccad32ca279383cbe581e6f5df92ca3dbde81393 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11211.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11211.replay new file mode 100644 index 0000000000000000000000000000000000000000..f19c6489067e87d6c178eedceeec7ac10367bac0 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11211.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88f079dfc6531ed7a06a48deaf3243c087c9e446b95dceda35b41c23738c10d5 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11212.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11212.replay new file mode 100644 index 0000000000000000000000000000000000000000..186893f229ffb921cf00c860a80fdd7867345a40 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11212.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f85ba08f6d3660c7cd3fc9be9fa11dbea78316f0ef31f746ff2782e6c2acfaa +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11213.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11213.replay new file mode 100644 index 0000000000000000000000000000000000000000..94a334f0da329aff80e4929b245082b9fa62c7be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11213.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28b835677d9821f3b39ad6f6ccad32ca279383cbe581e6f5df92ca3dbde81393 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11214.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11214.replay new file mode 100644 index 0000000000000000000000000000000000000000..348068387c2eba08b2ee6608a8cd796341f8f7c1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11214.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a723e03f1262fb841e75d0b688b578943a0849d0c8bb21279a587e6ad7e1114b +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11215.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11215.replay new file mode 100644 index 0000000000000000000000000000000000000000..26bc3bcf99598536e0edad3aeea9bcbe2e86c26d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11215.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53a060bceb57f139e24694dd5a8f6d21a42cbb490ed0d2c00b1512450c2efaa8 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11216.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11216.replay new file mode 100644 index 0000000000000000000000000000000000000000..94a334f0da329aff80e4929b245082b9fa62c7be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11216.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28b835677d9821f3b39ad6f6ccad32ca279383cbe581e6f5df92ca3dbde81393 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11217.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11217.replay new file mode 100644 index 0000000000000000000000000000000000000000..f19c6489067e87d6c178eedceeec7ac10367bac0 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11217.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88f079dfc6531ed7a06a48deaf3243c087c9e446b95dceda35b41c23738c10d5 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11218.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11218.replay new file mode 100644 index 0000000000000000000000000000000000000000..3c37c02d0e5c9fe13af3f5bffcc512b1490b1d76 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11218.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44796019b98bc879f525c835355dbf1e53b945afaa632bf14877d73f54e90561 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11219.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11219.replay new file mode 100644 index 0000000000000000000000000000000000000000..94a334f0da329aff80e4929b245082b9fa62c7be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11219.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28b835677d9821f3b39ad6f6ccad32ca279383cbe581e6f5df92ca3dbde81393 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11220.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11220.replay new file mode 100644 index 0000000000000000000000000000000000000000..348068387c2eba08b2ee6608a8cd796341f8f7c1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11220.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a723e03f1262fb841e75d0b688b578943a0849d0c8bb21279a587e6ad7e1114b +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11221.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11221.replay new file mode 100644 index 0000000000000000000000000000000000000000..253e39456c7ee4c623b714c58dfd7f648c1535fd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11221.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61acef72d18296de47c9926397cb9b93531bfd8fa6115c53d226f363e83526e8 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11222.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11222.replay new file mode 100644 index 0000000000000000000000000000000000000000..94a334f0da329aff80e4929b245082b9fa62c7be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11222.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28b835677d9821f3b39ad6f6ccad32ca279383cbe581e6f5df92ca3dbde81393 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11223.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11223.replay new file mode 100644 index 0000000000000000000000000000000000000000..f19c6489067e87d6c178eedceeec7ac10367bac0 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11223.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88f079dfc6531ed7a06a48deaf3243c087c9e446b95dceda35b41c23738c10d5 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11224.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11224.replay new file mode 100644 index 0000000000000000000000000000000000000000..b6cba0e032542ef31ca13da3c9537b360841c0a0 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11224.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83234779642b30f2cf08f850cde3fa995ebea1c54056a958ba00bd8d147262ff +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11225.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11225.replay new file mode 100644 index 0000000000000000000000000000000000000000..94a334f0da329aff80e4929b245082b9fa62c7be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11225.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28b835677d9821f3b39ad6f6ccad32ca279383cbe581e6f5df92ca3dbde81393 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11226.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11226.replay new file mode 100644 index 0000000000000000000000000000000000000000..348068387c2eba08b2ee6608a8cd796341f8f7c1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11226.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a723e03f1262fb841e75d0b688b578943a0849d0c8bb21279a587e6ad7e1114b +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11227.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11227.replay new file mode 100644 index 0000000000000000000000000000000000000000..9f48ea3c82c8f0d7b3af88d445ad3505a2e6b4bf --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11227.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:686fccf62fd2452a8f079ffaffa1c7b4ddc6e13351e4b0415eeac7dfdc19b1e1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11228.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11228.replay new file mode 100644 index 0000000000000000000000000000000000000000..96f77c3175e782ff7019abab8ba76a328b7e299a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11228.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:725042a70c2647d85af5ab0ffb170dc53b60647dc38b3f371a8a501955e7882d +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11229.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11229.replay new file mode 100644 index 0000000000000000000000000000000000000000..63400eccb9d38f90dd710bf3289870aef3a99fb8 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11229.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f3dfcecafabdb106c8d2de931dfea4db15a0175fb9ec48a23df23ba4cc03244 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11230.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11230.replay new file mode 100644 index 0000000000000000000000000000000000000000..6c96a0f8f88260a13c43ca4799fe7cfc0a85ecb3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11230.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cb00dca06dc07a9c57f9200943c945f09bbb8a60ab5db4df06efbabc36befc3 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11231.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11231.replay new file mode 100644 index 0000000000000000000000000000000000000000..50f1f9b8e865597bb7e183e8b1cf7cfa56734ef9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11231.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66a693bde6743dabcd99209d354a200b9deefe83e3f198f106a57254437d1493 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11232.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11232.replay new file mode 100644 index 0000000000000000000000000000000000000000..96f77c3175e782ff7019abab8ba76a328b7e299a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11232.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:725042a70c2647d85af5ab0ffb170dc53b60647dc38b3f371a8a501955e7882d +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11233.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11233.replay new file mode 100644 index 0000000000000000000000000000000000000000..4ff598aa364ac536758fa7379697a5ca71a43b83 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11233.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c774937abe7348fb84d5fe4fbca5c8a850e08d84b71f838a3e299329312729f0 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11234.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11234.replay new file mode 100644 index 0000000000000000000000000000000000000000..6c96a0f8f88260a13c43ca4799fe7cfc0a85ecb3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11234.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cb00dca06dc07a9c57f9200943c945f09bbb8a60ab5db4df06efbabc36befc3 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11235.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11235.replay new file mode 100644 index 0000000000000000000000000000000000000000..6daf0f019dc0dfee9407718c5d3d03ede69676cc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11235.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab9706102d20bb5d70f53c6c771ccd980eda8ef869cb8b9a0aeec4645a395ce8 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11236.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11236.replay new file mode 100644 index 0000000000000000000000000000000000000000..96f77c3175e782ff7019abab8ba76a328b7e299a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11236.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:725042a70c2647d85af5ab0ffb170dc53b60647dc38b3f371a8a501955e7882d +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11237.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11237.replay new file mode 100644 index 0000000000000000000000000000000000000000..443c1184f94510aefdcd946c61d73850c09b8409 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11237.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5cfbabd77a27873e3495d3ff18af56cb0d54a86a2a9844655784012c74e58cc +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11238.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11238.replay new file mode 100644 index 0000000000000000000000000000000000000000..1f7583a052a4ffdc6e5d1d21b5cdff1d45f3f3a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11238.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95d225fd447f81064ea75af04a10b9bc357ab4ce5915bd34c9217630ec7edda8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11239.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11239.replay new file mode 100644 index 0000000000000000000000000000000000000000..8dd12280e09c37a1b42515b07f7642b981a5f8df --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11239.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2759a8b6b1b4cee8ed5b3d32863794f4190f83a3456157e36acca6d2766fcb9e +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11240.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11240.replay new file mode 100644 index 0000000000000000000000000000000000000000..831495d03fd5c4385d17db33cdce281d020a58be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11240.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55f61a49594df3ea58083135c2e509e83befc15afe84d6703b53bb485782b2b4 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11241.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11241.replay new file mode 100644 index 0000000000000000000000000000000000000000..99efbe9ba7659d357000c03ab206b55547c25c1f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11241.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de3be26a7fad932eb1ea4c78b9ef50901d0f627806136d5b1a2e6f972a38d1c9 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11242.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11242.replay new file mode 100644 index 0000000000000000000000000000000000000000..0e3eeb5eeeb32e3f0437e4f6c16dc7d8e6d0522d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11242.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4589e40b8e7685363c73ead7bcab47b95afeafe0d47176bc3a78d49894583be +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11243.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11243.replay new file mode 100644 index 0000000000000000000000000000000000000000..1f7583a052a4ffdc6e5d1d21b5cdff1d45f3f3a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11243.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95d225fd447f81064ea75af04a10b9bc357ab4ce5915bd34c9217630ec7edda8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11244.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11244.replay new file mode 100644 index 0000000000000000000000000000000000000000..8dd12280e09c37a1b42515b07f7642b981a5f8df --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11244.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2759a8b6b1b4cee8ed5b3d32863794f4190f83a3456157e36acca6d2766fcb9e +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11245.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11245.replay new file mode 100644 index 0000000000000000000000000000000000000000..831495d03fd5c4385d17db33cdce281d020a58be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11245.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55f61a49594df3ea58083135c2e509e83befc15afe84d6703b53bb485782b2b4 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11246.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11246.replay new file mode 100644 index 0000000000000000000000000000000000000000..fea5d7235e4dec5338c817271ece52e6fffd13cd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11246.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ecc25e33263070eb4c6ad82cd8d335ccd0c8d348a168a3efaf3adc6aca37069 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11247.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11247.replay new file mode 100644 index 0000000000000000000000000000000000000000..6a796094a93b7b95a07f9119f730818626cc8213 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11247.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3bcacf296c6c46c24c8f305af721ce1bd8eee96554e3860bc457d17947253b0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11248.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11248.replay new file mode 100644 index 0000000000000000000000000000000000000000..1f7583a052a4ffdc6e5d1d21b5cdff1d45f3f3a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11248.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95d225fd447f81064ea75af04a10b9bc357ab4ce5915bd34c9217630ec7edda8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11249.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11249.replay new file mode 100644 index 0000000000000000000000000000000000000000..8dd12280e09c37a1b42515b07f7642b981a5f8df --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11249.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2759a8b6b1b4cee8ed5b3d32863794f4190f83a3456157e36acca6d2766fcb9e +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11250.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11250.replay new file mode 100644 index 0000000000000000000000000000000000000000..831495d03fd5c4385d17db33cdce281d020a58be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11250.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55f61a49594df3ea58083135c2e509e83befc15afe84d6703b53bb485782b2b4 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11251.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11251.replay new file mode 100644 index 0000000000000000000000000000000000000000..99efbe9ba7659d357000c03ab206b55547c25c1f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11251.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de3be26a7fad932eb1ea4c78b9ef50901d0f627806136d5b1a2e6f972a38d1c9 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11252.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11252.replay new file mode 100644 index 0000000000000000000000000000000000000000..40d8828523a4e5261d9385268c3b8bccb6503da7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11252.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55c9c03c681fac8a43f2f661776af8337c55059da9ba5ded6b26194596675eb4 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11253.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11253.replay new file mode 100644 index 0000000000000000000000000000000000000000..1f7583a052a4ffdc6e5d1d21b5cdff1d45f3f3a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11253.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95d225fd447f81064ea75af04a10b9bc357ab4ce5915bd34c9217630ec7edda8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11254.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11254.replay new file mode 100644 index 0000000000000000000000000000000000000000..8dd12280e09c37a1b42515b07f7642b981a5f8df --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11254.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2759a8b6b1b4cee8ed5b3d32863794f4190f83a3456157e36acca6d2766fcb9e +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11255.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11255.replay new file mode 100644 index 0000000000000000000000000000000000000000..831495d03fd5c4385d17db33cdce281d020a58be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11255.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55f61a49594df3ea58083135c2e509e83befc15afe84d6703b53bb485782b2b4 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11256.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11256.replay new file mode 100644 index 0000000000000000000000000000000000000000..fea5d7235e4dec5338c817271ece52e6fffd13cd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11256.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ecc25e33263070eb4c6ad82cd8d335ccd0c8d348a168a3efaf3adc6aca37069 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11257.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11257.replay new file mode 100644 index 0000000000000000000000000000000000000000..f7b3fef22d0a3f7e5bf1873a6e39ae64ea688304 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11257.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a356ea91ae943bdb2c4e365264dd999c6fa794e4a85675eae7d01c592ba33746 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11258.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11258.replay new file mode 100644 index 0000000000000000000000000000000000000000..1f7583a052a4ffdc6e5d1d21b5cdff1d45f3f3a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11258.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95d225fd447f81064ea75af04a10b9bc357ab4ce5915bd34c9217630ec7edda8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11259.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11259.replay new file mode 100644 index 0000000000000000000000000000000000000000..8dd12280e09c37a1b42515b07f7642b981a5f8df --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11259.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2759a8b6b1b4cee8ed5b3d32863794f4190f83a3456157e36acca6d2766fcb9e +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11260.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11260.replay new file mode 100644 index 0000000000000000000000000000000000000000..831495d03fd5c4385d17db33cdce281d020a58be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11260.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55f61a49594df3ea58083135c2e509e83befc15afe84d6703b53bb485782b2b4 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11261.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11261.replay new file mode 100644 index 0000000000000000000000000000000000000000..99efbe9ba7659d357000c03ab206b55547c25c1f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11261.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de3be26a7fad932eb1ea4c78b9ef50901d0f627806136d5b1a2e6f972a38d1c9 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11262.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11262.replay new file mode 100644 index 0000000000000000000000000000000000000000..68adfed671f628fc6b816916668f6e0b87e32311 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11262.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7183abf95d7857d5a71c9e05ad3c43203f77cbaadd3fbdbb34c52edc0018e9fe +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11263.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11263.replay new file mode 100644 index 0000000000000000000000000000000000000000..1f7583a052a4ffdc6e5d1d21b5cdff1d45f3f3a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11263.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95d225fd447f81064ea75af04a10b9bc357ab4ce5915bd34c9217630ec7edda8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11264.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11264.replay new file mode 100644 index 0000000000000000000000000000000000000000..8dd12280e09c37a1b42515b07f7642b981a5f8df --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11264.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2759a8b6b1b4cee8ed5b3d32863794f4190f83a3456157e36acca6d2766fcb9e +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11265.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11265.replay new file mode 100644 index 0000000000000000000000000000000000000000..831495d03fd5c4385d17db33cdce281d020a58be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11265.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55f61a49594df3ea58083135c2e509e83befc15afe84d6703b53bb485782b2b4 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11266.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11266.replay new file mode 100644 index 0000000000000000000000000000000000000000..fea5d7235e4dec5338c817271ece52e6fffd13cd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11266.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ecc25e33263070eb4c6ad82cd8d335ccd0c8d348a168a3efaf3adc6aca37069 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11267.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11267.replay new file mode 100644 index 0000000000000000000000000000000000000000..c7ee7046438f9cf8ee922dd3cd27697b2b32f8cc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11267.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7816e2f741edf56cac26c245a6caf9646b261d43c91906426cb54cc5d68fe1a0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11268.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11268.replay new file mode 100644 index 0000000000000000000000000000000000000000..1f7583a052a4ffdc6e5d1d21b5cdff1d45f3f3a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11268.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95d225fd447f81064ea75af04a10b9bc357ab4ce5915bd34c9217630ec7edda8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11269.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11269.replay new file mode 100644 index 0000000000000000000000000000000000000000..8dd12280e09c37a1b42515b07f7642b981a5f8df --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11269.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2759a8b6b1b4cee8ed5b3d32863794f4190f83a3456157e36acca6d2766fcb9e +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11270.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11270.replay new file mode 100644 index 0000000000000000000000000000000000000000..831495d03fd5c4385d17db33cdce281d020a58be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11270.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55f61a49594df3ea58083135c2e509e83befc15afe84d6703b53bb485782b2b4 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11271.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11271.replay new file mode 100644 index 0000000000000000000000000000000000000000..99efbe9ba7659d357000c03ab206b55547c25c1f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11271.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de3be26a7fad932eb1ea4c78b9ef50901d0f627806136d5b1a2e6f972a38d1c9 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11272.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11272.replay new file mode 100644 index 0000000000000000000000000000000000000000..0b285bb7ed6a05c1e4b289cf0eb1e8bb61139223 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11272.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8a7787288e4981a8e435b8b8464ef742a332cb12ab904190b377d6a607efc82 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11273.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11273.replay new file mode 100644 index 0000000000000000000000000000000000000000..1f7583a052a4ffdc6e5d1d21b5cdff1d45f3f3a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11273.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95d225fd447f81064ea75af04a10b9bc357ab4ce5915bd34c9217630ec7edda8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11274.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11274.replay new file mode 100644 index 0000000000000000000000000000000000000000..8dd12280e09c37a1b42515b07f7642b981a5f8df --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11274.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2759a8b6b1b4cee8ed5b3d32863794f4190f83a3456157e36acca6d2766fcb9e +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11275.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11275.replay new file mode 100644 index 0000000000000000000000000000000000000000..831495d03fd5c4385d17db33cdce281d020a58be --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11275.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55f61a49594df3ea58083135c2e509e83befc15afe84d6703b53bb485782b2b4 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11276.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11276.replay new file mode 100644 index 0000000000000000000000000000000000000000..fea5d7235e4dec5338c817271ece52e6fffd13cd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11276.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ecc25e33263070eb4c6ad82cd8d335ccd0c8d348a168a3efaf3adc6aca37069 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11277.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11277.replay new file mode 100644 index 0000000000000000000000000000000000000000..704d1272583943a8d5345bc2552bcef0051f7422 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11277.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59985ab87b57f5e9818b667db04a5625116dfc1a5d879aefce1783c5487e59bd +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11278.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11278.replay new file mode 100644 index 0000000000000000000000000000000000000000..8649b09d46ba9ecfbf7bb696c66bff40733d51c5 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11278.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17c59457e723afa2ffdcb4c98e1637e0072374250ebd88537b30b2be48f16f5d +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11279.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11279.replay new file mode 100644 index 0000000000000000000000000000000000000000..2e5ca48717346b06f2e3b469c6c79488a157f9ed --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11279.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a405a3a073d353eddcc421998738927b9e7a1683f4ef068f73bc6422f63a0f7 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11280.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11280.replay new file mode 100644 index 0000000000000000000000000000000000000000..813569b098a3dd067cab41b77509274e5a59eb36 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11280.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d93282d10a19cd45d9ca7522b319dfced9263843be61524b2cb39c2e9d29389d +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11281.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11281.replay new file mode 100644 index 0000000000000000000000000000000000000000..0ecf154983ec79cbe81d441a08616ad9690812e6 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11281.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:061fde426d1d75b6ec933623d0db87d7a711757c66083e256faf354d61928727 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11282.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11282.replay new file mode 100644 index 0000000000000000000000000000000000000000..8649b09d46ba9ecfbf7bb696c66bff40733d51c5 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11282.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17c59457e723afa2ffdcb4c98e1637e0072374250ebd88537b30b2be48f16f5d +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11283.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11283.replay new file mode 100644 index 0000000000000000000000000000000000000000..2e5ca48717346b06f2e3b469c6c79488a157f9ed --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11283.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a405a3a073d353eddcc421998738927b9e7a1683f4ef068f73bc6422f63a0f7 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11284.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11284.replay new file mode 100644 index 0000000000000000000000000000000000000000..9a1a771b198e23260d3d93bee08a63542adf6de9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11284.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89b873929e7a9c074bc81cab7214d7eeb6ed3e31bed2f01eb00ed386e5ac31da +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11285.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11285.replay new file mode 100644 index 0000000000000000000000000000000000000000..1152b2808ce03198ff253022c62dfed56798f067 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11285.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5020ce31c5281de504d43ea102e457175cc46fa25ea5e95ee7d4aa6f11caefc +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11286.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11286.replay new file mode 100644 index 0000000000000000000000000000000000000000..c2368c7397aae5d8aa663c3ea8d8d99e55da0424 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11286.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99d4b30485e83ed8a42409c10bee9c2eac9b91192b5b066f32d93fa93c8790fa +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11287.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11287.replay new file mode 100644 index 0000000000000000000000000000000000000000..b289cafb86cf2673e937fee973f0418c75924e74 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11287.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e091d91707e32b8d04263e3a41b9401855ab650c5ad23f93cc2b7a621c520727 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11288.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11288.replay new file mode 100644 index 0000000000000000000000000000000000000000..575b29401d23f5eda7aabba3fd8ed960c28987ad --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11288.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8c92c7780601f1ea24e832865e98363ce65de05f7d5a3188160be3df1b20c3d +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11289.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11289.replay new file mode 100644 index 0000000000000000000000000000000000000000..75621bb7cf1754ee144add71960fda9bf4262f7e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11289.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19ea1f8bc1ff2aa592b05ea94c2372fa637599ec9719292661c705742cbf2c79 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11290.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11290.replay new file mode 100644 index 0000000000000000000000000000000000000000..f8aa5b9fdde53f7c5571f3e30a75c167a3a240d1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11290.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5c12324d94c857f1c6b692430b547209e3cbeb6a9e75ab38acec6fddb048ddd +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11291.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11291.replay new file mode 100644 index 0000000000000000000000000000000000000000..ed66773d68a04714203358eeb8ac77f27b6aedcc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11291.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfb0fa4d14cbc8980aa9d9ce0c6ff55356eadee964506e7fc46d637551ec646b +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11292.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11292.replay new file mode 100644 index 0000000000000000000000000000000000000000..6f0d801464cb821b6b62a56d09761647305c3d88 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11292.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a603ab49df8e6e9065993014b1a0f39db149e75a5c896b8728feb43b28ed788 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11293.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11293.replay new file mode 100644 index 0000000000000000000000000000000000000000..75621bb7cf1754ee144add71960fda9bf4262f7e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11293.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19ea1f8bc1ff2aa592b05ea94c2372fa637599ec9719292661c705742cbf2c79 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11294.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11294.replay new file mode 100644 index 0000000000000000000000000000000000000000..3347e98848dc9df8552c74838028cf1fdbe6245b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11294.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:845f01d83a31a04e9d89643aea9769bad5bcbb7529828bb737850e6bac0bd899 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11295.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11295.replay new file mode 100644 index 0000000000000000000000000000000000000000..60fff4c20a545df3c643579c9d37eb131d858d68 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11295.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa750cb9f624e5d1deaab4ec114bc716d69fc3b6818cf4f9e462a5a09d112cd +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11296.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11296.replay new file mode 100644 index 0000000000000000000000000000000000000000..8fea4a17cf7f40e8b0ddaa880e536fb6c2513463 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11296.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53f2af3231302a31c8361d5fd23b0edaa28ab20695e3e60eb9f56e0ccf39510a +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11297.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11297.replay new file mode 100644 index 0000000000000000000000000000000000000000..e05af6e6929e15209d4be629fb589627f0e4b54a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11297.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9dfc0e8bf042b639bf5cc2c197ea255163f64e06ede19ce84b26db2d9cbfb57 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11298.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11298.replay new file mode 100644 index 0000000000000000000000000000000000000000..bd173e92797169999c17cffc06cb67ac258c216f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11298.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ec715e4f44aafc7641bd411ad54d9f8b40a502899e4958335870a430ec9299a +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11299.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11299.replay new file mode 100644 index 0000000000000000000000000000000000000000..b5973f4513c3650699f492339929a18a10fe7bcd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11299.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f05c879ec4302545bdd16ba38961855cf58d19c27d32f7f6365dd37fff5a2dc +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11300.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11300.replay new file mode 100644 index 0000000000000000000000000000000000000000..60fff4c20a545df3c643579c9d37eb131d858d68 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11300.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa750cb9f624e5d1deaab4ec114bc716d69fc3b6818cf4f9e462a5a09d112cd +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11301.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11301.replay new file mode 100644 index 0000000000000000000000000000000000000000..8fea4a17cf7f40e8b0ddaa880e536fb6c2513463 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11301.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53f2af3231302a31c8361d5fd23b0edaa28ab20695e3e60eb9f56e0ccf39510a +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11302.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11302.replay new file mode 100644 index 0000000000000000000000000000000000000000..e05af6e6929e15209d4be629fb589627f0e4b54a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11302.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9dfc0e8bf042b639bf5cc2c197ea255163f64e06ede19ce84b26db2d9cbfb57 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11303.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11303.replay new file mode 100644 index 0000000000000000000000000000000000000000..bd173e92797169999c17cffc06cb67ac258c216f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11303.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ec715e4f44aafc7641bd411ad54d9f8b40a502899e4958335870a430ec9299a +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11304.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11304.replay new file mode 100644 index 0000000000000000000000000000000000000000..c11f3e14915956c1f7fd8d89e1d37837d01e8361 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11304.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33c4003b7512f462e112cc290709e8dcbc864b8306c0cfb8c9e75d60fe41c8f9 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11305.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11305.replay new file mode 100644 index 0000000000000000000000000000000000000000..60fff4c20a545df3c643579c9d37eb131d858d68 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11305.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa750cb9f624e5d1deaab4ec114bc716d69fc3b6818cf4f9e462a5a09d112cd +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11306.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11306.replay new file mode 100644 index 0000000000000000000000000000000000000000..8fea4a17cf7f40e8b0ddaa880e536fb6c2513463 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11306.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53f2af3231302a31c8361d5fd23b0edaa28ab20695e3e60eb9f56e0ccf39510a +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11307.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11307.replay new file mode 100644 index 0000000000000000000000000000000000000000..e05af6e6929e15209d4be629fb589627f0e4b54a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11307.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9dfc0e8bf042b639bf5cc2c197ea255163f64e06ede19ce84b26db2d9cbfb57 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11308.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11308.replay new file mode 100644 index 0000000000000000000000000000000000000000..bd173e92797169999c17cffc06cb67ac258c216f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11308.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ec715e4f44aafc7641bd411ad54d9f8b40a502899e4958335870a430ec9299a +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11309.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11309.replay new file mode 100644 index 0000000000000000000000000000000000000000..078815127235fc1d2544fad9d4af6692a1821973 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11309.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:544ab1222dd2a9ba8ea42539f2f0393ca3cca8f3de26fc33a850cee59cb7f16a +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11310.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11310.replay new file mode 100644 index 0000000000000000000000000000000000000000..60fff4c20a545df3c643579c9d37eb131d858d68 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11310.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa750cb9f624e5d1deaab4ec114bc716d69fc3b6818cf4f9e462a5a09d112cd +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11311.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11311.replay new file mode 100644 index 0000000000000000000000000000000000000000..8fea4a17cf7f40e8b0ddaa880e536fb6c2513463 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11311.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53f2af3231302a31c8361d5fd23b0edaa28ab20695e3e60eb9f56e0ccf39510a +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11312.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11312.replay new file mode 100644 index 0000000000000000000000000000000000000000..e05af6e6929e15209d4be629fb589627f0e4b54a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11312.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9dfc0e8bf042b639bf5cc2c197ea255163f64e06ede19ce84b26db2d9cbfb57 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11313.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11313.replay new file mode 100644 index 0000000000000000000000000000000000000000..bd173e92797169999c17cffc06cb67ac258c216f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11313.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ec715e4f44aafc7641bd411ad54d9f8b40a502899e4958335870a430ec9299a +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11314.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11314.replay new file mode 100644 index 0000000000000000000000000000000000000000..c305b333fc707a58657c826abbbdd7e934f52905 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11314.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b6ead88a74a904048accd5755ad6a06bd574c4836293e5ace7bf6b5c7feb88c +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11315.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11315.replay new file mode 100644 index 0000000000000000000000000000000000000000..60fff4c20a545df3c643579c9d37eb131d858d68 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11315.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa750cb9f624e5d1deaab4ec114bc716d69fc3b6818cf4f9e462a5a09d112cd +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11316.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11316.replay new file mode 100644 index 0000000000000000000000000000000000000000..8fea4a17cf7f40e8b0ddaa880e536fb6c2513463 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11316.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53f2af3231302a31c8361d5fd23b0edaa28ab20695e3e60eb9f56e0ccf39510a +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11317.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11317.replay new file mode 100644 index 0000000000000000000000000000000000000000..e05af6e6929e15209d4be629fb589627f0e4b54a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11317.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9dfc0e8bf042b639bf5cc2c197ea255163f64e06ede19ce84b26db2d9cbfb57 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11318.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11318.replay new file mode 100644 index 0000000000000000000000000000000000000000..bd173e92797169999c17cffc06cb67ac258c216f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11318.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ec715e4f44aafc7641bd411ad54d9f8b40a502899e4958335870a430ec9299a +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11319.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11319.replay new file mode 100644 index 0000000000000000000000000000000000000000..da341f51d0fde29388d37c6a00a6536eb09a6a2e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11319.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:806905ef818f15f6bba4630b34f9aa8586643d545e441475a608e65a7c41c45c +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11320.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11320.replay new file mode 100644 index 0000000000000000000000000000000000000000..60fff4c20a545df3c643579c9d37eb131d858d68 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11320.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa750cb9f624e5d1deaab4ec114bc716d69fc3b6818cf4f9e462a5a09d112cd +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11321.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11321.replay new file mode 100644 index 0000000000000000000000000000000000000000..8fea4a17cf7f40e8b0ddaa880e536fb6c2513463 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11321.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53f2af3231302a31c8361d5fd23b0edaa28ab20695e3e60eb9f56e0ccf39510a +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11322.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11322.replay new file mode 100644 index 0000000000000000000000000000000000000000..e05af6e6929e15209d4be629fb589627f0e4b54a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11322.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9dfc0e8bf042b639bf5cc2c197ea255163f64e06ede19ce84b26db2d9cbfb57 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11323.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11323.replay new file mode 100644 index 0000000000000000000000000000000000000000..bd173e92797169999c17cffc06cb67ac258c216f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11323.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ec715e4f44aafc7641bd411ad54d9f8b40a502899e4958335870a430ec9299a +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11324.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11324.replay new file mode 100644 index 0000000000000000000000000000000000000000..e2eb0c28ebe52bc17d9a567e0af3a6d6606e0563 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11324.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce26948d3c03115170898757b808add1a2a05d741ca1ec04fc7e2d113b0e2bd7 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11325.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11325.replay new file mode 100644 index 0000000000000000000000000000000000000000..60fff4c20a545df3c643579c9d37eb131d858d68 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11325.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa750cb9f624e5d1deaab4ec114bc716d69fc3b6818cf4f9e462a5a09d112cd +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11326.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11326.replay new file mode 100644 index 0000000000000000000000000000000000000000..8fea4a17cf7f40e8b0ddaa880e536fb6c2513463 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11326.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53f2af3231302a31c8361d5fd23b0edaa28ab20695e3e60eb9f56e0ccf39510a +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11327.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11327.replay new file mode 100644 index 0000000000000000000000000000000000000000..e05af6e6929e15209d4be629fb589627f0e4b54a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11327.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9dfc0e8bf042b639bf5cc2c197ea255163f64e06ede19ce84b26db2d9cbfb57 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11328.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11328.replay new file mode 100644 index 0000000000000000000000000000000000000000..bd173e92797169999c17cffc06cb67ac258c216f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11328.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ec715e4f44aafc7641bd411ad54d9f8b40a502899e4958335870a430ec9299a +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11329.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11329.replay new file mode 100644 index 0000000000000000000000000000000000000000..65cf9ab92df9e7380d78846c163372974bacb4b7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11329.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a44567f3cb15118f026474071e01354c82e054c72916c75a553c8350acc33899 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11330.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11330.replay new file mode 100644 index 0000000000000000000000000000000000000000..b415760915871e2c5bd60e88a9124ce798df7c7d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11330.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89573eb74820047bd95353fc2133f60b1d6540a3dc4695ac0f697b3eed113547 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11331.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11331.replay new file mode 100644 index 0000000000000000000000000000000000000000..7c42f37463957311f49fd3853a2b3eec1647945a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11331.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87b02cdb14a70c5cc0aa4dbf4382e4cd1b29eeff210504181ac74b8ea4bee159 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11332.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11332.replay new file mode 100644 index 0000000000000000000000000000000000000000..38ff14cb5579f37995ec5631b937514b121184b7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11332.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c078d00f4c5e2eca362b9ceb7dc6a6abb702b58873ae4dad56f2821d0223056 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11333.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11333.replay new file mode 100644 index 0000000000000000000000000000000000000000..bf8db19009d8caf611140cd351470b986e6f560a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11333.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2724ae6eb35a3b83efe9433028c4eac8d3b38caca86119ab73b19ad6ea06a20 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11334.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11334.replay new file mode 100644 index 0000000000000000000000000000000000000000..b415760915871e2c5bd60e88a9124ce798df7c7d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11334.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89573eb74820047bd95353fc2133f60b1d6540a3dc4695ac0f697b3eed113547 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11335.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11335.replay new file mode 100644 index 0000000000000000000000000000000000000000..7c42f37463957311f49fd3853a2b3eec1647945a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11335.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87b02cdb14a70c5cc0aa4dbf4382e4cd1b29eeff210504181ac74b8ea4bee159 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11336.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11336.replay new file mode 100644 index 0000000000000000000000000000000000000000..38ff14cb5579f37995ec5631b937514b121184b7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11336.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c078d00f4c5e2eca362b9ceb7dc6a6abb702b58873ae4dad56f2821d0223056 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11337.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11337.replay new file mode 100644 index 0000000000000000000000000000000000000000..bc974213b978a497141faa5299fcdb9f85299bb7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11337.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c54ae7a45e417946d3067109b980a5fa25cd37955d47a85fedd66def9239a7d8 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11338.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11338.replay new file mode 100644 index 0000000000000000000000000000000000000000..b415760915871e2c5bd60e88a9124ce798df7c7d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11338.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89573eb74820047bd95353fc2133f60b1d6540a3dc4695ac0f697b3eed113547 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11339.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11339.replay new file mode 100644 index 0000000000000000000000000000000000000000..7c42f37463957311f49fd3853a2b3eec1647945a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11339.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87b02cdb14a70c5cc0aa4dbf4382e4cd1b29eeff210504181ac74b8ea4bee159 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11340.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11340.replay new file mode 100644 index 0000000000000000000000000000000000000000..38ff14cb5579f37995ec5631b937514b121184b7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11340.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c078d00f4c5e2eca362b9ceb7dc6a6abb702b58873ae4dad56f2821d0223056 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11341.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11341.replay new file mode 100644 index 0000000000000000000000000000000000000000..fb9da2c5861cc24c638b6a6e0d7ec710bf13c504 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11341.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbec716d416e9549a992a10edf178dd34ca66ba9f0ae5054c6fad26d20ad36b8 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11342.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11342.replay new file mode 100644 index 0000000000000000000000000000000000000000..2da94c4a50b445dd74f314d38dccdefe1356c6e3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11342.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1412d17b4e7b14123a49f3d41264ad893a15c6021d4d5edf78c0e1ab8876049b +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11343.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11343.replay new file mode 100644 index 0000000000000000000000000000000000000000..a2bfc6668289cec74d6d24fdf26c8e1022ff9c85 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11343.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca8163e7390f69a41fbcf3aa08b9ddaaaeb9957edf3e68a672112d378436e293 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11344.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11344.replay new file mode 100644 index 0000000000000000000000000000000000000000..2da94c4a50b445dd74f314d38dccdefe1356c6e3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11344.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1412d17b4e7b14123a49f3d41264ad893a15c6021d4d5edf78c0e1ab8876049b +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11345.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11345.replay new file mode 100644 index 0000000000000000000000000000000000000000..26ccfdeb9ba49b016d9ce4608e001d8ea13a1c60 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11345.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7d131b0e3411c3890fe6152c6ad5218a942840a6f3ea8bb339995ab183fb1c0 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11346.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11346.replay new file mode 100644 index 0000000000000000000000000000000000000000..fd340f6c98cc4118c2a1b4de1c1d4a3fb72e3df2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11346.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc2e11fa8931c7c43f7ee75feba42a55b5b89cbe3951224a300472404f204134 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11347.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11347.replay new file mode 100644 index 0000000000000000000000000000000000000000..999ca5db0a8e1ab77655bfa518bb3d27a9c4dc5f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11347.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08999af700e9e90b5d2f504329a35864306278fa88645300b0c018576a1b1395 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11348.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11348.replay new file mode 100644 index 0000000000000000000000000000000000000000..e22d79ce08149106e198e2b40070e37475aacf1f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11348.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d7e492ba2d5c0c4c29b265c63a749e0a93ac79d35f181ecb44dd7abae0eca71 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11349.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11349.replay new file mode 100644 index 0000000000000000000000000000000000000000..fd340f6c98cc4118c2a1b4de1c1d4a3fb72e3df2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11349.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc2e11fa8931c7c43f7ee75feba42a55b5b89cbe3951224a300472404f204134 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11350.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11350.replay new file mode 100644 index 0000000000000000000000000000000000000000..999ca5db0a8e1ab77655bfa518bb3d27a9c4dc5f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11350.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08999af700e9e90b5d2f504329a35864306278fa88645300b0c018576a1b1395 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11351.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11351.replay new file mode 100644 index 0000000000000000000000000000000000000000..dd11728e2a5bb75cc92ac0d04a8052b2271f2ad8 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11351.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4557cd02ab662544ec2eb01af31dbdea67ffa540100c1da743f4caef12a45c8d +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11352.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11352.replay new file mode 100644 index 0000000000000000000000000000000000000000..fd340f6c98cc4118c2a1b4de1c1d4a3fb72e3df2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11352.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc2e11fa8931c7c43f7ee75feba42a55b5b89cbe3951224a300472404f204134 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11353.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11353.replay new file mode 100644 index 0000000000000000000000000000000000000000..999ca5db0a8e1ab77655bfa518bb3d27a9c4dc5f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11353.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08999af700e9e90b5d2f504329a35864306278fa88645300b0c018576a1b1395 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11354.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11354.replay new file mode 100644 index 0000000000000000000000000000000000000000..cae2f7de1f74a524146f0848784442ce061d8157 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11354.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b24bfc185242b6ff2692bac8c6cf6e145766d4ceab7aa3fcc98bc9bac0dfb24a +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11355.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11355.replay new file mode 100644 index 0000000000000000000000000000000000000000..fd340f6c98cc4118c2a1b4de1c1d4a3fb72e3df2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11355.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc2e11fa8931c7c43f7ee75feba42a55b5b89cbe3951224a300472404f204134 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11356.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11356.replay new file mode 100644 index 0000000000000000000000000000000000000000..999ca5db0a8e1ab77655bfa518bb3d27a9c4dc5f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11356.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08999af700e9e90b5d2f504329a35864306278fa88645300b0c018576a1b1395 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11357.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11357.replay new file mode 100644 index 0000000000000000000000000000000000000000..d3dcde747e7dfa165a29f1308dae07c13938c0d7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11357.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc57a490e22ade7ef23253246bdae6e8751700228aa773fb50bed8cc2bb0daba +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11358.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11358.replay new file mode 100644 index 0000000000000000000000000000000000000000..fd340f6c98cc4118c2a1b4de1c1d4a3fb72e3df2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11358.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc2e11fa8931c7c43f7ee75feba42a55b5b89cbe3951224a300472404f204134 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11359.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11359.replay new file mode 100644 index 0000000000000000000000000000000000000000..999ca5db0a8e1ab77655bfa518bb3d27a9c4dc5f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11359.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08999af700e9e90b5d2f504329a35864306278fa88645300b0c018576a1b1395 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11360.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11360.replay new file mode 100644 index 0000000000000000000000000000000000000000..39b1d9fe1179ede56daa25928d4f8c84cdde962a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11360.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55fb829a90ec13c81e95abaaeaad8339eb48b2f863bf3f14b11c8fd55b930436 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11361.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11361.replay new file mode 100644 index 0000000000000000000000000000000000000000..fd340f6c98cc4118c2a1b4de1c1d4a3fb72e3df2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11361.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc2e11fa8931c7c43f7ee75feba42a55b5b89cbe3951224a300472404f204134 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11362.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11362.replay new file mode 100644 index 0000000000000000000000000000000000000000..999ca5db0a8e1ab77655bfa518bb3d27a9c4dc5f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11362.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08999af700e9e90b5d2f504329a35864306278fa88645300b0c018576a1b1395 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11363.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11363.replay new file mode 100644 index 0000000000000000000000000000000000000000..0c08585a2230d418713bb77d70ace2e63e8a86db --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11363.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0728f294e3abc68f9e0e0c141293b920a5f69d353f4ce6301126981f41a44048 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11364.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11364.replay new file mode 100644 index 0000000000000000000000000000000000000000..fd340f6c98cc4118c2a1b4de1c1d4a3fb72e3df2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11364.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc2e11fa8931c7c43f7ee75feba42a55b5b89cbe3951224a300472404f204134 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11365.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11365.replay new file mode 100644 index 0000000000000000000000000000000000000000..999ca5db0a8e1ab77655bfa518bb3d27a9c4dc5f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11365.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08999af700e9e90b5d2f504329a35864306278fa88645300b0c018576a1b1395 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11366.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11366.replay new file mode 100644 index 0000000000000000000000000000000000000000..cbf0d9de397e57b3ed14815b48325f79546c10f7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11366.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e5fd212303bcc93ec2a24ec36e3ab7ffc2b024d16c508c3050a8156853fec79 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11367.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11367.replay new file mode 100644 index 0000000000000000000000000000000000000000..fd340f6c98cc4118c2a1b4de1c1d4a3fb72e3df2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11367.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc2e11fa8931c7c43f7ee75feba42a55b5b89cbe3951224a300472404f204134 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11368.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11368.replay new file mode 100644 index 0000000000000000000000000000000000000000..999ca5db0a8e1ab77655bfa518bb3d27a9c4dc5f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11368.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08999af700e9e90b5d2f504329a35864306278fa88645300b0c018576a1b1395 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11369.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11369.replay new file mode 100644 index 0000000000000000000000000000000000000000..bde736f86b18feea49d3cdfcade721d8ed1561e9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11369.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acc0f1c1856c70a18d10bc354d3e09bc7116716788bb07c177a7cb551f6694f1 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11370.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11370.replay new file mode 100644 index 0000000000000000000000000000000000000000..fd340f6c98cc4118c2a1b4de1c1d4a3fb72e3df2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11370.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc2e11fa8931c7c43f7ee75feba42a55b5b89cbe3951224a300472404f204134 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11371.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11371.replay new file mode 100644 index 0000000000000000000000000000000000000000..999ca5db0a8e1ab77655bfa518bb3d27a9c4dc5f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11371.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08999af700e9e90b5d2f504329a35864306278fa88645300b0c018576a1b1395 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11372.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11372.replay new file mode 100644 index 0000000000000000000000000000000000000000..56d5ef82a57e054dffcec7ef7852404dcddf7f8a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11372.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88a4451a1df9dc9ef3d088cdde88f379c87c6045979d9cf2eb0db30ef43c8095 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11373.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11373.replay new file mode 100644 index 0000000000000000000000000000000000000000..a61a878575d2b039615853f6dd0882d430ccda3e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11373.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a22a347754eb36212c82ea553c6e9ea9587100de2fb4170504e06b6a61752f +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11374.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11374.replay new file mode 100644 index 0000000000000000000000000000000000000000..71475ffedd57f5da1e054f84b8fc8cc8ce8bfb17 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11374.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff1eca46bd455f0bc6fd0e8e2ce38747e55dc9a6763f04b12322a676bf8e10ba +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11375.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11375.replay new file mode 100644 index 0000000000000000000000000000000000000000..a61a878575d2b039615853f6dd0882d430ccda3e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11375.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a22a347754eb36212c82ea553c6e9ea9587100de2fb4170504e06b6a61752f +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11376.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11376.replay new file mode 100644 index 0000000000000000000000000000000000000000..a900b8192a1d0fd7014355c78581e85b1852b3f7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11376.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48fe7df5ec6cb2fc1f928044a1f1583093170b8acda5240b0cbbc75f6da14f26 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11377.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11377.replay new file mode 100644 index 0000000000000000000000000000000000000000..a61a878575d2b039615853f6dd0882d430ccda3e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11377.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a22a347754eb36212c82ea553c6e9ea9587100de2fb4170504e06b6a61752f +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11378.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11378.replay new file mode 100644 index 0000000000000000000000000000000000000000..04342ee4b1bbd48c3d5eea88f07aa649faf24c75 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11378.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c33312c40ac96f427f3284f4f0aabc6ae03a3655a45e92eb060910e130118e4e +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11379.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11379.replay new file mode 100644 index 0000000000000000000000000000000000000000..a61a878575d2b039615853f6dd0882d430ccda3e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11379.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a22a347754eb36212c82ea553c6e9ea9587100de2fb4170504e06b6a61752f +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11380.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11380.replay new file mode 100644 index 0000000000000000000000000000000000000000..5e645885f5bd5a6d99637d7545dc87f232770f03 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11380.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7fdabba81c11a95de94945568da9e8d3034a7dc0ed367a4b8578ab5f91a3f17 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11381.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11381.replay new file mode 100644 index 0000000000000000000000000000000000000000..a61a878575d2b039615853f6dd0882d430ccda3e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11381.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a22a347754eb36212c82ea553c6e9ea9587100de2fb4170504e06b6a61752f +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11382.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11382.replay new file mode 100644 index 0000000000000000000000000000000000000000..b7f832fb2549b10c96a9e0143c372735c594bb6a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11382.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd31d19ef9ed3daf99ed1bd27beaebcd6b83b8deabd5f641d7513b617dfda214 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11383.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11383.replay new file mode 100644 index 0000000000000000000000000000000000000000..4a349e8ff41403d1212c8a7b3abd36349b2de56c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11383.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:892aed9352ddcd46dd88362efe4c8992afe8c9403f73242ef3f60d28c802bd90 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11384.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11384.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b812f01d466c87ddadb7777fd609e5e8b4e22dd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11384.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:037a3222e639e336619d4f1941d12b0eb7577c618fcf5d388bfc3028463808ea +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11385.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11385.replay new file mode 100644 index 0000000000000000000000000000000000000000..31ad6aaddb723b9b17e107bc7514d5e489a60f83 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11385.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04c9cd04bd8dde23d1ffd2b80fb2f2f389088db97d1cf084d5705a1bd20a978a +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11386.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11386.replay new file mode 100644 index 0000000000000000000000000000000000000000..21c57cbc58e0b8a754556f767af67fa754709fa7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11386.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30cb4ae5389adef13d5c9f4da0334712e34b5b8676f75430e809cc8ebb1e8022 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11387.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11387.replay new file mode 100644 index 0000000000000000000000000000000000000000..07553a6f2fa264a28a58566c14e38650b6bfea06 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11387.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49b2e0b0c2dca6abf857b4b0de0a02b49584c728afe5f586cda1c256b7e3968d +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11388.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11388.replay new file mode 100644 index 0000000000000000000000000000000000000000..4a349e8ff41403d1212c8a7b3abd36349b2de56c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11388.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:892aed9352ddcd46dd88362efe4c8992afe8c9403f73242ef3f60d28c802bd90 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11389.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11389.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b812f01d466c87ddadb7777fd609e5e8b4e22dd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11389.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:037a3222e639e336619d4f1941d12b0eb7577c618fcf5d388bfc3028463808ea +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11390.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11390.replay new file mode 100644 index 0000000000000000000000000000000000000000..31ad6aaddb723b9b17e107bc7514d5e489a60f83 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11390.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04c9cd04bd8dde23d1ffd2b80fb2f2f389088db97d1cf084d5705a1bd20a978a +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11391.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11391.replay new file mode 100644 index 0000000000000000000000000000000000000000..21c57cbc58e0b8a754556f767af67fa754709fa7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11391.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30cb4ae5389adef13d5c9f4da0334712e34b5b8676f75430e809cc8ebb1e8022 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11392.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11392.replay new file mode 100644 index 0000000000000000000000000000000000000000..58f1b9eef57a52c531436c5b47cb64a3f632edc7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11392.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6a388701f74efd7d8019dcdd928d8361e44c8a8f3ba0afa6ecba7b419e099f1 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11393.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11393.replay new file mode 100644 index 0000000000000000000000000000000000000000..4a349e8ff41403d1212c8a7b3abd36349b2de56c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11393.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:892aed9352ddcd46dd88362efe4c8992afe8c9403f73242ef3f60d28c802bd90 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11394.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11394.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b812f01d466c87ddadb7777fd609e5e8b4e22dd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11394.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:037a3222e639e336619d4f1941d12b0eb7577c618fcf5d388bfc3028463808ea +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11395.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11395.replay new file mode 100644 index 0000000000000000000000000000000000000000..31ad6aaddb723b9b17e107bc7514d5e489a60f83 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11395.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04c9cd04bd8dde23d1ffd2b80fb2f2f389088db97d1cf084d5705a1bd20a978a +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11396.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11396.replay new file mode 100644 index 0000000000000000000000000000000000000000..21c57cbc58e0b8a754556f767af67fa754709fa7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11396.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30cb4ae5389adef13d5c9f4da0334712e34b5b8676f75430e809cc8ebb1e8022 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11397.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11397.replay new file mode 100644 index 0000000000000000000000000000000000000000..c29d57be57668729935dd4977f1651d51c601384 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11397.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c2c980fb66dcd9e211bd8e24994ff820822deaf555bd37d01d6fbab7b27ceb5 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11398.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11398.replay new file mode 100644 index 0000000000000000000000000000000000000000..4a349e8ff41403d1212c8a7b3abd36349b2de56c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11398.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:892aed9352ddcd46dd88362efe4c8992afe8c9403f73242ef3f60d28c802bd90 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11399.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11399.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b812f01d466c87ddadb7777fd609e5e8b4e22dd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11399.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:037a3222e639e336619d4f1941d12b0eb7577c618fcf5d388bfc3028463808ea +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11400.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11400.replay new file mode 100644 index 0000000000000000000000000000000000000000..31ad6aaddb723b9b17e107bc7514d5e489a60f83 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11400.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04c9cd04bd8dde23d1ffd2b80fb2f2f389088db97d1cf084d5705a1bd20a978a +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11401.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11401.replay new file mode 100644 index 0000000000000000000000000000000000000000..21c57cbc58e0b8a754556f767af67fa754709fa7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11401.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30cb4ae5389adef13d5c9f4da0334712e34b5b8676f75430e809cc8ebb1e8022 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11402.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11402.replay new file mode 100644 index 0000000000000000000000000000000000000000..ca2e168eb58c37cae57740b25b2b8272c0ccdd8f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11402.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24269dbe53b605c05894e5202e0fcb78b4cadbfed727424c4293303d27defd2c +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11403.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11403.replay new file mode 100644 index 0000000000000000000000000000000000000000..4a349e8ff41403d1212c8a7b3abd36349b2de56c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11403.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:892aed9352ddcd46dd88362efe4c8992afe8c9403f73242ef3f60d28c802bd90 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11404.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11404.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b812f01d466c87ddadb7777fd609e5e8b4e22dd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11404.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:037a3222e639e336619d4f1941d12b0eb7577c618fcf5d388bfc3028463808ea +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11405.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11405.replay new file mode 100644 index 0000000000000000000000000000000000000000..31ad6aaddb723b9b17e107bc7514d5e489a60f83 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11405.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04c9cd04bd8dde23d1ffd2b80fb2f2f389088db97d1cf084d5705a1bd20a978a +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11406.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11406.replay new file mode 100644 index 0000000000000000000000000000000000000000..21c57cbc58e0b8a754556f767af67fa754709fa7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11406.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30cb4ae5389adef13d5c9f4da0334712e34b5b8676f75430e809cc8ebb1e8022 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11407.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11407.replay new file mode 100644 index 0000000000000000000000000000000000000000..9d51112d0b0287b47766c1b5636b32af5ed4587c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11407.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b77c378850d97cb42ebb57e6b0de19c0ecdfa43b9432bdd17a09282a15366d4 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11408.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11408.replay new file mode 100644 index 0000000000000000000000000000000000000000..4a349e8ff41403d1212c8a7b3abd36349b2de56c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11408.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:892aed9352ddcd46dd88362efe4c8992afe8c9403f73242ef3f60d28c802bd90 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11409.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11409.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b812f01d466c87ddadb7777fd609e5e8b4e22dd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11409.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:037a3222e639e336619d4f1941d12b0eb7577c618fcf5d388bfc3028463808ea +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11410.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11410.replay new file mode 100644 index 0000000000000000000000000000000000000000..31ad6aaddb723b9b17e107bc7514d5e489a60f83 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11410.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04c9cd04bd8dde23d1ffd2b80fb2f2f389088db97d1cf084d5705a1bd20a978a +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11411.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11411.replay new file mode 100644 index 0000000000000000000000000000000000000000..21c57cbc58e0b8a754556f767af67fa754709fa7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11411.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30cb4ae5389adef13d5c9f4da0334712e34b5b8676f75430e809cc8ebb1e8022 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11412.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11412.replay new file mode 100644 index 0000000000000000000000000000000000000000..5f57b7afa146a5198798d9128670fbe6e38f4c4e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11412.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3e0a690bc2898f7915b10a0a0b300a3705af2e41c8c8cc510d0df42324b07c5 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11413.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11413.replay new file mode 100644 index 0000000000000000000000000000000000000000..4a349e8ff41403d1212c8a7b3abd36349b2de56c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11413.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:892aed9352ddcd46dd88362efe4c8992afe8c9403f73242ef3f60d28c802bd90 +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11414.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11414.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b812f01d466c87ddadb7777fd609e5e8b4e22dd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11414.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:037a3222e639e336619d4f1941d12b0eb7577c618fcf5d388bfc3028463808ea +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11415.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11415.replay new file mode 100644 index 0000000000000000000000000000000000000000..31ad6aaddb723b9b17e107bc7514d5e489a60f83 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11415.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04c9cd04bd8dde23d1ffd2b80fb2f2f389088db97d1cf084d5705a1bd20a978a +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11416.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11416.replay new file mode 100644 index 0000000000000000000000000000000000000000..21c57cbc58e0b8a754556f767af67fa754709fa7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11416.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30cb4ae5389adef13d5c9f4da0334712e34b5b8676f75430e809cc8ebb1e8022 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11417.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11417.replay new file mode 100644 index 0000000000000000000000000000000000000000..4d8bb8c606a1a1802879c8ffdc88b58e13325a26 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11417.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a02e26268f012a61641311631d6c1d755d040ee65fd4760306cde64d508dbe2e +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11418.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11418.replay new file mode 100644 index 0000000000000000000000000000000000000000..5a621502917c579aad9091f75b4244a6fa83e566 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11418.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14c18d56f7d247685e25419fa8e55e267e4a1a2fbffff227faf209905d1c4eea +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11419.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11419.replay new file mode 100644 index 0000000000000000000000000000000000000000..a65a7daa20ab5404168f956642b589fbbf01ce51 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11419.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9259bfab649a639b9789a42484b30274014163b49fa1a9633b7920f2b7aa7eef +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11420.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11420.replay new file mode 100644 index 0000000000000000000000000000000000000000..3a71826e0a519fbe98756f686e960563f642a5da --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11420.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c72a1afe5a9aed9b23aeafc243b69a4ce8183e865e960c999ad04c74e11e333a +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11421.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11421.replay new file mode 100644 index 0000000000000000000000000000000000000000..1a1aaf97e802f56139acc62c741672b805b1ed18 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11421.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da9526d536436589a790dbac488318aa3427089d6279c0dbcd0ddd6bb2c0c8cf +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11422.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11422.replay new file mode 100644 index 0000000000000000000000000000000000000000..5a621502917c579aad9091f75b4244a6fa83e566 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11422.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14c18d56f7d247685e25419fa8e55e267e4a1a2fbffff227faf209905d1c4eea +size 3624027 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11423.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11423.replay new file mode 100644 index 0000000000000000000000000000000000000000..a65a7daa20ab5404168f956642b589fbbf01ce51 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11423.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9259bfab649a639b9789a42484b30274014163b49fa1a9633b7920f2b7aa7eef +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11424.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11424.replay new file mode 100644 index 0000000000000000000000000000000000000000..3a71826e0a519fbe98756f686e960563f642a5da --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11424.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c72a1afe5a9aed9b23aeafc243b69a4ce8183e865e960c999ad04c74e11e333a +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11425.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11425.replay new file mode 100644 index 0000000000000000000000000000000000000000..d4fdb39e7289d029d94bb34f69eba72ad8cc3d22 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11425.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33744320b58d17ce576533f6dc887ed993b05edc7529862b07eaeec02c7b4bc6 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11426.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11426.replay new file mode 100644 index 0000000000000000000000000000000000000000..c3ea3a716ae49672f32a2673a6b4329dce3afb2b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11426.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96bf670c759d2619c452f48bb77d957125e71d919fe94d43af92342314d985d0 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11427.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11427.replay new file mode 100644 index 0000000000000000000000000000000000000000..10e15137b671c5394824eda02ff50aed48c648e9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11427.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59566623d4ee6da7ef392199eeb594223497389f048e1885cfc7a2729982d519 +size 3624034 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11428.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11428.replay new file mode 100644 index 0000000000000000000000000000000000000000..c3ea3a716ae49672f32a2673a6b4329dce3afb2b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11428.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96bf670c759d2619c452f48bb77d957125e71d919fe94d43af92342314d985d0 +size 3624048 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11429.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11429.replay new file mode 100644 index 0000000000000000000000000000000000000000..37a68dd0178f038e6566f4ca4ce0b79ec5553af4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11429.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09195d18563b77e4f996943169fdf6038913b104daad6e3dcc3fc33c8360332d +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11430.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11430.replay new file mode 100644 index 0000000000000000000000000000000000000000..592939445cba7991dd70f4478488d7bfec1e8d7b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11430.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:673468508ba0ea39c2590a0f22c1d103a7d501df0e13d6e8c49dc713ff8e6435 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11431.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11431.replay new file mode 100644 index 0000000000000000000000000000000000000000..d6ed4f9d5ab99fca2946e575848fbdd8879c3a9d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11431.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:984ff404ce2e8d3b84d64cda0eb2f52193dfc15ab77aab47cfdcd492ccb99210 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11432.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11432.replay new file mode 100644 index 0000000000000000000000000000000000000000..cec106cf6fad8879b839461b98154ab90e3564a9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11432.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2bdb78e2985463b4930d221b492a31ee6037b09cda002606e45a6e38763f7da +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11433.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11433.replay new file mode 100644 index 0000000000000000000000000000000000000000..629b71a752309dc737e88a3178d0d346cf1855cd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11433.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:347c8631812c224971c98abe5e71beb17f1ad48fd7108e6a93f139a708d1aab9 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11434.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11434.replay new file mode 100644 index 0000000000000000000000000000000000000000..0bae0d314699a4c401125d172a938bdcadb9e338 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11434.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f18564762f57f686d68e6fef06ba3ae117235ad8ac9ebb752846e1805960b276 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11435.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11435.replay new file mode 100644 index 0000000000000000000000000000000000000000..592939445cba7991dd70f4478488d7bfec1e8d7b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11435.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:673468508ba0ea39c2590a0f22c1d103a7d501df0e13d6e8c49dc713ff8e6435 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11436.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11436.replay new file mode 100644 index 0000000000000000000000000000000000000000..d6ed4f9d5ab99fca2946e575848fbdd8879c3a9d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11436.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:984ff404ce2e8d3b84d64cda0eb2f52193dfc15ab77aab47cfdcd492ccb99210 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11437.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11437.replay new file mode 100644 index 0000000000000000000000000000000000000000..cec106cf6fad8879b839461b98154ab90e3564a9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11437.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2bdb78e2985463b4930d221b492a31ee6037b09cda002606e45a6e38763f7da +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11438.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11438.replay new file mode 100644 index 0000000000000000000000000000000000000000..1655405d050105d30f6a6e5924db638a1e4f50dc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11438.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b7a46dceee67f5e24b2680addd019de421544c3779926d8c18c0cd645f01509 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11439.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11439.replay new file mode 100644 index 0000000000000000000000000000000000000000..766485ea8183b862b14806da5707ebca3fcea9e9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11439.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26a8e9542be72dced30042c6d86958be20605f63065565ed4f6321b9c7a29a69 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11440.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11440.replay new file mode 100644 index 0000000000000000000000000000000000000000..592939445cba7991dd70f4478488d7bfec1e8d7b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11440.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:673468508ba0ea39c2590a0f22c1d103a7d501df0e13d6e8c49dc713ff8e6435 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11441.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11441.replay new file mode 100644 index 0000000000000000000000000000000000000000..d6ed4f9d5ab99fca2946e575848fbdd8879c3a9d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11441.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:984ff404ce2e8d3b84d64cda0eb2f52193dfc15ab77aab47cfdcd492ccb99210 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11442.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11442.replay new file mode 100644 index 0000000000000000000000000000000000000000..cec106cf6fad8879b839461b98154ab90e3564a9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11442.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2bdb78e2985463b4930d221b492a31ee6037b09cda002606e45a6e38763f7da +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11443.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11443.replay new file mode 100644 index 0000000000000000000000000000000000000000..629b71a752309dc737e88a3178d0d346cf1855cd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11443.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:347c8631812c224971c98abe5e71beb17f1ad48fd7108e6a93f139a708d1aab9 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11444.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11444.replay new file mode 100644 index 0000000000000000000000000000000000000000..3db160c3d4521f3df2113eeae2613f2a53995026 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11444.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c9b01288ba47996c9272c65a2bcadc927dcc9a42cf1da8ae5fcc34f33c24122 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11445.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11445.replay new file mode 100644 index 0000000000000000000000000000000000000000..592939445cba7991dd70f4478488d7bfec1e8d7b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11445.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:673468508ba0ea39c2590a0f22c1d103a7d501df0e13d6e8c49dc713ff8e6435 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11446.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11446.replay new file mode 100644 index 0000000000000000000000000000000000000000..d6ed4f9d5ab99fca2946e575848fbdd8879c3a9d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11446.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:984ff404ce2e8d3b84d64cda0eb2f52193dfc15ab77aab47cfdcd492ccb99210 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11447.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11447.replay new file mode 100644 index 0000000000000000000000000000000000000000..cec106cf6fad8879b839461b98154ab90e3564a9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11447.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2bdb78e2985463b4930d221b492a31ee6037b09cda002606e45a6e38763f7da +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11448.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11448.replay new file mode 100644 index 0000000000000000000000000000000000000000..1655405d050105d30f6a6e5924db638a1e4f50dc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11448.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b7a46dceee67f5e24b2680addd019de421544c3779926d8c18c0cd645f01509 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11449.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11449.replay new file mode 100644 index 0000000000000000000000000000000000000000..38c210f3435f742d1071d65634b4afec62235d2f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11449.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d841ab2f52da082367e97732ed710257f1744f97486f02b77d165ce1e2cb950 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11488.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11488.replay new file mode 100644 index 0000000000000000000000000000000000000000..59e082a3b90b386336816fd2c37af1622f779b99 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11488.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:966f961d8db58cf9a3f583dc2dbc555041bd4431c59c64bbc75e2b3bb7232d85 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11489.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11489.replay new file mode 100644 index 0000000000000000000000000000000000000000..8d69cde047a61c5d9d4c5f7fb2131554ce7515ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11489.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:991e878884978b9eec2c37bc2ab56b609f1b879ef9b8f12981935c58790893b1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11490.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11490.replay new file mode 100644 index 0000000000000000000000000000000000000000..cc25ff2a4fb3262281ffe2bb3db90396e8e7eb9d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11490.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57a97f1bacf97874b1915d3de2c68fcfc3f26230898ffca4c4ee7d97336a543d +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11491.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11491.replay new file mode 100644 index 0000000000000000000000000000000000000000..9e4ee3b7b108bbad76595efef47573ea759d6bb4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11491.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc961abce5a2d9ea779a2081ba6a814f403f9fdb64a5c29ec2e7535cf1d8d0d9 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11492.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11492.replay new file mode 100644 index 0000000000000000000000000000000000000000..8d69cde047a61c5d9d4c5f7fb2131554ce7515ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11492.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:991e878884978b9eec2c37bc2ab56b609f1b879ef9b8f12981935c58790893b1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11493.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11493.replay new file mode 100644 index 0000000000000000000000000000000000000000..3e848954b33a4723ea084d169ac72ba7899ebaaf --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11493.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:448165c999305450f54f6f636978ee70eff37f338040e1035eb474a43fd287fc +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11494.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11494.replay new file mode 100644 index 0000000000000000000000000000000000000000..823ee2023822cf61f6d6c031a0c92a362b5ac682 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11494.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc1bf06d58dbb0f6e2b09a0a2ae475ae5e540975a664ba144343666ffc904e9e +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11495.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11495.replay new file mode 100644 index 0000000000000000000000000000000000000000..8d69cde047a61c5d9d4c5f7fb2131554ce7515ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11495.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:991e878884978b9eec2c37bc2ab56b609f1b879ef9b8f12981935c58790893b1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11496.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11496.replay new file mode 100644 index 0000000000000000000000000000000000000000..cc25ff2a4fb3262281ffe2bb3db90396e8e7eb9d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11496.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57a97f1bacf97874b1915d3de2c68fcfc3f26230898ffca4c4ee7d97336a543d +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11497.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11497.replay new file mode 100644 index 0000000000000000000000000000000000000000..c815466719bec2c0acda91624386f6d8232d53e4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11497.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7677f6d1e65bbac1790a05725266ebf9d18bbc610e69b8161c242049bc40dcf8 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11498.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11498.replay new file mode 100644 index 0000000000000000000000000000000000000000..8d69cde047a61c5d9d4c5f7fb2131554ce7515ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11498.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:991e878884978b9eec2c37bc2ab56b609f1b879ef9b8f12981935c58790893b1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11499.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11499.replay new file mode 100644 index 0000000000000000000000000000000000000000..3e848954b33a4723ea084d169ac72ba7899ebaaf --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11499.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:448165c999305450f54f6f636978ee70eff37f338040e1035eb474a43fd287fc +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11500.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11500.replay new file mode 100644 index 0000000000000000000000000000000000000000..9e552463228922a20fd86bfeb203eb5651bf8cd5 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11500.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dd97536f3f7a7015bacf4aab8d66563d7942e24aa85d8de3311bf5dd3e23236 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11501.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11501.replay new file mode 100644 index 0000000000000000000000000000000000000000..8d69cde047a61c5d9d4c5f7fb2131554ce7515ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11501.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:991e878884978b9eec2c37bc2ab56b609f1b879ef9b8f12981935c58790893b1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11502.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11502.replay new file mode 100644 index 0000000000000000000000000000000000000000..cc25ff2a4fb3262281ffe2bb3db90396e8e7eb9d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11502.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57a97f1bacf97874b1915d3de2c68fcfc3f26230898ffca4c4ee7d97336a543d +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11503.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11503.replay new file mode 100644 index 0000000000000000000000000000000000000000..3042d16520f1001c9e919ee9132161b3558bff0d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11503.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0b33d7654935a0579d0131372c916d3a9f83407999e12fe1fe86e7cf4545a95 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11504.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11504.replay new file mode 100644 index 0000000000000000000000000000000000000000..8d69cde047a61c5d9d4c5f7fb2131554ce7515ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11504.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:991e878884978b9eec2c37bc2ab56b609f1b879ef9b8f12981935c58790893b1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11505.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11505.replay new file mode 100644 index 0000000000000000000000000000000000000000..3e848954b33a4723ea084d169ac72ba7899ebaaf --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11505.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:448165c999305450f54f6f636978ee70eff37f338040e1035eb474a43fd287fc +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11506.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11506.replay new file mode 100644 index 0000000000000000000000000000000000000000..b66e2e418808ded6b1a2303756f48671f7040376 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11506.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b790bed6166341e512246098001ccaced5f141dabb7f2529adbd5543c2405b8e +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11507.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11507.replay new file mode 100644 index 0000000000000000000000000000000000000000..8d69cde047a61c5d9d4c5f7fb2131554ce7515ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11507.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:991e878884978b9eec2c37bc2ab56b609f1b879ef9b8f12981935c58790893b1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11508.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11508.replay new file mode 100644 index 0000000000000000000000000000000000000000..cc25ff2a4fb3262281ffe2bb3db90396e8e7eb9d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11508.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57a97f1bacf97874b1915d3de2c68fcfc3f26230898ffca4c4ee7d97336a543d +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11509.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11509.replay new file mode 100644 index 0000000000000000000000000000000000000000..f5689a00c51ffe2a5453c4ab92045dba6d0d4110 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11509.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43fa58525348998c884aca978ac792d4298df32c9ce72431d5fa354e9b88fe53 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11512.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11512.replay new file mode 100644 index 0000000000000000000000000000000000000000..cb4a51162c185d5283364c03421d72319242cbae --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11512.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bde1ae76f250cc4f79c32e7b1dc333bc087f3c3782fb9345e589d1f9ca957514 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11513.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11513.replay new file mode 100644 index 0000000000000000000000000000000000000000..8d69cde047a61c5d9d4c5f7fb2131554ce7515ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11513.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:991e878884978b9eec2c37bc2ab56b609f1b879ef9b8f12981935c58790893b1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11514.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11514.replay new file mode 100644 index 0000000000000000000000000000000000000000..cc25ff2a4fb3262281ffe2bb3db90396e8e7eb9d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11514.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57a97f1bacf97874b1915d3de2c68fcfc3f26230898ffca4c4ee7d97336a543d +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11515.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11515.replay new file mode 100644 index 0000000000000000000000000000000000000000..ce3c34694ac221ffb472db95ff65f04764e9277e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11515.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:296c3c89a523bbcbef29f635c0725ce9919f0bb4237f7272e0fe763e7af9d11e +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11516.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11516.replay new file mode 100644 index 0000000000000000000000000000000000000000..8d69cde047a61c5d9d4c5f7fb2131554ce7515ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11516.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:991e878884978b9eec2c37bc2ab56b609f1b879ef9b8f12981935c58790893b1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11517.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11517.replay new file mode 100644 index 0000000000000000000000000000000000000000..3e848954b33a4723ea084d169ac72ba7899ebaaf --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11517.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:448165c999305450f54f6f636978ee70eff37f338040e1035eb474a43fd287fc +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11518.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11518.replay new file mode 100644 index 0000000000000000000000000000000000000000..d6d6177f7e49deda39e3b36d457a48dd136bc164 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11518.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:253e85a6b969c38d51a5a63af6b7e54995317c01a83778918ca851fef2140033 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11519.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11519.replay new file mode 100644 index 0000000000000000000000000000000000000000..fa7620051ef029eee89ac9db568c123c3dfd077c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11519.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6cf3a7d917ff1b10be9e2576c241dd93bebb5b53fc4029c0baad90682b8838 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11520.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11520.replay new file mode 100644 index 0000000000000000000000000000000000000000..824f5d31dde0c26062ec7cc29249ef685f9960c6 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11520.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81b25574bfe70f86c2f6c16e761612f998c6f72692a31217f03f05b786e36c53 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11521.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11521.replay new file mode 100644 index 0000000000000000000000000000000000000000..42885353f72aaf02bca38f83695b9ae58c78cc55 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11521.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb7409c4f1e9a40afdd6b1bd0b1ea01f1ddab4800215a46f6400619867046307 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11522.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11522.replay new file mode 100644 index 0000000000000000000000000000000000000000..ca65773c76292856f75156778839ac3250aced16 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11522.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3402e5fde3befe7ba15764f981572b72d8f610fadf41ba844fddf68d033dba22 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11523.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11523.replay new file mode 100644 index 0000000000000000000000000000000000000000..fa7620051ef029eee89ac9db568c123c3dfd077c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11523.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6cf3a7d917ff1b10be9e2576c241dd93bebb5b53fc4029c0baad90682b8838 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11524.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11524.replay new file mode 100644 index 0000000000000000000000000000000000000000..4bd3e49289ed6af3f1cdd65a7a1460ca99eea593 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11524.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9f74b79fa50780a7415a13bcc3b10da695d196910d71d6aaaaf752f2427e807 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11525.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11525.replay new file mode 100644 index 0000000000000000000000000000000000000000..42885353f72aaf02bca38f83695b9ae58c78cc55 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11525.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb7409c4f1e9a40afdd6b1bd0b1ea01f1ddab4800215a46f6400619867046307 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11526.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11526.replay new file mode 100644 index 0000000000000000000000000000000000000000..778e721e6d1241c16f4df2b9def2fa634b29a9fa --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11526.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1706035bd591fd80b90f99fe45886960b8a8ff0d5d30749a45cc082263c7925 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11527.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11527.replay new file mode 100644 index 0000000000000000000000000000000000000000..fa7620051ef029eee89ac9db568c123c3dfd077c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11527.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6cf3a7d917ff1b10be9e2576c241dd93bebb5b53fc4029c0baad90682b8838 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11528.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11528.replay new file mode 100644 index 0000000000000000000000000000000000000000..6aaac70a7f2e2b942ce54174eb9f0610e067f1d5 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11528.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5aabb701e814a6cd1d14be300c4e9182c15c390ce4a3ba3e1a0b75612e246358 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11529.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11529.replay new file mode 100644 index 0000000000000000000000000000000000000000..dd2143e551ecc0f4fcf7a6633685f99f5610e861 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11529.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a52a816c6e8c3d2e0fdbd65e1da94229ee493f83efc9050d1ad873322eea4bcf +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11530.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11530.replay new file mode 100644 index 0000000000000000000000000000000000000000..a0f587a8406d02949f7ff926fa48bf763ddea031 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11530.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6485ea9845e6d1099f30cb1fad0f3919fd2e3437718a92ce2055cf34dfee05ec +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11531.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11531.replay new file mode 100644 index 0000000000000000000000000000000000000000..39221fdaed1545d92446e4a117043ffcb09e5838 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11531.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ecb4165a8d7eccf5d0a863fd484884a20d51ce247b7e61720cdc063f9ea68c1 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11532.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11532.replay new file mode 100644 index 0000000000000000000000000000000000000000..01c9d52f7143f5c73a0d401acdf2bbd103e97006 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11532.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23e387d27d00414c8a50cfa7520a640f30ee4b4b2b155a4312711d929ae12862 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11533.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11533.replay new file mode 100644 index 0000000000000000000000000000000000000000..b621aa873a4696c7b305fa5da0f35a714349077a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11533.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb835eed797fbd49454a63d386fd4f62719e675dfdab95a1132a12c95a06e59e +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11534.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11534.replay new file mode 100644 index 0000000000000000000000000000000000000000..dd2143e551ecc0f4fcf7a6633685f99f5610e861 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11534.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a52a816c6e8c3d2e0fdbd65e1da94229ee493f83efc9050d1ad873322eea4bcf +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11535.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11535.replay new file mode 100644 index 0000000000000000000000000000000000000000..a0f587a8406d02949f7ff926fa48bf763ddea031 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11535.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6485ea9845e6d1099f30cb1fad0f3919fd2e3437718a92ce2055cf34dfee05ec +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11536.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11536.replay new file mode 100644 index 0000000000000000000000000000000000000000..39221fdaed1545d92446e4a117043ffcb09e5838 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11536.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ecb4165a8d7eccf5d0a863fd484884a20d51ce247b7e61720cdc063f9ea68c1 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11537.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11537.replay new file mode 100644 index 0000000000000000000000000000000000000000..01c9d52f7143f5c73a0d401acdf2bbd103e97006 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11537.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23e387d27d00414c8a50cfa7520a640f30ee4b4b2b155a4312711d929ae12862 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11538.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11538.replay new file mode 100644 index 0000000000000000000000000000000000000000..a01f585661576c90b389fc7b2dec794066b2dd57 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11538.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d54340c16ce5f625d9f447f8fa6469b1b433f8d460988e383865d5f28c4f808c +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11539.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11539.replay new file mode 100644 index 0000000000000000000000000000000000000000..dd2143e551ecc0f4fcf7a6633685f99f5610e861 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11539.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a52a816c6e8c3d2e0fdbd65e1da94229ee493f83efc9050d1ad873322eea4bcf +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11540.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11540.replay new file mode 100644 index 0000000000000000000000000000000000000000..a0f587a8406d02949f7ff926fa48bf763ddea031 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11540.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6485ea9845e6d1099f30cb1fad0f3919fd2e3437718a92ce2055cf34dfee05ec +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11541.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11541.replay new file mode 100644 index 0000000000000000000000000000000000000000..39221fdaed1545d92446e4a117043ffcb09e5838 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11541.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ecb4165a8d7eccf5d0a863fd484884a20d51ce247b7e61720cdc063f9ea68c1 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11542.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11542.replay new file mode 100644 index 0000000000000000000000000000000000000000..01c9d52f7143f5c73a0d401acdf2bbd103e97006 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11542.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23e387d27d00414c8a50cfa7520a640f30ee4b4b2b155a4312711d929ae12862 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11543.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11543.replay new file mode 100644 index 0000000000000000000000000000000000000000..5a69dec43b9134497739fd4fac7b1ebcba18df70 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11543.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aadfb320e2d988669848a9e58c05410043db9c3125634d162cecc4b974f6287f +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11544.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11544.replay new file mode 100644 index 0000000000000000000000000000000000000000..dd2143e551ecc0f4fcf7a6633685f99f5610e861 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11544.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a52a816c6e8c3d2e0fdbd65e1da94229ee493f83efc9050d1ad873322eea4bcf +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11545.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11545.replay new file mode 100644 index 0000000000000000000000000000000000000000..a0f587a8406d02949f7ff926fa48bf763ddea031 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11545.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6485ea9845e6d1099f30cb1fad0f3919fd2e3437718a92ce2055cf34dfee05ec +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11546.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11546.replay new file mode 100644 index 0000000000000000000000000000000000000000..39221fdaed1545d92446e4a117043ffcb09e5838 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11546.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ecb4165a8d7eccf5d0a863fd484884a20d51ce247b7e61720cdc063f9ea68c1 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11547.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11547.replay new file mode 100644 index 0000000000000000000000000000000000000000..01c9d52f7143f5c73a0d401acdf2bbd103e97006 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11547.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23e387d27d00414c8a50cfa7520a640f30ee4b4b2b155a4312711d929ae12862 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11548.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11548.replay new file mode 100644 index 0000000000000000000000000000000000000000..de76e6c40142d7ec01188831f0c44747bbe6f154 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11548.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cae47d6ad3c1d9b908e3355bcc54255d5d04bafc526768c24a68daae1280951 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11549.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11549.replay new file mode 100644 index 0000000000000000000000000000000000000000..dd2143e551ecc0f4fcf7a6633685f99f5610e861 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11549.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a52a816c6e8c3d2e0fdbd65e1da94229ee493f83efc9050d1ad873322eea4bcf +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11550.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11550.replay new file mode 100644 index 0000000000000000000000000000000000000000..a0f587a8406d02949f7ff926fa48bf763ddea031 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11550.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6485ea9845e6d1099f30cb1fad0f3919fd2e3437718a92ce2055cf34dfee05ec +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11551.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11551.replay new file mode 100644 index 0000000000000000000000000000000000000000..39221fdaed1545d92446e4a117043ffcb09e5838 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11551.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ecb4165a8d7eccf5d0a863fd484884a20d51ce247b7e61720cdc063f9ea68c1 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11552.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11552.replay new file mode 100644 index 0000000000000000000000000000000000000000..01c9d52f7143f5c73a0d401acdf2bbd103e97006 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11552.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23e387d27d00414c8a50cfa7520a640f30ee4b4b2b155a4312711d929ae12862 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11553.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11553.replay new file mode 100644 index 0000000000000000000000000000000000000000..f8205b24a13d2d63cea19c572cb22dae05ea626e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11553.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:308126b5110ed379c8ccb1d9a36dfef457ce43ed3e045f2ec7f3ac4dba8dfec3 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11554.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11554.replay new file mode 100644 index 0000000000000000000000000000000000000000..dd2143e551ecc0f4fcf7a6633685f99f5610e861 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11554.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a52a816c6e8c3d2e0fdbd65e1da94229ee493f83efc9050d1ad873322eea4bcf +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11555.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11555.replay new file mode 100644 index 0000000000000000000000000000000000000000..a0f587a8406d02949f7ff926fa48bf763ddea031 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11555.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6485ea9845e6d1099f30cb1fad0f3919fd2e3437718a92ce2055cf34dfee05ec +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11556.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11556.replay new file mode 100644 index 0000000000000000000000000000000000000000..39221fdaed1545d92446e4a117043ffcb09e5838 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11556.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ecb4165a8d7eccf5d0a863fd484884a20d51ce247b7e61720cdc063f9ea68c1 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11557.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11557.replay new file mode 100644 index 0000000000000000000000000000000000000000..01c9d52f7143f5c73a0d401acdf2bbd103e97006 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11557.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23e387d27d00414c8a50cfa7520a640f30ee4b4b2b155a4312711d929ae12862 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11558.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11558.replay new file mode 100644 index 0000000000000000000000000000000000000000..fc73b6a3d0826044819c86d391558f4abede6559 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11558.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f14f9a6966a545717dc48c194c8fbf0eeaab46a57b3d4bce08dde5c9899d519 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11559.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11559.replay new file mode 100644 index 0000000000000000000000000000000000000000..f801276c0fd61e9be6f61d51b9b427bb2e60cad9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11559.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:930e0a666018f76c707d7862e470338a586ed6e6bdd4bea572a48cadcf445150 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11560.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11560.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b2277004c94e49c7e2b7df10a38e9f16cdf56a7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11560.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:600f75084a65e6d5601dabe43677770566f7b7230814916d52c30545af7bd1bc +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11561.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11561.replay new file mode 100644 index 0000000000000000000000000000000000000000..023e5f41184a5f18cd67a753010b858c48553115 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11561.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c79d0271883e2692f21f04d297c62b1af348c516cdcbfc9203165ce48f0abc7 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11562.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11562.replay new file mode 100644 index 0000000000000000000000000000000000000000..78fbc79ff42f35576aa859b7a11cf9c9e97d1096 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11562.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83ab47020f285fbbb6bbeb3cad86cf3ba56c5a56180db1a232d721f9545dbf63 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11563.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11563.replay new file mode 100644 index 0000000000000000000000000000000000000000..f801276c0fd61e9be6f61d51b9b427bb2e60cad9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11563.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:930e0a666018f76c707d7862e470338a586ed6e6bdd4bea572a48cadcf445150 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11564.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11564.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b2277004c94e49c7e2b7df10a38e9f16cdf56a7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11564.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:600f75084a65e6d5601dabe43677770566f7b7230814916d52c30545af7bd1bc +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11565.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11565.replay new file mode 100644 index 0000000000000000000000000000000000000000..023e5f41184a5f18cd67a753010b858c48553115 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11565.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c79d0271883e2692f21f04d297c62b1af348c516cdcbfc9203165ce48f0abc7 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11566.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11566.replay new file mode 100644 index 0000000000000000000000000000000000000000..489e387b5ba82720cc534aec356d24cde88082c6 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11566.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:864ff1117ff57f0300b242c3366d03270ef918811deda5e68aec6cf62279d94c +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11567.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11567.replay new file mode 100644 index 0000000000000000000000000000000000000000..f801276c0fd61e9be6f61d51b9b427bb2e60cad9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11567.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:930e0a666018f76c707d7862e470338a586ed6e6bdd4bea572a48cadcf445150 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11568.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11568.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b2277004c94e49c7e2b7df10a38e9f16cdf56a7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11568.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:600f75084a65e6d5601dabe43677770566f7b7230814916d52c30545af7bd1bc +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11569.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11569.replay new file mode 100644 index 0000000000000000000000000000000000000000..023e5f41184a5f18cd67a753010b858c48553115 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11569.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c79d0271883e2692f21f04d297c62b1af348c516cdcbfc9203165ce48f0abc7 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11570.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11570.replay new file mode 100644 index 0000000000000000000000000000000000000000..25f7a4128feacc8f070b0a39854b7adffe802771 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11570.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e8899c1e79927dce77dfd793b14f34dc11ae4fe4d115a15f4eba3bcc178230f +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11571.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11571.replay new file mode 100644 index 0000000000000000000000000000000000000000..f801276c0fd61e9be6f61d51b9b427bb2e60cad9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11571.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:930e0a666018f76c707d7862e470338a586ed6e6bdd4bea572a48cadcf445150 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11572.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11572.replay new file mode 100644 index 0000000000000000000000000000000000000000..5b2277004c94e49c7e2b7df10a38e9f16cdf56a7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11572.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:600f75084a65e6d5601dabe43677770566f7b7230814916d52c30545af7bd1bc +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11573.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11573.replay new file mode 100644 index 0000000000000000000000000000000000000000..023e5f41184a5f18cd67a753010b858c48553115 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11573.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c79d0271883e2692f21f04d297c62b1af348c516cdcbfc9203165ce48f0abc7 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11574.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11574.replay new file mode 100644 index 0000000000000000000000000000000000000000..afc0c75e1fdaea18154b5c690a8173d6418b4fda --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11574.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d5b885c025db4740a7f44f749877673b16b3a8b57087fe9d085b35628751925 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11575.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11575.replay new file mode 100644 index 0000000000000000000000000000000000000000..b9f39622fe7e8c2be9fa307f80f6b4b618fbb967 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11575.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f0f3c12af481a4d669e671803294609ec723ad3b6d4ed2f9ba5411ef15bbfc9 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11576.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11576.replay new file mode 100644 index 0000000000000000000000000000000000000000..1d33e4655c68ad34fc64aad600d7f32d6ca310d1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11576.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9fcd698b73b5e7be80aee8b2f7f99af77e6beadfc5af69e6d87439da70a55b6 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11577.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11577.replay new file mode 100644 index 0000000000000000000000000000000000000000..dfbc3b0ef797f6c30fa6f8e908c1aebab2ec40d8 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11577.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:761245b25e634566dc24d8901cdb0eca7fe5eba577cb1cc87c3f81cd0cd90236 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11578.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11578.replay new file mode 100644 index 0000000000000000000000000000000000000000..40c5b02208f4257e47d200df517d800c3ffddbd7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11578.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c2d3f54b711ab72666f234157dc989b87aca9dcc897c96bc77d33093f9d4e92 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11579.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11579.replay new file mode 100644 index 0000000000000000000000000000000000000000..96a33f2aac0cc369e57d19475d42ad15f4745ecc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11579.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a71ce1ae58207895a9b40a7bdec741b35da0c7a1ba2838130d21fe3472135df +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11580.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11580.replay new file mode 100644 index 0000000000000000000000000000000000000000..40c5b02208f4257e47d200df517d800c3ffddbd7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11580.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c2d3f54b711ab72666f234157dc989b87aca9dcc897c96bc77d33093f9d4e92 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11581.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11581.replay new file mode 100644 index 0000000000000000000000000000000000000000..21f4860388aa92768016299f3b1cc21acb40f1c5 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11581.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14b0c82c53bd4e6386b2f2b816f9691470e119060ae4b8365616fa25ae4c2304 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11582.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11582.replay new file mode 100644 index 0000000000000000000000000000000000000000..ce85c409b61398318b02b06b2336fc01cc204af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11582.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b898119b3e0e4f0500b0ec07c1c21ace0aa97c725816a4c234288111150f57c0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11583.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11583.replay new file mode 100644 index 0000000000000000000000000000000000000000..143ddbe1700f2d2636cf4d0b3867d84457dbd18a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11583.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:035fe24c4ab505ab40bb9965f11c49d7f366135f8667553f502b508789e2f5d8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11584.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11584.replay new file mode 100644 index 0000000000000000000000000000000000000000..644e4f507e4309e84b32c92d4050f2c84673fb42 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11584.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82bd1a902aa2cd6d6c94cffef520795f5992162ff1cb3b8bf5898510c36dec1f +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11585.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11585.replay new file mode 100644 index 0000000000000000000000000000000000000000..96bad4c8fd6ccf2d9757e7bd1a17d38ed77e496a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11585.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06c60a4b0af923e99dcd63bc26105e9c37494c0595878255b44449857a30098f +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11586.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11586.replay new file mode 100644 index 0000000000000000000000000000000000000000..73648fe4d66ba247254a1359bd33ee1bcec1aff0 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11586.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2eefa34b8cef49c7045aeff71c73e24a04b4ea37e5938eacb597ea6a9059084 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11587.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11587.replay new file mode 100644 index 0000000000000000000000000000000000000000..ce85c409b61398318b02b06b2336fc01cc204af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11587.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b898119b3e0e4f0500b0ec07c1c21ace0aa97c725816a4c234288111150f57c0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11588.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11588.replay new file mode 100644 index 0000000000000000000000000000000000000000..143ddbe1700f2d2636cf4d0b3867d84457dbd18a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11588.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:035fe24c4ab505ab40bb9965f11c49d7f366135f8667553f502b508789e2f5d8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11589.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11589.replay new file mode 100644 index 0000000000000000000000000000000000000000..644e4f507e4309e84b32c92d4050f2c84673fb42 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11589.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82bd1a902aa2cd6d6c94cffef520795f5992162ff1cb3b8bf5898510c36dec1f +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11590.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11590.replay new file mode 100644 index 0000000000000000000000000000000000000000..96bad4c8fd6ccf2d9757e7bd1a17d38ed77e496a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11590.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06c60a4b0af923e99dcd63bc26105e9c37494c0595878255b44449857a30098f +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11591.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11591.replay new file mode 100644 index 0000000000000000000000000000000000000000..e551a7be21a808b559917d740172a2431501f8c9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11591.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d346582010d6613788b3bac1b395ec46d6c308ef34cd5db87e02c93345b09939 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11592.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11592.replay new file mode 100644 index 0000000000000000000000000000000000000000..ce85c409b61398318b02b06b2336fc01cc204af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11592.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b898119b3e0e4f0500b0ec07c1c21ace0aa97c725816a4c234288111150f57c0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11593.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11593.replay new file mode 100644 index 0000000000000000000000000000000000000000..143ddbe1700f2d2636cf4d0b3867d84457dbd18a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11593.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:035fe24c4ab505ab40bb9965f11c49d7f366135f8667553f502b508789e2f5d8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11594.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11594.replay new file mode 100644 index 0000000000000000000000000000000000000000..644e4f507e4309e84b32c92d4050f2c84673fb42 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11594.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82bd1a902aa2cd6d6c94cffef520795f5992162ff1cb3b8bf5898510c36dec1f +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11595.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11595.replay new file mode 100644 index 0000000000000000000000000000000000000000..96bad4c8fd6ccf2d9757e7bd1a17d38ed77e496a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11595.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06c60a4b0af923e99dcd63bc26105e9c37494c0595878255b44449857a30098f +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11596.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11596.replay new file mode 100644 index 0000000000000000000000000000000000000000..eb817ebae3736f2abbe817f738831289b4f24bea --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11596.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0a88023ed92e03f5614190847cd3397f16691510a91a354646d8fc7504e2388 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11597.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11597.replay new file mode 100644 index 0000000000000000000000000000000000000000..ce85c409b61398318b02b06b2336fc01cc204af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11597.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b898119b3e0e4f0500b0ec07c1c21ace0aa97c725816a4c234288111150f57c0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11598.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11598.replay new file mode 100644 index 0000000000000000000000000000000000000000..143ddbe1700f2d2636cf4d0b3867d84457dbd18a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11598.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:035fe24c4ab505ab40bb9965f11c49d7f366135f8667553f502b508789e2f5d8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11599.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11599.replay new file mode 100644 index 0000000000000000000000000000000000000000..644e4f507e4309e84b32c92d4050f2c84673fb42 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11599.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82bd1a902aa2cd6d6c94cffef520795f5992162ff1cb3b8bf5898510c36dec1f +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11600.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11600.replay new file mode 100644 index 0000000000000000000000000000000000000000..96bad4c8fd6ccf2d9757e7bd1a17d38ed77e496a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11600.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06c60a4b0af923e99dcd63bc26105e9c37494c0595878255b44449857a30098f +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11601.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11601.replay new file mode 100644 index 0000000000000000000000000000000000000000..94500749ca592aa9a2631e8ff540f848512ffa32 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11601.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19ee706a4a153a6acc5416c2f3caf922cdfd916435f011a8a92e6af7b8d89b55 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11602.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11602.replay new file mode 100644 index 0000000000000000000000000000000000000000..ce85c409b61398318b02b06b2336fc01cc204af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11602.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b898119b3e0e4f0500b0ec07c1c21ace0aa97c725816a4c234288111150f57c0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11603.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11603.replay new file mode 100644 index 0000000000000000000000000000000000000000..143ddbe1700f2d2636cf4d0b3867d84457dbd18a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11603.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:035fe24c4ab505ab40bb9965f11c49d7f366135f8667553f502b508789e2f5d8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11604.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11604.replay new file mode 100644 index 0000000000000000000000000000000000000000..644e4f507e4309e84b32c92d4050f2c84673fb42 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11604.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82bd1a902aa2cd6d6c94cffef520795f5992162ff1cb3b8bf5898510c36dec1f +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11605.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11605.replay new file mode 100644 index 0000000000000000000000000000000000000000..96bad4c8fd6ccf2d9757e7bd1a17d38ed77e496a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11605.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06c60a4b0af923e99dcd63bc26105e9c37494c0595878255b44449857a30098f +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11606.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11606.replay new file mode 100644 index 0000000000000000000000000000000000000000..c97983d5808016b7213faf9312b692daaee27b22 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11606.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09753c6ac303d0787ad86b87178e0475566ee45e62d728cf62309dd6f2ee6447 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11607.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11607.replay new file mode 100644 index 0000000000000000000000000000000000000000..ce85c409b61398318b02b06b2336fc01cc204af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11607.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b898119b3e0e4f0500b0ec07c1c21ace0aa97c725816a4c234288111150f57c0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11608.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11608.replay new file mode 100644 index 0000000000000000000000000000000000000000..143ddbe1700f2d2636cf4d0b3867d84457dbd18a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11608.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:035fe24c4ab505ab40bb9965f11c49d7f366135f8667553f502b508789e2f5d8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11609.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11609.replay new file mode 100644 index 0000000000000000000000000000000000000000..644e4f507e4309e84b32c92d4050f2c84673fb42 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11609.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82bd1a902aa2cd6d6c94cffef520795f5992162ff1cb3b8bf5898510c36dec1f +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11610.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11610.replay new file mode 100644 index 0000000000000000000000000000000000000000..96bad4c8fd6ccf2d9757e7bd1a17d38ed77e496a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11610.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06c60a4b0af923e99dcd63bc26105e9c37494c0595878255b44449857a30098f +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11611.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11611.replay new file mode 100644 index 0000000000000000000000000000000000000000..598dac1175f260d10234152ccd36a1576aa0468c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11611.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6adf5a4cac752b542803067a50e59ca71494ac76610b70756f99c4705d4d58c6 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11612.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11612.replay new file mode 100644 index 0000000000000000000000000000000000000000..ce85c409b61398318b02b06b2336fc01cc204af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11612.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b898119b3e0e4f0500b0ec07c1c21ace0aa97c725816a4c234288111150f57c0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11613.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11613.replay new file mode 100644 index 0000000000000000000000000000000000000000..143ddbe1700f2d2636cf4d0b3867d84457dbd18a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11613.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:035fe24c4ab505ab40bb9965f11c49d7f366135f8667553f502b508789e2f5d8 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11614.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11614.replay new file mode 100644 index 0000000000000000000000000000000000000000..644e4f507e4309e84b32c92d4050f2c84673fb42 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11614.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82bd1a902aa2cd6d6c94cffef520795f5992162ff1cb3b8bf5898510c36dec1f +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11615.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11615.replay new file mode 100644 index 0000000000000000000000000000000000000000..96bad4c8fd6ccf2d9757e7bd1a17d38ed77e496a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11615.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06c60a4b0af923e99dcd63bc26105e9c37494c0595878255b44449857a30098f +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11616.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11616.replay new file mode 100644 index 0000000000000000000000000000000000000000..d2703a754834faeae93fb93fd6c632a1c3157ba5 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11616.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f058c0743800d4b866720ffdda700606583b21c810eebe3808adf47674c96add +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11617.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11617.replay new file mode 100644 index 0000000000000000000000000000000000000000..2d943fb4091bf906b5a538279f823b8163809940 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11617.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24f3b2a1e81850463a9bf4b539bb85d3b77fb97a93cf9511b2b1389882d79f3d +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11618.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11618.replay new file mode 100644 index 0000000000000000000000000000000000000000..780032f094413b2f5def6c35f12156e85acd1c9c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11618.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8332318e834ab2c98589da80334b8b92c283bcc0ccae5a81dc4b1b083d0c92ef +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11619.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11619.replay new file mode 100644 index 0000000000000000000000000000000000000000..37d0275a50c65fc91e7b53f3daeb5bceeb6e8424 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11619.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f32fcbb7528df7fafb01e988196e3121804b343fe8c57d85a69a87738e80b582 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11620.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11620.replay new file mode 100644 index 0000000000000000000000000000000000000000..a8758b8e45e88f2ac5ee2cd25816d497cc42cf30 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11620.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b94cd825b14e6c4bf3ad22e5622996b521fcfffdbccec1d3a13864a179be309b +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11621.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11621.replay new file mode 100644 index 0000000000000000000000000000000000000000..2d943fb4091bf906b5a538279f823b8163809940 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11621.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24f3b2a1e81850463a9bf4b539bb85d3b77fb97a93cf9511b2b1389882d79f3d +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11622.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11622.replay new file mode 100644 index 0000000000000000000000000000000000000000..780032f094413b2f5def6c35f12156e85acd1c9c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11622.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8332318e834ab2c98589da80334b8b92c283bcc0ccae5a81dc4b1b083d0c92ef +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11623.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11623.replay new file mode 100644 index 0000000000000000000000000000000000000000..37d0275a50c65fc91e7b53f3daeb5bceeb6e8424 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11623.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f32fcbb7528df7fafb01e988196e3121804b343fe8c57d85a69a87738e80b582 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11624.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11624.replay new file mode 100644 index 0000000000000000000000000000000000000000..92b62f0aa18690886920eb4be126cbc6623e1699 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11624.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ae47b892921aa3d4a6f45273d57190100bd95eacbeb1c6eae885bce74f9ea72 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11625.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11625.replay new file mode 100644 index 0000000000000000000000000000000000000000..fc594609114cacdfa6c642d6d402ff4931caaf6d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11625.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c44a649fcc4cd51b1a2ec74823fcb61de4b5457d902811d82a16cfe3afb6a115 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11626.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11626.replay new file mode 100644 index 0000000000000000000000000000000000000000..492fe56b682f3828d300ac51782dae21c1bac128 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11626.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a180a396214a249df8ca0e900a402da7c30a2411b04a0fdc99a249a7e3a52ed3 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11627.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11627.replay new file mode 100644 index 0000000000000000000000000000000000000000..480d8422609c61a1a30e9fdb7a39334b977071b7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11627.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a06727e15fed230c2f4e7eca614a2a21614ddbdb8e4b1e5bc4d04c1e55f4992 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11628.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11628.replay new file mode 100644 index 0000000000000000000000000000000000000000..993c2183f6d4642994d6f17dd135f8e9bc83ada3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11628.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acb3f302ef00c11b7d2ffa67b293c90452c9332ae60d9cda15e29389e6da9339 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11629.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11629.replay new file mode 100644 index 0000000000000000000000000000000000000000..2f312cc96c41f83d6a498a4c775376d534cc1932 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11629.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ad61911d76d76681a5601bc54a78d95462d123606d5fbccaf430e6956275bcd +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11630.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11630.replay new file mode 100644 index 0000000000000000000000000000000000000000..993c2183f6d4642994d6f17dd135f8e9bc83ada3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11630.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acb3f302ef00c11b7d2ffa67b293c90452c9332ae60d9cda15e29389e6da9339 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11631.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11631.replay new file mode 100644 index 0000000000000000000000000000000000000000..7ae963b9acb50cd414e947ded223fdfb2dd6cbe5 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11631.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f97af345a53bc090a807e306f4028cf5f27778a75da274b078a2d068665563f9 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11632.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11632.replay new file mode 100644 index 0000000000000000000000000000000000000000..993c2183f6d4642994d6f17dd135f8e9bc83ada3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11632.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acb3f302ef00c11b7d2ffa67b293c90452c9332ae60d9cda15e29389e6da9339 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11633.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11633.replay new file mode 100644 index 0000000000000000000000000000000000000000..0726e0a94041a62f7b8d20a4dc04e35b00641dab --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11633.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b904229eb3e12666bd4dcefe9dd19807eb188a559620d4af8442dc664ba7946 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11634.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11634.replay new file mode 100644 index 0000000000000000000000000000000000000000..c5385fa3e200cbba0fde0160eb4145dd14ee79d3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11634.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8104435743f235e77ebc5b0eacfa7be0abd3442e3b352259ef42a9d8aec15d6 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11635.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11635.replay new file mode 100644 index 0000000000000000000000000000000000000000..944ad600aa57e6f6d5f3429738c3470a252a3b1d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11635.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b22b8b77fcc352a530ad5126a16233d12aa995e4896b2086572d5b4ae36c35f +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11636.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11636.replay new file mode 100644 index 0000000000000000000000000000000000000000..b7ead48f950fdd86d906f23d4180315632d19c39 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11636.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da0f25fb1adafc78f5fd2b78cf86dd8dc1de3028493ad359ed1a68bca8047286 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11637.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11637.replay new file mode 100644 index 0000000000000000000000000000000000000000..3678773afbcc3993a0210c4b58c65d91635a2e12 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11637.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0bf568890037f9a9553a28271ad7d1f8c549c2d860fcd2dcf6479f9f8f7efea +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11638.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11638.replay new file mode 100644 index 0000000000000000000000000000000000000000..25607eecedce3f5b3d031986722ffbb2b329d97d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11638.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f6f381ae2591aac5dd11b9810ffb2842186f452fb9d9022d85cb7e2876dbe35 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11639.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11639.replay new file mode 100644 index 0000000000000000000000000000000000000000..c5385fa3e200cbba0fde0160eb4145dd14ee79d3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11639.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8104435743f235e77ebc5b0eacfa7be0abd3442e3b352259ef42a9d8aec15d6 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11640.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11640.replay new file mode 100644 index 0000000000000000000000000000000000000000..944ad600aa57e6f6d5f3429738c3470a252a3b1d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11640.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b22b8b77fcc352a530ad5126a16233d12aa995e4896b2086572d5b4ae36c35f +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11641.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11641.replay new file mode 100644 index 0000000000000000000000000000000000000000..b7ead48f950fdd86d906f23d4180315632d19c39 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11641.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da0f25fb1adafc78f5fd2b78cf86dd8dc1de3028493ad359ed1a68bca8047286 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11642.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11642.replay new file mode 100644 index 0000000000000000000000000000000000000000..3678773afbcc3993a0210c4b58c65d91635a2e12 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11642.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0bf568890037f9a9553a28271ad7d1f8c549c2d860fcd2dcf6479f9f8f7efea +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11643.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11643.replay new file mode 100644 index 0000000000000000000000000000000000000000..f0139e613e479684c597a114b810f67fee9087d3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11643.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:193af94403a0585c6328442321ad52a766287dc9feddab2473eb5054922c6a2f +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11644.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11644.replay new file mode 100644 index 0000000000000000000000000000000000000000..c5385fa3e200cbba0fde0160eb4145dd14ee79d3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11644.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8104435743f235e77ebc5b0eacfa7be0abd3442e3b352259ef42a9d8aec15d6 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11645.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11645.replay new file mode 100644 index 0000000000000000000000000000000000000000..2eed41d131da5e57aea1433b815af1f9535ce3ad --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11645.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12c01be99e41af07ed751cc685c692cbfc04f7616d3480476d90b72784fe2819 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11646.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11646.replay new file mode 100644 index 0000000000000000000000000000000000000000..944ad600aa57e6f6d5f3429738c3470a252a3b1d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11646.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b22b8b77fcc352a530ad5126a16233d12aa995e4896b2086572d5b4ae36c35f +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11647.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11647.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e84f5f7046f35832d8f30d699935ac497ef7344 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11647.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c16004c60dbe855b57017d64d07d4285e87053aa7a7159f0a53cfb1ab38d0cf8 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11648.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11648.replay new file mode 100644 index 0000000000000000000000000000000000000000..b7ead48f950fdd86d906f23d4180315632d19c39 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11648.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da0f25fb1adafc78f5fd2b78cf86dd8dc1de3028493ad359ed1a68bca8047286 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11649.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11649.replay new file mode 100644 index 0000000000000000000000000000000000000000..a177e2753f00254d4200eb959a0af69adc2d002d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11649.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:013e52c517c0984d2344baf7016b354afd71d82d1701834fe1ab5ebd5ede3df3 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11650.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11650.replay new file mode 100644 index 0000000000000000000000000000000000000000..3678773afbcc3993a0210c4b58c65d91635a2e12 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11650.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0bf568890037f9a9553a28271ad7d1f8c549c2d860fcd2dcf6479f9f8f7efea +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11651.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11651.replay new file mode 100644 index 0000000000000000000000000000000000000000..bdf9f213f5e467b2164ae1fc2c751dbb1cb49a0f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11651.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88343ca5979c83b021a9fb2ff02d50938b23bf49a1f565c40fb1003da30998a0 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11652.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11652.replay new file mode 100644 index 0000000000000000000000000000000000000000..3d57fc5c0b0157a80c0b96d7725396bc8b0144af --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11652.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aff1c03f07f325af8ad2ecea52b717a663b0ce53193185961d11663253ba043 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11653.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11653.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e84f5f7046f35832d8f30d699935ac497ef7344 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11653.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c16004c60dbe855b57017d64d07d4285e87053aa7a7159f0a53cfb1ab38d0cf8 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11654.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11654.replay new file mode 100644 index 0000000000000000000000000000000000000000..c5385fa3e200cbba0fde0160eb4145dd14ee79d3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11654.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8104435743f235e77ebc5b0eacfa7be0abd3442e3b352259ef42a9d8aec15d6 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11655.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11655.replay new file mode 100644 index 0000000000000000000000000000000000000000..61c2c4cb6d86d83a680fd8f7a9161545f19528ba --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11655.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72fbe3a2fe72556eb1da18f67f51d64b7965a39c1b17aae377582a4fb1894db1 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11656.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11656.replay new file mode 100644 index 0000000000000000000000000000000000000000..944ad600aa57e6f6d5f3429738c3470a252a3b1d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11656.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b22b8b77fcc352a530ad5126a16233d12aa995e4896b2086572d5b4ae36c35f +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11657.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11657.replay new file mode 100644 index 0000000000000000000000000000000000000000..6eaea65d999f7dd705a1b0fa3648dea745a06f28 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11657.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67c4361ea0bc01d32f3f65d35604868a681d325b1c8d21634321c20f4e55292e +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11658.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11658.replay new file mode 100644 index 0000000000000000000000000000000000000000..b7ead48f950fdd86d906f23d4180315632d19c39 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11658.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da0f25fb1adafc78f5fd2b78cf86dd8dc1de3028493ad359ed1a68bca8047286 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11659.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11659.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e84f5f7046f35832d8f30d699935ac497ef7344 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11659.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c16004c60dbe855b57017d64d07d4285e87053aa7a7159f0a53cfb1ab38d0cf8 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11660.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11660.replay new file mode 100644 index 0000000000000000000000000000000000000000..3678773afbcc3993a0210c4b58c65d91635a2e12 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11660.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0bf568890037f9a9553a28271ad7d1f8c549c2d860fcd2dcf6479f9f8f7efea +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11661.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11661.replay new file mode 100644 index 0000000000000000000000000000000000000000..a177e2753f00254d4200eb959a0af69adc2d002d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11661.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:013e52c517c0984d2344baf7016b354afd71d82d1701834fe1ab5ebd5ede3df3 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11662.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11662.replay new file mode 100644 index 0000000000000000000000000000000000000000..7f0a02384dfc7e3d266c004653c80c995c63b7bf --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11662.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88e3e523a132a4af93d33d0374260a7c328fe5b2a80f23342ac5c3f762ee4dea +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11663.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11663.replay new file mode 100644 index 0000000000000000000000000000000000000000..f9f1c5bc8f7a446bf45f14a801e8ef64ef9fbf9b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11663.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:714bd7a3821f0b4b051ad07cc0789386b13ca67c5e2ea3012d33e6a4ccef67e1 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11664.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11664.replay new file mode 100644 index 0000000000000000000000000000000000000000..c5385fa3e200cbba0fde0160eb4145dd14ee79d3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11664.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8104435743f235e77ebc5b0eacfa7be0abd3442e3b352259ef42a9d8aec15d6 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11665.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11665.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e84f5f7046f35832d8f30d699935ac497ef7344 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11665.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c16004c60dbe855b57017d64d07d4285e87053aa7a7159f0a53cfb1ab38d0cf8 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11666.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11666.replay new file mode 100644 index 0000000000000000000000000000000000000000..944ad600aa57e6f6d5f3429738c3470a252a3b1d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11666.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b22b8b77fcc352a530ad5126a16233d12aa995e4896b2086572d5b4ae36c35f +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11667.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11667.replay new file mode 100644 index 0000000000000000000000000000000000000000..61c2c4cb6d86d83a680fd8f7a9161545f19528ba --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11667.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72fbe3a2fe72556eb1da18f67f51d64b7965a39c1b17aae377582a4fb1894db1 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11668.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11668.replay new file mode 100644 index 0000000000000000000000000000000000000000..b7ead48f950fdd86d906f23d4180315632d19c39 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11668.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da0f25fb1adafc78f5fd2b78cf86dd8dc1de3028493ad359ed1a68bca8047286 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11669.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11669.replay new file mode 100644 index 0000000000000000000000000000000000000000..763429c42839170d2358346f3f03924212c00817 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11669.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5014f426b6d6ed6893e48919e312e41366f89da2b664f02b43932ad50c671a19 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11670.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11670.replay new file mode 100644 index 0000000000000000000000000000000000000000..3678773afbcc3993a0210c4b58c65d91635a2e12 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11670.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0bf568890037f9a9553a28271ad7d1f8c549c2d860fcd2dcf6479f9f8f7efea +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11671.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11671.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e84f5f7046f35832d8f30d699935ac497ef7344 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11671.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c16004c60dbe855b57017d64d07d4285e87053aa7a7159f0a53cfb1ab38d0cf8 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11672.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11672.replay new file mode 100644 index 0000000000000000000000000000000000000000..964b38eb20820394237829142b0513adfdc66c02 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11672.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dde6d1ac6b01e6abd13e5570bf43df054262dee503ff321fab2f28d60245971 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11673.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11673.replay new file mode 100644 index 0000000000000000000000000000000000000000..a177e2753f00254d4200eb959a0af69adc2d002d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11673.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:013e52c517c0984d2344baf7016b354afd71d82d1701834fe1ab5ebd5ede3df3 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11674.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11674.replay new file mode 100644 index 0000000000000000000000000000000000000000..c5385fa3e200cbba0fde0160eb4145dd14ee79d3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11674.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8104435743f235e77ebc5b0eacfa7be0abd3442e3b352259ef42a9d8aec15d6 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11675.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11675.replay new file mode 100644 index 0000000000000000000000000000000000000000..07e5c8e368f570dd95b3f006e4b02e1a367766ba --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11675.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eea3bb61dffe9478ffbe034035fb0eeaafa192f785fce621078fa70b9821ff14 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11676.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11676.replay new file mode 100644 index 0000000000000000000000000000000000000000..944ad600aa57e6f6d5f3429738c3470a252a3b1d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11676.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b22b8b77fcc352a530ad5126a16233d12aa995e4896b2086572d5b4ae36c35f +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11677.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11677.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e84f5f7046f35832d8f30d699935ac497ef7344 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11677.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c16004c60dbe855b57017d64d07d4285e87053aa7a7159f0a53cfb1ab38d0cf8 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11678.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11678.replay new file mode 100644 index 0000000000000000000000000000000000000000..b7ead48f950fdd86d906f23d4180315632d19c39 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11678.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da0f25fb1adafc78f5fd2b78cf86dd8dc1de3028493ad359ed1a68bca8047286 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11679.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11679.replay new file mode 100644 index 0000000000000000000000000000000000000000..61c2c4cb6d86d83a680fd8f7a9161545f19528ba --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11679.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72fbe3a2fe72556eb1da18f67f51d64b7965a39c1b17aae377582a4fb1894db1 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11680.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11680.replay new file mode 100644 index 0000000000000000000000000000000000000000..3678773afbcc3993a0210c4b58c65d91635a2e12 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11680.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0bf568890037f9a9553a28271ad7d1f8c549c2d860fcd2dcf6479f9f8f7efea +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11681.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11681.replay new file mode 100644 index 0000000000000000000000000000000000000000..e202fae7267ce2e9a4873bce973ca9b28ceb82b7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11681.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffb424316622bd5d2749dd71e495eb3f9524a86266572c10a736b04d6f5aa433 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11682.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11682.replay new file mode 100644 index 0000000000000000000000000000000000000000..3fd26713eabac187b9fb5cfb715b9ac10ed486af --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11682.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b330a37776fda9ac39b00c17ba364ddd6decd504216bcbb39ef62972c8f6067 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11683.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11683.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e84f5f7046f35832d8f30d699935ac497ef7344 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11683.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c16004c60dbe855b57017d64d07d4285e87053aa7a7159f0a53cfb1ab38d0cf8 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11684.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11684.replay new file mode 100644 index 0000000000000000000000000000000000000000..69bff0ef71e0c5b07186948aa1601ad62117b160 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11684.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce313b2baf6d7490bece36517b92e9504283d2ade2c9c6c877edbac5224d0cbc +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11685.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11685.replay new file mode 100644 index 0000000000000000000000000000000000000000..a177e2753f00254d4200eb959a0af69adc2d002d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11685.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:013e52c517c0984d2344baf7016b354afd71d82d1701834fe1ab5ebd5ede3df3 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11686.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11686.replay new file mode 100644 index 0000000000000000000000000000000000000000..89890697db58f1c80cfcca2e6445dbdb4caf46a2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11686.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c63e0237b06b3146fccfc5a8efcb2353620e33085cb47c47c3ae7932b1910765 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11687.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11687.replay new file mode 100644 index 0000000000000000000000000000000000000000..c826686be1f4cee791d8603434fa0f4bef436c9b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11687.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f68ee50f69191efd0338f13fbff6a2d53c417c5db6bddba19ccc6e6126eb220 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11688.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11688.replay new file mode 100644 index 0000000000000000000000000000000000000000..ed40258c75f3ab5f2e2fe1221f4dd4330c3c2160 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11688.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae2a982b1829f0be8f976513930fee17ba889890e9df926fa02dbc66b33f761c +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11689.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11689.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e84f5f7046f35832d8f30d699935ac497ef7344 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11689.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c16004c60dbe855b57017d64d07d4285e87053aa7a7159f0a53cfb1ab38d0cf8 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11690.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11690.replay new file mode 100644 index 0000000000000000000000000000000000000000..8dd74331535982215388f414979c7880de01b803 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11690.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d1d6fe3e0284093a146cab6fc8cfde6facba0dda743583df977f7e77d5eb230 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11691.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11691.replay new file mode 100644 index 0000000000000000000000000000000000000000..61c2c4cb6d86d83a680fd8f7a9161545f19528ba --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11691.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72fbe3a2fe72556eb1da18f67f51d64b7965a39c1b17aae377582a4fb1894db1 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11692.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11692.replay new file mode 100644 index 0000000000000000000000000000000000000000..69bff0ef71e0c5b07186948aa1601ad62117b160 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11692.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce313b2baf6d7490bece36517b92e9504283d2ade2c9c6c877edbac5224d0cbc +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11693.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11693.replay new file mode 100644 index 0000000000000000000000000000000000000000..c6af42984705c944a03aab881d851864f12c3f39 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11693.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:893e41efba6977c63961f487cd361f3492c354e7aa0714780f25f76e4040af57 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11694.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11694.replay new file mode 100644 index 0000000000000000000000000000000000000000..89890697db58f1c80cfcca2e6445dbdb4caf46a2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11694.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c63e0237b06b3146fccfc5a8efcb2353620e33085cb47c47c3ae7932b1910765 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11695.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11695.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e84f5f7046f35832d8f30d699935ac497ef7344 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11695.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c16004c60dbe855b57017d64d07d4285e87053aa7a7159f0a53cfb1ab38d0cf8 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11696.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11696.replay new file mode 100644 index 0000000000000000000000000000000000000000..ed40258c75f3ab5f2e2fe1221f4dd4330c3c2160 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11696.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae2a982b1829f0be8f976513930fee17ba889890e9df926fa02dbc66b33f761c +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11697.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11697.replay new file mode 100644 index 0000000000000000000000000000000000000000..a177e2753f00254d4200eb959a0af69adc2d002d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11697.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:013e52c517c0984d2344baf7016b354afd71d82d1701834fe1ab5ebd5ede3df3 +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11698.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11698.replay new file mode 100644 index 0000000000000000000000000000000000000000..1c618deead9045e1e0f952447dc6360f4c33c10b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11698.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0e3101094456be89f8d1effb9a5771fc203d34dd141785cc6b84ebdea1ea4de +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11699.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11699.replay new file mode 100644 index 0000000000000000000000000000000000000000..f6eb7a9546f9a42803cb6aafb4c2a7e13080f23f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11699.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dcd57523dd11ae797d89a6e99e457da950b0d4021aeffd6ab01ba6adb025e20 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11700.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11700.replay new file mode 100644 index 0000000000000000000000000000000000000000..69bff0ef71e0c5b07186948aa1601ad62117b160 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11700.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce313b2baf6d7490bece36517b92e9504283d2ade2c9c6c877edbac5224d0cbc +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11701.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11701.replay new file mode 100644 index 0000000000000000000000000000000000000000..7cb3944754a61e23ce99dedc72c295765079c0da --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11701.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8981a9b3c1ec541309066ab3bc3f85702944cba4e224aaad6271241789f177f +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11702.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11702.replay new file mode 100644 index 0000000000000000000000000000000000000000..89890697db58f1c80cfcca2e6445dbdb4caf46a2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11702.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c63e0237b06b3146fccfc5a8efcb2353620e33085cb47c47c3ae7932b1910765 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11703.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11703.replay new file mode 100644 index 0000000000000000000000000000000000000000..a0e4dec139a9978976590ec2affb3af7ce3b3e6b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11703.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2853b7bb22ba8d560cb1872b69faeba26d7ffd6c7efe610b8f5047fe8de710f +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11704.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11704.replay new file mode 100644 index 0000000000000000000000000000000000000000..ed40258c75f3ab5f2e2fe1221f4dd4330c3c2160 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11704.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae2a982b1829f0be8f976513930fee17ba889890e9df926fa02dbc66b33f761c +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11705.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11705.replay new file mode 100644 index 0000000000000000000000000000000000000000..b7f7e03b8d00c52c63f247f1ee8a078d746c9a72 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11705.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cc4d6f8f75ed20a23ef437948dcfe3e56b4a356287df5cfd7a79446acbfceaa +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11706.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11706.replay new file mode 100644 index 0000000000000000000000000000000000000000..41ed716f616a3fa3dc0c85abad19b6a7f1ccb87d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11706.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69d1d2a19be052a7872fe71cff6b4000b56663603a755c685a8ba0b9d0379013 +size 3624024 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11707.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11707.replay new file mode 100644 index 0000000000000000000000000000000000000000..c79b79b3cd79d35c284ea708300effa7fb4449bf --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11707.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bf086de99202c62ebd19c575cfc65a057b347d6beeacbab17a0d5efa16e9cf1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11708.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11708.replay new file mode 100644 index 0000000000000000000000000000000000000000..51041647cc5d0d2b94a1685c23fb97380bc7e798 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11708.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87f1b6b9453d93f95eed2ba2d83e5a98221a307707415140c90cae8821fdfeb5 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11709.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11709.replay new file mode 100644 index 0000000000000000000000000000000000000000..7cb3944754a61e23ce99dedc72c295765079c0da --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11709.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8981a9b3c1ec541309066ab3bc3f85702944cba4e224aaad6271241789f177f +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11710.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11710.replay new file mode 100644 index 0000000000000000000000000000000000000000..548deadb26dcc87e974e050187190293caae5a24 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11710.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:004322ebfe74768134d6802e66659035c2f702dd2dd81161c8da437194770f39 +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11711.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11711.replay new file mode 100644 index 0000000000000000000000000000000000000000..6fa33e28e711f50b92b424e6380b428da5373ee7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11711.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f9f592c95b355c45e9ecbcb768d7fdf78eebdc930b07f2793f291cafb7956b1 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11712.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11712.replay new file mode 100644 index 0000000000000000000000000000000000000000..378abc0c114e706c8313e934421e5246a65a4ed8 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11712.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d33d42d95103b155b42cc52f33adcb612a6f99159ab08c82de0daa68a6fbf232 +size 3624031 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11713.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11713.replay new file mode 100644 index 0000000000000000000000000000000000000000..b7f7e03b8d00c52c63f247f1ee8a078d746c9a72 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11713.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cc4d6f8f75ed20a23ef437948dcfe3e56b4a356287df5cfd7a79446acbfceaa +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11714.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11714.replay new file mode 100644 index 0000000000000000000000000000000000000000..25b664fc661d6da27474d8835b9c29779d0c12fd --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11714.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7636e891836fcecd756d3f8da6d40f422d65eff496e8c406dad89a7829fe0657 +size 3624045 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11715.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11715.replay new file mode 100644 index 0000000000000000000000000000000000000000..573382f7edd64d91447badc18f718ea8e07d812d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11715.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bbe0561355716534e3f489ea35e6840ead078ff94932a1f20ba047e8197f5b2 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11716.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11716.replay new file mode 100644 index 0000000000000000000000000000000000000000..7cb3944754a61e23ce99dedc72c295765079c0da --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11716.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8981a9b3c1ec541309066ab3bc3f85702944cba4e224aaad6271241789f177f +size 3624044 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11717.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11717.replay new file mode 100644 index 0000000000000000000000000000000000000000..8f826a534df0e3d0a1cc89c37f99056d0605192f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11717.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9766b4206edda1b395004d441749cca0f4907887177644666fc913f3ddeeae7c +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11718.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11718.replay new file mode 100644 index 0000000000000000000000000000000000000000..18c3d50654d1c584c2a057f865b1fa29fadb8f07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11718.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b0bb4c0c112668472b0d8cca29145028a767d836928911eabc95a204bcfb81 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11719.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11719.replay new file mode 100644 index 0000000000000000000000000000000000000000..3c4cde479796a4b85eb8aff07d56e47830a44b13 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11719.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24782d0264996e2a48902ef32bfefc81931c5b9cff9660a01a32a6b321ef9ae0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11720.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11720.replay new file mode 100644 index 0000000000000000000000000000000000000000..ca2acbf8cd599331f8f94cd0d8ec56694a20fd26 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11720.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51411ffa5a1d5acde8ffc11a2d8c75ae6fbd81f31af757f0c47898b6795cad10 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11721.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11721.replay new file mode 100644 index 0000000000000000000000000000000000000000..9849ee9c935f6798454598c519ea7ccda01be8a3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11721.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23f63347c2262e290d91d7c02c3e198e154fa5b6bb222d9045f125db0e323cef +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11722.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11722.replay new file mode 100644 index 0000000000000000000000000000000000000000..050dabfa6d25d9ee1eefabdfda8fae0f7b23ee0e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11722.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e128568ef3616c2a26cf7c32c9dad476b5f387740ce2b406228de6c9fe87fc87 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11723.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11723.replay new file mode 100644 index 0000000000000000000000000000000000000000..18c3d50654d1c584c2a057f865b1fa29fadb8f07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11723.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b0bb4c0c112668472b0d8cca29145028a767d836928911eabc95a204bcfb81 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11724.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11724.replay new file mode 100644 index 0000000000000000000000000000000000000000..3c4cde479796a4b85eb8aff07d56e47830a44b13 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11724.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24782d0264996e2a48902ef32bfefc81931c5b9cff9660a01a32a6b321ef9ae0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11725.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11725.replay new file mode 100644 index 0000000000000000000000000000000000000000..ca2acbf8cd599331f8f94cd0d8ec56694a20fd26 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11725.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51411ffa5a1d5acde8ffc11a2d8c75ae6fbd81f31af757f0c47898b6795cad10 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11726.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11726.replay new file mode 100644 index 0000000000000000000000000000000000000000..5ed6f768a276b7713f35354738155226a6ce86d2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11726.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efd20cfd7b14433e45b8178112e63221dbe1ff62c29978e27768d9ce9fe794fd +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11727.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11727.replay new file mode 100644 index 0000000000000000000000000000000000000000..41d63d9ad66de02e69909f18960881966341a514 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11727.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd692eb5bb930946df505a65d81cd28cacbbef4f4629fd1a3f0e5c981acd50c9 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11728.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11728.replay new file mode 100644 index 0000000000000000000000000000000000000000..18c3d50654d1c584c2a057f865b1fa29fadb8f07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11728.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b0bb4c0c112668472b0d8cca29145028a767d836928911eabc95a204bcfb81 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11729.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11729.replay new file mode 100644 index 0000000000000000000000000000000000000000..3c4cde479796a4b85eb8aff07d56e47830a44b13 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11729.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24782d0264996e2a48902ef32bfefc81931c5b9cff9660a01a32a6b321ef9ae0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11730.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11730.replay new file mode 100644 index 0000000000000000000000000000000000000000..ca2acbf8cd599331f8f94cd0d8ec56694a20fd26 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11730.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51411ffa5a1d5acde8ffc11a2d8c75ae6fbd81f31af757f0c47898b6795cad10 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11731.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11731.replay new file mode 100644 index 0000000000000000000000000000000000000000..9849ee9c935f6798454598c519ea7ccda01be8a3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11731.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23f63347c2262e290d91d7c02c3e198e154fa5b6bb222d9045f125db0e323cef +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11732.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11732.replay new file mode 100644 index 0000000000000000000000000000000000000000..8e4f61ebf86810226aa7eb97478911635a42ac55 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11732.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c2dbedc2ff5ae7d73d4c451d7af38080fdd20010cfd309411427b3ff2b17c49 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11733.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11733.replay new file mode 100644 index 0000000000000000000000000000000000000000..18c3d50654d1c584c2a057f865b1fa29fadb8f07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11733.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b0bb4c0c112668472b0d8cca29145028a767d836928911eabc95a204bcfb81 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11734.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11734.replay new file mode 100644 index 0000000000000000000000000000000000000000..3c4cde479796a4b85eb8aff07d56e47830a44b13 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11734.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24782d0264996e2a48902ef32bfefc81931c5b9cff9660a01a32a6b321ef9ae0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11735.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11735.replay new file mode 100644 index 0000000000000000000000000000000000000000..ca2acbf8cd599331f8f94cd0d8ec56694a20fd26 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11735.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51411ffa5a1d5acde8ffc11a2d8c75ae6fbd81f31af757f0c47898b6795cad10 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11736.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11736.replay new file mode 100644 index 0000000000000000000000000000000000000000..5ed6f768a276b7713f35354738155226a6ce86d2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11736.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efd20cfd7b14433e45b8178112e63221dbe1ff62c29978e27768d9ce9fe794fd +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11737.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11737.replay new file mode 100644 index 0000000000000000000000000000000000000000..d0ca7fe360e4466988afab6d95184305c1f4c74f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11737.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52c54a042d0f7e9047758cea6323ae5c5d9fc979c6e5fa6fe64221afc76d652f +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11738.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11738.replay new file mode 100644 index 0000000000000000000000000000000000000000..18c3d50654d1c584c2a057f865b1fa29fadb8f07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11738.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b0bb4c0c112668472b0d8cca29145028a767d836928911eabc95a204bcfb81 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11739.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11739.replay new file mode 100644 index 0000000000000000000000000000000000000000..3c4cde479796a4b85eb8aff07d56e47830a44b13 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11739.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24782d0264996e2a48902ef32bfefc81931c5b9cff9660a01a32a6b321ef9ae0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11740.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11740.replay new file mode 100644 index 0000000000000000000000000000000000000000..ca2acbf8cd599331f8f94cd0d8ec56694a20fd26 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11740.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51411ffa5a1d5acde8ffc11a2d8c75ae6fbd81f31af757f0c47898b6795cad10 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11741.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11741.replay new file mode 100644 index 0000000000000000000000000000000000000000..9849ee9c935f6798454598c519ea7ccda01be8a3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11741.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23f63347c2262e290d91d7c02c3e198e154fa5b6bb222d9045f125db0e323cef +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11742.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11742.replay new file mode 100644 index 0000000000000000000000000000000000000000..0c3f0346d8d032253368b69d6e3850cabc199cfa --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11742.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:237e04de2f341de1d17cdc60dea25a923819f18744df96a34171eef15b0f4811 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11743.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11743.replay new file mode 100644 index 0000000000000000000000000000000000000000..18c3d50654d1c584c2a057f865b1fa29fadb8f07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11743.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b0bb4c0c112668472b0d8cca29145028a767d836928911eabc95a204bcfb81 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11744.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11744.replay new file mode 100644 index 0000000000000000000000000000000000000000..3c4cde479796a4b85eb8aff07d56e47830a44b13 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11744.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24782d0264996e2a48902ef32bfefc81931c5b9cff9660a01a32a6b321ef9ae0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11745.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11745.replay new file mode 100644 index 0000000000000000000000000000000000000000..ca2acbf8cd599331f8f94cd0d8ec56694a20fd26 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11745.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51411ffa5a1d5acde8ffc11a2d8c75ae6fbd81f31af757f0c47898b6795cad10 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11746.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11746.replay new file mode 100644 index 0000000000000000000000000000000000000000..5ed6f768a276b7713f35354738155226a6ce86d2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11746.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efd20cfd7b14433e45b8178112e63221dbe1ff62c29978e27768d9ce9fe794fd +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11747.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11747.replay new file mode 100644 index 0000000000000000000000000000000000000000..a62cec925374799da1cc156671d9c644979013ca --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11747.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78cef598f557e4972acc23501c3abfc100f2b2f84c031bead3eb8be9fa5c8898 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11748.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11748.replay new file mode 100644 index 0000000000000000000000000000000000000000..18c3d50654d1c584c2a057f865b1fa29fadb8f07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11748.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b0bb4c0c112668472b0d8cca29145028a767d836928911eabc95a204bcfb81 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11749.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11749.replay new file mode 100644 index 0000000000000000000000000000000000000000..3c4cde479796a4b85eb8aff07d56e47830a44b13 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11749.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24782d0264996e2a48902ef32bfefc81931c5b9cff9660a01a32a6b321ef9ae0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11750.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11750.replay new file mode 100644 index 0000000000000000000000000000000000000000..ca2acbf8cd599331f8f94cd0d8ec56694a20fd26 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11750.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51411ffa5a1d5acde8ffc11a2d8c75ae6fbd81f31af757f0c47898b6795cad10 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11751.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11751.replay new file mode 100644 index 0000000000000000000000000000000000000000..9849ee9c935f6798454598c519ea7ccda01be8a3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11751.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23f63347c2262e290d91d7c02c3e198e154fa5b6bb222d9045f125db0e323cef +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11752.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11752.replay new file mode 100644 index 0000000000000000000000000000000000000000..684aef7c65ed04a15b9d3680ac18b747b05d28d8 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11752.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07f3330a0689433ef09b291ea4e6d5356f04ef250610a470b96c8fd0675f3a71 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11753.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11753.replay new file mode 100644 index 0000000000000000000000000000000000000000..18c3d50654d1c584c2a057f865b1fa29fadb8f07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11753.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b0bb4c0c112668472b0d8cca29145028a767d836928911eabc95a204bcfb81 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11754.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11754.replay new file mode 100644 index 0000000000000000000000000000000000000000..3c4cde479796a4b85eb8aff07d56e47830a44b13 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11754.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24782d0264996e2a48902ef32bfefc81931c5b9cff9660a01a32a6b321ef9ae0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11764.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11764.replay new file mode 100644 index 0000000000000000000000000000000000000000..07ea7a25170921ff40327fc3e9bf4035ce25a8a8 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11764.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a17c9fced0b2aca142162b555a47112e8db4e02394df3d8f9c29dab1bed317c +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11765.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11765.replay new file mode 100644 index 0000000000000000000000000000000000000000..7448f13a7f23f172c22910360f64a838c3fcfa14 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11765.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9030bf8cefa51cc3826f06a4054dbc8fa270f3793076a5d128253f223f2e49d1 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11766.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11766.replay new file mode 100644 index 0000000000000000000000000000000000000000..800dfba88c2b578938af024a85b828daf498dd5c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11766.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:501186d7e9e8819b5fc32ffcc6ba5a7385ab5d4161e8c8376efa016ee25c6043 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11767.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11767.replay new file mode 100644 index 0000000000000000000000000000000000000000..5d963fb150b4707093743623ae8a3c07505ced60 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11767.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af93e26ab791d2aca32c2d2291b4247fd427e83e87e50c9462530e81dd7bc8df +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11768.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11768.replay new file mode 100644 index 0000000000000000000000000000000000000000..c2f651d4a371146afbbeae577d7998d81b05492c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11768.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eed46e5c6ddcdb77f91b7d9485e7f36f6521b8d6149c16e78c0667f5eec3c181 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11769.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11769.replay new file mode 100644 index 0000000000000000000000000000000000000000..7448f13a7f23f172c22910360f64a838c3fcfa14 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11769.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9030bf8cefa51cc3826f06a4054dbc8fa270f3793076a5d128253f223f2e49d1 +size 3624030 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11770.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11770.replay new file mode 100644 index 0000000000000000000000000000000000000000..ca0aa81f4f0700e64fec460a89ce7b72656ee1f7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11770.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27139f558b360a78c3359a6828f704901d0c9318d4d739fff68c6e00980dbcaa +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11771.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11771.replay new file mode 100644 index 0000000000000000000000000000000000000000..54903cd5b258a9d8e2c231f68582e0aa6d48b312 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11771.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:203b6ac02bbdca9d1b5f6deb87ac93b6229675f4758dbf0e6d468c38e6fb585e +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11772.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11772.replay new file mode 100644 index 0000000000000000000000000000000000000000..b82984066136c864c33b82421af1e312f9a13a5b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11772.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2298f9aa418ae0730971439ab4bda4d8925836464eacb3ef8052a333431c5922 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11773.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11773.replay new file mode 100644 index 0000000000000000000000000000000000000000..db77d5f046aba03d20a58878b039ae3c39cecce2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11773.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d1e014d4cc1799156eee365d21d72fcf0051f7292b97574436a5bec753b259 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11774.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11774.replay new file mode 100644 index 0000000000000000000000000000000000000000..d75e8e4d22a7a695737503560bfc65da1f5d128e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11774.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de557dbaeee08b5c7ff1b9282fbe6d8a342c9a031dac7939cc631a60b0eb9a81 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11775.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11775.replay new file mode 100644 index 0000000000000000000000000000000000000000..a3f15c6eec0bde0ef21b7578b25043f3966bcc94 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11775.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3680f414cfd9374d4c78637b4a9c7c9e16d15c03189537e8d0392415e2922dc6 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11776.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11776.replay new file mode 100644 index 0000000000000000000000000000000000000000..54903cd5b258a9d8e2c231f68582e0aa6d48b312 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11776.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:203b6ac02bbdca9d1b5f6deb87ac93b6229675f4758dbf0e6d468c38e6fb585e +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11777.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11777.replay new file mode 100644 index 0000000000000000000000000000000000000000..b82984066136c864c33b82421af1e312f9a13a5b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11777.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2298f9aa418ae0730971439ab4bda4d8925836464eacb3ef8052a333431c5922 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11778.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11778.replay new file mode 100644 index 0000000000000000000000000000000000000000..db77d5f046aba03d20a58878b039ae3c39cecce2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11778.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d1e014d4cc1799156eee365d21d72fcf0051f7292b97574436a5bec753b259 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11779.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11779.replay new file mode 100644 index 0000000000000000000000000000000000000000..d75e8e4d22a7a695737503560bfc65da1f5d128e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11779.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de557dbaeee08b5c7ff1b9282fbe6d8a342c9a031dac7939cc631a60b0eb9a81 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11780.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11780.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e13e429f78c7f76ed5313270657f927d9e850eb --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11780.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37f31259031e97b8c96372e708aa520b7e2a8cffa7bfdec4a15799d13fe06531 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11781.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11781.replay new file mode 100644 index 0000000000000000000000000000000000000000..54903cd5b258a9d8e2c231f68582e0aa6d48b312 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11781.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:203b6ac02bbdca9d1b5f6deb87ac93b6229675f4758dbf0e6d468c38e6fb585e +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11782.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11782.replay new file mode 100644 index 0000000000000000000000000000000000000000..b82984066136c864c33b82421af1e312f9a13a5b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11782.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2298f9aa418ae0730971439ab4bda4d8925836464eacb3ef8052a333431c5922 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11783.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11783.replay new file mode 100644 index 0000000000000000000000000000000000000000..db77d5f046aba03d20a58878b039ae3c39cecce2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11783.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d1e014d4cc1799156eee365d21d72fcf0051f7292b97574436a5bec753b259 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11784.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11784.replay new file mode 100644 index 0000000000000000000000000000000000000000..d75e8e4d22a7a695737503560bfc65da1f5d128e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11784.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de557dbaeee08b5c7ff1b9282fbe6d8a342c9a031dac7939cc631a60b0eb9a81 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11785.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11785.replay new file mode 100644 index 0000000000000000000000000000000000000000..8c7a937188a73e40fe6ccdf17dbf17524a5b5fa9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11785.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd97c756c3ce6628b24def18cfdf344f6ca6d1c1fb5a2259a6da150b9e4c6585 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11786.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11786.replay new file mode 100644 index 0000000000000000000000000000000000000000..54903cd5b258a9d8e2c231f68582e0aa6d48b312 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11786.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:203b6ac02bbdca9d1b5f6deb87ac93b6229675f4758dbf0e6d468c38e6fb585e +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11787.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11787.replay new file mode 100644 index 0000000000000000000000000000000000000000..b82984066136c864c33b82421af1e312f9a13a5b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11787.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2298f9aa418ae0730971439ab4bda4d8925836464eacb3ef8052a333431c5922 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11788.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11788.replay new file mode 100644 index 0000000000000000000000000000000000000000..db77d5f046aba03d20a58878b039ae3c39cecce2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11788.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d1e014d4cc1799156eee365d21d72fcf0051f7292b97574436a5bec753b259 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11789.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11789.replay new file mode 100644 index 0000000000000000000000000000000000000000..d75e8e4d22a7a695737503560bfc65da1f5d128e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11789.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de557dbaeee08b5c7ff1b9282fbe6d8a342c9a031dac7939cc631a60b0eb9a81 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11790.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11790.replay new file mode 100644 index 0000000000000000000000000000000000000000..cc040b4f17ba2aba37612cab5d0b8d00a015d6fb --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11790.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6255405a18f5657590ac229cd098b38159592770055d2fa1db97ce3bd5eb207b +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11791.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11791.replay new file mode 100644 index 0000000000000000000000000000000000000000..54903cd5b258a9d8e2c231f68582e0aa6d48b312 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11791.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:203b6ac02bbdca9d1b5f6deb87ac93b6229675f4758dbf0e6d468c38e6fb585e +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11792.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11792.replay new file mode 100644 index 0000000000000000000000000000000000000000..b82984066136c864c33b82421af1e312f9a13a5b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11792.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2298f9aa418ae0730971439ab4bda4d8925836464eacb3ef8052a333431c5922 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11793.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11793.replay new file mode 100644 index 0000000000000000000000000000000000000000..db77d5f046aba03d20a58878b039ae3c39cecce2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11793.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d1e014d4cc1799156eee365d21d72fcf0051f7292b97574436a5bec753b259 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11794.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11794.replay new file mode 100644 index 0000000000000000000000000000000000000000..d75e8e4d22a7a695737503560bfc65da1f5d128e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11794.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de557dbaeee08b5c7ff1b9282fbe6d8a342c9a031dac7939cc631a60b0eb9a81 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11795.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11795.replay new file mode 100644 index 0000000000000000000000000000000000000000..7840e0fcdfeb67db6cd4d88f97cf7e66538aa2bf --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11795.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb4d43a6dfa37e0f0f4d5d2742b585b6775ddc12791d669aa3a4c0005b0a4411 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11796.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11796.replay new file mode 100644 index 0000000000000000000000000000000000000000..54903cd5b258a9d8e2c231f68582e0aa6d48b312 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11796.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:203b6ac02bbdca9d1b5f6deb87ac93b6229675f4758dbf0e6d468c38e6fb585e +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11797.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11797.replay new file mode 100644 index 0000000000000000000000000000000000000000..b82984066136c864c33b82421af1e312f9a13a5b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11797.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2298f9aa418ae0730971439ab4bda4d8925836464eacb3ef8052a333431c5922 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11798.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11798.replay new file mode 100644 index 0000000000000000000000000000000000000000..db77d5f046aba03d20a58878b039ae3c39cecce2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11798.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d1e014d4cc1799156eee365d21d72fcf0051f7292b97574436a5bec753b259 +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11799.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11799.replay new file mode 100644 index 0000000000000000000000000000000000000000..d75e8e4d22a7a695737503560bfc65da1f5d128e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11799.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de557dbaeee08b5c7ff1b9282fbe6d8a342c9a031dac7939cc631a60b0eb9a81 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11800.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11800.replay new file mode 100644 index 0000000000000000000000000000000000000000..1c9fcdeb0ffafcff3b6470317a92685aa52fb558 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11800.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6777218f060e13d8b9c6cb97824371c46bea2ac4aedd2003807abe255a6ea9d3 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11801.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11801.replay new file mode 100644 index 0000000000000000000000000000000000000000..3980086ea5fd110b66a0560698d3ee5ef2d6a610 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11801.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad4fd5d2392510ad8b89503d2dee04bf3636fd1798f370788a75eb2cb497bfc +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11802.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11802.replay new file mode 100644 index 0000000000000000000000000000000000000000..758f3e7a83235e7d4920b329613964b0d102957f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11802.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5a7b924a1fcfbae00a3e0d5920224e6b394234416026fd9932f1687077febdd +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11803.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11803.replay new file mode 100644 index 0000000000000000000000000000000000000000..b42703677ea3876f384e1b949c76d83628e766b1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11803.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70601aafae7d1db6f1e3934b4486978bb5a3fa9f881c1cc6c809be0bef1e4f44 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11804.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11804.replay new file mode 100644 index 0000000000000000000000000000000000000000..356f053aebbd7aeffd76508a7b19e2568776ae31 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11804.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df893029474c6695885d688d6320452a566f112af2ef877e0243737beed0b790 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11805.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11805.replay new file mode 100644 index 0000000000000000000000000000000000000000..3980086ea5fd110b66a0560698d3ee5ef2d6a610 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11805.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad4fd5d2392510ad8b89503d2dee04bf3636fd1798f370788a75eb2cb497bfc +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11806.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11806.replay new file mode 100644 index 0000000000000000000000000000000000000000..758f3e7a83235e7d4920b329613964b0d102957f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11806.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5a7b924a1fcfbae00a3e0d5920224e6b394234416026fd9932f1687077febdd +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11807.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11807.replay new file mode 100644 index 0000000000000000000000000000000000000000..b42703677ea3876f384e1b949c76d83628e766b1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11807.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70601aafae7d1db6f1e3934b4486978bb5a3fa9f881c1cc6c809be0bef1e4f44 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11808.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11808.replay new file mode 100644 index 0000000000000000000000000000000000000000..8b2f1a8a5002ef59548e734a5c70a77d7fd153aa --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11808.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b235ad15201aa31c8f5c416a66049575a47fbae9b34ac139e9a8f27ffdb74f7 +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11809.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11809.replay new file mode 100644 index 0000000000000000000000000000000000000000..3980086ea5fd110b66a0560698d3ee5ef2d6a610 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11809.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad4fd5d2392510ad8b89503d2dee04bf3636fd1798f370788a75eb2cb497bfc +size 3624029 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11810.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11810.replay new file mode 100644 index 0000000000000000000000000000000000000000..758f3e7a83235e7d4920b329613964b0d102957f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11810.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5a7b924a1fcfbae00a3e0d5920224e6b394234416026fd9932f1687077febdd +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11811.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11811.replay new file mode 100644 index 0000000000000000000000000000000000000000..b42703677ea3876f384e1b949c76d83628e766b1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11811.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70601aafae7d1db6f1e3934b4486978bb5a3fa9f881c1cc6c809be0bef1e4f44 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11812.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11812.replay new file mode 100644 index 0000000000000000000000000000000000000000..032d64a3717e9b872a998d5617e19235d1b58a90 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11812.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75b7af325b78ca8f04801df1b0b92d9ee04736f7f8bd96826663c1d0a44bc47e +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11813.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11813.replay new file mode 100644 index 0000000000000000000000000000000000000000..173cdedfd83075690223c31794e61bd4c0d56023 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11813.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8485e573a7b9b34a0d8fa5de73b2fc4fa378875cbfe79e41b51006254bad6da1 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11814.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11814.replay new file mode 100644 index 0000000000000000000000000000000000000000..e74e148a35025a55a78d08b19d33bcdf042f9927 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11814.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52ea576810f1d5ef4ec55608697830876fcbe97a273d1f45420bbb6a836b117a +size 3624036 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11815.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11815.replay new file mode 100644 index 0000000000000000000000000000000000000000..173cdedfd83075690223c31794e61bd4c0d56023 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11815.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8485e573a7b9b34a0d8fa5de73b2fc4fa378875cbfe79e41b51006254bad6da1 +size 3624050 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11912.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11912.replay new file mode 100644 index 0000000000000000000000000000000000000000..7e429b0085380509b6cd181de1a76125dbc1676d --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11912.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c07b6dd82e57cb0d10b1a8caa7d9240ab48c7854efe15104aa696b3e5a8f29c5 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11913.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11913.replay new file mode 100644 index 0000000000000000000000000000000000000000..e8a90415cfe463351ba12d3b1ac0f6ace3bf4181 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11913.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30ba4eef87c2f94697ee6b0ac20f635f80c56f02b3e23cd7e941100886e658e7 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11914.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11914.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e62f491ceffd54b81f3c355e8b1f073b0767b18 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11914.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47c6202314608440f8b5a3168f499f900f22c4a1c18c400fa52f5a779b5e7698 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11915.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11915.replay new file mode 100644 index 0000000000000000000000000000000000000000..595c479894a54e6bc3c7083b3d1355d33be06d4f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11915.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98789275d53df2f53a1a809d3331d80fcc071e51edbb402add971486b119cf44 +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11918.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11918.replay new file mode 100644 index 0000000000000000000000000000000000000000..e8a90415cfe463351ba12d3b1ac0f6ace3bf4181 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11918.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30ba4eef87c2f94697ee6b0ac20f635f80c56f02b3e23cd7e941100886e658e7 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11919.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11919.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e62f491ceffd54b81f3c355e8b1f073b0767b18 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11919.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47c6202314608440f8b5a3168f499f900f22c4a1c18c400fa52f5a779b5e7698 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11920.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11920.replay new file mode 100644 index 0000000000000000000000000000000000000000..595c479894a54e6bc3c7083b3d1355d33be06d4f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11920.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98789275d53df2f53a1a809d3331d80fcc071e51edbb402add971486b119cf44 +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11921.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11921.replay new file mode 100644 index 0000000000000000000000000000000000000000..ec8126c8b0985c0de09034bf3c16732c89f61aad --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11921.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0ca7b35931b102b1a731a4e65cdea3d728add429510fee75c4ea5e0b19bdb8a +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11922.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11922.replay new file mode 100644 index 0000000000000000000000000000000000000000..05274e259a7d9056e9ee749ad8f57efb9a45d113 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11922.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a17e92248cecd9babcb340dac1d998e2e19b42b0b3bb09c34b762d929a7e79a +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11923.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11923.replay new file mode 100644 index 0000000000000000000000000000000000000000..e8a90415cfe463351ba12d3b1ac0f6ace3bf4181 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11923.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30ba4eef87c2f94697ee6b0ac20f635f80c56f02b3e23cd7e941100886e658e7 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11924.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11924.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e62f491ceffd54b81f3c355e8b1f073b0767b18 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11924.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47c6202314608440f8b5a3168f499f900f22c4a1c18c400fa52f5a779b5e7698 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11925.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11925.replay new file mode 100644 index 0000000000000000000000000000000000000000..595c479894a54e6bc3c7083b3d1355d33be06d4f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11925.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98789275d53df2f53a1a809d3331d80fcc071e51edbb402add971486b119cf44 +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11926.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11926.replay new file mode 100644 index 0000000000000000000000000000000000000000..ec8126c8b0985c0de09034bf3c16732c89f61aad --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11926.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0ca7b35931b102b1a731a4e65cdea3d728add429510fee75c4ea5e0b19bdb8a +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11927.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11927.replay new file mode 100644 index 0000000000000000000000000000000000000000..7a89ed29471b187b04cb42e5df748566421b9eae --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11927.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80fd2d5c27b95cda296e33c59fce16de48af188406592181e1ac5e030fb429bd +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11928.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11928.replay new file mode 100644 index 0000000000000000000000000000000000000000..e8a90415cfe463351ba12d3b1ac0f6ace3bf4181 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11928.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30ba4eef87c2f94697ee6b0ac20f635f80c56f02b3e23cd7e941100886e658e7 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11929.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11929.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e62f491ceffd54b81f3c355e8b1f073b0767b18 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11929.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47c6202314608440f8b5a3168f499f900f22c4a1c18c400fa52f5a779b5e7698 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11930.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11930.replay new file mode 100644 index 0000000000000000000000000000000000000000..595c479894a54e6bc3c7083b3d1355d33be06d4f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11930.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98789275d53df2f53a1a809d3331d80fcc071e51edbb402add971486b119cf44 +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11931.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11931.replay new file mode 100644 index 0000000000000000000000000000000000000000..ec8126c8b0985c0de09034bf3c16732c89f61aad --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11931.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0ca7b35931b102b1a731a4e65cdea3d728add429510fee75c4ea5e0b19bdb8a +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11932.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11932.replay new file mode 100644 index 0000000000000000000000000000000000000000..8fac7e3a42492394fed2fc490d50178e52fa6010 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11932.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:950b9994c61488d278ff58415020b0cc81f7c571e172a9be93dce06044ec1be7 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11933.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11933.replay new file mode 100644 index 0000000000000000000000000000000000000000..e8a90415cfe463351ba12d3b1ac0f6ace3bf4181 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11933.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30ba4eef87c2f94697ee6b0ac20f635f80c56f02b3e23cd7e941100886e658e7 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11934.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11934.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e62f491ceffd54b81f3c355e8b1f073b0767b18 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11934.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47c6202314608440f8b5a3168f499f900f22c4a1c18c400fa52f5a779b5e7698 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11935.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11935.replay new file mode 100644 index 0000000000000000000000000000000000000000..595c479894a54e6bc3c7083b3d1355d33be06d4f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11935.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98789275d53df2f53a1a809d3331d80fcc071e51edbb402add971486b119cf44 +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11936.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11936.replay new file mode 100644 index 0000000000000000000000000000000000000000..ec8126c8b0985c0de09034bf3c16732c89f61aad --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11936.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0ca7b35931b102b1a731a4e65cdea3d728add429510fee75c4ea5e0b19bdb8a +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11937.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11937.replay new file mode 100644 index 0000000000000000000000000000000000000000..4faf0d44f873679dd4c1f96e73fe36bfa6a94b94 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11937.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d4c0ea24a81d7852d2c538075a788b327256d00b8a426080298be826793fd26 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11938.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11938.replay new file mode 100644 index 0000000000000000000000000000000000000000..e8a90415cfe463351ba12d3b1ac0f6ace3bf4181 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11938.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30ba4eef87c2f94697ee6b0ac20f635f80c56f02b3e23cd7e941100886e658e7 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11939.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11939.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e62f491ceffd54b81f3c355e8b1f073b0767b18 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11939.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47c6202314608440f8b5a3168f499f900f22c4a1c18c400fa52f5a779b5e7698 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11940.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11940.replay new file mode 100644 index 0000000000000000000000000000000000000000..595c479894a54e6bc3c7083b3d1355d33be06d4f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11940.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98789275d53df2f53a1a809d3331d80fcc071e51edbb402add971486b119cf44 +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11941.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11941.replay new file mode 100644 index 0000000000000000000000000000000000000000..ec8126c8b0985c0de09034bf3c16732c89f61aad --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11941.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0ca7b35931b102b1a731a4e65cdea3d728add429510fee75c4ea5e0b19bdb8a +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11942.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11942.replay new file mode 100644 index 0000000000000000000000000000000000000000..b895c046b976da40531d1aefc0da6c2c129ca377 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11942.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40dc79c6265322945cf41f6652b1c26878968b5ec4585a8efec931867058b876 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11943.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11943.replay new file mode 100644 index 0000000000000000000000000000000000000000..e8a90415cfe463351ba12d3b1ac0f6ace3bf4181 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11943.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30ba4eef87c2f94697ee6b0ac20f635f80c56f02b3e23cd7e941100886e658e7 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11944.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11944.replay new file mode 100644 index 0000000000000000000000000000000000000000..4e62f491ceffd54b81f3c355e8b1f073b0767b18 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11944.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47c6202314608440f8b5a3168f499f900f22c4a1c18c400fa52f5a779b5e7698 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11945.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11945.replay new file mode 100644 index 0000000000000000000000000000000000000000..595c479894a54e6bc3c7083b3d1355d33be06d4f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11945.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98789275d53df2f53a1a809d3331d80fcc071e51edbb402add971486b119cf44 +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11946.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11946.replay new file mode 100644 index 0000000000000000000000000000000000000000..ec8126c8b0985c0de09034bf3c16732c89f61aad --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11946.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0ca7b35931b102b1a731a4e65cdea3d728add429510fee75c4ea5e0b19bdb8a +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11947.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11947.replay new file mode 100644 index 0000000000000000000000000000000000000000..01d23d5dddd41c01fbc78d7438baef3210d1b105 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11947.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23e0503879d7722b9f26dd57a2adace2c03445db2f8135d567c3421c299adca4 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11948.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11948.replay new file mode 100644 index 0000000000000000000000000000000000000000..da32e0725435c3367dd9190288b4f7a0261d0be1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11948.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f82d63c406114c45e7b12be8e739c00b8f24d7e5f0436e9da5431dfff12e5ca +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11949.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11949.replay new file mode 100644 index 0000000000000000000000000000000000000000..c08f91fb75f11a3e9a962987f2b3d2812db81f20 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11949.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af953ae57a2ddb2a8d9fb7d3cf0901c6990c2d68a6ac42c880b958b7acfdd59b +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11950.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11950.replay new file mode 100644 index 0000000000000000000000000000000000000000..4de0b8762e4da7defcfec947cf47f3745160577e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11950.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93c339b0c986bb719ec42ddeae6ae75cea5cfc76989cd8e4b62d304887520029 +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11951.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11951.replay new file mode 100644 index 0000000000000000000000000000000000000000..e2979fbcdf98cc24380ed771fa0dee147429d7e7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11951.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cb6b034d63a4e26098b97c5416d726dd2011f4b31f907a76a1685e30a9d655f +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11952.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11952.replay new file mode 100644 index 0000000000000000000000000000000000000000..da32e0725435c3367dd9190288b4f7a0261d0be1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11952.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f82d63c406114c45e7b12be8e739c00b8f24d7e5f0436e9da5431dfff12e5ca +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11953.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11953.replay new file mode 100644 index 0000000000000000000000000000000000000000..c08f91fb75f11a3e9a962987f2b3d2812db81f20 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11953.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af953ae57a2ddb2a8d9fb7d3cf0901c6990c2d68a6ac42c880b958b7acfdd59b +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11954.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11954.replay new file mode 100644 index 0000000000000000000000000000000000000000..4de0b8762e4da7defcfec947cf47f3745160577e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11954.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93c339b0c986bb719ec42ddeae6ae75cea5cfc76989cd8e4b62d304887520029 +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11955.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11955.replay new file mode 100644 index 0000000000000000000000000000000000000000..f06512df0c484eef58aa27e9036384d3c41a82c0 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11955.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ac1da97a9ba7caf74b95fe8c553838911dc98fed836f4351c2c856c93a01687 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11956.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11956.replay new file mode 100644 index 0000000000000000000000000000000000000000..da32e0725435c3367dd9190288b4f7a0261d0be1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11956.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f82d63c406114c45e7b12be8e739c00b8f24d7e5f0436e9da5431dfff12e5ca +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11957.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11957.replay new file mode 100644 index 0000000000000000000000000000000000000000..c08f91fb75f11a3e9a962987f2b3d2812db81f20 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11957.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af953ae57a2ddb2a8d9fb7d3cf0901c6990c2d68a6ac42c880b958b7acfdd59b +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11958.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11958.replay new file mode 100644 index 0000000000000000000000000000000000000000..4de0b8762e4da7defcfec947cf47f3745160577e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11958.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93c339b0c986bb719ec42ddeae6ae75cea5cfc76989cd8e4b62d304887520029 +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11959.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11959.replay new file mode 100644 index 0000000000000000000000000000000000000000..e78ff6a63268f5a2009447fdd1e152f487f3e0a4 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11959.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8d15dad2ffd92f1530e9df367bcb4b12cec27e3e1ba28f96f3c49ca31a47940 +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11960.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11960.replay new file mode 100644 index 0000000000000000000000000000000000000000..987423ad57783315cb1315c9e4b21577c138be44 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11960.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a51d2f59f58cf1bfe56b968ad0e8f93c6329ca2d2ee93793b21b7b0ea19bbd7e +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11961.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11961.replay new file mode 100644 index 0000000000000000000000000000000000000000..55c7653bf3ff0dd1c07d2265ce66d2714d97122c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11961.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f1fa04418fa4a80cb438eea9a6c5b9b27dc509c80a47fdad08a6df815856675 +size 3624035 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11962.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11962.replay new file mode 100644 index 0000000000000000000000000000000000000000..987423ad57783315cb1315c9e4b21577c138be44 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11962.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a51d2f59f58cf1bfe56b968ad0e8f93c6329ca2d2ee93793b21b7b0ea19bbd7e +size 3624049 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11963.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11963.replay new file mode 100644 index 0000000000000000000000000000000000000000..3e0b8d0343c25f5cc1a8a80965c5d9dbd7c8a4b3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11963.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9987166af6eefd1a4a6449dd254b8621bd733dc51397148b782a69055afe5d9f +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11964.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11964.replay new file mode 100644 index 0000000000000000000000000000000000000000..35f68a1abc2df6edd6e432782b70428fef4da681 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11964.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa547308ed4000013d496604685d405597260067caae5a6447175fd81278262d +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11965.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11965.replay new file mode 100644 index 0000000000000000000000000000000000000000..8632838e30466eefdbdecc8d7ce91314c297f481 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11965.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c1033a05aaa079fe7fc1c462d11e38cbfaf750550f7964ff2d4378117af03f8 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11966.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11966.replay new file mode 100644 index 0000000000000000000000000000000000000000..74d3a30a5450ef481d4ea3f12a2744bcc8703dab --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11966.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac89dd1ab021b696066c7a6e1eb63e4d849445ca661695484bb6af476fb76093 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11967.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11967.replay new file mode 100644 index 0000000000000000000000000000000000000000..35f68a1abc2df6edd6e432782b70428fef4da681 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11967.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa547308ed4000013d496604685d405597260067caae5a6447175fd81278262d +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11968.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11968.replay new file mode 100644 index 0000000000000000000000000000000000000000..8632838e30466eefdbdecc8d7ce91314c297f481 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11968.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c1033a05aaa079fe7fc1c462d11e38cbfaf750550f7964ff2d4378117af03f8 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11969.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11969.replay new file mode 100644 index 0000000000000000000000000000000000000000..11fbcd7a48d86aa3b3627e99d792348f987348ec --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11969.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b2d4e0a1721c104e1043fb77e583c461c26d5fed7f798a43333d0f2fa9e3403 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11970.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11970.replay new file mode 100644 index 0000000000000000000000000000000000000000..35f68a1abc2df6edd6e432782b70428fef4da681 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11970.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa547308ed4000013d496604685d405597260067caae5a6447175fd81278262d +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11971.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11971.replay new file mode 100644 index 0000000000000000000000000000000000000000..8632838e30466eefdbdecc8d7ce91314c297f481 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11971.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c1033a05aaa079fe7fc1c462d11e38cbfaf750550f7964ff2d4378117af03f8 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11972.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11972.replay new file mode 100644 index 0000000000000000000000000000000000000000..dd7f121c469ecb0ccf06543ca6d043020cea2ea1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11972.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ced1e3130ecc39d289decc45ae7a62b3c5366fc2344ed5e56b4d51f900d7a284 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11973.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11973.replay new file mode 100644 index 0000000000000000000000000000000000000000..35f68a1abc2df6edd6e432782b70428fef4da681 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11973.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa547308ed4000013d496604685d405597260067caae5a6447175fd81278262d +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11974.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11974.replay new file mode 100644 index 0000000000000000000000000000000000000000..8632838e30466eefdbdecc8d7ce91314c297f481 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11974.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c1033a05aaa079fe7fc1c462d11e38cbfaf750550f7964ff2d4378117af03f8 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11975.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11975.replay new file mode 100644 index 0000000000000000000000000000000000000000..f8fcbd6ca4033e4cfdc5ea2e231ad364ba9b79fb --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11975.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83dba8e128940ea27df330b944e0d8bef25ab7f08f93d08abc45ffacb8631ce9 +size 3624021 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11976.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11976.replay new file mode 100644 index 0000000000000000000000000000000000000000..35f68a1abc2df6edd6e432782b70428fef4da681 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/11976.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa547308ed4000013d496604685d405597260067caae5a6447175fd81278262d +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12331.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12331.replay new file mode 100644 index 0000000000000000000000000000000000000000..f3b12acec34d24bb7c62cfbc0a9955bcbf5255b2 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12331.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:620a01253e528b6ac3bc43d2e3de9ead9f944f858a4c5a9c417325ba9fa79250 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12472.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12472.replay new file mode 100644 index 0000000000000000000000000000000000000000..e5aee51b7bd7b0902a54c1a7c8621ca148e4fe32 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12472.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f086b89c9fb4488dc1526207c5f8d51f80d9d4c56bf35a48417775a4d96a0b25 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12473.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12473.replay new file mode 100644 index 0000000000000000000000000000000000000000..0ca7ca0e6ef289c59e75e16e33e19956219cf98b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12473.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e8b1a0a0ada8e8ae93da97813d61e72f223745b7941ae2d961d2b9d2dc5b665 +size 3624042 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12474.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12474.replay new file mode 100644 index 0000000000000000000000000000000000000000..1efc296598cec0c111212769dabee85ce70b369a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/12474.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77e9fd51223876f7c3119d756c6ed5c8189afd007627967ac9424f63c1c0e627 +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13703.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13703.replay new file mode 100644 index 0000000000000000000000000000000000000000..e99ea42b68475b00b9a89ccb647495434bb6292a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13703.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdf173e5dc700c1fab761eb726755b9e6dcc6419a6baf51966cbc54a1e38b29a +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13704.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13704.replay new file mode 100644 index 0000000000000000000000000000000000000000..337ba34bcddffc0fe234885ba754696ba479dffc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13704.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79ba542e95eb9f516ba892a7a72238e38d13a433933b3879b74c920907f309ed +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13705.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13705.replay new file mode 100644 index 0000000000000000000000000000000000000000..f244a94412fd1c17a4ab97253b1292a487e73af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13705.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:697e3b19d419c90dc370d6df6df5b314e0f28fc5f6070f944eeb712bf7a28f84 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13706.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13706.replay new file mode 100644 index 0000000000000000000000000000000000000000..d153bbcf943c15d5eee2fb11fdcd57e05bea7c07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13706.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aefef429cd41691f60322c3144cbf4264267ffad2b04ceeae48c5a8f739c8a2 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13707.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13707.replay new file mode 100644 index 0000000000000000000000000000000000000000..3eec2b388d672e647856b84a40eeec13e5ac5b3b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13707.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa66d4714685d734aac4d23ebccdb7b4ccf082543f31b9b7b7ae2783cce0ec9a +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13708.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13708.replay new file mode 100644 index 0000000000000000000000000000000000000000..f537ada61b84c8cf435f12b1cfaf14b67f6f9da5 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13708.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:131d079056e8231d945ccdab2978245e830f92a90c21e9726dfb7830d0c3aba9 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13709.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13709.replay new file mode 100644 index 0000000000000000000000000000000000000000..337ba34bcddffc0fe234885ba754696ba479dffc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13709.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79ba542e95eb9f516ba892a7a72238e38d13a433933b3879b74c920907f309ed +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13710.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13710.replay new file mode 100644 index 0000000000000000000000000000000000000000..f244a94412fd1c17a4ab97253b1292a487e73af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13710.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:697e3b19d419c90dc370d6df6df5b314e0f28fc5f6070f944eeb712bf7a28f84 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13711.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13711.replay new file mode 100644 index 0000000000000000000000000000000000000000..d153bbcf943c15d5eee2fb11fdcd57e05bea7c07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13711.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aefef429cd41691f60322c3144cbf4264267ffad2b04ceeae48c5a8f739c8a2 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13712.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13712.replay new file mode 100644 index 0000000000000000000000000000000000000000..3eec2b388d672e647856b84a40eeec13e5ac5b3b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13712.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa66d4714685d734aac4d23ebccdb7b4ccf082543f31b9b7b7ae2783cce0ec9a +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13713.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13713.replay new file mode 100644 index 0000000000000000000000000000000000000000..b0e06cddb66122f52861ff74b1ba6d020d7c6d8f --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13713.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:381706742df921d08822067ddd8f1b2d8bcac8e68e769c2681e673bb4e3eb0c0 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13714.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13714.replay new file mode 100644 index 0000000000000000000000000000000000000000..337ba34bcddffc0fe234885ba754696ba479dffc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13714.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79ba542e95eb9f516ba892a7a72238e38d13a433933b3879b74c920907f309ed +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13715.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13715.replay new file mode 100644 index 0000000000000000000000000000000000000000..f244a94412fd1c17a4ab97253b1292a487e73af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13715.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:697e3b19d419c90dc370d6df6df5b314e0f28fc5f6070f944eeb712bf7a28f84 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13716.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13716.replay new file mode 100644 index 0000000000000000000000000000000000000000..d153bbcf943c15d5eee2fb11fdcd57e05bea7c07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13716.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aefef429cd41691f60322c3144cbf4264267ffad2b04ceeae48c5a8f739c8a2 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13717.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13717.replay new file mode 100644 index 0000000000000000000000000000000000000000..3eec2b388d672e647856b84a40eeec13e5ac5b3b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13717.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa66d4714685d734aac4d23ebccdb7b4ccf082543f31b9b7b7ae2783cce0ec9a +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13718.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13718.replay new file mode 100644 index 0000000000000000000000000000000000000000..808cbeceb5f9745e4973f913cbbebdb56b8cdbed --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13718.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a8ecbcb5fe39913465cf99be04f4b59156d31e6d9575bbb4fad4e48593d31af +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13719.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13719.replay new file mode 100644 index 0000000000000000000000000000000000000000..337ba34bcddffc0fe234885ba754696ba479dffc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13719.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79ba542e95eb9f516ba892a7a72238e38d13a433933b3879b74c920907f309ed +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13720.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13720.replay new file mode 100644 index 0000000000000000000000000000000000000000..f244a94412fd1c17a4ab97253b1292a487e73af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13720.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:697e3b19d419c90dc370d6df6df5b314e0f28fc5f6070f944eeb712bf7a28f84 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13721.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13721.replay new file mode 100644 index 0000000000000000000000000000000000000000..d153bbcf943c15d5eee2fb11fdcd57e05bea7c07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13721.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aefef429cd41691f60322c3144cbf4264267ffad2b04ceeae48c5a8f739c8a2 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13722.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13722.replay new file mode 100644 index 0000000000000000000000000000000000000000..3eec2b388d672e647856b84a40eeec13e5ac5b3b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13722.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa66d4714685d734aac4d23ebccdb7b4ccf082543f31b9b7b7ae2783cce0ec9a +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13723.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13723.replay new file mode 100644 index 0000000000000000000000000000000000000000..5ea6aff2731efa2cb5801b004d02694c8b5b9e7e --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13723.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8efe61531b91f18d594d6f55f465735b741b3a453da0853f178ebeef58cf779 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13724.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13724.replay new file mode 100644 index 0000000000000000000000000000000000000000..337ba34bcddffc0fe234885ba754696ba479dffc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13724.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79ba542e95eb9f516ba892a7a72238e38d13a433933b3879b74c920907f309ed +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13725.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13725.replay new file mode 100644 index 0000000000000000000000000000000000000000..f244a94412fd1c17a4ab97253b1292a487e73af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13725.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:697e3b19d419c90dc370d6df6df5b314e0f28fc5f6070f944eeb712bf7a28f84 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13726.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13726.replay new file mode 100644 index 0000000000000000000000000000000000000000..d153bbcf943c15d5eee2fb11fdcd57e05bea7c07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13726.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aefef429cd41691f60322c3144cbf4264267ffad2b04ceeae48c5a8f739c8a2 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13727.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13727.replay new file mode 100644 index 0000000000000000000000000000000000000000..3eec2b388d672e647856b84a40eeec13e5ac5b3b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13727.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa66d4714685d734aac4d23ebccdb7b4ccf082543f31b9b7b7ae2783cce0ec9a +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13728.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13728.replay new file mode 100644 index 0000000000000000000000000000000000000000..7432664c49e190594f0e854cafe83fdc39793738 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13728.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:373a58bf0b3c3d430d7b7a2715d5a0470ceadb24e81a9ffa69f19c5e11333f4c +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13729.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13729.replay new file mode 100644 index 0000000000000000000000000000000000000000..337ba34bcddffc0fe234885ba754696ba479dffc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13729.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79ba542e95eb9f516ba892a7a72238e38d13a433933b3879b74c920907f309ed +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13730.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13730.replay new file mode 100644 index 0000000000000000000000000000000000000000..f244a94412fd1c17a4ab97253b1292a487e73af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13730.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:697e3b19d419c90dc370d6df6df5b314e0f28fc5f6070f944eeb712bf7a28f84 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13731.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13731.replay new file mode 100644 index 0000000000000000000000000000000000000000..d153bbcf943c15d5eee2fb11fdcd57e05bea7c07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13731.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aefef429cd41691f60322c3144cbf4264267ffad2b04ceeae48c5a8f739c8a2 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13732.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13732.replay new file mode 100644 index 0000000000000000000000000000000000000000..3eec2b388d672e647856b84a40eeec13e5ac5b3b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13732.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa66d4714685d734aac4d23ebccdb7b4ccf082543f31b9b7b7ae2783cce0ec9a +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13733.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13733.replay new file mode 100644 index 0000000000000000000000000000000000000000..daa8c7fd1340a0b38b27caf85bc54b43c4464023 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13733.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4d40e33909e43c9fa413c926f2ae719320ba8ae48ea419efa291aeed45bbca3 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13734.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13734.replay new file mode 100644 index 0000000000000000000000000000000000000000..337ba34bcddffc0fe234885ba754696ba479dffc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13734.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79ba542e95eb9f516ba892a7a72238e38d13a433933b3879b74c920907f309ed +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13735.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13735.replay new file mode 100644 index 0000000000000000000000000000000000000000..f244a94412fd1c17a4ab97253b1292a487e73af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13735.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:697e3b19d419c90dc370d6df6df5b314e0f28fc5f6070f944eeb712bf7a28f84 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13736.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13736.replay new file mode 100644 index 0000000000000000000000000000000000000000..d153bbcf943c15d5eee2fb11fdcd57e05bea7c07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13736.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aefef429cd41691f60322c3144cbf4264267ffad2b04ceeae48c5a8f739c8a2 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13737.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13737.replay new file mode 100644 index 0000000000000000000000000000000000000000..3eec2b388d672e647856b84a40eeec13e5ac5b3b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13737.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa66d4714685d734aac4d23ebccdb7b4ccf082543f31b9b7b7ae2783cce0ec9a +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13738.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13738.replay new file mode 100644 index 0000000000000000000000000000000000000000..92b87a4561160b50e3e595bf61879d5b89a405a1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13738.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd16f811aee22526c017b3ec5bc00993331fb2ba95ac9fc590b139ca8ae6082f +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13739.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13739.replay new file mode 100644 index 0000000000000000000000000000000000000000..337ba34bcddffc0fe234885ba754696ba479dffc --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13739.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79ba542e95eb9f516ba892a7a72238e38d13a433933b3879b74c920907f309ed +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13740.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13740.replay new file mode 100644 index 0000000000000000000000000000000000000000..f244a94412fd1c17a4ab97253b1292a487e73af1 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13740.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:697e3b19d419c90dc370d6df6df5b314e0f28fc5f6070f944eeb712bf7a28f84 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13741.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13741.replay new file mode 100644 index 0000000000000000000000000000000000000000..d153bbcf943c15d5eee2fb11fdcd57e05bea7c07 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13741.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aefef429cd41691f60322c3144cbf4264267ffad2b04ceeae48c5a8f739c8a2 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13742.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13742.replay new file mode 100644 index 0000000000000000000000000000000000000000..3eec2b388d672e647856b84a40eeec13e5ac5b3b --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13742.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa66d4714685d734aac4d23ebccdb7b4ccf082543f31b9b7b7ae2783cce0ec9a +size 3624028 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13743.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13743.replay new file mode 100644 index 0000000000000000000000000000000000000000..08278fb7385f451c08be3c51b6e90b0d6e2f2ca7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13743.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:964a90d8336e207d1373371f2f87edc58d159263df04e6e596ba2a6108bde1e5 +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13744.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13744.replay new file mode 100644 index 0000000000000000000000000000000000000000..d5a7f8aefb2542ca20ee017e4de62bfdf17aea4a --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13744.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87e0d68d2c4a97e10aef6cee8dba07e13449861b5d0112fbf213912a9c32c4fe +size 3624007 diff --git a/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13921.replay b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13921.replay new file mode 100644 index 0000000000000000000000000000000000000000..8c39274a5a24b126f7bdc60e7af9c2596476ca2c --- /dev/null +++ b/baselines/AnyBimanual_overlap_replay/multi/10000-14999/13921.replay @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b401155eeed4fd1b08b7336a7a7cbf5d93920153dac695bd81f069971073aa73 +size 3624014 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/.hydra/config.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/.hydra/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b40fc275a33102797cff2c135dd9b70a8ef06891 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/.hydra/config.yaml @@ -0,0 +1,130 @@ +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12992 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/.hydra/hydra.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/.hydra/hydra.yaml new file mode 100644 index 0000000000000000000000000000000000000000..d32faaadf3b310cab25c71766e7c9903d1a7af28 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/.hydra/hydra.yaml @@ -0,0 +1,182 @@ +hydra: + run: + dir: ${framework.logdir}/${rlbench.task_name}/${method.name} + sweep: + dir: multirun/${now:%Y-%m-%d}/${now:%H-%M-%S} + subdir: ${hydra.job.num} + launcher: + _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher + sweeper: + _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper + max_batch_size: null + params: null + help: + app_name: ${hydra.job.name} + header: '${hydra.help.app_name} is powered by Hydra. + + ' + footer: 'Powered by Hydra (https://hydra.cc) + + Use --hydra-help to view Hydra specific help + + ' + template: '${hydra.help.header} + + == Configuration groups == + + Compose your configuration from those groups (group=option) + + + $APP_CONFIG_GROUPS + + + == Config == + + Override anything in the config (foo.bar=value) + + + $CONFIG + + + ${hydra.help.footer} + + ' + hydra_help: + template: 'Hydra (${hydra.runtime.version}) + + See https://hydra.cc for more info. + + + == Flags == + + $FLAGS_HELP + + + == Configuration groups == + + Compose your configuration from those groups (For example, append hydra/job_logging=disabled + to command line) + + + $HYDRA_CONFIG_GROUPS + + + Use ''--cfg hydra'' to Show the Hydra config. + + ' + hydra_help: ??? + hydra_logging: + version: 1 + formatters: + simple: + format: '[%(asctime)s][HYDRA] %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: simple + stream: ext://sys.stdout + root: + level: INFO + handlers: + - console + loggers: + logging_example: + level: DEBUG + disable_existing_loggers: false + job_logging: + version: 1 + formatters: + simple: + format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: simple + stream: ext://sys.stdout + file: + class: logging.FileHandler + formatter: simple + filename: ${hydra.runtime.output_dir}/${hydra.job.name}.log + root: + level: INFO + handlers: + - console + - file + disable_existing_loggers: false + env: {} + mode: RUN + searchpath: [] + callbacks: {} + output_subdir: .hydra + overrides: + hydra: + - hydra.mode=RUN + task: + - method=PERACT_BC + - ddp.num_devices=1 + - ddp.master_port=12992 + - framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs + - framework.start_seed=0 + - framework.use_wandb=False + - framework.wandb_project= + - framework.wandb_group=peract_bc_subset3_overlap_smoke200 + - framework.wandb_name=peract_bc_subset3_overlap_smoke200 + - framework.gpu=0 + - framework.env_gpu=0 + - framework.anybimanual=True + - framework.augmentation_type=ab + - framework.training_iterations=200 + - framework.save_freq=200 + - framework.log_freq=50 + - framework.seeds=1 + - framework.num_workers=0 + - replay.batch_size=2 + - replay.path=/workspace/baselines/AnyBimanual_overlap_replay + - replay.task_folder=multi + - replay.max_parallel_processes=8 + - rlbench.task_name=peract_bc_subset3_overlap_smoke200 + - rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] + - rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root + - rlbench.demos=100 + - rlbench.episode_length=25 + job: + name: train + chdir: null + override_dirname: ddp.master_port=12992,ddp.num_devices=1,framework.anybimanual=True,framework.augmentation_type=ab,framework.env_gpu=0,framework.gpu=0,framework.log_freq=50,framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs,framework.num_workers=0,framework.save_freq=200,framework.seeds=1,framework.start_seed=0,framework.training_iterations=200,framework.use_wandb=False,framework.wandb_group=peract_bc_subset3_overlap_smoke200,framework.wandb_name=peract_bc_subset3_overlap_smoke200,framework.wandb_project=,method=PERACT_BC,replay.batch_size=2,replay.max_parallel_processes=8,replay.path=/workspace/baselines/AnyBimanual_overlap_replay,replay.task_folder=multi,rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root,rlbench.demos=100,rlbench.episode_length=25,rlbench.task_name=peract_bc_subset3_overlap_smoke200,rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] + id: ??? + num: ??? + config_name: config + env_set: {} + env_copy: [] + config: + override_dirname: + kv_sep: '=' + item_sep: ',' + exclude_keys: [] + runtime: + version: 1.3.2 + version_base: '1.1' + cwd: /workspace/third_party/AnyBimanual + config_sources: + - path: hydra.conf + schema: pkg + provider: hydra + - path: /workspace/third_party/AnyBimanual/conf + schema: file + provider: main + - path: '' + schema: structured + provider: schema + output_dir: /workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC + choices: + method: PERACT_BC + hydra/env: default + hydra/callbacks: null + hydra/job_logging: default + hydra/hydra_logging: default + hydra/hydra_help: default + hydra/help: default + hydra/sweeper: basic + hydra/launcher: basic + hydra/output: default + verbose: false diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/.hydra/overrides.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/.hydra/overrides.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8cd98cef223238a7d52d32de81d11ae09c3e26bb --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/.hydra/overrides.yaml @@ -0,0 +1,27 @@ +- method=PERACT_BC +- ddp.num_devices=1 +- ddp.master_port=12992 +- framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs +- framework.start_seed=0 +- framework.use_wandb=False +- framework.wandb_project= +- framework.wandb_group=peract_bc_subset3_overlap_smoke200 +- framework.wandb_name=peract_bc_subset3_overlap_smoke200 +- framework.gpu=0 +- framework.env_gpu=0 +- framework.anybimanual=True +- framework.augmentation_type=ab +- framework.training_iterations=200 +- framework.save_freq=200 +- framework.log_freq=50 +- framework.seeds=1 +- framework.num_workers=0 +- replay.batch_size=2 +- replay.path=/workspace/baselines/AnyBimanual_overlap_replay +- replay.task_folder=multi +- replay.max_parallel_processes=8 +- rlbench.task_name=peract_bc_subset3_overlap_smoke200 +- rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] +- rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root +- rlbench.demos=100 +- rlbench.episode_length=25 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/seed0/config.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/seed0/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b40fc275a33102797cff2c135dd9b70a8ef06891 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/seed0/config.yaml @@ -0,0 +1,130 @@ +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12992 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/seed0/training.log b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/seed0/training.log new file mode 100644 index 0000000000000000000000000000000000000000..8e424eac7230d4fdb4a4cf82f1ca510efad3b826 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/seed0/training.log @@ -0,0 +1 @@ +# Starting training from weights: 0 to 200# Training started on: 2026-03-30T05:02:50.135638 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/train.log b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/train.log new file mode 100644 index 0000000000000000000000000000000000000000..526567882fb409c5f4abcbc566533ccc66a60b58 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC/train.log @@ -0,0 +1,134 @@ +[2026-03-30 05:02:50,133][root][INFO] - +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12992 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab + +[2026-03-30 05:02:50,135][root][INFO] - CWD:/workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200/PERACT_BC +[2026-03-30 05:02:50,142][root][INFO] - Starting seed 0. diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/.hydra/config.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/.hydra/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2f11d1492a85cbfde52009ac06b63069a64326e7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/.hydra/config.yaml @@ -0,0 +1,130 @@ +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12993 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/.hydra/hydra.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/.hydra/hydra.yaml new file mode 100644 index 0000000000000000000000000000000000000000..30023ade2d86ee44ec371b0577ceccda6ec0cc6e --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/.hydra/hydra.yaml @@ -0,0 +1,182 @@ +hydra: + run: + dir: ${framework.logdir}/${rlbench.task_name}/${method.name} + sweep: + dir: multirun/${now:%Y-%m-%d}/${now:%H-%M-%S} + subdir: ${hydra.job.num} + launcher: + _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher + sweeper: + _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper + max_batch_size: null + params: null + help: + app_name: ${hydra.job.name} + header: '${hydra.help.app_name} is powered by Hydra. + + ' + footer: 'Powered by Hydra (https://hydra.cc) + + Use --hydra-help to view Hydra specific help + + ' + template: '${hydra.help.header} + + == Configuration groups == + + Compose your configuration from those groups (group=option) + + + $APP_CONFIG_GROUPS + + + == Config == + + Override anything in the config (foo.bar=value) + + + $CONFIG + + + ${hydra.help.footer} + + ' + hydra_help: + template: 'Hydra (${hydra.runtime.version}) + + See https://hydra.cc for more info. + + + == Flags == + + $FLAGS_HELP + + + == Configuration groups == + + Compose your configuration from those groups (For example, append hydra/job_logging=disabled + to command line) + + + $HYDRA_CONFIG_GROUPS + + + Use ''--cfg hydra'' to Show the Hydra config. + + ' + hydra_help: ??? + hydra_logging: + version: 1 + formatters: + simple: + format: '[%(asctime)s][HYDRA] %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: simple + stream: ext://sys.stdout + root: + level: INFO + handlers: + - console + loggers: + logging_example: + level: DEBUG + disable_existing_loggers: false + job_logging: + version: 1 + formatters: + simple: + format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: simple + stream: ext://sys.stdout + file: + class: logging.FileHandler + formatter: simple + filename: ${hydra.runtime.output_dir}/${hydra.job.name}.log + root: + level: INFO + handlers: + - console + - file + disable_existing_loggers: false + env: {} + mode: RUN + searchpath: [] + callbacks: {} + output_subdir: .hydra + overrides: + hydra: + - hydra.mode=RUN + task: + - method=PERACT_BC + - ddp.num_devices=1 + - ddp.master_port=12993 + - framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs + - framework.start_seed=0 + - framework.use_wandb=False + - framework.wandb_project= + - framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain + - framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain + - framework.gpu=0 + - framework.env_gpu=0 + - framework.anybimanual=True + - framework.augmentation_type=ab + - framework.training_iterations=200 + - framework.save_freq=200 + - framework.log_freq=50 + - framework.seeds=1 + - framework.num_workers=0 + - replay.batch_size=2 + - replay.path=/workspace/baselines/AnyBimanual_overlap_replay + - replay.task_folder=multi + - replay.max_parallel_processes=8 + - rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain + - rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] + - rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root + - rlbench.demos=100 + - rlbench.episode_length=25 + job: + name: train + chdir: null + override_dirname: ddp.master_port=12993,ddp.num_devices=1,framework.anybimanual=True,framework.augmentation_type=ab,framework.env_gpu=0,framework.gpu=0,framework.log_freq=50,framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs,framework.num_workers=0,framework.save_freq=200,framework.seeds=1,framework.start_seed=0,framework.training_iterations=200,framework.use_wandb=False,framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain,framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain,framework.wandb_project=,method=PERACT_BC,replay.batch_size=2,replay.max_parallel_processes=8,replay.path=/workspace/baselines/AnyBimanual_overlap_replay,replay.task_folder=multi,rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root,rlbench.demos=100,rlbench.episode_length=25,rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain,rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] + id: ??? + num: ??? + config_name: config + env_set: {} + env_copy: [] + config: + override_dirname: + kv_sep: '=' + item_sep: ',' + exclude_keys: [] + runtime: + version: 1.3.2 + version_base: '1.1' + cwd: /workspace/third_party/AnyBimanual + config_sources: + - path: hydra.conf + schema: pkg + provider: hydra + - path: /workspace/third_party/AnyBimanual/conf + schema: file + provider: main + - path: '' + schema: structured + provider: schema + output_dir: /workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC + choices: + method: PERACT_BC + hydra/env: default + hydra/callbacks: null + hydra/job_logging: default + hydra/hydra_logging: default + hydra/hydra_help: default + hydra/help: default + hydra/sweeper: basic + hydra/launcher: basic + hydra/output: default + verbose: false diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/.hydra/overrides.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/.hydra/overrides.yaml new file mode 100644 index 0000000000000000000000000000000000000000..57d83ca847f88ba52daba1a17c7a4c80eb6691d3 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/.hydra/overrides.yaml @@ -0,0 +1,27 @@ +- method=PERACT_BC +- ddp.num_devices=1 +- ddp.master_port=12993 +- framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs +- framework.start_seed=0 +- framework.use_wandb=False +- framework.wandb_project= +- framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain +- framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain +- framework.gpu=0 +- framework.env_gpu=0 +- framework.anybimanual=True +- framework.augmentation_type=ab +- framework.training_iterations=200 +- framework.save_freq=200 +- framework.log_freq=50 +- framework.seeds=1 +- framework.num_workers=0 +- replay.batch_size=2 +- replay.path=/workspace/baselines/AnyBimanual_overlap_replay +- replay.task_folder=multi +- replay.max_parallel_processes=8 +- rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain +- rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] +- rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root +- rlbench.demos=100 +- rlbench.episode_length=25 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/seed0/config.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/seed0/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2f11d1492a85cbfde52009ac06b63069a64326e7 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/seed0/config.yaml @@ -0,0 +1,130 @@ +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12993 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/seed0/training.log b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/seed0/training.log new file mode 100644 index 0000000000000000000000000000000000000000..69ca4464310efc78bc8067beba156abf0ec0651b --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/seed0/training.log @@ -0,0 +1 @@ +# Starting training from weights: 0 to 200# Training started on: 2026-03-30T07:37:06.495536 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/train.log b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/train.log new file mode 100644 index 0000000000000000000000000000000000000000..de624570b12d4a95d4d2499e0edc4a2319cc4aab --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC/train.log @@ -0,0 +1,134 @@ +[2026-03-30 07:37:06,494][root][INFO] - +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12993 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab + +[2026-03-30 07:37:06,494][root][INFO] - CWD:/workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain/PERACT_BC +[2026-03-30 07:37:06,514][root][INFO] - Starting seed 0. diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/.hydra/config.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/.hydra/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..0e3d8a74c6a15aa0a232866a40e455425af3411b --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/.hydra/config.yaml @@ -0,0 +1,130 @@ +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12994 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/.hydra/hydra.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/.hydra/hydra.yaml new file mode 100644 index 0000000000000000000000000000000000000000..dd944227fa9069cb40bde7677cccfa4e713519ba --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/.hydra/hydra.yaml @@ -0,0 +1,182 @@ +hydra: + run: + dir: ${framework.logdir}/${rlbench.task_name}/${method.name} + sweep: + dir: multirun/${now:%Y-%m-%d}/${now:%H-%M-%S} + subdir: ${hydra.job.num} + launcher: + _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher + sweeper: + _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper + max_batch_size: null + params: null + help: + app_name: ${hydra.job.name} + header: '${hydra.help.app_name} is powered by Hydra. + + ' + footer: 'Powered by Hydra (https://hydra.cc) + + Use --hydra-help to view Hydra specific help + + ' + template: '${hydra.help.header} + + == Configuration groups == + + Compose your configuration from those groups (group=option) + + + $APP_CONFIG_GROUPS + + + == Config == + + Override anything in the config (foo.bar=value) + + + $CONFIG + + + ${hydra.help.footer} + + ' + hydra_help: + template: 'Hydra (${hydra.runtime.version}) + + See https://hydra.cc for more info. + + + == Flags == + + $FLAGS_HELP + + + == Configuration groups == + + Compose your configuration from those groups (For example, append hydra/job_logging=disabled + to command line) + + + $HYDRA_CONFIG_GROUPS + + + Use ''--cfg hydra'' to Show the Hydra config. + + ' + hydra_help: ??? + hydra_logging: + version: 1 + formatters: + simple: + format: '[%(asctime)s][HYDRA] %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: simple + stream: ext://sys.stdout + root: + level: INFO + handlers: + - console + loggers: + logging_example: + level: DEBUG + disable_existing_loggers: false + job_logging: + version: 1 + formatters: + simple: + format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: simple + stream: ext://sys.stdout + file: + class: logging.FileHandler + formatter: simple + filename: ${hydra.runtime.output_dir}/${hydra.job.name}.log + root: + level: INFO + handlers: + - console + - file + disable_existing_loggers: false + env: {} + mode: RUN + searchpath: [] + callbacks: {} + output_subdir: .hydra + overrides: + hydra: + - hydra.mode=RUN + task: + - method=PERACT_BC + - ddp.num_devices=1 + - ddp.master_port=12994 + - framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs + - framework.start_seed=0 + - framework.use_wandb=False + - framework.wandb_project= + - framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + - framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + - framework.gpu=0 + - framework.env_gpu=0 + - framework.anybimanual=True + - framework.augmentation_type=ab + - framework.training_iterations=200 + - framework.save_freq=200 + - framework.log_freq=50 + - framework.seeds=1 + - framework.num_workers=0 + - replay.batch_size=2 + - replay.path=/workspace/baselines/AnyBimanual_overlap_replay + - replay.task_folder=multi + - replay.max_parallel_processes=8 + - rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + - rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] + - rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root + - rlbench.demos=100 + - rlbench.episode_length=25 + job: + name: train + chdir: null + override_dirname: ddp.master_port=12994,ddp.num_devices=1,framework.anybimanual=True,framework.augmentation_type=ab,framework.env_gpu=0,framework.gpu=0,framework.log_freq=50,framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs,framework.num_workers=0,framework.save_freq=200,framework.seeds=1,framework.start_seed=0,framework.training_iterations=200,framework.use_wandb=False,framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb,framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb,framework.wandb_project=,method=PERACT_BC,replay.batch_size=2,replay.max_parallel_processes=8,replay.path=/workspace/baselines/AnyBimanual_overlap_replay,replay.task_folder=multi,rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root,rlbench.demos=100,rlbench.episode_length=25,rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb,rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] + id: ??? + num: ??? + config_name: config + env_set: {} + env_copy: [] + config: + override_dirname: + kv_sep: '=' + item_sep: ',' + exclude_keys: [] + runtime: + version: 1.3.2 + version_base: '1.1' + cwd: /workspace/third_party/AnyBimanual + config_sources: + - path: hydra.conf + schema: pkg + provider: hydra + - path: /workspace/third_party/AnyBimanual/conf + schema: file + provider: main + - path: '' + schema: structured + provider: schema + output_dir: /workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC + choices: + method: PERACT_BC + hydra/env: default + hydra/callbacks: null + hydra/job_logging: default + hydra/hydra_logging: default + hydra/hydra_help: default + hydra/help: default + hydra/sweeper: basic + hydra/launcher: basic + hydra/output: default + verbose: false diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/.hydra/overrides.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/.hydra/overrides.yaml new file mode 100644 index 0000000000000000000000000000000000000000..0e89103fcc57c7d43d402180244880ee450629ef --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/.hydra/overrides.yaml @@ -0,0 +1,27 @@ +- method=PERACT_BC +- ddp.num_devices=1 +- ddp.master_port=12994 +- framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs +- framework.start_seed=0 +- framework.use_wandb=False +- framework.wandb_project= +- framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb +- framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb +- framework.gpu=0 +- framework.env_gpu=0 +- framework.anybimanual=True +- framework.augmentation_type=ab +- framework.training_iterations=200 +- framework.save_freq=200 +- framework.log_freq=50 +- framework.seeds=1 +- framework.num_workers=0 +- replay.batch_size=2 +- replay.path=/workspace/baselines/AnyBimanual_overlap_replay +- replay.task_folder=multi +- replay.max_parallel_processes=8 +- rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb +- rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] +- rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root +- rlbench.demos=100 +- rlbench.episode_length=25 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/seed0/config.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/seed0/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..0e3d8a74c6a15aa0a232866a40e455425af3411b --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/seed0/config.yaml @@ -0,0 +1,130 @@ +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12994 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/seed0/training.log b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/seed0/training.log new file mode 100644 index 0000000000000000000000000000000000000000..5bc114105b358b4fc97c4eda74c051a68df47792 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/seed0/training.log @@ -0,0 +1 @@ +# Starting training from weights: 0 to 200# Training started on: 2026-03-30T07:40:45.943188 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/train.log b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/train.log new file mode 100644 index 0000000000000000000000000000000000000000..d591404def47780df8e734acade8a3062115ec52 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC/train.log @@ -0,0 +1,134 @@ +[2026-03-30 07:40:45,941][root][INFO] - +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12994 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab + +[2026-03-30 07:40:45,942][root][INFO] - CWD:/workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb/PERACT_BC +[2026-03-30 07:40:45,951][root][INFO] - Starting seed 0. diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/.hydra/config.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/.hydra/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..c7d7f2c99ed3350d198e0622fdbcccd2e64ac2eb --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/.hydra/config.yaml @@ -0,0 +1,130 @@ +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12995 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/.hydra/hydra.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/.hydra/hydra.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2244704bfef2a64c390ceb378a4959b05b462739 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/.hydra/hydra.yaml @@ -0,0 +1,182 @@ +hydra: + run: + dir: ${framework.logdir}/${rlbench.task_name}/${method.name} + sweep: + dir: multirun/${now:%Y-%m-%d}/${now:%H-%M-%S} + subdir: ${hydra.job.num} + launcher: + _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher + sweeper: + _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper + max_batch_size: null + params: null + help: + app_name: ${hydra.job.name} + header: '${hydra.help.app_name} is powered by Hydra. + + ' + footer: 'Powered by Hydra (https://hydra.cc) + + Use --hydra-help to view Hydra specific help + + ' + template: '${hydra.help.header} + + == Configuration groups == + + Compose your configuration from those groups (group=option) + + + $APP_CONFIG_GROUPS + + + == Config == + + Override anything in the config (foo.bar=value) + + + $CONFIG + + + ${hydra.help.footer} + + ' + hydra_help: + template: 'Hydra (${hydra.runtime.version}) + + See https://hydra.cc for more info. + + + == Flags == + + $FLAGS_HELP + + + == Configuration groups == + + Compose your configuration from those groups (For example, append hydra/job_logging=disabled + to command line) + + + $HYDRA_CONFIG_GROUPS + + + Use ''--cfg hydra'' to Show the Hydra config. + + ' + hydra_help: ??? + hydra_logging: + version: 1 + formatters: + simple: + format: '[%(asctime)s][HYDRA] %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: simple + stream: ext://sys.stdout + root: + level: INFO + handlers: + - console + loggers: + logging_example: + level: DEBUG + disable_existing_loggers: false + job_logging: + version: 1 + formatters: + simple: + format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: simple + stream: ext://sys.stdout + file: + class: logging.FileHandler + formatter: simple + filename: ${hydra.runtime.output_dir}/${hydra.job.name}.log + root: + level: INFO + handlers: + - console + - file + disable_existing_loggers: false + env: {} + mode: RUN + searchpath: [] + callbacks: {} + output_subdir: .hydra + overrides: + hydra: + - hydra.mode=RUN + task: + - method=PERACT_BC + - ddp.num_devices=1 + - ddp.master_port=12995 + - framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs + - framework.start_seed=0 + - framework.use_wandb=False + - framework.wandb_project= + - framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + - framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + - framework.gpu=0 + - framework.env_gpu=0 + - framework.anybimanual=True + - framework.augmentation_type=ab + - framework.training_iterations=200 + - framework.save_freq=200 + - framework.log_freq=50 + - framework.seeds=1 + - framework.num_workers=0 + - replay.batch_size=2 + - replay.path=/workspace/baselines/AnyBimanual_overlap_replay + - replay.task_folder=multi + - replay.max_parallel_processes=8 + - rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + - rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] + - rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root + - rlbench.demos=100 + - rlbench.episode_length=25 + job: + name: train + chdir: null + override_dirname: ddp.master_port=12995,ddp.num_devices=1,framework.anybimanual=True,framework.augmentation_type=ab,framework.env_gpu=0,framework.gpu=0,framework.log_freq=50,framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs,framework.num_workers=0,framework.save_freq=200,framework.seeds=1,framework.start_seed=0,framework.training_iterations=200,framework.use_wandb=False,framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2,framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2,framework.wandb_project=,method=PERACT_BC,replay.batch_size=2,replay.max_parallel_processes=8,replay.path=/workspace/baselines/AnyBimanual_overlap_replay,replay.task_folder=multi,rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root,rlbench.demos=100,rlbench.episode_length=25,rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2,rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] + id: ??? + num: ??? + config_name: config + env_set: {} + env_copy: [] + config: + override_dirname: + kv_sep: '=' + item_sep: ',' + exclude_keys: [] + runtime: + version: 1.3.2 + version_base: '1.1' + cwd: /workspace/third_party/AnyBimanual + config_sources: + - path: hydra.conf + schema: pkg + provider: hydra + - path: /workspace/third_party/AnyBimanual/conf + schema: file + provider: main + - path: '' + schema: structured + provider: schema + output_dir: /workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC + choices: + method: PERACT_BC + hydra/env: default + hydra/callbacks: null + hydra/job_logging: default + hydra/hydra_logging: default + hydra/hydra_help: default + hydra/help: default + hydra/sweeper: basic + hydra/launcher: basic + hydra/output: default + verbose: false diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/.hydra/overrides.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/.hydra/overrides.yaml new file mode 100644 index 0000000000000000000000000000000000000000..414a8ca0ba041753ef9c76efd9ea5cf794a61583 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/.hydra/overrides.yaml @@ -0,0 +1,27 @@ +- method=PERACT_BC +- ddp.num_devices=1 +- ddp.master_port=12995 +- framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs +- framework.start_seed=0 +- framework.use_wandb=False +- framework.wandb_project= +- framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 +- framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 +- framework.gpu=0 +- framework.env_gpu=0 +- framework.anybimanual=True +- framework.augmentation_type=ab +- framework.training_iterations=200 +- framework.save_freq=200 +- framework.log_freq=50 +- framework.seeds=1 +- framework.num_workers=0 +- replay.batch_size=2 +- replay.path=/workspace/baselines/AnyBimanual_overlap_replay +- replay.task_folder=multi +- replay.max_parallel_processes=8 +- rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 +- rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] +- rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root +- rlbench.demos=100 +- rlbench.episode_length=25 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/seed0/config.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/seed0/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..c7d7f2c99ed3350d198e0622fdbcccd2e64ac2eb --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/seed0/config.yaml @@ -0,0 +1,130 @@ +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12995 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/seed0/training.log b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/seed0/training.log new file mode 100644 index 0000000000000000000000000000000000000000..e006d1f6cad86c72c38d3d4fbcdcb5d8ca92a953 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/seed0/training.log @@ -0,0 +1 @@ +# Starting training from weights: 0 to 200# Training started on: 2026-03-30T07:42:09.937462 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/train.log b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/train.log new file mode 100644 index 0000000000000000000000000000000000000000..9198f7685b5df3ccc6c8a57a8c0eaea5f0d97203 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC/train.log @@ -0,0 +1,134 @@ +[2026-03-30 07:42:09,936][root][INFO] - +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12995 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab + +[2026-03-30 07:42:09,936][root][INFO] - CWD:/workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb2/PERACT_BC +[2026-03-30 07:42:09,943][root][INFO] - Starting seed 0. diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/.hydra/config.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/.hydra/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..17120e0a38d8e211ac9879423872ce9b24b3af5d --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/.hydra/config.yaml @@ -0,0 +1,130 @@ +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12997 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 100 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 1000 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: true + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/.hydra/hydra.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/.hydra/hydra.yaml new file mode 100644 index 0000000000000000000000000000000000000000..6ce677c7783ca466e386acec82cf1bed34e2953b --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/.hydra/hydra.yaml @@ -0,0 +1,183 @@ +hydra: + run: + dir: ${framework.logdir}/${rlbench.task_name}/${method.name} + sweep: + dir: multirun/${now:%Y-%m-%d}/${now:%H-%M-%S} + subdir: ${hydra.job.num} + launcher: + _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher + sweeper: + _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper + max_batch_size: null + params: null + help: + app_name: ${hydra.job.name} + header: '${hydra.help.app_name} is powered by Hydra. + + ' + footer: 'Powered by Hydra (https://hydra.cc) + + Use --hydra-help to view Hydra specific help + + ' + template: '${hydra.help.header} + + == Configuration groups == + + Compose your configuration from those groups (group=option) + + + $APP_CONFIG_GROUPS + + + == Config == + + Override anything in the config (foo.bar=value) + + + $CONFIG + + + ${hydra.help.footer} + + ' + hydra_help: + template: 'Hydra (${hydra.runtime.version}) + + See https://hydra.cc for more info. + + + == Flags == + + $FLAGS_HELP + + + == Configuration groups == + + Compose your configuration from those groups (For example, append hydra/job_logging=disabled + to command line) + + + $HYDRA_CONFIG_GROUPS + + + Use ''--cfg hydra'' to Show the Hydra config. + + ' + hydra_help: ??? + hydra_logging: + version: 1 + formatters: + simple: + format: '[%(asctime)s][HYDRA] %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: simple + stream: ext://sys.stdout + root: + level: INFO + handlers: + - console + loggers: + logging_example: + level: DEBUG + disable_existing_loggers: false + job_logging: + version: 1 + formatters: + simple: + format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: simple + stream: ext://sys.stdout + file: + class: logging.FileHandler + formatter: simple + filename: ${hydra.runtime.output_dir}/${hydra.job.name}.log + root: + level: INFO + handlers: + - console + - file + disable_existing_loggers: false + env: {} + mode: RUN + searchpath: [] + callbacks: {} + output_subdir: .hydra + overrides: + hydra: + - hydra.mode=RUN + task: + - method=PERACT_BC + - ddp.num_devices=1 + - ddp.master_port=12997 + - framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs + - framework.start_seed=0 + - framework.use_wandb=False + - framework.wandb_project= + - framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + - framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + - framework.gpu=0 + - framework.env_gpu=0 + - framework.anybimanual=True + - framework.augmentation_type=ab + - framework.training_iterations=1000 + - framework.save_freq=200 + - framework.log_freq=100 + - framework.load_existing_weights=True + - framework.seeds=1 + - framework.num_workers=0 + - replay.batch_size=2 + - replay.path=/workspace/baselines/AnyBimanual_overlap_replay + - replay.task_folder=multi + - replay.max_parallel_processes=8 + - rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + - rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] + - rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root + - rlbench.demos=100 + - rlbench.episode_length=25 + job: + name: train + chdir: null + override_dirname: ddp.master_port=12997,ddp.num_devices=1,framework.anybimanual=True,framework.augmentation_type=ab,framework.env_gpu=0,framework.gpu=0,framework.load_existing_weights=True,framework.log_freq=100,framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs,framework.num_workers=0,framework.save_freq=200,framework.seeds=1,framework.start_seed=0,framework.training_iterations=1000,framework.use_wandb=False,framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3,framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3,framework.wandb_project=,method=PERACT_BC,replay.batch_size=2,replay.max_parallel_processes=8,replay.path=/workspace/baselines/AnyBimanual_overlap_replay,replay.task_folder=multi,rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root,rlbench.demos=100,rlbench.episode_length=25,rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3,rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] + id: ??? + num: ??? + config_name: config + env_set: {} + env_copy: [] + config: + override_dirname: + kv_sep: '=' + item_sep: ',' + exclude_keys: [] + runtime: + version: 1.3.2 + version_base: '1.1' + cwd: /workspace/third_party/AnyBimanual + config_sources: + - path: hydra.conf + schema: pkg + provider: hydra + - path: /workspace/third_party/AnyBimanual/conf + schema: file + provider: main + - path: '' + schema: structured + provider: schema + output_dir: /workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC + choices: + method: PERACT_BC + hydra/env: default + hydra/callbacks: null + hydra/job_logging: default + hydra/hydra_logging: default + hydra/hydra_help: default + hydra/help: default + hydra/sweeper: basic + hydra/launcher: basic + hydra/output: default + verbose: false diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/.hydra/overrides.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/.hydra/overrides.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2538b411bf482df2dc2cc7647f16e21ba9dba4c9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/.hydra/overrides.yaml @@ -0,0 +1,28 @@ +- method=PERACT_BC +- ddp.num_devices=1 +- ddp.master_port=12997 +- framework.logdir=/workspace/baselines/AnyBimanual_overlap_runs +- framework.start_seed=0 +- framework.use_wandb=False +- framework.wandb_project= +- framework.wandb_group=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 +- framework.wandb_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 +- framework.gpu=0 +- framework.env_gpu=0 +- framework.anybimanual=True +- framework.augmentation_type=ab +- framework.training_iterations=1000 +- framework.save_freq=200 +- framework.log_freq=100 +- framework.load_existing_weights=True +- framework.seeds=1 +- framework.num_workers=0 +- replay.batch_size=2 +- replay.path=/workspace/baselines/AnyBimanual_overlap_replay +- replay.task_folder=multi +- replay.max_parallel_processes=8 +- rlbench.task_name=peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 +- rlbench.tasks=[coordinated_push_box,coordinated_lift_ball,dual_push_buttons] +- rlbench.demo_path=/workspace/baselines/AnyBimanual_subset3_demo_root +- rlbench.demos=100 +- rlbench.episode_length=25 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/seed0/config.yaml b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/seed0/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..17120e0a38d8e211ac9879423872ce9b24b3af5d --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/seed0/config.yaml @@ -0,0 +1,130 @@ +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12997 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 100 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 1000 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: true + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/seed0/eval_data.csv b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/seed0/eval_data.csv new file mode 100644 index 0000000000000000000000000000000000000000..47e1d659d2749409771a7e5da4c8d001997940f9 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/seed0/eval_data.csv @@ -0,0 +1,2 @@ +step,eval_envs/return/coordinated_push_box,eval_envs/length/coordinated_push_box,eval_envs/total_transitions/coordinated_push_box,eval_envs/return/coordinated_lift_ball,eval_envs/length/coordinated_lift_ball,eval_envs/total_transitions/coordinated_lift_ball,eval_envs/return/dual_push_buttons,eval_envs/length/dual_push_buttons,eval_envs/total_transitions/dual_push_buttons +1000,0.0,25.0,625,0.0,25.0,1250,12.0,23.12,1828 diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/seed0/training.log b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/seed0/training.log new file mode 100644 index 0000000000000000000000000000000000000000..d373044f6a444f80e3403b63ce3b790cdb777263 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/seed0/training.log @@ -0,0 +1,9 @@ +# Starting training from weights: 0 to 200# Training started on: 2026-03-30T07:43:29.596263 +# Training finished on: 2026-03-30T08:35:11.781159# Took 3102.184896 + +# Starting training from weights: 0 to 200# Training started on: 2026-03-30T08:42:04.838359 +# Training finished on: 2026-03-30T09:27:15.246792# Took 2710.408433 + +# Starting training from weights: 200 to 1000# Training started on: 2026-03-30T10:31:44.229210 +# Training finished on: 2026-03-30T13:32:27.587623# Took 10843.358413 + diff --git a/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/train.log b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/train.log new file mode 100644 index 0000000000000000000000000000000000000000..8647da8bbe422df77dcb4420c905c141ccf90f31 --- /dev/null +++ b/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC/train.log @@ -0,0 +1,402 @@ +[2026-03-30 07:43:29,594][root][INFO] - +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12996 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab + +[2026-03-30 07:43:29,595][root][INFO] - CWD:/workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC +[2026-03-30 07:43:29,614][root][INFO] - Starting seed 0. +[2026-03-30 08:42:04,836][root][INFO] - +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12996 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 50 + save_freq: 50 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 200 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab + +[2026-03-30 08:42:04,837][root][INFO] - CWD:/workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC +[2026-03-30 08:42:04,850][root][INFO] - Starting seed 0. +[2026-03-30 10:31:44,227][root][INFO] - +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic +ddp: + master_addr: localhost + master_port: 12997 + num_devices: 1 +rlbench: + task_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + tasks: + - coordinated_push_box + - coordinated_lift_ball + - dual_push_buttons + demos: 100 + demo_path: /workspace/baselines/AnyBimanual_subset3_demo_root + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: /path +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /workspace/baselines/AnyBimanual_overlap_replay + max_parallel_processes: 8 + task_folder: multi +framework: + log_freq: 100 + save_freq: 200 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 1000 + gpu: 0 + env_gpu: 0 + logdir: /workspace/baselines/AnyBimanual_overlap_runs + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: true + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: false + wandb_project: '' + wandb_group: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + seed: 0 + wandb_name: peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3 + use_skill: true + use_pretrained: false + use_prefix: false + frozen: false + anybimanual: true + augmentation_type: ab + +[2026-03-30 10:31:44,228][root][INFO] - CWD:/workspace/baselines/AnyBimanual_overlap_runs/peract_bc_subset3_overlap_smoke200_fixpretrain_nowandb3/PERACT_BC +[2026-03-30 10:31:44,236][root][INFO] - Starting seed 0. diff --git a/baselines/AnyBimanual_release_eval_anchor/perlf_release_dual_push_buttons/PERACT_BC/seed0/config.yaml b/baselines/AnyBimanual_release_eval_anchor/perlf_release_dual_push_buttons/PERACT_BC/seed0/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..56a6d90c6ccab7e6c1acce209b6cef4018945af1 --- /dev/null +++ b/baselines/AnyBimanual_release_eval_anchor/perlf_release_dual_push_buttons/PERACT_BC/seed0/config.yaml @@ -0,0 +1,139 @@ +ddp: + master_addr: localhost + master_port: 13985 + num_devices: 2 +rlbench: + task_name: perlf+ab + tasks: + - bimanual_pick_laptop + - bimanual_pick_plate + - bimanual_straighten_rope + - coordinated_lift_ball + - coordinated_lift_tray + - coordinated_push_box + - coordinated_put_bottle_in_fridge + - dual_push_buttons + - handover_item + - bimanual_sweep_to_dustpan + - coordinated_take_tray_out_of_oven + - handover_item_easy + demos: 100 + demo_path: /mnt/disk_1/tengbo/bimanual_data/train + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: '' +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /mnt/disk_2/tengbo/replay/ + max_parallel_processes: 32 + task_folder: multi +framework: + log_freq: 1000 + save_freq: 10000 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 100001 + gpu: 0 + env_gpu: 0 + logdir: /mnt/disk_1/tengbo/peract_bimanual/log + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: true + wandb_project: '' + wandb_group: perlf+ab + seed: 0 + wandb_name: perlf+ab + use_skill: true + use_pretrained: false + use_prefix: false + frozen: '' + anybimanual: true + augmentation_type: ab +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic diff --git a/baselines/AnyBimanual_release_eval_anchor/perlf_release_dual_push_buttons_ep25/PERACT_BC/seed0/config.yaml b/baselines/AnyBimanual_release_eval_anchor/perlf_release_dual_push_buttons_ep25/PERACT_BC/seed0/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..56a6d90c6ccab7e6c1acce209b6cef4018945af1 --- /dev/null +++ b/baselines/AnyBimanual_release_eval_anchor/perlf_release_dual_push_buttons_ep25/PERACT_BC/seed0/config.yaml @@ -0,0 +1,139 @@ +ddp: + master_addr: localhost + master_port: 13985 + num_devices: 2 +rlbench: + task_name: perlf+ab + tasks: + - bimanual_pick_laptop + - bimanual_pick_plate + - bimanual_straighten_rope + - coordinated_lift_ball + - coordinated_lift_tray + - coordinated_push_box + - coordinated_put_bottle_in_fridge + - dual_push_buttons + - handover_item + - bimanual_sweep_to_dustpan + - coordinated_take_tray_out_of_oven + - handover_item_easy + demos: 100 + demo_path: /mnt/disk_1/tengbo/bimanual_data/train + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: '' +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /mnt/disk_2/tengbo/replay/ + max_parallel_processes: 32 + task_folder: multi +framework: + log_freq: 1000 + save_freq: 10000 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 100001 + gpu: 0 + env_gpu: 0 + logdir: /mnt/disk_1/tengbo/peract_bimanual/log + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: true + wandb_project: '' + wandb_group: perlf+ab + seed: 0 + wandb_name: perlf+ab + use_skill: true + use_pretrained: false + use_prefix: false + frozen: '' + anybimanual: true + augmentation_type: ab +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic diff --git a/baselines/AnyBimanual_release_eval_anchor/perlf_release_dual_push_buttons_ep25/PERACT_BC/seed0/eval_data.csv b/baselines/AnyBimanual_release_eval_anchor/perlf_release_dual_push_buttons_ep25/PERACT_BC/seed0/eval_data.csv new file mode 100644 index 0000000000000000000000000000000000000000..b83f5f7a35851815b54b1b67677766cf8a01ee77 --- /dev/null +++ b/baselines/AnyBimanual_release_eval_anchor/perlf_release_dual_push_buttons_ep25/PERACT_BC/seed0/eval_data.csv @@ -0,0 +1,2 @@ +step,eval_envs/return,eval_envs/length,eval_envs/total_transitions +60000,24.0,21.84,546 diff --git a/baselines/AnyBimanual_release_eval_subset3/perlf_release_subset3/PERACT_BC/seed0/config.yaml b/baselines/AnyBimanual_release_eval_subset3/perlf_release_subset3/PERACT_BC/seed0/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..56a6d90c6ccab7e6c1acce209b6cef4018945af1 --- /dev/null +++ b/baselines/AnyBimanual_release_eval_subset3/perlf_release_subset3/PERACT_BC/seed0/config.yaml @@ -0,0 +1,139 @@ +ddp: + master_addr: localhost + master_port: 13985 + num_devices: 2 +rlbench: + task_name: perlf+ab + tasks: + - bimanual_pick_laptop + - bimanual_pick_plate + - bimanual_straighten_rope + - coordinated_lift_ball + - coordinated_lift_tray + - coordinated_push_box + - coordinated_put_bottle_in_fridge + - dual_push_buttons + - handover_item + - bimanual_sweep_to_dustpan + - coordinated_take_tray_out_of_oven + - handover_item_easy + demos: 100 + demo_path: /mnt/disk_1/tengbo/bimanual_data/train + episode_length: 25 + cameras: + - over_shoulder_right + - wrist_right + - front + - overhead + - over_shoulder_left + - wrist_left + camera_resolution: + - 256 + - 256 + scene_bounds: + - -0.3 + - -0.5 + - 0.6 + - 0.7 + - 0.5 + - 1.6 + include_lang_goal_in_obs: true + instructions: '' +replay: + batch_size: 2 + timesteps: 1 + prioritisation: false + task_uniform: true + use_disk: true + path: /mnt/disk_2/tengbo/replay/ + max_parallel_processes: 32 + task_folder: multi +framework: + log_freq: 1000 + save_freq: 10000 + train_envs: 1 + replay_ratio: ${replay.batch_size} + transitions_before_train: 200 + tensorboard_logging: true + csv_logging: true + training_iterations: 100001 + gpu: 0 + env_gpu: 0 + logdir: /mnt/disk_1/tengbo/peract_bimanual/log + logging_level: 20 + seeds: 1 + start_seed: 0 + load_existing_weights: false + num_weights_to_keep: 60 + num_workers: 0 + record_every_n: 5 + checkpoint_name_prefix: checkpoint + use_wandb: true + wandb_project: '' + wandb_group: perlf+ab + seed: 0 + wandb_name: perlf+ab + use_skill: true + use_pretrained: false + use_prefix: false + frozen: '' + anybimanual: true + augmentation_type: ab +method: + name: PERACT_BC + agent_type: leader_follower + robot_name: bimanual + image_crop_size: 64 + bounds_offset: + - 0.15 + voxel_sizes: + - 100 + include_prev_layer: false + num_latents: 2048 + latent_dim: 512 + transformer_depth: 6 + transformer_iterations: 1 + cross_heads: 1 + cross_dim_head: 64 + latent_heads: 8 + latent_dim_head: 64 + pos_encoding_with_lang: true + conv_downsample: true + lang_fusion_type: seq + voxel_patch_size: 5 + voxel_patch_stride: 5 + final_dim: 64 + low_dim_size: 4 + input_dropout: 0.1 + attn_dropout: 0.1 + decoder_dropout: 0.0 + lr: 0.0005 + lr_scheduler: false + num_warmup_steps: 3000 + optimizer: lamb + lambda_weight_l2: 1.0e-06 + trans_loss_weight: 1.0 + rot_loss_weight: 1.0 + grip_loss_weight: 1.0 + collision_loss_weight: 1.0 + rotation_resolution: 5 + activation: lrelu + norm: None + crop_augmentation: true + transform_augmentation: + apply_se3: true + aug_xyz: + - 0.125 + - 0.125 + - 0.125 + aug_rpy: + - 0.0 + - 0.0 + - 45.0 + aug_rot_resolution: ${method.rotation_resolution} + demo_augmentation: true + demo_augmentation_every_n: 10 + no_skip_connection: false + no_perceiver: false + no_language: false + keypoint_method: heuristic diff --git a/baselines/AnyBimanual_release_eval_subset3/perlf_release_subset3/PERACT_BC/seed0/eval_data.csv b/baselines/AnyBimanual_release_eval_subset3/perlf_release_subset3/PERACT_BC/seed0/eval_data.csv new file mode 100644 index 0000000000000000000000000000000000000000..ee7bac78e68feead3fc23a8752dce1f13336e569 --- /dev/null +++ b/baselines/AnyBimanual_release_eval_subset3/perlf_release_subset3/PERACT_BC/seed0/eval_data.csv @@ -0,0 +1,2 @@ +step,eval_envs/return/coordinated_push_box,eval_envs/length/coordinated_push_box,eval_envs/total_transitions/coordinated_push_box,eval_envs/return/coordinated_lift_ball,eval_envs/length/coordinated_lift_ball,eval_envs/total_transitions/coordinated_lift_ball,eval_envs/return/dual_push_buttons,eval_envs/length/dual_push_buttons,eval_envs/total_transitions/dual_push_buttons +60000,0.0,25.0,125,0.0,25.0,250,40.0,20.4,352