Although we do not allow for branched steps to be marked as explicitly optional, there are a couple ways you can configure a ticket workflow to mimic this functionality. The reason for this is that Collector steps require that all previous steps are completed before the workflow is continued.
First, you can create Task steps that occur as children of a Branch step, and making sure that the Wait for the task to be completed checkbox is NOT checked for each "optional" step. This will simply create a task on the ticket and move along in the workflow.
The second alternative is to create an Approval step that is a child of the Branch step. You can mark this with an approval mode of Any, which requires that only one of the users marked as assigned approves/rejects the step. You can configure this so that a Reject action links to the end Collector step, and an Approve action would cause the branch to not be skipped over.
Further, you can specify responsible people/groups for both of these types of workflow steps. I hope this explains how you can configure workflows to have "optional" branched steps! Please let us know if you would like further clarification or there is anything else we can do to help you.