Simulating labor supply behavior when workers have preferences for job opportunities and face nonlinear budget constraints