add planning algorithm