Final Report Summary - STOCHASTICOPT (Efficient Approximation for Stochastic Optimization)
The project main goal is transforming dynamic programs (DPs) into Fully Polynomial Time Approximation Schemes (FPTASs). Among algorithms with performance guarantees on the maximum amount of relative error, FPTASs are by far the strongest results. For any given tolerance epsilon, an FPTAS generates a solution with a relative error guaranteed to be no more than epsilon, while the running time of the algorithm is polynomial in 1/epsilon and in the size of the problem. The essence of FPTASs is to use a discrete approximation in which the number of bits of precision used for the cost functions is at most logarithmic in the data and in 1/epsilon (so that the algorithm will be polynomial time), and so that no other data is approximated. It is critical to design the algorithms and the approximations so that small errors at one stage do not turn into large errors at subsequent stages.
The ultimate goal is to develop a methodology that will be both general and easy-to-use for deriving FPTASs for stochastic dynamic programs. However, I focus primarily on stochastic optimization problems and stochastic dynamic programs, emphasizing on problems applicable to industry. The justification to focus on stochastic optimization is two-fold. Firstly, most ``real-life" problems, such as inventory control problems, are stochastic in nature. Secondly, the extension to stochastic optimization problems introduces challenges and subtleties beyond DPs for deterministic optimization problems.
The most significant result is that I'm successful in developing a methodology that is both general and easy-to-use for deriving FPTASs for stochastic dynamic programs. Moreover, for the convex case this framework seems to be quite efficient from a practical standpoint.
Stochastic Optimization and planning under uncertainty are widely acknowledged as critical areas within Operations Research and Optimal Control. George Dantzig, the father of linear programming, put it well when he said ``Those of us who were doing the planning right from the very beginning understood that the real problem was to be able to do planning under uncertainty" (see http://www.eoptimization.com/directory/trailblazers/dantzig/interview\_planning.cfm(odnośnik otworzy się w nowym oknie)).
My research involves identifying those stochastic optimization problems for which there is an efficient and effective approximation scheme.
One important and immediate impact is solving a problem that is important in practice. For example, I have solved a basic inventory/manufacturing problem as well as some of its variants. I am also addressing other problems in manufacturing, inventory control, and finance.
Another key impact of my research is the creation of subroutines for solving complex problems in stochastic optimization. A standard practical approach for solving complex stochastic (or deterministic) problems involves decomposing the unmanageably complex problems into smaller more manageable problems. For example, in stochastic inventory control, one often decomposes complex decisions involving a large number of products into a large number of simpler decisions on individual products. My FPTASs for single products are efficient approaches for solving these single product problems.
Since the beginning of the project I've attended a conference in Europe, gave talks in universities in Israel, Europe and the USA. I've spent the summer of 2010 as well as the summer of 2012 conducting research with colleagues at MIT.
I've constructed 3 courses, 2 of which are of graduate level and one of undergraduate level, on issues closely related to the topics of the proposed project.
I'm keeping a lasting co-operation with colleagues at MIT, and initiated a new cooperation with a colleague at Singapore University of Technology and Design.
The project has made good progress in the following directions
1) Different descriptions of stochastic events - The description of a random variable X may be given explicitly as a list of pairs (x,p) where Probability(X=x)=p, or may be given implicitly via a value oracle to its cumulative distribution function (CDF). Moreover, it may be given approximately via an FPTAS to its CDF.
2) Applications - I've designed FPTASs for problems mainly in stochastic production and inventory theory. Other applications are in financial management, revenue management, project management, economics and variations on the Knapsack Problem.
3) Types of dependencies permitted - I've established that problems with non independent random variables cannot admit an FPTAS. However, the FPTAS framework does handle the case when the dependency is described as a Markov chain.
4) Expanding the Calculus of K-approximation functions - I've designed FPTASs to problems where one wants to maximize profit, i.e. the difference between revenues and costs. This is a substantial improvement over the initial FPTAS framework that have dealt only with problems minimizing costs or maximizing revenues.
5) Non-exact evaluation of cost functions - The initial FPTAS assumes access to a value oracle of the single-period cost function. I've expanded it to deal with the case where such (exact) value-oracle is not given, but an FPTAS (approximated vale function) to the cost function is given instead.
6) Practical performance when the cost functions are convex - The worst-case running time of the original FPTAS is low polynomial in the size of the input instance I and 1/epsilon. Namely, it is quadratic in |I| and linear in 1/epsilon. However when programming the FPTAS, the practical running time is not satisfactory (as in most FPTASs in the literature). For this reason I improved the worst-case running time of the FPTAS. I designed and implemented the FPTAS and got excellent computational performance, and showed that it is faster than an exact algorithm even for small problem instances and small approximation factors, becoming orders of magnitude faster as the problem size increases.
7) Beyond finite-time DP - I have expanded the framework to more general recursive structures. The recursive structure of a finite-time DP can be seen as a ``walk" on a directed path. I've studied time-cost tradeoff project scheduling on series-parallel networks. In that work I have designed an add-hock FPTAS using K-approximation sets and functions.
8) Dealing with multidimensional state spaces - I've established that a value function of DP with bivariate state space that is both monotone and convex in the sense of Miller cannot admit a succinct representation. Moreover, such succinct representation is not possible even for a 2-approximation of such a DP. This negates the possibility of having an FPTAS for general multivariate DPs. However, I've designed an ad-hock FPTAS for the 2-item capacitated lot-sizing problem with joint setups.
The ultimate goal is to develop a methodology that will be both general and easy-to-use for deriving FPTASs for stochastic dynamic programs. However, I focus primarily on stochastic optimization problems and stochastic dynamic programs, emphasizing on problems applicable to industry. The justification to focus on stochastic optimization is two-fold. Firstly, most ``real-life" problems, such as inventory control problems, are stochastic in nature. Secondly, the extension to stochastic optimization problems introduces challenges and subtleties beyond DPs for deterministic optimization problems.
The most significant result is that I'm successful in developing a methodology that is both general and easy-to-use for deriving FPTASs for stochastic dynamic programs. Moreover, for the convex case this framework seems to be quite efficient from a practical standpoint.
Stochastic Optimization and planning under uncertainty are widely acknowledged as critical areas within Operations Research and Optimal Control. George Dantzig, the father of linear programming, put it well when he said ``Those of us who were doing the planning right from the very beginning understood that the real problem was to be able to do planning under uncertainty" (see http://www.eoptimization.com/directory/trailblazers/dantzig/interview\_planning.cfm(odnośnik otworzy się w nowym oknie)).
My research involves identifying those stochastic optimization problems for which there is an efficient and effective approximation scheme.
One important and immediate impact is solving a problem that is important in practice. For example, I have solved a basic inventory/manufacturing problem as well as some of its variants. I am also addressing other problems in manufacturing, inventory control, and finance.
Another key impact of my research is the creation of subroutines for solving complex problems in stochastic optimization. A standard practical approach for solving complex stochastic (or deterministic) problems involves decomposing the unmanageably complex problems into smaller more manageable problems. For example, in stochastic inventory control, one often decomposes complex decisions involving a large number of products into a large number of simpler decisions on individual products. My FPTASs for single products are efficient approaches for solving these single product problems.
Since the beginning of the project I've attended a conference in Europe, gave talks in universities in Israel, Europe and the USA. I've spent the summer of 2010 as well as the summer of 2012 conducting research with colleagues at MIT.
I've constructed 3 courses, 2 of which are of graduate level and one of undergraduate level, on issues closely related to the topics of the proposed project.
I'm keeping a lasting co-operation with colleagues at MIT, and initiated a new cooperation with a colleague at Singapore University of Technology and Design.
The project has made good progress in the following directions
1) Different descriptions of stochastic events - The description of a random variable X may be given explicitly as a list of pairs (x,p) where Probability(X=x)=p, or may be given implicitly via a value oracle to its cumulative distribution function (CDF). Moreover, it may be given approximately via an FPTAS to its CDF.
2) Applications - I've designed FPTASs for problems mainly in stochastic production and inventory theory. Other applications are in financial management, revenue management, project management, economics and variations on the Knapsack Problem.
3) Types of dependencies permitted - I've established that problems with non independent random variables cannot admit an FPTAS. However, the FPTAS framework does handle the case when the dependency is described as a Markov chain.
4) Expanding the Calculus of K-approximation functions - I've designed FPTASs to problems where one wants to maximize profit, i.e. the difference between revenues and costs. This is a substantial improvement over the initial FPTAS framework that have dealt only with problems minimizing costs or maximizing revenues.
5) Non-exact evaluation of cost functions - The initial FPTAS assumes access to a value oracle of the single-period cost function. I've expanded it to deal with the case where such (exact) value-oracle is not given, but an FPTAS (approximated vale function) to the cost function is given instead.
6) Practical performance when the cost functions are convex - The worst-case running time of the original FPTAS is low polynomial in the size of the input instance I and 1/epsilon. Namely, it is quadratic in |I| and linear in 1/epsilon. However when programming the FPTAS, the practical running time is not satisfactory (as in most FPTASs in the literature). For this reason I improved the worst-case running time of the FPTAS. I designed and implemented the FPTAS and got excellent computational performance, and showed that it is faster than an exact algorithm even for small problem instances and small approximation factors, becoming orders of magnitude faster as the problem size increases.
7) Beyond finite-time DP - I have expanded the framework to more general recursive structures. The recursive structure of a finite-time DP can be seen as a ``walk" on a directed path. I've studied time-cost tradeoff project scheduling on series-parallel networks. In that work I have designed an add-hock FPTAS using K-approximation sets and functions.
8) Dealing with multidimensional state spaces - I've established that a value function of DP with bivariate state space that is both monotone and convex in the sense of Miller cannot admit a succinct representation. Moreover, such succinct representation is not possible even for a 2-approximation of such a DP. This negates the possibility of having an FPTAS for general multivariate DPs. However, I've designed an ad-hock FPTAS for the 2-item capacitated lot-sizing problem with joint setups.