Scan Scheduling Specification and Analysis

Similar documents
3 No-Wait Job Shops with Variable Processing Times

RSA (Rivest Shamir Adleman) public key cryptosystem: Key generation: Pick two large prime Ô Õ ¾ numbers È.

RSA (Rivest Shamir Adleman) public key cryptosystem: Key generation: Pick two large prime Ô Õ ¾ numbers È.

A Modality for Recursion

SFU CMPT Lecture: Week 8

Discrete Mathematics Lecture 4. Harper Langston New York University

CHAPTER 8. Copyright Cengage Learning. All rights reserved.

Worst-Case Utilization Bound for EDF Scheduling on Real-Time Multiprocessor Systems

Optimal Time Bounds for Approximate Clustering

A General Greedy Approximation Algorithm with Applications

From Static to Dynamic Routing: Efficient Transformations of Store-and-Forward Protocols

On the Performance of Greedy Algorithms in Packet Buffering

9.5 Equivalence Relations

Response Time Analysis of Asynchronous Real-Time Systems

Theorem 2.9: nearest addition algorithm

Efficiency versus Convergence of Boolean Kernels for On-Line Learning Algorithms

SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION

Know the Well-ordering principle: Any set of positive integers which has at least one element contains a smallest element.

Topology Homework 3. Section Section 3.3. Samuel Otten

Parameterized graph separation problems

Math Introduction to Advanced Mathematics

Probabilistic analysis of algorithms: What s it good for?

Lecture Notes on GRAPH THEORY Tero Harju

The Online Median Problem

Structure and Complexity in Planning with Unary Operators

Math 302 Introduction to Proofs via Number Theory. Robert Jewett (with small modifications by B. Ćurgus)

Computing optimal linear layouts of trees in linear time

End-to-end bandwidth guarantees through fair local spectrum share in wireless ad-hoc networks

From Tableaux to Automata for Description Logics

A CSP Search Algorithm with Reduced Branching Factor

Tolls for heterogeneous selfish users in multicommodity networks and generalized congestion games

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF

SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION

In this lecture, we ll look at applications of duality to three problems:

Designing Networks Incrementally

Learning to Align Sequences: A Maximum-Margin Approach

On Covering a Graph Optimally with Induced Subgraphs

1 Elementary number theory

6. Lecture notes on matroid intersection

MAT 243 Test 2 SOLUTIONS, FORM A

Summary of Course Coverage

[Ch 6] Set Theory. 1. Basic Concepts and Definitions. 400 lecture note #4. 1) Basics

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

Complexity Results on Graphs with Few Cliques

Unifying and extending hybrid tractable classes of CSPs

A more efficient algorithm for perfect sorting by reversals

Module 7. Independent sets, coverings. and matchings. Contents

Graphs (MTAT , 4 AP / 6 ECTS) Lectures: Fri 12-14, hall 405 Exercises: Mon 14-16, hall 315 või N 12-14, aud. 405

Math 5593 Linear Programming Lecture Notes

The Encoding Complexity of Network Coding

On the Max Coloring Problem

Lecture 5: Graphs. Rajat Mittal. IIT Kanpur

Integers and Mathematical Induction

31.6 Powers of an element

NP-Hardness. We start by defining types of problem, and then move on to defining the polynomial-time reductions.

Faster parameterized algorithms for Minimum Fill-In

Faster parameterized algorithms for Minimum Fill-In

Online Facility Location

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

Exact Algorithms Lecture 7: FPT Hardness and the ETH

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

Number Theory and Graph Theory

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Online Scheduling for Sorting Buffers

Lecture 11: Maximum flow and minimum cut

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF

Chordal deletion is fixed-parameter tractable

arxiv: v1 [math.co] 15 Dec 2009

Framework for Design of Dynamic Programming Algorithms

Fundamental Properties of Graphs

Applied Algorithm Design Lecture 3

Domination, Independence and Other Numbers Associated With the Intersection Graph of a Set of Half-planes

Matching Theory. Figure 1: Is this graph bipartite?

Star Decompositions of the Complete Split Graph

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF

Disjoint directed cycles

On-line multiplication in real and complex base

Competitive Analysis of On-line Algorithms for On-demand Data Broadcast Scheduling

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

Number System. Introduction. Natural Numbers (N) Whole Numbers (W) Integers (Z) Prime Numbers (P) Face Value. Place Value

Preemptive Scheduling of Equal-Length Jobs in Polynomial Time

Correlation Clustering

Winning Positions in Simplicial Nim

Dynamic Programming Algorithms

Treewidth and graph minors

Greedy Algorithms 1 {K(S) K(S) C} For large values of d, brute force search is not feasible because there are 2 d {1,..., d}.

5.4 Pure Minimal Cost Flow

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. Numbers & Number Systems

Module 11. Directed Graphs. Contents

Approximation by NURBS curves with free knots

Topology 550A Homework 3, Week 3 (Corrections: February 22, 2012)

Solution for Homework set 3

Graphs: Introduction. Ali Shokoufandeh, Department of Computer Science, Drexel University

Disjoint, Partition and Intersection Constraints for Set and Multiset Variables

SANDRA SPIROFF AND CAMERON WICKHAM

Calculation of extended gcd by normalization

On 2-Subcolourings of Chordal Graphs

ECE608 - Chapter 16 answers

A New Algorithm for the Reconstruction of Near-Perfect Binary Phylogenetic Trees

On the packing chromatic number of some lattices

Transcription:

Scan Scheduling Specification and Analysis Bruno Dutertre System Design Laboratory SRI International Menlo Park, CA 94025 May 24, 2000 This work was partially funded by DARPA/AFRL under BAE System subcontract RG2206 under prime contract F30602-99-C0167

Abstract We investigate the construction of fixed schedules for an EW receiver that ensures that Ò disjoint frequency bands are periodically visited for a given time interval Two parameters and Ì, such that ¼ Ì, are given for each frequency band : is the required dwell time and Ì is the required revisit time for band The problem is to compute a global schedule, such that, for all, the receiver covers band for an interval of length in every interval of length Ì We give necessary and sufficient conditions for this problem to have solutions We prove that the problem is NP-complete We present a depth-first search algorithm for obtaining a solution and discuss simplification techniques that reduce the search space Contents 1 Introduction 2 2 Patterns and Schedules 4 3 Greatest Common Divisor 5 4 Feasibility Conditions 7 41 Compatibility of Two Patterns 7 42 Schedule Feasibility 10 5 Algorithms 12 51 Theoretical Complexity 12 52 Search-Space Reduction 15 53 Schedule Construction Algorithm 22 6 Conclusion 23 1

Ti τ i 0 a b a b a b a b 0 0 1 1 2 2 3 3 1 Introduction Figure 1: Successive Dwells for a Frequency Band We consider the problem of constructing a fixed scan schedule for a single EW receiver The receiver bandwidth is divided into Ò disjoint frequency bands that can be covered only one at a time The receiver must periodically visit each of these Ò bands for a specific duration For each band, two parameters and Ì specify how long and how often band must be revisited, respectively Ì is the revisit time and the dwell time for band We assume that and Ì are real numbers such that ¼ Ì The schedule is required to include, for each frequency band, a sequence of dwell intervals as depicted in Figure 1 The receiver covers band in each interval Ø Ø µ, and other frequency bands between Ø and Ø ½ Globally, a schedule can be described by Ò triples of parameters Ì µ for ½ Ò, where is the dwell time for band, Ì the revisit time for band, and the start time of the first dwell interval covering band These parameters must satisfy the following constraints: ¼ Ì and ¼ Ì These parameters determine the successive dwell intervals for each frequency band However, not all possible values for the parameters Ì are acceptable Since the receiver can cover only a single frequency band at a time, we must ensure that the dwell intervals for distinct bands do not overlap The following figure shows an example of feasible schedule with Ò ¾, ½ ¼, ½ ¼, Ì ½ ¾, ¾ ¼, ¾ ¼, and Ì ¾ On the other hand, it is easy to see that no feasible schedule exists in case ½ ½, Ì ½ ¾, and ¾ ½, Ì ¾ Constructing such a schedule would amount to aligning the two sequences of intervals below in such a way that no two intervals overlap This is clearly impossible In general, we are given Ò pairs of parameters and Ì, such that ¼ Ì The problem is to find whether there exist Ò real numbers ½ Ò such that ¼ Ì for all, and the schedule defined by the parameters,, and Ì is feasible A simple test is to check whether the total resource utilization is no more than 1 Assume a schedule, defined by the above set of parameters, is feasible Let Ì be an arbitrary positive 2

number and let Ñ be the number of full dwell intervals for band that occur in the interval ¼ Ì Since the dwell intervals for different bands do not overlap, we have Ò ½ Ñ Ì Now Ñ is equal either to ÌÌ or to ÌÌ ½, and this implies that ÌÌ ½µ Ñ 1 This gives Ò ½ Ì Ì ½µ Ì that is, Ì Ò ½ Ì ½ Ò ½ Since this inequality holds for arbitrary Ì, we must have Ò ½ Ì ½ (1) The sum on the left-hand side of this equation is the total resource utilization If this quantity is more than 1, then no feasible schedule can be obtained Condition (1) is clearly necessary, but as shown by the preceding counterexample, it is not sufficient to ensure feasibility Although ½¾ ½ ½, there is no feasible schedule for ½ ½, Ì ½ ¾, and ¾ ½, Ì ¾ In practice, it is acceptable to reduce the revisit time for any band: spending more time covering band than required does not usually reduce the overall performance In this simple example, we could then solve the problem by changing Ì ¾ to ¾ Under these new conditions, we can construct a feasible schedule However, decreasing the revisit times does not always work For example, take Ò and the following parameters: Ì 1 1 2 2 1 3 3 1 7 Although the total resource utilization ½¾ ½ ½is smaller than 1, this set of parameters does not admit a feasible schedule Reducing the revisit times for band ¾ or does not work either To accommodate band ¾, it is necessary to change Ì ¾ to ¾, but once this is done, the resource utilization for the two first bands equals 1, and there is no resource available for band This paper presents necessary and sufficient conditions on dwell times and revisit times to ensure schedule feasibility Section 2 introduces the notations and gives basic definitions 1 ÌÌ denotes the largest integer smaller than or equal to ÌÌ 3

and results Section 3 presents the essential mathematical notions used for obtaining feasibility results, namely, a generalization of the notion of greatest common divisor to arbitrary real numbers Section 4 gives the key results of this paper It establishes necessary and sufficient conditions of schedule feasibility Section 5 discusses the algorithmic complexity of the problem and presents an algorithm for computing schedules Section 6 summarizes the results presented in the paper 2 Patterns and Schedules In any schedule, the dwell intervals for a frequency band are characterized by three parameters: the dwell time, the revisit time, and the start of the first dwell interval We call such a triple of parameters a scan pattern or pattern for short Definition 1 A scan pattern is a triple Ì µ of real numbers such that ¼ Ì and ¼ Ì Given a scan pattern Ì µ, the successive dwell intervals Ø Ø µ of (for Ø ¾ Æ) are defined by the following equations 2 : Ø Ø Ì Ø Ø All the dwell intervals are then of length and two successive dwell intervals are separated by a delay Ì We denote by the set of reals that belong to any of these intervals: Ø Ø µ Ø¾Æ If corresponds to frequency band then is the set of times when the receiver covers We denote by Ê the set of nonnegative real numbers A time Ü ¾ Ê belongs to if and only if there exists Ø ¾ Æ such that Ø Ü Ø To obtain a more convenient condition we extend the notion of remainder of a Euclidean division to real numbers as follows Given any real Ù, let Ù denote the largest integer smaller than or equal to Ù: Ù ¾ and Ù Ù Ù ½ Given any real Ù and any positive real Ú, let Ù ÑÓ Ú be defined by Ù ÑÓ Ú Ù Ù Ú Ú The number Ù ÑÓ Ú is to be interpreted as the remainder of the division of Ù by Ú and, similarly, ÙÚ behaves like the usual quotient of an integer division We have Ù ÑÓ Ú Ö µ ¼ Ö Ù and ¾ Ù Ú Ö ÙÚ µ ¾ and Ú Ù Ú ½µ We also say that Ù is divisible by Ú or that Ù is a multiple of Ú if Ù Ú for some integer This is equivalent to Ù ÑÓ Ú ¼ Using these notations, we obtain the following necessary and sufficient condition for Ü to belong to 2 Using intervals closed on the left and open on the right simplifies the analysis but is not crucial 4

Lemma 1 If Ì µ then for any Ü ¾ Ê, we have Ü ¾ µ Ü µ ÑÓ Ì Let Ì µ and ¼ ¼ ¼ Ì ¼ µ be two scan patterns These two patterns overlap if ¼ Otherwise, we say that and ¼ are compatible Let Ø Ø µ Ø¾Æ be the dwell intervals of pattern and ¼ Ø ¼ Ø µ Ø¾Æ be the dwell intervals of ¼ To determine whether and ¼ overlap, it is sufficient to consider only the starting points of the dwell intervals Lemma 2 and ¼ overlap if and only if there is Ø ¾ Æ such that Ø ¾ ¼ or there is Ù ¾ Æ such that ¼ Ù ¾ The proof is trivial Since Ø Ø Ì and ¼ Ù ¼ Ù Ì ¼, we obtain the following result by combining Lemma 1 and Lemma 2 Proposition 3 Let Ì µ and ¼ ¼ ¼ Ì µ be two patterns; then and ¼ overlap if and only if one of the two following conditions is satisfied: Ñ ¾ Æ Ñ ¾ Æ ¼ ¼ Ñ Ì µ ÑÓ Ì ¼ ¼ Ñ Ì ¼ µ ÑÓ Ì A schedule Ë is a set of Ò ½ scan patterns Ì µ for ½ Ò The schedule is feasible if all these patterns are pairwise compatible, that is, the dwell intervals for different frequency bands do not overlap Given desired dwell times ½ Ò and desired revisit times Ì ½ Ì Ò, the problem is to determine whether there exist Ò real numbers ½ Ò such that ¼ Ì for ½ Ò, the schedule Ë defined by the patterns Ì µ is feasible We also need an algorithm or a technique for computing the values ½ Ò when they exist 3 Greatest Common Divisor Proposition 3 indicates that the feasibility problem reduces to finding the range of an expression of the form Ü Ñ Ì µ ÑÓ Ì ¼ for Ñ varying over the natural numbers, and for fixed reals Ì ¼ ¼, Ì ¼, and Ü In other words, we must find all the real numbers such that Ü Ñ Ì µ ÑÓ Ì ¼ for some Ñ ¾ Æ This is related to the more general problem of finding the reals such that ¾ ¾ Ü Ì Ì ¼ In case Ì and Ì ¼ are integers, the numbers of the form Ì Ì ¼ are the multiples of the greatest common divisor of Ì and Ì ¼ To solve the general case, we start by extending the gcd to arbitrary non-zero reals Ì and Ì ¼ 5

Assume then that Ì and Ì ¼ are two non-zero reals Let be the set of numbers defined by Ý ¾ ¾ Ý Ì Ì ¼ Clearly if Ü and Ý ¼ belong to then Ü ÑÓ Ý also belongs to Also, if Ü ¾ and ¾ then Ü ¾ In the remainder of this section, we show that this set has a smallest positive element provided ÌÌ ¼ is a rational number, and that this is the gcd of Ì and Ì ¼ We then investigate the case when ÌÌ ¼ is irrational Lemma 4 Assume has a smallest positive element ; then we have for all real Ý, Ý ¾ µ ¾ Ý Proof: Since is the smallest positive element of, we have ¾, so any Ý of the form is also an element of Conversely, assume Ý ¾ and let Ö Ý ÑÓ Clearly, Ö also belongs to and we have ¼ Ö Since is the smallest positive element of, Ö must be ¼ This means that Ý is a multiple of ¾ Lemma 5 has a smallest positive element if and only if ÌÌ ¼ is a rational number Proof: Assume has a smallest positive element Since both Ì and Ì ¼ belong to they are both multiples of (by the previous lemma) There are then two non-zero integers and ¼ such that Ì and Ì ¼ ¼, and ÌÌ ¼ ¼ is rational Conversely, assume ÌÌ ¼ is a rational number, that is, there are two integers Ô ¼ and Õ ¼ such that Ì Ì ¼ Ô Õ Let Ù ÌÔ Ì ¼ Õ; then we have Ù ¼, Ì Ô Ù, and Ì ¼ Õ Ù As a consequence, we can write Consider the set Ý ¾ ¾ Ý Ô Õµ Ù ¼ and ¾ ¾ Ô Õ is a set of positive integers; it has then a smallest element ¼ If Ù ¼, let ¼ Ù and otherwise let ¼ Ù; then is the smallest positive element of ¾ Lemma 6 Assume ÌÌ ¼ is rational and let be the smallest positive element of ; then is the greatest common divisor of Ì and Ì ¼ Proof: Since Ì and Ì ¼ belong to, divides both by Lemma 4 Since also belongs to, it is of the form Ì Ì ¼ for some integers and If divides both Ì and Ì ¼ then divides Ì Ì ¼, that is, divides ¾ In case ÌÌ ¼ is not rational, Ì and Ì ¼ do not have any common divisors and then they do not have a gcd By Lemma 5, we also know that the set does not have a smallest positive element We strengthen this result by showing that Ì Ì ¼ can be an arbitrarily small positive number 6

Lemma 7 If ÌÌ ¼ is irrational then, for any positive real, there are two integers and such that ¼ Ì Ì ¼ Proof: Let be the set of positive elements of ; then has a greatest lower bound and ¼ By Lemma 5, does not belong to We have then ¼ Ü ¾ Ü Since all elements of are of the form Ì Ì ¼ for some integers and, we just have to show that ¼ Assume this is not the case, that is, ¼ There is then Ü ¾ such that Ü ¾, and there is also Ý ¾ such that Ý Ü Since Ü Ý, ÝÜ ½ Let Ö Ü ÑÓ Ý; then Ö belongs to and we have Ö Ü ÜÝ Ý Ü Ý ¾ This implies Ö and contradicts the assumption that is the greatest lower bound of As a consequence cannot be positive so we have ¼ ¾ In summary, we have established the following results: If ÌÌ ¼ is a rational number then Ì and Ì ¼ have a gcd, and for all Ý ¾ Ê there are integers and such that Ý Ì Ì ¼ if and only if divides Ý If ÌÌ ¼ is not a rational number then Ì and Ì ¼ do not have a gcd and for all positive real, there are integers and such that ¼ Ì Ì ¼ 4 Feasibility Conditions 41 Compatibility of Two Patterns We consider two arbitrary patterns Ì µ and ¼ ¼ ¼ Ì ¼ µ and we study conditions for and ¼ to be compatible By Proposition 3, these two patterns overlap if and only if one or both of the two following properties are satisfied: Ñ ¾ Æ ¼ Ñ Ì µ ÑÓ Ì ¼ ¼ Ñ ¾ Æ ¼ Ñ Ì ¼ µ ÑÓ Ì We consider a slightly more general case and study the existence of integers Ñ that satisfy the inequality Ñ Ì ¼ µ ÑÓ Ì where Ì and Ì ¼ are positive reals, ¼ Ì, and is an arbitrary real Two cases must be considered depending on whether ÌÌ ¼ is rational or not 7

Rational Case Lemma 8 Assume ÌÌ ¼ is rational and let be the gcd of Ì and Ì ¼ Let be a real such that ¼ Ì ; then Ñ ¾ Æ Ñ Ì ¼ µ ÑÓ Ì µ µ divides Proof: If Ñ Ì ¼ µñóì with Ñ ¾ Æ then there is ¾ such that Ñ Ì ¼ Ì ; so Ñ Ì ¼ Ì and, by the preceding results, divides Conversely, assume divides There are then ¾ and ¾ such that Ì Ì ¼, and then Ì ¼ Ì Since ¼ Ì, this implies that Ì ¼ µì and then Ì ¼ µ ÑÓ Ì Since divides both Ì and Ì ¼, there are two positive integers Ù and Ú such that Ì Ù and Ì ¼ Ú Hence, we have Ú Ì Ù Ì ¼ Let ¾ Æ be large enough so that Ù ¼ and let Ñ Ù Then Ñ ¾ Æ and we have Ñ Ì ¼ µ ÑÓ Ì Ì ¼ Ù Ì ¼ µ ÑÓ Ì Ì ¼ Ú Ì µ ÑÓ Ì Ì ¼ µ ÑÓ Ì ¾ Assuming that ÌÌ ¼ is rational and that Ì Ì ¼ µ, let be the set of reals of the form Ñ Ì ¼ µ ÑÓ Ì for Ñ ¾ Æ: Ñ ¾ Æ Ñ Ì ¼ µ ÑÓ Ì By Lemma 8, this set can equivalently be defined by ¼ Ì and ¾ is then a nonempty finite set and its smallest element is ¼ ÑÓ This leads to the following proposition Proposition 9 Assume ÌÌ ¼ is rational and let Ì Ì ¼ µ; then Irrational Case Ñ ¾ Æ Ñ Ì ¼ µ ÑÓ Ì µ µ ÑÓ In case ÌÌ ¼ is irrational then Ñ Ì ¼ µ ÑÓ Ì can be arbitrarily small To show this, we first refine Lemma 7 as follows Lemma 10 If ÌÌ ¼ is irrational then for any positive real, the two following properties are satisfied: ¾ ¾ ¼ and ¼ Ì Ì ¼ ¾ ¾ ¼ and ¼ Ì Ì ¼ 8

Proof: Let «ÑÒ Ì ¼ µ By Lemma 7, there are two integers and such that ¼ Ì Ì ¼ «Let Ü Ì Ì ¼, Ì ¼ Ü, and Ý Ì ¼ ÑÓÜ Since ¼ Ü «Ì ¼, we have ½ By definition of mod, we have ¼ Ý Ü and since ÌÌ ¼ is not rational, Ý ¼ Furthermore, Ý Ì ¼ Ü, so we obtain It is easy to see that and ½ ¼ Ì Ì ¼ and ¼ Ì ½ µ Ì ¼ cannot be both positive or both negative ¾ Proposition 11 If ÌÌ ¼ is irrational then for any positive real, there is Ñ ¾ Æ such that Ñ Ì ¼ µ ÑÓ Ì Proof: If Ì, the inequality is trivially true for any Ñ, so we can assume Ì Our objective is to obtain a real Ý of the form Ì Ñ Ì ¼ with Ñ ¾ Æ and such that Ý For such a Ý, we get ¼ Ñ Ì ¼ Ì Since Ì this implies that Ñ Ì ¼ µì and then that Ñ Ì ¼ µ ÑÓ Ì To obtain appropriate Ý and Ñ, we consider the two following cases: ¼ By the preceding lemma, there are ¾ and ¾ such that ¼ and ¼ Ì Ì ¼ ¼ By the preceding lemma, there are ¾ and ¾ such that ¼ and ¼ Ì Ì ¼ In both cases, let Ü Ì Ì ¼, Ü ½, and Ý Ü This implies Ý and Ý Ì Ì ¼, so we can take Ñ In the first case, ½ and ¼, and, in the second case, ¼ and ¼ so we have Ñ ¼ in both cases as required ¾ Main Theorem The following theorem gives a necessary and sufficient condition for two scan patterns to be compatible The theorem is an immediate consequence of the preceding propositions Theorem 12 Let Ì µ and ¼ ¼ ¼ Ì ¼ µ be two scan patterns and ¼ are compatible if and only if ÌÌ ¼ is rational and the two following conditions are satisfied: ¼ µ ÑÓ ¼ µ ÑÓ ¼ where is the greatest common divisor of Ì and Ì ¼ In the remainder of this section, we assume that ÌÌ ¼ is a rational number and that Ì Ì ¼ µ Assume and ¼ are compatible Using the theorem, we get ¼ µ ÑÓ ¼ µ ÑÓ ¼ 9

For any real Ü that is not a multiple of we have Ü ÑÓ Üµ ÑÓ so the preceding inequality gives ¼ property We have proved the following important Proposition 13 If Ì µ and ¼ ¼ ¼ Ì ¼ µ are compatible then As a consequence, we have and since Ì and Ì ¼, ¼ ¼ ½ Ì ¼ Ì ¼ ½ This confirms a result we already established For two scan patterns to be compatible, their resource utilization must be no more than 1 Proposition 13 shows that the condition ¼ is necessary for two compatible patterns Ì µ and ¼ ¼ ¼ Ì ¼ µ to exist The condition is actually sufficient Proposition 14 Let, ¼, Ì, and Ì ¼ be such that ¼ Ì and ¼ ¼ Ì ¼ There exist and ¼ such that ¼ Ì, ¼ ¼ Ì ¼ ¼, and the patterns Ì µ and ¼ ¼ ¼ Ì ¼ µ are compatible if and only if ¼ Proof: We have already shown that the condition was necessary Now assume ¼ and take ¼ and ¼ Since ¼, we get ¼ µ ÑÓ ÑÓ ¼ µ ÑÓ ÑÓ ¼ We have ¼ Ì ¼ ¼ since ¼ and ¼ Ì, and we also have Ì since ¼ By Theorem 12, the two patterns Ì µ and ¼ ¼ ¼ Ì ¼ µ are compatible ¾ 42 Schedule Feasibility Consider now a schedule Ë that consists of Ò patterns Ì µ for ½ Ò The schedule is feasible if all these patterns are pairwise compatible The results from the previous section settle the case Ò ¾ If Ò ¾, Ë is feasible if and only if all the following conditions are satisfied: Ì ½ Ì ¾ is rational, ¾ ½ µ ÑÓ ½, ½ ¾ µ ÑÓ ¾, 10

where Ì ½ Ì ¾ µ Furthermore, given ½, ¾, Ì ½, and Ì ¾ such that Ì ½ Ì ¾ is rational, a corresponding feasible schedule Ë exists if and only if ½ ¾ Theorem 12 and Proposition 13 immediately generalize to arbitrary Ò ¾ Theorem 15 The schedule Ë is feasible if and only if, for all and in ½ Ò such that, the two following conditions are satisfied: Ì Ì is rational µ ÑÓ Ì Ì µ Proposition 16 If the schedule Ë is feasible then for all and in ½ Ò such that, Ì Ì µ On the other hand, Proposition 14 does not generalize The conditions given by Proposition 16 are necessary but not sufficient to ensure the existence of a schedule with revisit times ½ Ò and dwell times Ì ½ Ì Ò, unless Ò ¾ To see this, consider the case where Ò, Ì ½ Ì ¾ Ì ¾, and ½ ¾ ½ Although we have ½ ¾ Ì ½ Ì ¾ µ ½ Ì ½ Ì µ ¾ Ì ¾ Ì µ there is no feasible schedule for these parameters since the total resource utilization is more than 1 Theorem 15 shows that constructing a schedule is equivalent to solving a system of inequalities Assuming all the quotient Ì Ì are rational numbers, schedule feasibility is equivalent to solving a system Ë of Ò ¾ inequalities of the following form: ½ ¾ µ ÑÓ Ì ½ Ì ¾ µ ¾ ½ Ò µ ÑÓ Ì ½ Ì Ò µ Ò ¾ ½ µ ÑÓ Ì ¾ Ì ½ µ ½ ÑÓ ¾ Ò µ Ì ¾ Ì Ò µ Ò Ò ½ µ ÑÓ Ì Ò Ì ½ µ ½ Ò Ò ½ µ ÑÓ Ì Ò Ì Ò ½ µ Ò ½ ¼ ½ Ì ½ ½ ¼ Ò Ì Ò Ò Proposition 16 and the test on resource utilization give two necessary conditions for this system to have solutions The following section gives an algorithm for constructing a feasible schedule by solving the inequalities 11

5 Algorithms We explore practical ways of constructing a feasible schedule, given parameters Ì ½ Ì Ò and ½ Ò For this purpose, we restrict our attention to the case where all the parameters are integers and we also search for integer solutions of the system of inequalities This is a reasonable restriction since the temporal quantities (ie, Ì,, ) must be multiples of a common time unit, as an implementation must rely on a base discrete clock Under these assumptions, schedule feasibility can be transformed into a linear integer programming problem that can be solved using standard algorithms [2] However, more specialized algorithms that take into account the peculiarities of the problem are likely to be more efficient in practice We present one such algorithm in Section 53 but, first, we study the theoretical complexity of the problem and we discuss techniques for reducing the size of the solution space 51 Theoretical Complexity The scan-scheduling feasibility problem can be described as follows: Each instance of the problem is given by an integer Ò ½, Ò dwell times Ì ½ Ì Ò and Ò revisit times ½ Ò All the dwell times and revisit times must be positive integers and satisfy Ì The question is to determine whether there exist Ò integers ½ Ò such that the schedule defined by the Ò patterns Ì µ is feasible We denote this problem by SCAN-SCHEDULING The two following propositions show that SCAN-SCHEDULING is NP-complete Proposition 17 SCAN-SCHEDULING belongs to NP Proof: By the preceding results, solving an instance of SCAN-SCHEDULING is equivalent to solving the system of inequalities Ë Because of the constraint ¼ Ì each variable can take a finite number of values There is then a finite number of candidate solutions A nondeterministic algorithm for SCAN-SCHEDULING need only guess Ò values ½ Ò and check whether they satisfy the system Ë This can be done in polynomial time, as there exists a polynomial-time algorithm (Euclid s algorithm [2]) for computing the required greatest common divisors ¾ Proposition 18 SCAN-SCHEDULING is NP-hard Proof: We show this by reducing PARTITION to SCAN-SCHEDULING PARTITION is defined as follows [1]: Each instance of the problem is given by a finite set and a mapping from to Æ The question is to determine whether there exists a subset ¼ of such that ܾ ¼ ܵ ܾ ¼ ܵ 12

This problem is NP-complete as shown in [1] Given an instance µ of PARTITION, an instance of SCAN-SCHEDULING can be constructed as follows: Ò ½, We choose an arbitrary value for Ò, say Ò ½, and set Ì Ò Ò È Ü¾ ܵ ¾ Let Ü ½ Ü Ò ½ be the elements of ; then for ½ Ò ½, we define and Ì by The resource utilization is maximal: Ò ½ Ü µ Ì ¾Ì Ò Ì ½ and we have Ì Ì µ Ì Ò if Ò or Ò and Ì Ì µ ¾Ì Ò otherwise If ¼ is a solution of the PARTITION instance, we have ܾ ¼ ܵ ܾ ¼ ܵ We can assume without loss of generality that ¼ Ü ½ Ü Ñ for some index Ñ Ò ½, and then Ñ ½ Ü µ By definition of Ì Ò and ½ Ò ½ this gives Ñ ½ Let ½ Ò be defined as follows: ½ ¼ Ò ½ Ñ ½ ¾ ½ ½ Ò ½ Ñ ½ Ñ Ñ ½ Ñ ½ Ñ ½ Ì Ò Ñ ¾ Ñ ½ Ñ ½ Ò ½ Ò ¾ Ò ¾ Ü µ Ì Ò Ò Ò Ñ Ñ Ì Ò Ò 13

It is routine to check that ½ Ò µ satisfies the system of inequalities for this instance of SCAN-SCHEDULING The corresponding schedule is as follows: Tn Tn τ n τ n a a a a a a a 1 2 3 m n m+1 n-1 Conversely, given a solution ½ Ò µ to the SCAN-SCHEDULING instance, we obtain a solution of the PARTITION instance by reversing the previous construction We consider the interval Ò Ò ¾Ì Ò µ Since it is of length Ì ¾Ì Ò, this interval must contain a dwell interval Ù Ù µ for all ½ Ò ½ It also contains two dwell intervals for band Ò, namely, the two intervals Ò Ò Ò µ and Ò Ì Ò Ò Ì Ò Ò µ We define the set ¼ as follows: ¼ Ü Ù Ò Ì Ò so that, ܾ ¼ ܵ ÙÒ ÌÒ Since the intervals Ù Ù µ for Ü ¾ ¼ do not overlap and are included in Ò Ò Ò Ì Ò µ, we have ܾ ¼ ܵ Ì Ò Ò (2) Similarly, ܾ ¼ ܵ By construction, we know that ܵ ܵ ܾ ¼ ܾ ¼ Using (2) and (3), we obtain then ܾ ¼ ܵ ÙÒ ÌÒ Ü¾ Ì Ò Ò (3) ܵ ¾ Ì Ò Ò µ ܾ ¼ ܵ Ì Ò Ò that is, ¼ is a solution of the original PARTITION instance We have then shown that the PARTITION instance µ has a solution if and only if the SCAN-SCHEDULING instance constructed from it has a solution Clearly, the construction can be done in polynomial time Since PARTITION is NP-complete, SCAN-SCHEDULING is NP-hard ¾ Propositions 17 and 18 imply that SCAN-SCHEDULING is NP-complete It is then likely that any schedule-construction algorithm has exponential time complexity in the worst case The following section describes an algorithm for constructing a feasible scan schedule and gives some experimental results on its average complexity 14

52 Search-Space Reduction The construction of a feasible schedule requires solving the system of inequalities Ë defined previously We are given Ò dwell times ½ Ò and Ò revisit times Ì ½ Ì Ò, and we look for Ò integers ½ Ò that satisfy the two following sets of constraints: Ë ¼ ½ ¾ µ ÑÓ ½¾ ¾ Ò Ò ½ µ ÑÓ ÒÒ ½ Ò ½ Ë ½ ¼ ½ Ì ½ ½ ¼ Ò Ì Ò Ò where Ì Ì µ Because of Ë ½ there are a priori at most Ò ½ Ì ½µ candidate solutions to examine The following results show that the solution space can often be considerably reduced Lemma 19 Let ½ Ò µ be a solution of Ë ¼ Given ¾ ½ Ò, let ¼ ½ ¼ Ò µ be defined by then ¼ ½ ¼ Ò µ is a solution of Ë ¼ µ ÑÓ Ì Proof: For every, ¼ is equal to Ù Ì, for some integer Ù We then have Since divides both Ì and Ì, this gives The tuple ¼ ½ ¼ Ò µ satisfies then Ë ¼ Let Ö and then Ö ¼ ¼ Ù Ì Ù Ì ¼ ¼ µ ÑÓ µ ÑÓ µ ÑÓ Since ½ Ò µ is a solution of Ë ¼, we have µ ÑÓ µ ÑÓ We also have Ì for some positive integer Now is equal to Õ Ö, for some Õ ¾, and Õ can be written Õ Ô 15

where ¼ ½ This gives Ô Ö ÔÌ Ö and, as a consequence, ¼ µ ÑÓ Ì Ö ½µ Ì This shows that ¼ ½ ¼ Ò µ satisfies Ë ½ ¾ This lemma says that if Ë has any solution then there exists a solution ¼ ½ ¼ Ò µ with ¼ ¼ Intuitively, this simply amounts to translating the scan schedule so that the first dwell interval for band starts at ¼ When searching for a solution to Ë, we can then pick an arbitrary variable and set it to ¼ We can also reduce the interval of possible values for For ¾ ½ Ò, let Ä be the least common multiple of the numbers ½ ½ ½ Ò Since Ì is a multiple of each of these numbers, Ì is also a multiple of Ä Lemma 20 Assuming ½ Ò µ is a solution of Ë, let ¼ ½ ¼ Ò µ be defined by then ¼ ½ ¼ Ò µ is a solution of Ë ¼ ÑÓ Ä Proof: Every ¼ is of the form Ù Ä for some integer Ù ¾ Then ¼ ¼ Ù Ä Ù Ä, and, since divides both Ä and Ä, ¼ ¼ µ ÑÓ µ ÑÓ Since ¼, ¼ ÑÓ Ä cannot be larger than, so we have Hence, ¼ ½ ¼ Ò µ is a solution of Ë ¾ ¼ ¼ Ì As a consequence of this lemma, it is sufficient to search for solutions ½ Ò µ of Ë ¼ where ¼ Ä It is also easy to see that the solution ¼ ½ ¼ Ò µ as defined in Lemma 20 is such that ¼ ¼ Ä for all This means that we can replace Ë ½ by the following inequalities: ¼ ½ Ä ½ ½ ¼ Ò Ä Ò Ò 16

Since Ä divides Ì, the upper bound on can be much smaller than Ì The size of the search space is now reduced to Ò ½ Ä ½µ It is possible to further reduce the search space using the following theorem whose proof is given in the following section Let Å ½ Å Ò be defined as follows: Every Å is then a divisor of Ä Å ½ ½ Å ¾ ½¾ Å ÐÑ ½ ¾ µ Å Ò ÐÑ ½Ò Ò ½Ò µ Theorem 21 If Ë ¼ has solutions, then Ë ¼ has a solution ½ Ò µ such that ¼ ½ Å ½ ¼ Ò Å Ò Since Å ½ ½, this solution is such that ½ ¼ and, as shown in the proof of Lemma 19, ½ Ò µ is also a solution of Ë To solve Ë, it is then sufficient to search for solutions of Ë ¼ where ½ ¼, ¾ Å ¾ Ò Å Ò Since every Å divides Ä, the search space is potentially much smaller than that given by the preceding lemma The theorem also suggests an incremental approach for constructing scan schedules We start by setting ½ to ¼ Then we look for a positive integer ¾ Å ¾ ½¾ such that or, equivalently, ½ ¾ µ ÑÓ ½¾ ¾ and ¾ ½ µ ÑÓ ½¾ ½ ¾ ½ ¾ µ ÑÓ ½¾ ½¾ ½ If such an ¾ is found, we now look for Å such that ½ µ ÑÓ ½ ½ ½ ¾ µ ÑÓ ¾ ¾ ¾ If we can find such an, we proceed incrementally with ; otherwise, we try another value for ¾ Proof of Theorem 21 Theorem 21 relies on the following variant of the Chinese Remainder Theorem Proposition 22 Let ½ and ¾ be two non-zero integers and let ½ and ¾ be two integers There exists an integer Ü such that ½ divides Ü ½ and ¾ divides Ü ¾ if and only if ½ ¾ µ divides ½ ¾ 17

Proof: If ½ divides Ü ½ and ¾ divides Ü ¾, then ½ ¾ µ divides both Ü ½ and Ü ¾, and, as a consequence, ½ ¾ µ divides Ü ¾ µ Ü ½ µ ½ ¾ Conversely, let us assume ½ ¾ µ divides ½ ¾ By definition, there are two integers Ù and Ú such that ½ ¾ µ Ù ½ Ú ¾ ; ½ ¾ can then be written ½ ¾ «Ù ½ «Ú ¾ where «¾ Let Ü ½ «Ù ½ ; then we have Ü ½ «Ù ½ Ü ¾ ½ ¾ «Ù ½ «Ú ¾ Hence, ½ divides Ü ½ and ¾ divides Ü ¾ ¾ The Chinese Remainder Theorem is a special case of the previous proposition where ½ and ¾ are mutually prime, that is, ½ ¾ µ ½ The following lemmas are used to generalize Proposition 22 to Ò numbers ½ Ò Lemma 23 Let Ü be an integer such that ½ divides Ü ½ and ¾ divides Ü ¾ For any integer Ý, the two following propositions are equivalent: ½ divides Ý ½ and ¾ divides Ý ¾ ÐÑ ½ ¾ µ divides Ý Ü Proof: If ½ divides Ý ½ and ¾ divides Ý ¾ then ½ divides Ý ½ µ Ü ½ µ Ý Ü and ¾ divides Ý ¾ µ Ü ¾ µ Ý Ü so Ý Ü is a common multiple of ½ and ¾, that is, ÐÑ ½ ¾ µ divides Ý Ü Conversely, if ÐÑ ½ ¾ µ divides Ý Ü then ½ divides Ý Ü and ¾ divides Ý Ü, so ½ divides Ý Üµ Ü ½ µ and ¾ divides Ý Üµ Ü ¾ µ, that is, ½ divides Ý ½ and ¾ divides Ý ¾ ¾ Lemma 24 For all non-zero integers Ü, Ý, and Þ, we have Ü ÐÑ Ý Þµµ ÐÑ Ü Ýµ Ü Þµµ Proof: Let Ô ½ Ô be the prime factors of Ü, Ý, and Þ «½ «, ½, and ½ such that There are natural numbers Ü Ô «½ ½ Ý Ô ½ ½ Þ Ô ½ ½ Ô«Ô Ô Let Æ ÑÒ «ÑÜ µµ and ÑÜ ÑÒ «µ ÑÒ «µµ; then Ü ÐÑ Ý Þµµ Ô Æ½ ½ ÐÑ Ü Ýµ Ü Þµµ Ô ½ ½ ÔÆ Ô It is easy to check that Æ so the left-hand sides of these two equations are equal ¾ The general form of Proposition 22 is the following 18

Proposition 25 Let ½ Ò be Ò non-zero integers and ½ Ò be Ò integers If we have µ Ú for all and such that ½ Ò, then there exists an integer Ü such that ½ Ú Ü ½ Ò Ú Ü Ò Proof: We reason by induction on Ò The proposition is trivially true if Ò ½ Now we assume the proposition true for Ò ½ Let ½ Ò ½ and ½ Ò ½ be numbers such that µ divides whenever By Proposition 22, since Ò Ò ½ µ divides Ò Ò ½, there is Ü ¼ ¾ such that Let ¼ ½ ¼ Ò and ¼ ½ ¼ Ò be defined as follows: Ò Ú Ü ¼ Ò (4) Ò ½ Ú Ü ¼ Ò ½ (5) ¼ if Ò ¼ Ò ÐÑ Ò Ò ½ µ ¼ ½ if Ò ¼ Ò Ü ¼ For two indices and such that ½ Ò, ¼ ¼ µ divides ¼ ¼ by assumption For Ò and Ò, Lemma 24 gives ¼ ¼ µ ÐÑ Ò Ò ½ µµ ÐÑ Ò µ Ò ½ µµ By assumption, Ò µ divides Ò By (4), and since Ò µ is a divisor of Ò, Ò µ also divides Ü ¼ Ò It follows that Ò µ divides Ü ¼ ¼ ¼ Ò Using (5), we get by a similar reasoning that Ò ½ µ divides ¼ ¼ Ò Hence, ¼ ¼ Ò is a common multiple of Ò µ and Ò ½ µ so ¼ ¼ Ò µ Ú ¼ ¼ Ò We can then use the induction hypothesis with ¼ ½ ¼ Ò and ¼ ½ ¼ Ò : there is an integer Ü such that ¼ ½ Ú Ü ¼ ½ ¼ Ò Ú Ü ¼ Ò 19

Then ¼ Ò ÐÑ Ò Ò ½ µ divides Ü Ü ¼ By Lemma 23, this implies that Ò divides Ü Ò and Ò ½ divides Ü Ò ½ We have then found an integer Ü such that ½ Ú Ü ½ Ò Ú Ü Ò Ò ½ Ú Ü Ò ½ The proposition is then satisfied for Ò ½ By induction it is true for arbitrary Ò ¾ Let Ì ½ Ì Ò be Ò positive integers and let Ì Ì µ To prove Theorem 21, we show that for any tuple of integers ½ Ò µ, there exists a tuple ¼ ½ ¼ Ò µ such that ¼ ¼ ½ Å ½ ¼ ¼ Ò Å Ò and Ú ¼ µ ¼ µ for all ¾ ½ Ò and ¾ ½ Ò The construction is incremental Given an index such that ½ Ò numbers ¼ ½ ¼ µ that satisfy ½ and ¼ ¼ ½ Å ½ ¼ ¼ Å and Ú ¼ µ ¼ µ (6) for all ¾ ½ and ¾ ½ such that ¼ ¼ ½ Å ½ and, we show that there exists an integer ¼ ½ ½ ½ Ú ¼ ½ ½ µ ¼ ½ ½ µ ½ Ú ¼ ½ ½ µ ¼ µ First, given ¾ ½ and ¾ ½ such that, we have ½ ½ µ Ì Ì ½ µ Ì Ì ½ µµ Ì Ì Ì ½ µ Ì ½ µ 20

By (6), this implies that ½ ½ µ divides ¼ µ ¼ µ Using Proposition 25, there is then an integer Ü such that ½ ½ Ú Ü ¼ ½ ½ µ ½ Ú Ü ¼ µ Let ¼ ½ ½ ܵ ÑÓ Å ½ We have ¼ ¼ ½ Å ½ and Å ½ divides ¼ ½ ½ Ü By definition, so we have We then obtain Å ½ ÐÑ ½ ½ ½ µ ½ ½ Ú ¼ ½ ½µ Ü ½ Ú ¼ ½ ½ µ Ü ½ ½ Ú ¼ ½ ½µ ¼ ½ ½µ ½ Ú ¼ ½ ½µ ¼ µ as required Starting with ¼ ½ ¼ and iterating this construction for ½ Ò tuple ¼ ½ ¼ Ò µ such that ½, we obtain a Ú ¼ µ ¼ µ whenever ½ Ò Given two such indices and, we get that which is equivalent to Ú ¼ ¼ µ µ ¼ ¼ µ ÑÓ µ ÑÓ Hence, if ½ Ò µ is a solution of the system Ë ¼ of inequalities, ¼ ½ ¼ Ò µ is another solution of Ë ¼ and, by construction, it satisfies This completes the proof of Theorem 21 ¼ ¼ ½ Å ½ ¼ ¼ Ò Å Ò 21

53 Schedule Construction Algorithm To perform some experiments, we developed a schedule construction algorithm based on Theorem 21 The algorithm is based on a depth-first search with backtracking A tuple ½ µ is a partial solution of Ë ¼ if the constraints µ ÑÓ are satisfied for all ¾ ½ and ¾ ½ The algorithm attempts to extend such a partial solution by finding a value ½ such that ½ ½ ½ µ ÑÓ ½ ½ ½ ½ ½ ½ ½ µ ÑÓ ½ ½ If such an ½ can be found, then ½ ½ µ is a partial solution of Ë ¼ The algorithm then attempts to extend it incrementally until a full solution ½ Ò µ is obtained If no such ½ can be found, the algorithm backtracks and looks for another partial solution ¼ ½ ¼ µ The algorithm terminates either when a full solution is reached or when all partial solutions have been tried and eliminated As shown by Theorem 21, the search can be limited to ½ Ò such that ¼ Å Pseudo code is given in Figure 2 that describes the recursive search procedure used by the algorithm Given a number and a partial solution ½ µ, the procedure Search(k, a) either returns a full solution that extends ½ µ or nil if no such solution can found It uses an auxiliary function Consistent(a, x) that tests whether ½ ܵ is a partial solution, that is, whether Ü satisfies the constraints ½ ܵ ÑÓ ½ ½ The search is initiated by calling Search(0,[]) Our actual implementation is based on this simple algorithm but uses a more sophisticated approach to detect early that a partial solution ½ µ cannot be extended For this purpose, we associate domains ½ Ò with the remaining variables ½ Ò Each is the set of values for that are consistent with ½ µ: Ü ¼ Ü Å and ܵ ÑÓ If is empty then ½ µ cannot be extended to a full solution In addition, we use a heuristic based on the size of the domains ½ Ò to order the search Initial experiments show that random instances of the scan-scheduling problem are very likely to violate the necessary conditions of the form Ì Ì µ For Ò randomly chosen revisit times, it is very likely that at least one of Ì Ì µ is very small To obtain random instances that do not violate these conditions, we use the following approach First we choose a base number Ì and two integers ¼ and ½ such that ¼ ½ Then we construct randomly Ò revisit times Ì that are all multiples of Ì, and all between 22

// The problem is stored in two global arrays // T[1],,T[n]: revisit times // t[1],,t[n]: dwell times Search(k, a): if k=n return a // a full solution has been found else found := false x := 0 while (not found and x<m[k]) if (Consistent(a, x)) b := Search(k+1, add(a, x)) found := b!= nil endif x := x + 1 endwhile if found return b else return nil endif endif Figure 2: Schedule Construction Algorithm Ì ÑÒ ¼ Ì and Ì ÑÜ ½ Ì For any two such Ì and Ì, Ì Ì µ is then a multiple of the base number Ì We then select a maximal dwell time ÑÜ no larger than ̾ and generate randomly Ò dwell times ½ Ò in the range ½ ÑÜ This ensures that Ì and then the necessary conditions are satisfied By choosing appropriate values of Ì, ¼, ½, ÑÜ, and Ò, we can control the average utilization of randomly generated instances Initial experiments show that the practical performance of the search algorithm and the likelihood of an instance being feasible are strongly related to the utilization Table 1 summarizes some of our first experiments with Ì ½¼¼, Ì ÑÒ ½¼¼¼, and Ì ÑÜ ½¼¼ Each row of the table corresponds to a different choice of ÑÜ, and then a different average utilization Í In each case, we generated 100 random instances consisting of ¼ revisit times and ¼ dwell times, and ran the algorithm on each of these instances with a timeout of 60 s (CPU time) The experiments were performed on a PC with a 550 MHz Pentium III, running Linux 225-15 The last column of Table 1 shows the average search time for the instances that did not cause a timeout 6 Conclusion Determining whether a set of Ò dwell times and a set of Ò revisit times are compatible is a central issue in periodic scan scheduling We have given a mathematical characterization of schedule feasibility as a set of linear inequalities The problem can be solved algorithmically but is NP-complete We proposed an algorithm that searches for a solution in a depth-first manner and defined several simplifications that reduce the search space Initial (and par- 23

ÑÜ U Feasible Infeasible Timeout CPU time 49 100 0 100 0 005s 44 090 0 100 0 019s 39 080 0 100 0 035s 34 070 0 98 2 303s 29 060 5 63 32 1813s 24 050 60 0 40 154s 19 040 86 0 14 034s 14 030 93 0 7 013s 9 020 100 0 0 018s 4 010 100 0 0 033s Table 1: Algorithm Performance tial) experiment showed that high sensor utilization is hard to reach for randomly generated instances Open issues include a more careful study of the achievable utilization for a given set of Ò revisit times It can be shown that a utilization of ½ can be obtained under certain conditions on the revisit times, for example, if the revisit times are harmonic One such example is used in the proof of Proposition 18 In general, studying instances of the problem with a special structure that make them easier to solve or that ensures some other desirable property remains unexplored References [1] M Garey and D Johnson Computers and Intractability: A Guide to the Theory of NP-Completeness WH Freeman and Company, 1979 [2] A Schrijver Theory of Linear and Integer Programming John Wiley & Sons, 1989 24