• No results found

Comparing Distributed Backtracking and Distributed Local Search

Whilst DisBOBT [22] is described with agents having more than one variable, only one variable per agent is processed at a time and consequently the algorithm is not specifi- cally designed to handle the extra information available within complex local problems. DCDCOP [50] is a very recent approach to solving distributed constraint optimization problems. This algorithm computes local optimal solutions through branch and bound whilst determining the global optimal solution through the combined optimality of the agents including their inter-agent constraint. It is shown to outperform ADOPT, a lead- ing distributed constraint optimisation algorithm3.

4.4

Comparing Distributed Backtracking and Distributed

Local Search

We evaluated one of the best synchronous distributed systematic search algorithms (SynCBJ) against one of the best synchronous distributed local search algorithms (Stoch- DisPeL). We were interested to see where their particular strengths and weaknesses lie within three problem classes: randomly generated problems, graph colouring problems and meeting scheduling problems. We also wanted to consider whether a combination of systematic or local search may be more beneficial when both algorithms do not perform well. In [102] SynCBJ was shown to outperform synchronous backtracking and asyn- chronous search on particular types of problems [12]. Stoch-DisPeL has been shown to outperform other distributed local search algorithms in [8]. Our implementations were verified for SynCBJ with the distributed randomly generated problems described in [102] (n = 10, d = 10, p1 = 0.7 and p2 ∈ {0.1, ..., 0.9}) and for Stoch-DisPeL with the dis- tributed randomly generated problems in [8]. The results were at least as good as those reported by the authors.

3

A personal communication with this author has shown this version of ADOPT to be the original version of ADOPT and not the current leading variant of ADOPT. As a result, some of the conclusions of the paper may differ on the current leading variant of ADOPT.

Randomly Generated Problems

We compared the performance of systematic search (SynCBJ [102]) against local search (Stoch-DisPeL [8]) on solvable random DisCSPs with 30 to 60 variables (n), 30 to 60 agents, 10 variable values (d), 0.15 constraint density (p1) and constraint tightness (p2) between 0.1 and 0.9 in steps of 0.1. The median number of messages over 100 runs for 50 variables are shown in figure 4.2 and for 60 variables in figure 4.3. For constraint checks, results for 50 variables are shown in figure 4.4 and for 60 variables in figure 4.5. Note that at a constraint tightness of 0.4, Stoch-DisPeL was only able to solve 97% of problems and the effort wasted for the 3% of problems that were not solved is not included in the results.

Figure 4.2: Messages for < n = 50, d = 10, p1 = 0.15, p2 ∈ 0.1, 0.2, ..., 0.9 >

Figure 4.3: Messages for < n = 60, d = 10, p1 = 0.15, p2 ∈ 0.1, 0.2, ..., 0.9 >

The phase transition point (marking the boundary where very difficult problems exist) occurs close to a constraint tightness of 0.4. For 30 and 40 variables (not shown

4.4. Comparing Distributed Backtracking and Distributed Local Search 40

Figure 4.4: Constraint checks for < n = 50, d = 10, p1 = 0.15, p2 ∈ 0.1, 0.2, ..., 0.9 >

here), SynCBJ was substantially better. For 50 variables, SynCBJ is almost always better for both messages and constraint checks (with the exception of messages at the phase transition point) than Stoch-DisPeL because these are easier problems. The difference is a minimum of 650 messages and 5000 constraint checks but often higher. For larger problems with 60 variables, at the phase transition point, SynCBJ uses a very large number of messages and constraint checks. Whilst Stoch-DisPeL uses fewer messages and constraint checks, it is not able to solve all problems since it is an incomplete algorithm. For all other constraint tightness values, both algorithms perform similarly although SynCBJ is always able to solve problems with fewer messages and constraint checks than Stoch-DisPeL.

We also conducted experiments with SynCBJ and Stoch-DisPeL for 70 or more vari- ables. For these problems, SynCBJ was unable to solve all problems within a practical time limit of 24 hours.

Consequently, we conjecture that for random DisCSPs at the phase transition point and particularly for problems with larger number of variables, hybrid algorithms combin- ing local search and backtracking could be beneficial in terms of obtaining completeness with fewer messages and constraint checks than systematic search. Outside of the phase transition point, SynCBJ would appear to perform well.

Graph Colouring Problems

We conducted an experiment to compare the performance of systematic search (SynCBJ) and local search (Stoch-DisPeL) on solvable graph colouring DisCSPs with 125 to 200 nodes (n), 125 to 200 agents, 3 colours (c) and degree (d) between 4.3 and 5.6. For 125 and 150 nodes, SynCBJ was the better performing algorithm. The median results over 100 runs are shown for messages with 175 variables in figure 4.6, for messages with 200 variables in figure 4.7, for constraint checks with 175 variables in figure 4.8 and for constraint checks with 200 variables in figure 4.9.

With graph colouring DisCSPs, the phase transition point is less defined than for randomly generated DisCSPs. The peak point occurs at a degree of 4.9 but it is only slightly higher than degrees of 4.8 and 5.0. For graph colouring DisCSPs, Stoch-DisPeL is

4.4. Comparing Distributed Backtracking and Distributed Local Search 42

Figure 4.6: Messages for < n = 175, c = 3, d ∈ 4.3, 4.4, ..., 5.6 >

Figure 4.8: Constraint Checks for < n = 175, c = 3, d ∈ 4.3, 4.4, ..., 5.6 >

4.4. Comparing Distributed Backtracking and Distributed Local Search 44 competitive for degrees between 5.1 and 5.5. However, the cost of solving the problem is high for both algorithms particularly from a degree of 4.7 onwards. It would appear that for graph colouring problems, local search cannot easily offset systematic search when the later performs badly. Consequently, we included graph colouring problems in our evaluation to determine if hybrid algorithms combining systematic search and local search can improve performance.

Meeting Scheduling Problems

We conducted an experiment comparing systematic search and local search on solvable meeting scheduling problems with 30 to 60 meetings (m), 30 to 60 agents, maximum possible distance (md) of 3 and constraint density (d) between 0.1 and 0.25. For 30 and 40 variables, SynCBJ was the better performing algorithm. The median results over 100 runs for messages are shown in figure 4.10 for 50 variables and figure 4.11 for 60 variables and for constraint checks for 50 variables in figure 4.12 and for 60 variables in figure 4.13.

Figure 4.10: Messages for < m = 50, md = 3, d ∈ 0.1, 0.11, ..., 0.25 >

Stoch-DisPeL outperforms SynCBJ for meeting scheduling DisCSPs for both messages and constraint checks. However, with the exception of a density of 0.18, Stoch-DisPeL did not solve all problems with a density between 0.1 and 0.19. Therefore, whilst Stoch- DisPeL can improve performance, the algorithm is not suitable when a solution is required and not just an approximation. Consequently, there is a need for hybrid algorithms to guarantee completeness for meeting scheduling DisCSPs whilst also improving performance over systematic search.

Figure 4.11: Messages for < m = 60, md = 3, d ∈ 0.1, 0.11, ..., 0.25 >

Figure 4.12: Constraint Checks for < m = 50, md = 3, d ∈ 0.1, 0.11, ..., 0.25 >

4.5. Summary 46 This short experimental study did not consider unsolvable problems. For these prob- lems, hybrid algorithms would be an important contribution since systematic search algo- rithms still offer poor performance at the phase transition point and local search algorithms cannot detect unsolvability.

4.5

Summary

In this chapter, we have introduced Distributed Constraint Satisfaction problems (DisC- SPs). We have shown two formalisations of Distributed Constraint Satisfaction: (i) DisC- SPs with only one variable per agent; (ii) DisCSPs with complex local problems (multiple variables per agent). We have described backtracking and local search algorithms for solving both formalisations and discussed the lack of hybrid approaches particularly for DisCSPs with complex local problems. An experimental study has shown that systematic search has weaknesses around the phase transition points for these problems and partic- ularly for larger numbers of variables and that local search does not offer completeness for all problems in these cases. Therefore, in the following chapters, we present hybrid algorithms combining systematic and local search to guarantee completeness in a practical timeframe for these problems.

Using Knowledge from Local

Search to guide Systematic Search

5.1

Introduction

In the previous chapter, we saw that there are problems associated with backtracking and local search algorithms. In this chapter, a new approach to Distributed Constraint Satisfaction entitled DisHyb is proposed which combines local search with systematic search in order to speed-up the latter. In DisBOBT (see section 4.2.5), it was shown that local search could improve the ordering of backtracking search for those problems which local search could not solve itself. In the DisHyb approach, we seek to collect information during a frequently short execution of local search. This information is used as a heuristic to guide systematic search.

A diagram of the approach is shown in figure 5.1. The approach has two phases. In the first phase, a distributed local search algorithm is run. This algorithm gathers knowledge about difficult variables and values. In the second phase of the algorithm, a distributed systematic search algorithm is run with the agents reordered. The agents are reordered according to the knowledge about difficult variables and values which distributed local search gathered. The distributed local search in phase 1 can be seen as a pre-processing ordering heuristic for the distributed systematic search. However, distributed local search

5.1. Introduction 48 remains potentially capable of solving the problem in the phase 1 and so phase 2 may not be required.

The novel aspect of this approach is the use of information from distributed local search to distributed systematic search. Consequently, whilst existing distributed local and systematic search algorithms are reused, a novel interface is used to connect them.

In this approach, a trade-off exists between the cost of local search and the benefit of the knowledge gained. In order to gain optimal performance, distributed local search must be run for a long enough period to learn very good knowledge, but not too long in order to incur too high costs. An analysis of this trade-off is presented later in this chapter.

Figure 5.1: The DisHyb approach.

We present two implementations of our approach, PenDHyb and DBHyb which differ in the local search strategy used. An overview of the approach and algorithms presented in this chapter is shown in table 5.1.

Approach Algorithm Local Search Strategy DisHyb PenDHyb Penalties on values DisHyb DBHyb Constraint weights (‘Breakout’)

Table 5.1: Chapter Overview.

colouring and meeting scheduling DisCSPs.