+ All Categories
Home > Documents > Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D....

Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D....

Date post: 13-Dec-2015
Category:
Upload: joy-pierce
View: 213 times
Download: 0 times
Share this document with a friend
Popular Tags:
22
Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer- Heidelberg (2010). ~ Presented by: Michael Gould CS 275 December 7, 2010
Transcript
Page 1: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Schreiber, Yevgeny.Value-Ordering Heuristics: Search

Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444.

Springer- Heidelberg (2010).

~ Presented by: Michael Gould

CS 275

December 7, 2010

Page 2: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Introduction

Problem: Given a CSP, generate a large number of diverse solutions as fast as possible.

Trade-off: Solution search performance (time) vs. the diversity of the generated solutions.

Tool: Use value-ordering heuristics to help solve problem.

Page 3: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

General Solution Search Method

Input: A CSP (X, D, C) a) Repeatedly select an unassigned variable x. b) Try to assign to x one of the remaining values

in its domain. c) Propagate every constraint c that involves x by

removing the conflicting values in the domains of other unassigned variables.

d) Backtrack if necessary.

Page 4: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Value-Ordering Heuristics

A value-ordering heuristic determines which value is selected by the backtracking search algorithm for a given unassigned variable.

Ex. Survivors-first heuristics use simple statistics accumulated during the search to select the value that has been involved in the least number of conflicts.

Page 5: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Solution Diversity

Solution Diversity: Requirement that the multiple solutions we find be as “different” from each other as possible.

Solution Diversity is different from solution distribution.

Consider a solution space composed of a small subset S1

of solutions where each variable is assigned a different value

and a much larger set of solutions S2 so that only a single

variable is assigned a different value in each solution.

Page 6: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Solution Diversity (continued) There is a trade-off between the search

performance and the solution diversity. The MAXDIVERSEkSET problem is to

compute k maximally diverse solutions of a given CSP.

One measure of the distance between a pair of solutions is Hamming Distance:

Given solution s = <s1,...,sn> and solution s' = <s1',...,sn'> we define Hi(s,s') = 1 if si ≠ si' and 0 otherwise for 1≤i≤n. The Hamming distance is the sum of all Hi values.

Page 7: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Automatic Test Generation Problem (ATGP)

A real-world example of a CSP where solution diversity is important.

The problem is to generate automatically a valid test for a given hardware specification which is a sequence of a large number of instructions.

These instructions must be diverse in order to trigger as many as possible different hardware events.

Time is important: thousands of tests have to be generated even for a small subset of a modern hardware specification

We consider the overall quality of the whole test-base: size and diversity of tests.

Page 8: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

The RANDOM Heuristic

Simply select a uniformly random value from the domain of a variable.

Often achieves relatively high solution diversity and performs relatively fast. Reason: in these problems there is a relatively large number of values in every domain whose selection does not lead to a conflict.

Procedure itself of randomly selecting a value is very fast.

Page 9: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

(1) The LeastFails Heuristic

Page 10: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

(2) BestSuccessRatio Heuristic

Page 11: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

(3) & (4) Probabilistic Versions

Page 12: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Heuristics (5) and (6)

Page 13: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Initial Ordering of Values No information is available at the beginning of the search for a

first solution. Thus, all the values in each domain are initially unordered.

The heuristics can only order values that have already been attempted to be assigned to variables in the past. It must be decided what probability should be used for the values whose order cannot be determined.

We define the conservativeness of a heuristic. The more conservative a heuristic is, the lower the probability to select an unordered value. We can define the conservativeness C(H) of a heuristic H separately for each variable whose domain contains at least one unordered value.

Low C(H) value → initially random behavior but prevents situations where many unordered values are never selected.

Page 14: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Heuristic Parameters

α : Controls the conservativeness of a heuristic. Represents an “initial score” of an unordered value u.

β : Used in the probabilistic heuristics to control the aggressiveness of the heuristic (the distribution of probabilities).

γ : A tie-range parameter used to smooth differences between “sufficiently close” values for the heuristics LeastFails and BestSuccessRatio.

Page 15: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Experiments (1) Randomly generated problems.<a,b, c, d>: a = number of variables, b = domain size of each variable, c

= number of binary constraints, d = number of incompatible value pairs in each constraint.

Tested <50, 10, 225, 35> and <50, 10, 225, 37> with 30 problems in each set. Looked for 30 solutions for each problem, and solved using the variable-ordering that picked the variable with the minimal domain.

(2) ATGP problems.Thousands of variables and constraints that model Intel 64 and

IA-32 processor architecture.

<n, m>: n = # of problems in set, m = avg. # of instructions required to generate for each problem.

Tested <15,21> and <26, 7>.

Page 16: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Results

Results summarized in tables. Table entries:

<A, B, C, D, E>

A: the acronym of the heuristic.

B: the value of α used as the “initial score” of an unordered value.

C: the value of either β or γ.

D: ratio of the avg. time for the heuristic to find a single solution over time required for the random heuristic.

E: ratio of avg. Hamming distance between solutions found by the heuristic over distance achieved by random.

Page 17: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-
Page 18: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-
Page 19: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-
Page 20: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Analysis

Entries in table sorted by D/E. Lower the ratio → better the performance/quality. Heuristic considered better than RANDOM if D <= E.

Hard to achieve better solution diversity than RANDOM. Only a few entries have E > 1.

Many heuristic configurations run much faster than RANDOM. (e.g. LeastFails can run 10 to 20 times faster).

Very high speedup → significant loss of solution diversity.

Some good heuristic configurations that achieve significant speedup and hardly any loss of solution diversity at top of tables.

Page 21: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Analysis (continued)

LeastFails and BestSuccessRatio: Usually achieve very high speed-up, but often accompanied by a significant loss of solution diversity. In randomly generated problems, loss of solution diversity was lower than speed-up gain.

ProbMostFails and ProbWorstSuccessRatio: Usually do not achieve a better solution diversity than Random, but can be much slower.

ProbLeastFails and ProbBestSuccessRation: Often achieve a moderate speed-up without sacrificing much solution diversity.

Page 22: Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp. 429-444. Springer-

Questions Do the experimental results hold for larger

problems (hundreds of variables, larger domain sizes)?

Do the experimental results hold for other real-world CSP problems?

Do other variable orderings achieve better performance?

Can we combine value-ordering heuristics with inference methods such as search look-ahead or arc-consistency or is the overhead too high?

Is there a consensus on which value-ordering heuristic is the best?


Recommended