TY - JOUR

T1 - Approximate by thinning

T2 - Deriving fully polynomial-time approximation schemes

AU - Mu, Shin Cheng

AU - Lyu, Yu Han

AU - Morihata, Akimasa

N1 - Publisher Copyright:
© 2014 Elsevier B.V. All rights reserved.

PY - 2015/2/1

Y1 - 2015/2/1

N2 - The fully polynomial-time approximation scheme (FPTAS) is a class of approximation algorithms for optimisation problems that is able to deliver an approximate solution within any chosen ratio in polynomial time. By generalising Bird and de Moor's Thinning Theorem to a property between three orderings, we come up with a datatype-generic strategy for constructing fold-based FPTASs. Greedy, thinning, and approximation algorithms can thus be seen as a series of generalisations. Components needed in constructing an FPTAS are often natural extensions of those in the thinning algorithm. Design of complex FPTASs is thus made easier, and some of the resulting algorithms turn out to be simpler than those in previous works.

AB - The fully polynomial-time approximation scheme (FPTAS) is a class of approximation algorithms for optimisation problems that is able to deliver an approximate solution within any chosen ratio in polynomial time. By generalising Bird and de Moor's Thinning Theorem to a property between three orderings, we come up with a datatype-generic strategy for constructing fold-based FPTASs. Greedy, thinning, and approximation algorithms can thus be seen as a series of generalisations. Components needed in constructing an FPTAS are often natural extensions of those in the thinning algorithm. Design of complex FPTASs is thus made easier, and some of the resulting algorithms turn out to be simpler than those in previous works.

KW - Approximation algorithms

KW - Program derivation

UR - http://www.scopus.com/inward/record.url?scp=84916939616&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84916939616&partnerID=8YFLogxK

U2 - 10.1016/j.scico.2014.07.001

DO - 10.1016/j.scico.2014.07.001

M3 - Article

AN - SCOPUS:84916939616

VL - 98

SP - 484

EP - 515

JO - Science of Computer Programming

JF - Science of Computer Programming

SN - 0167-6423

IS - P4

ER -