Switched dynamical systems have shown great utility in modeling a variety of systems. Unfortunately, the determination of a numerical solution for the optimal control of such systems has proven difficult, since it demands optimal mode scheduling. Recently, we constructed an optimization algorithm to calculate a numerical solution to the problem subject to a running and final cost. In this paper, we modify our original approach in three ways to make our algorithm's application more tenable. First, we transform our algorithm to allow it to begin at an infeasible point and still converge to a lower cost feasible point. Second, we incorporate multiple objectives into our cost function, which makes the development of an optimal control in the presence of multiple goals viable. Finally, we extend our approach to penalize the number of hybrid jumps. We also detail the utility of these extensions to our original approach by considering two examples.