max clique problem - computer scienceark/fall2014/654/team/8/presentation2.pdf · move m1: select...
TRANSCRIPT
MAX CLIQUE PROBLEM
PARAROARS
Yogesh Jagadeesan
Dler Ahmad
AGENDA
v Overview of max clique problem
v Research paper 1
v Research paper 2
v Research paper 3
v Solution design
CLIQUE
v A sub-graph in the graph that is complete. i.e. all its vertices are
connected to each other.
3
21
4
MAXIMUM CLIQUE
v Maximum clique is the largest possible clique in the graph
3
21
4 6
5
RESEARCH PAPER 1
Solving the Maximum Clique Problem by k-opt Local Search
v Authors: Kengo Katayama , Akihiro Hamamoto , Hiroyuki
Narihisa
v Proceedings of the 2004 ACM symposium on Applied computing,
March 14-17, 2004, Page Numbers – 1021-1025.
PROBLEM
v Local search solution may not be optimal 1
32
54
6
Clique size= 3
PROBLEM
v Local search solution may not be optimal
1
32
54
6
Clique size= 4
SOLUTION
v The k-opt uses a vertex dropping mechanism to enlarge the clique
v Dropping occurs when no more adding is possible
v K-opt keeps updating the vertex set of one edge missing OM
v At each dropping step, a vertex which is most missed in OM is
dropped
SOLUTION
1
32
54
6
Vertex 2 is dropped Vertex 4 is added Clique size= 3 PA={} OM={5,6}
1
32
54
6
Clique size= 3 PA={} OM={4}
SOLUTION
1
32
54
6
Vertex 6 is added No possible drop Clique size= 4 PA={} OM={}
1
32
54
6
Vertex 1 is dropped Vertex 5 is added Clique size= 3 PA={6} OM={1}
USE
v The vertex dropping mechanism can be used in our project to
expand the possible neighbors to add to our current clique.
v If a vertex is missing one edge but it has higher degree, it will be
added to our clique and the disconnected vertex is dropped.
RESEARCH PAPER 2
Iterated k-opt local search for the maximum clique problem
v Authors: Kengo Katayama , Masashi Sadamatsu , Hiroyuki
Narihisa
v Proceedings of the 7th European conference on Evolutionary
computation in combinatorial optimization, p.84-95, April 11-13,
2007, Valencia, Spain
PROBLEM
v Local search solution found by k-opt solution may also not be
optimal sometimes
1
32
54
6
Clique size= 4 10
7
9
8
PROBLEM
v Local search solution found by k-opt solution may also not be
optimal sometimes
1
32
54
6
Clique size= 5 10
7
9
8
SOLUTION
v Iterated k-opt local search (IKLS) tries to enlarge the found clique
running k-opt local search (KLS) multiple time
v After each KLS, some vertices in found clique are dropped and added
using KICK technique and KLS is run again.
v KICK will add vertex V with low-connectivity to the current clique
and drop vertices in the clique that are not connected to the V
v Finally, if the desired sized clique is not found, IKLS will restart.
SOLUTION
1
32
54
6
-BEST-CLIQUE=(3,4,5,6) -Vertices 7,8,9,10 are low-connectivity vertices -The clique needs to be KIKed -Since all vertices 7,8,9,10 are equal in connectivity (=1) one of them is picked randomly
10
7
9
8
SOLUTION
1
32
54
6
-Vertex 7 is picked randomly -Vertices 3,4,5 (since they are not connected to 7) are dropped 10
7
9
8
SOLUTION
1
32
54
6
-KLS is run with initial clique of 6 and 7 -Larger clique is found -BEST-CLIQUE=(6,7,8,9,10) 10
7
9
8
USE
v The idea of random restart is applied at every core that is
attempting to find BEST-CLIQUE.
v At each stage of the reduction mechanism, if a clique better than
BEST-CLIQUE is found, BEST-CLIQUE will be over written.
RESEARCH PAPER 3
A study of adaptive perturbation strategy for iterated local search - Authors: Una Benlic and Jin Kao Hao - EvoCOP'13 Proceedings of the 13th European conference
on Evolutionary Computation in Combinatorial Optimization
- Pages 61-72
SOME TERMS
v Intensified search: Exploring a capable search area depth wise to find a local optimum. v Diversified search: Ability to figure out potential new search areas that could lead to a better local optimum or maybe even a global optimum.
v Perturbation Moves: The kind of move(s) that would get the search out of a current search space and redirect it to a potentially new search space.
v Tabu List: The list of prohibited moves within search spaces.
PROBLEM
v Heuristic approaches to solving Max-Clique problem can lead to less than optimal solutions.
v Too much focus on search intensification can lead to getting stuck at a local optimum.
v Too much diversification may not explore a potential search deep enough to find a possible global optimum.
v A kind of balance is required between intensified and diversified searches for greater chances of discovering a global optimal solution.
GENERAL SOLUTION
v Directed Perturbation: Based on the Tabu list. Ensure that the successive moves are focused towards reaching a local optimum and also guarantee that the quality of the solution is not deteriorated. Analogous to intensified search.
v Random Perturbation: Perform randomly selected moves in attempts to diversify search space. Akin to diversified search.
v To achieve balance between directed an random perturbation, probabilistically apply directed and random perturbations.
…CONTD
v Introduce the number ω that keeps track of the number of non-improving neighbors visited. v For smaller values of ω, apply directed perturbation more often.
v As ω increases, progressively reduce the directed perturbation moves and increase the number of random perturbation moves.
APPLICATION TO MAX-CLIQUE
v Uses three sets of vertices and four possible moves. v Set PA: consists of all vertices that are not in the current clique but and connected to all vertices in the current clique.
v Set OM: Consists of vertex pairs (u, v) such that u is in clique and v is not and v is connected to all vertices in clique except u.
v Set OC: Consists of vertices that are not in clique.
. .CONTD v Move M1: Select vertex from PA and add it to current clique. v Move M2: Select (u,v ) from OM. Add v to clique and remove u from clique. v Move M3: Remove a vertex v from C. This is also placed in the Tabu list. v Move M4: Add a vertex v from set OC to current clique and repair it if it doesn’t form a clique. v Directed perturbation: Applies a move from M1 U M2 U M3 v Random perturbation: Applies a move from M4. v Introduction and monitoring of parameter α(0 <α<1) to probabilistically apply directed and random perturbation moves described above to improve max clique results.
USE
v Vertices from sets PA and OM would be the list of neighbors from which the best(one with max degree) is chosen to expand the clique.
v A random restart from a different edge is done at every core which aims at diversifying the search space and finding better cliques.
SOLUTION DESIGN
THANK YOU