Strategy optimization (SO) is a key process, which provides a substantial growth for retail and utility companies.

Generally the application of SO is directed to campaign management – helping the organizations to interact in a better way with their customers. The most popular optimization goals are increase of the revenue, popularity or customer loyalty, reducing the taken risk and so on. The multi-strategy optimization is also an option, where a balance between contradictory objectives is investigated, like the fine tuning between profit and loss.

Now-a-days a big quantity of data representing the customer behavior is available. There are organizations, which keep data for millions, tens of millions or even more customers. This source of information can be used for SO. A useful knowledge, which can be extracted from such a heap of data, is the relation between the customers’ performance (represented by a set of dependent variables) and a number of individual characteristics (factors/independent variables).

Examples of dependent variables are: customers’ propensity to make a specific purchase, payment within a due period and other aspects of individual behavior. The factors, which can be used for a prediction of the customers’ performance, are: age, income, marital status, life style and also bureau data presenting their historical behavior, like payment of taxes and loans, macroeconomic factors, etc.

The available data in the retail industry may also represent the products on the market. In this field it is highly important to predict the products demand. Variables that provide information about the demand are the products’ sales (they are the dependent variables). The independent variables in this case are the products’ price, discount, advertisement, promotion type, products’ display, etc.

The complexity of the SO problem grows with increasing the number of potential actions (treatments), involved in the campaigns and the number of ways of their interaction. When customers are the focus of SO, the treatments are the set of potential offers, which stimulate them to buy products or to take a loan and hence to have an effect on the objective. When products are treated, the actions under optimization are the above mentioned factors (price, discount, etc.), which the retailers apply to the market in order to stimulate customers to buy.

Regarding the number of offers – the total number of potential treatments may become up to thousands. The data samples size and the number of treatments, in some cases lead to a huge dimension of SO task. For this reason a numerically stable solution of the optimization problem has to be provided. The focus in the next sections is on different approaches for SO and some numerical aspects of the optimization.

SO can be performed in different ways. One approach is first to split the overall customers’ population (or product nomenclature) under investigation into segments. This can be done by supervised segmentation techniques, like decision trees, neural networks, maximum-likelihood classifiers, etc. After obtaining a set of distinguished segments (each of which should gather customers with similar performance), the next step is to optimize the treatments applied per each segment.

The approach with an initial segmentation simplifies the SO problem and is frequently used in marketing. Its main disadvantage is that the generalization caused by the segmentation decreases the accuracy of the determined “best” actions.

Another approach is to apply the optimization at a customer/household (or at a product) level. Here the number of parameters under optimization may rise drastically. For example real-life problems are connected with data regarding tens of millions of customers and thousands of offers.

In order to solve such a large scale integer problem, the separable optimization approach can be used. Its idea is the overall problem to be presented as a set of relevantly independent sub problems. Each sub problem is associated with a given customer and its dimension depends on the number of treatments. The important point here is that the separable problem is reduced to many smaller sub problems, which are repeatedly solved during the optimization.

A relatively new approach is to perform real-time optimization. The recent customers from the last week, day or even within a shorten time period could be used in order to update the strategy. Here recursive estimators can be used to update the relations between the dependent and the independent variables. This relation (a model) is useful information for SO.

The discussed above approaches for SO can be reduced to a linear optimization problem, named also linear programming. LP is the process of finding the optimal value of a linear function subject to linear equality and/or inequality constraints. The feasible region (if it exists) is a convex polyhedron placed in the parameter space. In case of inequality constraints this set is an intersection of half spaces, specified by the linear inequalities. The linear optimization methods find (if possible) a point of the polyhedron, for which, the objective function has minimum.