Simultaneous optimization of assembly time and yield in programmable self-assembly | Synapse