Acquiring both constraint and solution preferences in interactive constraint systems