A constraint model for assembly planning. (January 2020)