Skip to main content
Log in

Strongly Polynomial FPTASes for Monotone Dynamic Programs

  • Published:
Algorithmica Aims and scope Submit manuscript

Abstract

In this paper we introduce a framework for the automatic generation of Strongly Polynomial Fully Polynomial Time Approximation Schemes (SFPTASes) for monotone dynamic programs. While some ad-hoc SFPTASes for specific problems are already known, this is the first framework yielding such SFPTASes. In addition, it is possible to use our algorithm to get efficient (non strongly polynomial) FPTASes. Our results are derived by improving former (non strongly polynomial) FPTASes which were designed via the method of K-approximation sets and functions. We demonstrate our SFPTAS framework on five application problems, namely, 0/1 Knapsack, counting 0/1 Knapsack, Counting \(s-t\) paths, Mobile agent routing and Counting n-tuples, for the last problem we get the fastest SFPTAS known to date. In addition, we use our algorithm to get the fastest (non strongly polynomial) FPTASes for the following other three application problems: Stochastic ordered knapsack, Bi-criteria path problem with maximum survival probability and Minimizing the makespan of deteriorating jobs.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2

Similar content being viewed by others

References

  1. Alon, T.: Fully polynomial time approximation schemes (FPTAS) for some counting problems. Master’s thesis. arXiv preprintarXiv:1611.00992 (2016)

  2. Alon, T., Halman, N.: Automatic generation of FPTASes for stochastic monotone dynamic programs made easier. SIAM J. Discret. Math. 35, 2679–2722 (2021)

    Article  MathSciNet  Google Scholar 

  3. Bertsekas, D.: Dynamic programming and optimal control. Athena scientific Belmont, MA (1995)

    MATH  Google Scholar 

  4. Camponogara, E., Shima, R.B.: Mobile agent routing with time constraints: a resource constrained longest-path approach. J. Univ. Comput. Sci. 16(3), 372–401 (2010)

    MATH  Google Scholar 

  5. Chan, T.M.: Approximation schemes for 0–1 knapsack. In: Proceedings of the 1st Symposium of Simplicity in Algorithms (SOSA), pp. 5:1–5:12. (2018)

  6. Dean, B., Goemans, M., Vondrák, J.: Approximating the stochastic knapsack problem: the benefit of adaptivity. Math. Oper. Res. 33(4), 945–964 (2008)

    Article  MathSciNet  Google Scholar 

  7. Díaz-Núñez, F., Halman, N., Vásquez, Ó.: The TV advertisements scheduling problem. Optim. Lett. 13(1), 81–94 (2019)

    Article  MathSciNet  Google Scholar 

  8. Garey, M.R., Johnson, D.S.: Computers and Intractability: a Guide to the Theory of NP-Completeness. W.H. Freeman, New York (1979)

    MATH  Google Scholar 

  9. Grötschel, M., Lovász, L., Schrijver, A.: Geometric algorithms and combinatorial optimization. Springer Science & Business Media (2012)

  10. Gawrychowski, P., Markin, L., Weimann, O.: A faster FPTAS for # knapsack. arXiv:1802.05791 (2018)

  11. Halman, N.: A deterministic fully polynomial time approximation scheme for counting integer knapsack solutions made easy. Theor. Comput. Sci. 645, 41–47 (2016)

    Article  MathSciNet  Google Scholar 

  12. Halman, N.: A technical note: fully polynomial time approximation schemes for minimizing makespan of deteriorating jobs with non-linear processing times. J. Sched. 23(6), 643–648 (2020)

    Article  MathSciNet  Google Scholar 

  13. Halman, N.: Provably near-optimal approximation schemes for implicit stochastic and for sample-based dynamic programs. INFORMS J. Comput. 32(4), 1157–1181 (2020)

    MathSciNet  MATH  Google Scholar 

  14. Halman, N., Klabjan, D., Li, C.-L., Orlin, J., Simchi-Levi, D.: Fully polynomial time approximation schemes for stochastic dynamic programs. SIAM J. Discret. Math. 28, 1725–1796 (2014)

    Article  MathSciNet  Google Scholar 

  15. Halman, N., Kellerer, H., Strusevich, V.: Approximation schemes for non-separable non-linear Boolean programming problems under nested knapsack constraints. Eur. J. Oper. Res. 270(2), 435–447 (2018)

    Article  MathSciNet  Google Scholar 

  16. Halman, N., Nannicini, G., Orlin, J.: On the complexity of energy storage problems. Discret. Optim. 28, 31–53 (2018)

    Article  MathSciNet  Google Scholar 

  17. Halman, N., Nannicini, G.: Toward breaking the curse of dimensionality: an FPTAS for stochastic dynamic programs with multidimensional actions and scalar states. SIAM J. Optim. 29(2), 1131–1163 (2019)

    Article  MathSciNet  Google Scholar 

  18. Halman, N., Klabjan, D., Mostagir, M., Orlin, J., Simchi-Levi, D.: A fully polynomial time approximation scheme for single-item stochastic inventory control with discrete demand. Math. Oper. Res. 34, 674–685 (2009)

    Article  MathSciNet  Google Scholar 

  19. Halman, N., Kovalyov, M., Quilliot, A., Shabtay, D., Zofi, M.: Bi-criteria path problem with minimum length and maximum survival probability. OR Spectrum 41(2), 469–489 (2019)

  20. Hochbaum, D.: Various notions of approximations: good, better, best, and more. In: Hochbaum, D. (ed.) Approximation algorithms for NP-hard problems, PWS Publishing Company, Boston (1997)

  21. Ibara, O.H., Kim, C.E.: Fast approximation algorithms for the knapsack and sum of subset problems. J. ACM 22(4), 463–468 (1975)

    Article  MathSciNet  Google Scholar 

  22. Kovalyov, M.Y., Kubiak, W.: A fully polynomial approximation scheme for minimizing makespan of deteriorating jobs. J. Heuristics 3(4), 287–297 (1998)

    Article  Google Scholar 

  23. Kovalyov, M.Y., Kubiak, W.: A Generic FPTAS For Partition Type Optimization Problems. Int. J. Plann. Schedul. 1, 209–233 (2012)

    Article  Google Scholar 

  24. Kovalyov, M., van de Velde, S.: Scheduling deteriorating jobs to minimize makespan. Nav. Res. Logist. 45(5), 511–523 (1998)

    Article  MathSciNet  Google Scholar 

  25. Kellerer, H., Pferschy, U.: Improved dynamic programming in connection with an FPTAS for the knapsack problem. J. Comb. Optim. 8, 5–11 (2004)

    Article  MathSciNet  Google Scholar 

  26. Levner, E., Elalouf, A., Cheng, T.C.: An improved FPTAS for mobile agent routing with time constraints. J. Univ. Comput. Sci. 17(13), 1854–1862 (2011)

    MathSciNet  MATH  Google Scholar 

  27. Megiddo, N.: Linear programming in linear time when the dimension is fixed. J. ACM (JACM) 31(1), 114–127 (1984)

    Article  MathSciNet  Google Scholar 

  28. Mittal, S., Schultz, A.: A general framework for designing approximation schemes for combinatorial optimization problems with many objectives combined into one. Oper. Res. 61, 386–397 (2013)

    Article  MathSciNet  Google Scholar 

  29. Orlin, J.: A faster strongly polynomial time algorithm for submodular function minimization. Math. Program. 118(2), 237–251 (2009)

    Article  MathSciNet  Google Scholar 

  30. Pruhs, K., Woeginger, G.J.: Approximation schemes for a class of subset selection problems. Theoret. Comput. Sci. 382, 151–156 (2007)

    Article  MathSciNet  Google Scholar 

  31. Rizzi, R., Tomescu, A.: Faster FPTASes for counting and random generation of knapsack solutions. Inf. Comput. 267, 135–144 (2019)

    Article  MathSciNet  Google Scholar 

  32. Smith, W.: Various optimizers for single-stage production. Naval Res. Logist. Q. 3(1–2), 59–66 (1956)

    Article  MathSciNet  Google Scholar 

  33. Štefankovič, D., Vempala, S., Vigoda, E.: A deterministic polynomial-time approximation scheme for counting knapsack solutions. SIAM J. Comput. 41, 356–366 (2012)

    Article  MathSciNet  Google Scholar 

  34. Woeginger, G.J.: When does a dynamic programming formulation guarantee the existence of a fully polynomial time approximation scheme (FPTAS)? INFORMS J. Comput. 12, 57–74 (2000)

    Article  MathSciNet  Google Scholar 

Download references

Funding

This work was supported in part by the Israel Science Foundation, grant 399/17. The second author was also supported by the United States-Israel Binational Science Foundation, grant 2018095 and the Israel Science Foundation, grant 1074/21.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Nir Halman.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix

A An Example - Finite-Time Discrete-Time Horizon DPs

Consider a finite-time discrete-time horizon DP, as defined in Bertsekas [3]. The model has two principal features: (i) an underlying discrete time dynamic system, and (ii) a cost function that is additive over time. The system dynamics are of the form

$$\begin{aligned} I_{j+1}=\mathrm{tran}_j(I_j,x_j),\quad j=1,\ldots ,T, \end{aligned}$$

where

  • j is the discrete time index,

  • \(I_j\) is the state of the system, which belongs to the state space \(\mathcal {S}_{j}\),

  • \(x_j\) is the action or decision to be selected in time period j, which belongs to the action space \(\mathcal {A}_j(I_j)\),

  • T is the number of time periods.

The cost function, denoted by \(g_j(I_j,x_j)\), is nonnegative and additive in the sense that the cost incurred in time period j is accumulated over time. Let \(I_1\) be the initial state of the system. Then the total cost is

$$\begin{aligned} g_{T+1}(I_{T+1})+\sum _{j=1}^T g_j(I_j,x_j), \end{aligned}$$

where \(g_{T+1}(I_{T+1})\) is the terminal cost incurred at the end of the process.

The problem is to determine

$$\begin{aligned} z^*(I_1)=\min _{x_j\in \mathcal {A}_j(I_j)\mid 1\le j\le T }\left\{ g_{T+1}(I_{T+1})+\sum _{j=1}^T g_j(I_j,x_j)\right\} . \end{aligned}$$
(14)

The optimization is over the actions \(x_1,\ldots ,x_T\). Here, \(x_j\) is selected with the knowledge of the current state \(I_j\).

The state space and the action space are one-dimensional. Note that the domain of the single-period cost functions \(g_j\) and transition functions \(\mathrm{tran}_j\) is \(\mathcal {S}_j\otimes \mathcal {A}_j\), where \(\mathcal {S}_j\otimes \mathcal {A}_i=\bigcup _{I_j \in \mathcal {S}_j}(\{I_j\}\times \mathcal {A}_j(I_j))\). For every initial state \(I_1\), the optimal cost \(z^*(I_1)\) of the DP is equal to \(z_1(I_1)\), where the function \(z_1\) is given by the last step of the following recursion, which proceeds backward from period T to period 1 (Bellman recursion):

$$\begin{aligned} \begin{aligned} z_{T+1}(I_{T+1})&=g_{T+1}(I_{T+1}),\\ z_j(I_j)&=\min _{x_j\in \mathcal {A}_j(I_j)}\left\{ g_j(I_j,x_j)+z_{j+1}(\mathrm{tran}_j(I_j,x_j))\right\} ,\quad j=1,\ldots ,T, \end{aligned} \end{aligned}$$
(15)

where \(z_j(I_j)\) is the cost-to-go function whose value is the minimal cost when starting at time period t with state \(I_t\) and continuing until the end of the time horizon.

We note that (15) is a special case of DP formulation (4) in the following sense. (i) We reverse the order of recursion so that \(t=T+1-j\), (ii) we set \(m=1\) and for convenience drop the index i from the double index ti, (iii) the information given in \(A_t(I_t)\) is the description of the action space \(\mathcal {A}_{T+1-j}(I_{T+1-j})\), (iv) when considering time period t in (4), instead of using all previously-calculated \(\{z_r\}_{r<t}\), we use only \(z_{t-1}\), i.e., when considering time period \(T+1-t\) in (15), we only use the previously-calculated cost-to-go function \(z_{T+2-t}\), and (v) \(f_0=g_{T+1}\) and for \(1 \le t \le T\) we have (let \(j=T+1-t\))

$$\begin{aligned} f_t= \min _{x_{j}\in \mathcal {A}_{j}(I_{j})} \left\{ g_{j}(I_{j},x_{j})+z_{j+1}(\mathrm{tran}_{j}(I_{j},x_{j}))\right\} . \end{aligned}$$

B A Comparison between Conditions 1-4 and Conditions 1-4(i) of [2]

There are three differences between the two sets of conditions:

  • Condition 2 of [2] requires boundedness of \(\log U_{\mathcal {S}}\) while we do not. We replace this requirement with the boundedness of the sets of change points which is implied by Condition 6.

  • Our framework aims to achieve strongly polynomial running time, while [2] is not. Therefore, when requiring boundedness of elements or running times, [2] requires boundedness in the (binary) input size, and we request boundedness in the dimension of the input.

  • We add the requirement for monotonicity of \({\bar{z}}_{t,i}\) in Condition 3. If for a DP there exist ti such that \({\bar{z}}_{t,i}\) is not monotone for ti, then [2] refer this DP to their indirect case, see Remark 3 therein. As we deal only with their direct case, we have to require monotonicity.

C Statement of Function FPTASApxSet

figure e

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Alon, T., Halman, N. Strongly Polynomial FPTASes for Monotone Dynamic Programs. Algorithmica 84, 2785–2819 (2022). https://doi.org/10.1007/s00453-022-00954-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00453-022-00954-8

Keywords

Navigation