Let f be a function on a set of variables V. For each x ε V, let c(x) be the cost of reading the value of x. An algorithm for evaluating f is a strategy for adaptively identifying and reading a set of variables U ⊆ V whose values uniquely determine the value of f. We are interested in finding algorithms which minimize the cost incurred to evaluate f in the above sense. Competitive analysis is employed to measure the performance of the algorithms. We study two variants of the above problem. First we consider the classical setting in which one assumes that the algorithm knows the cost c(x), for each x ε V. For the case where f is a monotone boolean function which is representable by a threshold tree, we provide a polynomial time algorithm with the best possible competitive ratio γfc for each fixed cost function c(·). Remarkably, the best known result for the same class of functions is a pseudo-polynomial algorithm with competitiveness 2γfc. For the class of game tree functions our polynomial time algorithm attains, for each fixed cost function, the same competitiveness as the best known algorithm for the same class of functions, which instead runs in pseudo-polynomial time.In the second part of the paper, we study a novel variant of the problem. Here, we assume that the cost function is not known in advance and some preemption is allowed in the reading operations. This model has applications, e.g., when reading a variable coincides with obtaining the output of a job on a CPU and the cost is the CPU time. In such a case, it is reasonable to assume that no exact knowledge of the cost is available. We define a new algorithm for this problem based on the solution of a Linear Program. We show the optimality of our algorithm for the class of monotone boolean functions representable by AND-OR-trees. We also show a sub-optimal implementation for general monotone boolean functions.

### On the competitive ratio of evaluating priced functions

#### Abstract

Let f be a function on a set of variables V. For each x ε V, let c(x) be the cost of reading the value of x. An algorithm for evaluating f is a strategy for adaptively identifying and reading a set of variables U ⊆ V whose values uniquely determine the value of f. We are interested in finding algorithms which minimize the cost incurred to evaluate f in the above sense. Competitive analysis is employed to measure the performance of the algorithms. We study two variants of the above problem. First we consider the classical setting in which one assumes that the algorithm knows the cost c(x), for each x ε V. For the case where f is a monotone boolean function which is representable by a threshold tree, we provide a polynomial time algorithm with the best possible competitive ratio γfc for each fixed cost function c(·). Remarkably, the best known result for the same class of functions is a pseudo-polynomial algorithm with competitiveness 2γfc. For the class of game tree functions our polynomial time algorithm attains, for each fixed cost function, the same competitiveness as the best known algorithm for the same class of functions, which instead runs in pseudo-polynomial time.In the second part of the paper, we study a novel variant of the problem. Here, we assume that the cost function is not known in advance and some preemption is allowed in the reading operations. This model has applications, e.g., when reading a variable coincides with obtaining the output of a job on a CPU and the cost is the CPU time. In such a case, it is reasonable to assume that no exact knowledge of the cost is available. We define a new algorithm for this problem based on the solution of a Linear Program. We show the optimality of our algorithm for the class of monotone boolean functions representable by AND-OR-trees. We also show a sub-optimal implementation for general monotone boolean functions.
##### Scheda breve Scheda completa Scheda completa (DC)
0898716055
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: `http://hdl.handle.net/11386/3108760`
##### Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

• ND
• ND
• ND