Assembly Line Scheduling Dynamic Programming Algorithm