document soft-margin solver