Learning Conditional Preference Networks From Optimal Choices