1- # ## MAB-SSRRT Configuration
2- # Configuration file for MAB-SSRRT (Multi-Armed Bandit Sphere-Sampled RRT) planner
1+ # ## MAB-RRT Configuration
2+ # Configuration file for MAB-RRT (Multi-Armed Bandit RRT) planner
33
44# Goal Bias
5- uniform_goal_bias : 0.75
5+ uniform_goal_bias : 0.1
66sphere_goal_bias : 0.0000001
77
88# MAB Parameters
99#
10- # MAB-SSRRT uses a flat 3-arm MAB:
10+ # MAB-RRT uses a flat 3-arm MAB:
1111# - Arm 0: UNIFORM sampling
1212# - Arm 1: CYLINDER_UP sampling (along +Z axis)
1313# - Arm 2: CYLINDER_DOWN sampling (along -Z axis)
@@ -16,53 +16,65 @@ mab_uniform_sphere_window_size : 256 # Sliding window size for MAB arm select
1616
1717# If > 0, after this many consecutive valid CYLINDER samples, the planner forces one UNIFORM sample on the next iteration.
1818# 0 = feature disabled (default, preserves current behavior)
19- forced_uniform_after_cylinder_valid_streak : 6
19+ forced_uniform_after_cylinder_valid_streak : 5
2020
2121# Adaptive Sphere Sampling Parameters
22- adaptive_quasirandom_sample_size : 8
22+ # Adaptive Sphere Sampling Parameters
23+ adaptive_quasirandom_sample_size : 64
2324adaptive_start_radius : 1.0
24- adaptive_min_radius : 0.00001
25- adaptive_shrink_step : 0.9
26- adaptive_grow_step : 0.1
25+ adaptive_min_radius : 0.000001
26+ adaptive_max_radius : 25.0
27+ # Direct multipliers (no exp() applied)
28+ # To maintain same behavior as exp(-0.7) and exp(0.9):
29+ # exp(-0.7) ≈ 0.496585 (shrinks by this factor)
30+ # exp(0.9) ≈ 2.459603 (grows by this factor)
31+ adaptive_shrink_step : 0.496585
32+ adaptive_grow_step : 2.459603
2733adaptive_min_expected_validity_rate : 0.10
2834adaptive_max_expected_validity_rate : 0.50
29- adaptive_burnin_max_steps : 10
35+ adaptive_burnin_max_steps : 50
3036
3137pca_filter_top_percent : 1.0 # Percentage of top PCA components to keep, default 1.0 to use all valid samples for online PCA recalibration
3238
3339# Initial Uniform Sampling Check
3440# Before starting adaptive sphere burn-in, try k uniform samples.
3541# If validity rate > probability, skip adaptive sphere and use uniform only.
3642initialFreeSamplingProbability : 0.20
37- initialNumberOfUniformSampleTrials : 10
43+ initialNumberOfUniformSampleTrials : 0
3844
3945# Cylinder Sampling Configuration
4046enableDynamicCylinderPCA : true # Enable dynamic recomputation of cylinder PCA axis
4147
4248# Burn-in Early Exit
43- # If true, MAB-SSRRT will abort planning after burn-in when not enough valid samples were found around the origin.
44- burnin_early_exit_enabled : true
49+ # If true, MAB-RRT will abort planning after burn-in when not enough valid samples were found around the origin.
50+ burnin_early_exit_enabled : false
4551# Minimum number of valid burn-in samples required to continue planning.
4652# If total_valid_samples < this value AND burnin_early_exit_enabled == true, the planner will exit early from solve().
47- burnin_min_valid_samples_for_continue : 3
53+ burnin_min_valid_samples_for_continue : 2
4854
4955# If true, burn-in will exit early if validity rate is 1.0 for consecutiveFullValidityMaxIterations steps
50- earlyExitOnConsecutiveFullValidity : true
56+ earlyExitOnConsecutiveFullValidity : false
5157consecutiveFullValidityMaxIterations : 5
5258
5359# Sphere sampler values
5460
55- sphere_extension_eps : 0.3 # if sphere sample was walid std::exp(sphere_extension_eps)*currentBestRadius
56- # to grow the cylinder and sphere as fas as possible
57- # also used for kappa maybe add another param for kappa
61+ # Extension factor for cylinder height extension (EXPONENTIAL GROWTH)
62+ # extensionHeight = bestRadius * (exp(sphere_extension_eps - 1.0) - 1.0)
63+ # This allows fast exponential growth even when bestRadius is very small (e.g., 0.001)
64+ # Examples:
65+ # sphere_extension_eps = 1.0 → extensionHeight = 0 (no extension)
66+ # sphere_extension_eps = 2.0 → extensionHeight = bestRadius * (exp(1.0) - 1.0) ≈ bestRadius * 1.718
67+ # sphere_extension_eps = 3.0 → extensionHeight = bestRadius * (exp(2.0) - 1.0) ≈ bestRadius * 6.389
68+ # sphere_extension_eps = 4.0 → extensionHeight = bestRadius * (exp(3.0) - 1.0) ≈ bestRadius * 19.085
69+ sphere_extension_eps : 2.0 # 1.0 = no extension, >1.0 = exponential growth via exp(value - 1.0)
5870
5971# MAB Reward System
6072# Fixed reward parameters for MAB arm selection
6173uniform_sampler_fixed_valid_reward : 9999999.0 # Fixed reward for valid uniform samples (high to encourage exploration when disassembled)
6274uniform_sampler_invalid_reward : 0.0 # Fixed reward for invalid uniform samples
6375
6476sphere_sampler_fixed_valid_reward : 5.0 # Fixed reward for valid cylinder samples
65- sphere_sampler_invalid_reward : 1 .00 # Fixed reward for invalid cylinder samples (small positive to discourage uniform when assembled)
77+ sphere_sampler_invalid_reward : 0 .00 # Fixed reward for invalid cylinder samples (small positive to discourage uniform when assembled)
6678
6779# Cylinder Sampling Parameters
6880cylinder_radius_offset_multiplier : 0.1 # Offset multiplier for cylinder radius in PCA fitting
0 commit comments