willingness to pay algorithm