An algorithm for optimal cyclic scheduling in a robotic cell with flexible processing times | Synapse