1. A computer implemented method for generation of demand groups, useful in association with a price optimization system, the method comprising: receiving a product listing; receiving product data for products in the product listing; receiving point of sales data; assigning attributes to the products based upon the product data; clustering the products by received point of sales data and the assigned attributes; generating a decision tree for the product listing utilizing the point of sales data; receiving at least one demand rule; and generating the demand groups by applying the received at least one demand rule to at least one of the decision tree and the product clusters.