Memetic search for the max-bisection problem

Size: px
Start display at page:

Download "Memetic search for the max-bisection problem"

Transcription

1 Memetic search for the max-isection prolem Qinghua Wu and Jin-Kao Hao LERIA, Université d Angers Boulevard Lavoisier, Angers Cedex 0, France Computers and Operations Research 40(): 66-79, 03 DOI: Astract Given an undirected graph G = (V,E) with weights on the edges, the maxisection prolem (MBP) is to find a partition of the vertex set V into two susets V and V of equal cardinality such that the sum of the weights of the edges crossing V and V is maximized. Relaxing the equal cardinality constraint leads to the maxcut prolem (MCP). In this work, we present a memetic algorithm for MBP which integrates a grouping crossover operator and a tau search optimization procedure. The proposed crossover operator preserves the largest common vertex groupings with respect to the parent solutions while controlling the distance etween the offspring solution and its parents. Extensive experimental studies on 7 well-known G-set enchmark instances demonstrate that our memetic algorithm improves, in many cases, the current est known solutions for oth MBP and MCP. Keywords: Max-isection, max-cut, memetic search, evolutionary computing, tau search, optimization. Introduction Let G = (V,E) e an undirected graph with vertex set V = {,...,n} and edge set E V V, each edge {i,j} E eing associated with a weight w ij Z. The well-known max-cut prolem (MCP) is to partition the vertex set V into two disjoint susets V V and V = V \V such that the sum of the weights Corresponding author. addresses: wu@info.univ-angers.fr (Qinghua Wu), hao@info.univ-angers.fr (Jin-Kao Hao). Preprint sumitted to Elsevier

2 of the edges from E that have one endpoint in each suset is maximized, i.e., max i V,j V w ij.mcpisoneofthefirstnp-completeprolemsstudiedin []. When the two susets V and V are required to have the same cardinality (assuming that n is even), the max-cut prolem ecomes the max-isection prolem (MBP) which remains NP-complete in the general case [3]. Both the max-isection and max-cut prolems has many applications such as statistical physics, classification, social network analysis, and VLSI design [6]. In this work, we are asically interested in the max-isection prolem. Given max-cut is a relaxed max-isection prolem, advances in solving max-isection can enefit directly the solving of the max-cut prolem. There are two related dual partition prolems known as minimum cut and minimum isection that aim to determine a two-way partition of a graph while minimizing the sum of the weights of the cutting edges (equal cardinality constraint is required for minimum isection). Notice that in the general case, these minimization prolems are different from the max-isection and maxcut prolems considered in this work which concern the two-way partition prolems with the maximization criterion. Finally, graph partition prolems with the minimization criterion have received much attention in the literature, leading to several well-known pulic-domain software packages like Chaco[8], Jostle [37], and Metis [] (see [4] for a recent review). The computational challenge of the general max-cut and max-isection prolems has motivated a variety of solution approaches including exact methods, approximation algorithms and metaheuristic methods. Examples of approximation algorithms ased on semidefinite programming are descried in [0,5,6,0,39]. These approaches provide a performance guarantee, ut do not compete well with other methods in computational testing. Two recent examples of exact methods are descried in [4,34] which are ased on the cut and price approach and the ranch and ound approach respectively. While these methods have the theoretical advantage of finding optimal solutions to a given prolem, their applications are generally limited to prolems with no more than a few hundred vertices. For larger prolem instances, a numer of heuristics and metaheuristics are often used to find approximate solutions of good quality with a reasonale computing time. This includes for the max-isection prolem deterministic annealing [7], Lagrangian net [38] and variale neighorhood search [5]. There are many heuristics and metaheuristics for the max-cut prolem including simulated annealing [], rank- relaxation heuristic [5], GRASP [9], diversification driven tau search [3], advanced scatter search [8], gloal equilirium search [35], and proailistic tau search [36]. In this paper, we present a memetic algorithm for the max-isection prolem

3 (denoted y MAMBP). The proposed algorithm integrates three complementary key components which jointly ensure the high efficiency of the search process. First, to generate promising new solutions, we introduce a dedicated crossover operator which tries to preserve groups of vertices that are shared y parent solutions. The design of this crossover operator relies on the oservation that, given a set of high quality isections of a graph, there is always a large numer of vertices grouped together throughout these isections. Second, we devise a tau search optimization procedure for the purpose of intensified search around a given solution. The tau search procedure uses a vertex move neighorhood and incremental evaluation techniques for a fast neighorhood examination. Finally, to maintain a healthy diversity of the population, we employ a pool updating strategy which takes into account oth the solution quality and the distance etween solutions. We show extensive experimental results on 7 well-known G-set enchmark graphs (with 800 to 0000 vertices) in the literature, showing that the proposed algorithm achieves highly competitive results with respect to the existing max-isection heuristics. Moreover, when considering the relaxed max-cut prolem, the results produced y our MAMBP algorithm remain highly competitive even when they are compared to those otained y dedicated maxcut algorithms; for 3 max-cut instances, MAMBP improves the previous est known max-cut solutions of the literature. In the next section, the components of our memetic algorithm are descried, including the tau search procedure, the crossover operator and the pool replacement strategy. Section 3 is dedicated to computational results and detailed comparisons with other state-of-the-art algorithms in the literature. Section 4 investigates several essential parts of the proposed memetic algorithm, followed y concluding remarks given in Section 5. Memetic Algorithm Memetic algorithms are known to e an effective approach in solving a numer of hard cominatorial optimization prolems [9,30,7]. Typically, a memetic approach repeatedly alternates etween a recomination (or crossover) operator to generate solutions located in promising regions in the search space and a local optimization procedure to search around the newly generated solutions. It is commonly admitted that the success of this approach depends critically on the recomination operator. In order to e effective, the recomination operator must e adapted to the prolem eing solved and should e ale to transmit meaningful features from parents to offspring. The general scheme of our memetic approach for MBP is summarized in Algo- 3

4 rithm. Basically, our memetic algorithm egins with an initial population of solutions which are first improved y the local optimization procedure ased on tau search [4] (lines 5, Sections. and.3) and then repeats an iterative process for a fixed numer of times (generations) (lines 6 3). At each generation, two solutions are selected to serve as parents (Section.4). The crossover operator is applied to the parents to generate a new offspring solution (Section.5) which is further improved y the tau search optimization procedure (Section.3). Finally, we apply a quality-and-diversity ased rule to decide whether the improved offspring solution can e inserted into the population (Section.6). In the following susections, we give more details on the components of our memetic algorithm.. Search space and cost function Recall that MBP consists in partitioning the vertex set V into two susets of equal cardinality such that the weights on the edges etween the two susets is maximized. As such, we define the search space explored y our memetic algorithm as the set of all possile partitions of V into disjoint susets of equal cardinality (also called isections), i.e., Ω = {{V,V } : V = V = V,V V = }. Clearly, the size of Ω is given y C( V, V /). Given a isection I = {V,V } Ω, the cost function (also called the fitness function) f(i) sums up the weights of the edges etween the two susets V and V such that: f(i) = i V,j V w ij () Algorithm Memetic algorithm for the max-isection prolem Require: A weighted graph G = (V,E,ω), population size p Ensure: The est solution I found : Pop = {I,...,I p } Initial Population() : I Best(Pop) 3: for i = to p do 4: I i Tau Search(I i ) /* Section.3 */ 5: end for 6: while the stop criterion is not met do 7: Select randomly two solutions (parents) I i and I j from Pop /* Section.4 */ 8: I 0 = Cross Over(I i,i j ) /* Section.5 */ 9: I 0 Tau Search(I 0 ) /* Section.3 */ 0: if f(i 0 ) > f(i ) then : I I 0 /* Update the est solution found so far */ : end if 3: Pop Pool Updating(I 0,Pop) /* Section.6 */ 4: end while 4

5 Then, for two isections I A Ω and I B Ω, I A is etter than I B if and only if f(i A ) > f(i B ). The goal of the max-isection prolem is to find: arg maxf(i) I Ω Given the size of the search space Ω, it is particularly challenging to find an exact solution or an approximate solution of high quality.. Initial population The solutions (individuals) of the initial population are created as follows. For each individual, an equal sized partition is first created at random and then improved y the tau search procedure (see Section.3). The improved solution is added into the population if this solution is not already present in it. Otherwise, this solution is discarded and a new random (equal sized) partition is created. This procedure is iterated until the population is filled with p solutions (p is the population size). This simple procedure provides an initial population of diverse solutions of good quality..3 The Perturation-ased Tau Search Procedure Our tau search (TS) procedure aims to improve a given solution I and plays the key role of local optimization within our memetic algorithm. Basically, our tau search procedure repeatedly alternates etween an intensification phase ensured y the asic tau search and a diversification phase controlled y a perturation mechanism [4]. Algorithm descries this perturationased tau search procedure, whose components are detailed in the following susections..3. Neighorhood and move Given a isection I = {V,V } with V = V, the asic idea of the neighorhood explored y our tau search consists in moving first a vertex from suset V to V, accompanied y moving another vertex from V to V. Note thatinsuchaway,thealanceetweenthetwopartsoftheisectionisalways maintained (i.e., V = V ). The key concept related to our neighorhood is the move gain, which indicates how much a solution (isection) is improved according to the optimization ojective f (Eq., Section.) if a vertex is moved from its suset to the 5

6 other suset. For large prolem instances, it is imperative to e ale to rapidly determine the move gain of a move. In our implementation, we use a fast incremental evaluation technique which is ased on a streamlined calculation for updating the move gain after each move. More formally, let v e the move gain of moving vertex v to the other suset. Then initially, each move value can e calculated in linear time using the formula : v = x V,x v y V,y v w vx w vy, if v V y V w vy w vx, otherwise. x V () Once a move is performed, one just needs to update a suset of move gains Algorithm Perturation-ased tau search for the max-isection prolem Require: A weighted graph G = (V,E,ω), initial isection I = {V,V }, numer lr of tau search iterations, numer cr of consecutive iterations efore triggering a perturation Ensure: The est isection I : Iter 0 /* Iteration counter */ : I I /* I records the est isection found so far */ 3: Initiate the tau list and tau tenure /* See Section.3. */ 4: for each vertex v V do 5: Compute the move gain v according to Eq.. 6: end for 7: while Iter < lr do 8: Choose a est allowed (i.e., not foridden y the tau list) vertex v V according to max-move gain criterion (ties are roken randomly) /* See this section */ 9: Generate intermediate solution I y moving v from V to V (i.e., V = V \{v } and V = V {v }) 0: Add v in the tau list and update the move gain v for each v V : Choose a est allowed vertex v V (i.e., v is not foridden y the tau list or v leads to a new solution etter than solution I ) according to max-move gain criterion (ties are roken randomly) : Generate new solution I y moving v from V to V, (i.e., V = V {v } and V = V \{v }) 3: Add v in the tau list and update the move gain v for each v V 4: if f(i) > f(i ) then 5: I I /* Update the est solution found so far */ 6: end if 7: Iter Iter+ 8: if I not improved after cr iterations then 9: I Pertur(I) /* Apply perturations to I, Section.3.3 */ 0: end if : end while 6

7 affected y this move. Specifically, the following areviated calculation can e performed to update the move gains upon moving v from its set to the other set: v = v for each u V {v}, u w uv, if u is in the same set as v efore moving v u = u + w uv, otherwise. An illustration of the proposed approach for initializing and updating the move gains is provided in Figure. E A S S E 3 C F S A S C 3 F B D A = wab + wac waf = 3 B = wab + wbd = C = wac wch = D = wbd wde wdh = H G E = weg wde = 0 F = wfh waf = G = weg wdg = H = wch + wfh = 3 B D A = A = 3 B = B wab = 0 C = C wac = 4 D = D = H G E = E = 0 F = F + waf = 3 G = G = H = H = 3 Fig.. An example of the initialization (left) and update (right) of the move gain Our tau search procedure then restricts consideration to those vertices which are not foridden y the tau list (see Section.3.) and have the largest value. At each iteration of our tau search, we first select a non tau vertex in V with the largest value and move it from V to V. Then, we choose another non tau vertex in V with the est move gain and move it from V to V. In the case that two or more non tau moves have the same largest value, one of them is chosen at random. Once a vertex v is changed from its original set to the other set, it is classified tau for the next tl iterations, during which v is foridden to e moved ack to its original set. A simple aspiration criterion is applied that permits a vertex to e selected in spite of eing tau if it leads to a solution etter than the current est solution. Notice that aspiration is only applicale to the selection of the second vertex from V (see Algorithm, line ) since the selection of the first vertex from V leads to an intermediate imalanced isection which is not a feasile solution. The TS process stops when a maximum allowed numer (lr) of iterations is reached. 7

8 .3. Tau list and tau tenure management Within TS, a tau list is introduced to forid the previously visited solutions to e revisited. In our TS algorithm, each time a vertex v goes from its original suset to the opposite set, it is foridden to ring ack v to its original set for a certain numer of iterations (called the tau tenure). Inspired y the tau mechanism proposed in [], we employ a particular technique whose goal is to vary the tau tenure throughout the search. 8 tau tenure value ( α) numer of iterations Iter Fig.. An illustration of the step function (one period) used for tuning the tau tenure. The tau tenure is dynamically tuned y a periodic step function T defined overthenumerofiterationsiter (seefigureforanexample).eachperiodof the step function is composed of 500 iterations divided into 5 steps or intervals[x i..x i+ ] i=,,...,5 withx =,x i+ = x i +00.Thetautenurechanges dynamically during the search and according to the current iteration numer, it takes one of four possile values (α, α,4 α,8 α) where α is a parameter. Precisely, for an iteration Iter [x i..x i+ ], the tau tenure T(Iter) is given y (y i ) i=,,...,5 = α (,,,4,,,,8,,,,4,,,). Therefore, the tau tenure is equal to α for the first 00 iterations [..00], then α for iterations from [0..00], followed y α again for iterations [0..300] and 4 α for iterations [ ] etc. After reaching the largest value 8 α for iterations [ ], the tau tenure drops again to α for the next 00 iterations and so on. This function repeats periodically this variation scheme after every 500 iterations. We have also experimented the four values (α, α,4 α,8 α) in a static way, i.e., applying each of them during the whole search. Experimental results showed that the dynamic tau tenure method performs etter than the static method and allows the search to effectively escape from local optima. 8

9 .3.3 Perturation mechanism The aove asic tau search is generally ale to attain solutions of good quality. However, it may happen that it gets stuck in deep local optima. In our case, the search is judged stagnating each time the est isection I found so far is not further improved after a numer cr of consecutive iterations. To help the search to escape from such deep local optima, we apply a simple perturation mechanism to the current solution to ring diversification into the search. The perturation consists in swapping a numer of pairs of vertices in the following way. For each swap, we randomly choose one vertex u from V and another vertex v from V, and then swap u and v (i.e., V = V {v}\{u} and V = V {u}\{v}). This process is repeated γ times where γ is a parameter which indicates the strength of the perturation..4 Parent selection Our memetic algorithm is a steady-state algorithm such that at each generation one new solution is generated y comining two parent solutions chosen from the population. To choose the parents, several selection methods can e applied. In our case, we have experimented three well-known strategies: roulette-wheel, tournament and random []. With roulette-wheel selection, an individual is selected with a proaility which is proportional to its fitness (ojective) value. For tournament selection (the standard -way deterministic tournament), two individuals are taken at random and the est of the two is selected. Random selection chooses each individual with equal proaility. Experimental results with these selection methods have shown that within the context of this work, no significant difference was oserved. This can e explained intuitively as follows. In fact, since the individuals are improved y the powerful tau search procedure, they are generally of good quality, implying that their fitnesses are not so different in the ojective space (though the i-sections they represent may e quite different due to the pool updating strategy used in Section.6). Under such a circumstance, it is clear that roulette-wheel, tournament and random would lead to a similar selection effect. For this reason, we have decided to retain the simple random selection in our algorithm..5 Crossover operator Crossover is another key component of our memetic algorithm. In practice, instead of applying lind crossovers, it is often preferale to devise a dedicated recomination operator that have strong semantics with respect to the pro- 9

10 lem eing solved [7]. In the case of MBP, a isection of a graph G = (V,E) corresponds to a partition of V into two disjoint groups of vertices. With this point of view, MBP can e considered as a grouping prolem [8]. For grouping prolems, the crossover operators should manipulate groups of ojects rather than individual ojects. Such an approach for designing crossover operators has een successfully applied to solve a numer of grouping prolems such as graph coloring [,7,3], in packing [8] and graph partitioning [3,]. In this work, we propose a dedicated grouping crossover operator for MBP, the proposed crossover operator is constrained to conserve susets (or grouping vertices) of the vertex partitions of parents in offspring solutions. The rationale ehind this approach is ased on a careful analysis of local optimal solutions which discloses that high quality local optima share many grouping vertices (see Section 4). Therefore, if a set of vertices are always grouped together throughout a set of high quality solutions, these vertices are considered to have a high chance to e part of a gloally optimal solution. The proposed crossover operator follows the general principle presented aove and operates in two sequential steps. We first create a partial isection of maximal size y conserving the largest common vertex groupings with respect tothetwoselectedparents.inordertootainafullisection,wecompletethis partial isection y redistriuting the remaining unassigned vertices ased on a greedy construction strategy. Moreprecisely,giventwoparentsI a = {V a,v a }andi = {V,V },thepartial offspring I c = {V, } c is constructed such that = V a V and = V a V. It should e noted that if V a V < V a V, we first exchange the two parts of I efore constructing the offspring I c for the purpose of preserving the largest common grouping vertices(see Figure for an example). For the constructed partial offspring I c = {V, }, c it can e shown that V c = V. c When the partial offspring I c = {V, } c is constructed, the vertices in V a and V a \ are left unassigned. For the vertices in V a \, they are grouped together in oth parent solutions I a and I (in fact, V a \ V a and V a \ V, see Figure 3 for an example). Similarly, the vertices in V a \ are also grouped together in oth I a and I. Thus, these left vertices should e dealt with care in order to generate a diversified offspring solution. In the following, we use a diversification-guided strategy to redistriute these unassigned vertices y taking into account oth the solution quality of the offspring and its distance to its parent solutions. Given the partial solution I c = {V, }, c we use two greedy functions that take into account the contriution of the left vertices to the ojective function of I c. Specifically, for each v V a \V, c we define σ(v) = w uv and σ (v) = u \ 0

11 u w uv. Then the vertices in V a \ are assigned to the two parts of I c one y one. At the first step, we examine all the vertices in V a \ to identify the vertex with the largest σ value and move it from V a \ to V. c Afterward, V c is considered, we identify the vertex in V a \ with the largest σ value and assign it to V. c Then at each step of our procedure, and are considered in turn to distriute the remaining vertices in V a \ (see Figure ). Once all vertices in V a \ are assigned to the two susets of I c, the same procedure is appliedtohandletheverticesinv a \V. c Finally, one oserves that the offspring I c generated y our crossover operator has essentially the same distance to its two parents and is of relatively high quality..6 Pool updating strategy When an offspring solution is created y the crossover operator presented in the last section and improved y the tau search algorithm descried in Section.3, we decide whether the improved offspring should e inserted into the population and which existing solution of the population should e replaced. Basically, our decisions are made ased on oth solution quality and distance etween solutions in the population [6,7,3]. Therefore, we first define the distance etween two solutions efore presenting the used pool updating strategy. Definition. Distance etween two isections: Given two isections I a = {V a,v a }andi = {V,V },thedistanceetweeni a andi (callitd)can V a I a I c V a V I assign 6 to σ(3) = 3 σ (3) = 5 σ(5) = σ (5) = 3 σ(6) = 4 σ (6) = σ(8) = σ (8) = 3 V V a V = {3, 5,6, 8} V a V = {,,4, 7,9} V a V < V a V I c exchange V, V assign 3 to σ(3) = 4 σ (3) = 5 σ(5) = 3 σ (5) = 3 σ(8) = σ (8) = I c V a I a V a assign 5 to σ(5) = 3 σ (5) = 3 σ(8) = σ (8) = V I V I c = V a V = V a V assign 8 to σ(8) = σ (8) = I c I c unassigned vertices V a \ V c = {3, 5, 6, 8} V a \ V c = {, 3, 5, 7} in the same way to assign the vertices in V a \ V c I c Fig. 3. An illustration of the crossover operator.

12 e defined as the minimum numer of one-move steps necessary to transform I to I a. A move step corresponds to the operation of moving one vertex from one side of the isection to the other side. More formally, the distance d(i a,i ) is determined using the formula d(i a,i ) = V s(i a,i ) where s(i a,i ) is a similarity function which corresponds to the numer of vertices that do not need to e moved to transform I to I a [33]. This similarity function can e defined as follows. If V a I, then s(i a,i ) is defined as s(i a,i ) = (V a V < V a V, we first exchange the two parts of V ) (V a V ). Definition. Distance etween one isection and a population: Given a population Pop = {I,...,I p } and the distance d ij etween any two isections I i and I j (i,j =,...,p,i j), the distance etween a isection I i (i =,...,p) and the population Pop is defined as the minimum distance etween I i and any other isection in the population: D i,pop = min{d ij I j Pop,j i} (3) The general scheme of our pool updating strategy is descried in Algorithm 3. Inordertoupdatethepopulation,thenewgeneratedoffspringI 0 istentatively inserted into the population, i.e., Pop = Pop {I 0 }. Then, the worst solution (denoted y I w ) in the population Pop = {I 0,...,I p } is identified. If I w is not the offspring I 0, then I 0 is inserted into the population and replaces the worst solution I w, i.e., Pop = Pop {I 0 }\{I w }. To determine the worst solution in the population, we use a quality-and-distance scoring function which was originally proposed in [6] and is defined as follows: g(i i ) = βã(f(ii ))+( β)ã(d i,pop) (4) where f(i i ) is the ojective function value defined in section., β is a param- Algorithm 3 Pool Updating Rule Require: Population Pop = {I,...,I p } and offspring solution I 0 Ensure: Updated population Pop = {I,...,I p } : Temporarily insert I 0 into the population: Pop = Pop {I 0 } : for i = 0,...,p do 3: Calculate the distance etween I i and Pop according to Eq. (3) 4: Calculate the goodness score g(i i ) of I i according to Eq. (4) 5: end for 6: Identify the worst solution I w with the smallest goodness score in Pop : I w = arg min{g(i i ) i = 0,...,p} 7: if I w is not the offspring I 0 then 8: Replace I w with I 0 : Pop = Pop {I 0 }\{I w } 9: end if

13 Tale Settings of important parameters Parameters Section Description Values p. size of population 0 α.3 tau tenure management factor 5 cr.3 non-improvement TS iterations efore 3,000 perturation γ.3 perturation strength 00 lr.3 numer of TS iterations after recomination 0 6 β.6 goodness score coefficient 0.6 [6] eter set to 0.6 according to [6], and Ã(.) represents the normalized function: Ã(y) = y y min y max y min + (5) where y min and y max are respectively the minimum and maximum of y in the population Pop. + is used to avoid the possiility of a 0 denominator. 3 Experimental results 3. Test Instances To evaluate the efficiency of the proposed memetic approach, extensive experiments were carried out on 7 well-known G-set enchmark graphs that are frequently used to assess max-isection and max-cut algorithms. The G-set contains graphs ranging in size from 800 vertices to 0000 vertices. These instances are generated y a machine-independent graph generator, comprising of toroidal, planar and random weighted graphs. Many authors including [38,5,9,3,8,3,35,36] employ these instances to test their algorithms for the max-isection prolem as well as the max-cut prolem. 3. Parameter settings The parameter settings used in our experiments are given in Tale. These parameter values have een determined y performing a preliminary experiment on a selection of (hard) instances (G 3, G 33, G 35, G 40, G 4, G 4, G 55, G 57, G 6, G 65 and G 66 ). To determine the parameter values, we first egan with the parameters required y the TS algorithm (α,cr,γ, see Section.3) and then determined the parameters used y the memetic algorithm (p,lr,β). For the TS algorithm we tested values for α in the range [0..30], cr in the range [ ] and γ in the range [ ]. For each value of Availale at yyye/yyye/gset/ 3

14 Tale Parameter tuning: α Instance TS with different α values α = 0 α = 5 α = 0 α = 5 α = 30 f est f avg f est f avg f est f avg f est f avg f est f avg G G G G G G G G G G G Tale 3 Parameter tuning: cr Instance TS with different cr values cr=000 cr = 3000 cr = 4000 cr = 5000 cr = 6000 f est f avg f est f avg f est f avg f est f avg f est f avg G G G G G G G G G G G these parameters, 0 independent runs of TS were performed on each prolem instance. Tale shows the results for different α values (with cr = 3000 and γ = 00) while Tale 3 indicates the results for different cr values (with α = 5 and γ = 00) and Tale 4 shows the results for different γ values (with α = 5 and cr = 3000). The tales show the est and averaged ojective values found over the 0 runs. From these tales, we oserve that the comination (α = 5,cr = 3000,γ = 00) gloally leads to the est results. For the parameters related to the memetic algorithm, we fixed p = 0,lr = 0 6 in a similar way while β = 0.6 is chosen according to [6]. These parameter values were used to report our computational results, even 4

15 Tale 4 Parameter tuning: γ Instance TS with different γ values γ = 00 γ = 50 γ = 00 γ = 50 γ = 300 f est f avg f est f avg f est f avg f est f avg f est f avg G G G G G G G G G G G though improved results would e possile y further fine turning the parameters. As we see elow, the adopted parameter settings are good and roust enough to allow the algorithm to attain very competitive results for the set of the tested instances compared with those reported in the literature. 3.3 Experimental protocol Our MAMBP algorithm is programmed in C and compiled using GNU GCC on a PC running Windows XP with an Intel Xeon E5440 processor (.83 GHz and 8G RAM). Given the stochastic nature of MAMBP, each instance is independently solved 0 times with different random seeds. Each run is stopped when the processing time reaches its timeout limit. The timeout limit is set to e 30 minutes for graphs with V < 5000 while for graphs with V 5000 a time limit of 0 minutes is allowed. Note that our timeout limit condition is comparale with the stop condition reported in [8,36]. Two comparisons are performed in order to assess the performance of the proposed memetic algorithm. The first comparison focuses on the max-isection prolem while the second one contrasts our (alanced) isections with partitions otained y several state of the art max-cut algorithms [5,9,8,3,35,36]. Notice that for the case of max-cut, the two susets of a partition otained y a max-cut algorithm are not required to e of equal cardinality. In this sense, a max-cut algorithm would have more opportunities to find partitions of larger weights. The est isections otained y our memetic algorithm are 5

16 availale from: Comparison with state-of-art max-isection algorithm In this section, we present the equal sized isections otained y our memetic approach for the max-isection prolem. To assess the relative quality of our results, we compare MAMBP with the new Lagrangian net algorithm (NLNA) whichwaspulishedveryrecently[38].nlnawasrunonalenovopcwithan Intel Core E5300 processor (.36 GHZ CPU and.96 GB RAM). According to the Standard Performance Evaluation Cooperation ( this computer is. time slower than the computer we used for our experiments. Note that in the literature there are at least two other heuristic isection algorithms ased on deterministic annealing [7] and variale neighorhood search [5]. Unfortunately, the results reported in these references cannot e reproduced since the graphs used are not availale to the pulic domain. As a consequence, it is impossile to compare with their results. Tale 5 presents the detailed computational results of our MAMBP algorithm in comparison with those of the reference algorithm (NLNA) reported in [38]. The first two columns in the tale indicate the name of and the numer of vertices of the graph. Columns 3 to 7 show MAMBP s results including the est ojectivevalue(f est ),thesuccessrate(hit)forreachingf est,theaveragedojective value (f avg (std)) over the 0 runs with the standard deviation etween parentheses for a hit value smaller than 00%, the average iterations (Iter) and the average CPU time in seconds (time) over the 0 runs on which the f est value is reached. Columns 8 to 9 present NLNA s results. Given the speed ratio etween our computer and the computer used for NLNA, we normalize the computing times of NLNA y dividing them with a factor of.. The last column ( ) indicates the differences in the est ojective values etween MAMBP and NLNA. From Tale 5, one oserves that, for the 56 instances where the NLNA algorithm reports its results, our MAMBP algorithm dominates NLNA in terms of solution quality. For each of these instances, our MAMBP algorithm is ale to attain a much larger ojective value (f est ) compared with NLNA. Even our average results (f avg ) are etter than the est results reported y NLNA. For the other 5 instances, no results are reported y NLNA ( - in Tale 5 indicates that a result for that particular instance was not availale). Finally, concerning the computing times, the times indicated are those that are needed for each algorithm to attain its f est values. To verify that our MAMBP algorithm can easily attain the est ojective values of NLNA, we rerun MAMBP and use NLNA s est ojective values as our stop conditions. 6

17 Although we do not show the detailed results, this second experiment show that for the instances with less than 5000 vertices, MAMBP attains NLNA s est ojective value in less than one second (against 3.7 to 58.8 seconds for NLNA). For larger graphs with at least 5000 vertices, MAMBP discovers NLNA s est ojective value in no more than 0 seconds (against 60.9 to 5.6 seconds for NLNA). It is clear that MAMBP needs much less computing time than NLNA to discover solutions of comparale quality. We can conclude that our MAMBP algorithm dominates the reference NLNA algorithm oth in terms of solution quality and computing time. Tale 5: Comparative results for the max-isection prolem etween MAMBP and NLNA [38] on the G-set enchmark instances. The symol - means that the related statistics are not availale. Instance V MAMBP NLNA[38] f est f avg(std) hit Iter time f est time G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G / G (.93) / G (.9) / G (.8) 8/ G / G / G (5.4) 8/ G /

18 Tale 5 continued from previous page Instance V MAMBP NLNA[38] f est f avg(std) hit Iter time(s) f est time(s) G (6.9) 8/ G / G / G / G / G / G / G / G / G / G / G / G / G (8.36) / G (9.4) 3/ G (.98) / G (.8) / G (5.7) / G (0.5) / G (5.8) / G (6.00) / G (4.9) / G (7.) / G (7.45) / G (.8) / G (9.97) / G (7.36) / G (7.34) / G (7.4) / G (5.03) / Comparison with state-of-art dedicated max-cut algorithms In this section, we further assess the performance of our MAMBP approach y comparing our results for MBP (i.e., equal sized partitions) with those otained with different max-cut algorithms (i.e., not necessarily equal sized partitions). Recall that the max-isection prolem is constrained y the equal cardinality requirement for the two parts of its partitions while the max-cut prolem accepts any two-part partitions. Consequently, a solution for the MBP is always a solution for the MCP, ut the reverse is not true. In this section, we show that even with this equal cardinality constraint, our max-isection algorithm MAMBP is ale to find solutions that are etter than the state of the art max-cut algorithms. For this comparison, we are mainly interested in solution quality, i.e., the largest sum of the weights of the cutting edges of a partition. Due to the differences among the programming languages, data structures, compiler options and computers, we don t focus on computing time. We just mention that 8

19 the timeout limits we used are quite similar to those adopted y two recent reference algorithms [8,36]. The comparative results are summarized in Tale 6 on the 69 G-set enchmark instances excluding the two largest graphs G77 and G8 for which no results are availale for the reference algorithms. Columns and respectively give theinstancenameandthepreviousestsolutionvaluef max cut fromreferences [,5,9,3,8,3,35,36] (most of them are dedicated max-cut algorithms). Column 3 recalls the est results of our MAMBP approach extracted from Tale 5. Columns 4 9 present the est results otained y 6 reference algorithms: SS [8], TS-UBQP [3], DSA [], VNSPR [9], CirCut [5] and GRASP-TS/PM [36]. The last three rows summarize the comparison etween these algorithms and ours. The rows Better, Equal and Worse respectively denote the numer of instances for which our MAMBP algorithm attains a result of etter, equal and worse quality than each reference algorithm. We mark in old those results that are the updated est known values otained y the MAMBP approach. From Tale 6, we oserve that our MAMBP algorithm is ale to improve the current est known results in the literature for 3 instances while equaling the est known results for 5 other instances. This is a remarkale performance given that these est known results are the joint results of or more max-cut algorithms. Indeed, when one compares our MAMBP algorithm with each of the 6 reference algorithms (SS, TS-UBQP, DSA, VNSPR, CirCut amd GRASP-TS/PM), we oserve that MAMBP attains worse results for at most 0 instances while etter results for at least 5 instances. These comparisons provide further evidence of the quality of the partitions achieved y our MAMBP algorithm. On the other hand, on 3 instances, MAMBP s results are slightly inferior to the est known results. It is interesting to notice that most of these instances are of small size (with no more than 800 vertices). One possile explanation could e that for these graphs, the est max-cut solution is such that the two parts of the partition are of unequal size and thus not included in the search space of our MAMBP algorithm. To sum, even if our MAMBP algorithm operates within a constrained search space composed solely of isections (i.e., partitions of equal parts), its performance is remarkale for the max-cut prolem when MAMBP is compared with dedicated max-cut algorithms. 9

20 Tale 6: Comparative results of our MAMBP algorithm with the results of 6 state of the art max-cut algorithms on the G-set enchmark instances. Notice that max-cut algorithms lead to a partition whose two sets V and V may e of different sizes contrary to a partition of MAMBP whose two sets are always of equal size. Instance fmax cut f MAMBP 6 reference max-cut algorithms SS[8] TS- UBQP[3] DSA[] VNSPR[9] CirCut[5] GRASP- TS/PM[36] G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G

21 Tale 6 continued from previous page Instance fmax cut f MAMBP 6 reference max cut algorithms SS[8] TS- UBQP[3] DSA[] VNSPR[9] CirCut[5] GRASP- TS/PM[36] G G G G G G G G G G G G G G G G Better Equal Worse Analysis of MAMBP 4. Influence of crossover, pool replacement strategy and perturation mechanism In this section, we investigate the influence of some important ingredients of the proposed memetic algorithm: crossover (Section.5), population updating strategy (Section.6) and perturation mechanism (Section.3.3). These studies are ased on the same selection of the hard prolem instances used for setting the parameters (Section 3.). 4.. Influence of crossover: comparing MAMBP with TS MAMBP uses TS as one of its main optimization procedures. It is therefore interesting to know if MAMBP, y integrating a crossover operator, is ale to improve on the results of the TS algorithm alone. To verify this, we carry out additional experiments on the selection of the G-set graphs and show a comparison etween MAMBP and TS. For this experiment, we use the TS algorithm descried in Algorithm (see Section.3) with the same parameter settings given in Tale. To make the comparison as fair as possile, we run TS with the same timeout limits as for MAMBP: 30 minutes for graphs with V < 5000 and 0 minutes if V 5000 (see Section 3.3). In order not to penalize the tau search algorithm which usually stops after lr iterations

22 Tale 7 Comparative results of MAMBP and TS on G-set instances for the max-isection prolem Instance V MAMBP TS f est f avg hit time(s) f est f avg hit time(s) G / / G / / G / /0 5.5 G / / G / / G / / G / / G / / G / / G / / G / / (lr = 0 6 in our case as indicated in Tale ), TS is restarted after lr = 0 6 iterations whenever the timeout limit is not reached. Like for MAMBP, we run the tau search algorithm 0 times on each of the selected G-set graphs. Tale 7 summarizes the computational results of the TS algorithm in comparison with those of MAMBP taken from Tale 5. The following information for each instance is shown: the est ojective value (f est ), the averaged ojective value over the 0 runs (f avg ), the success rate (hit) for reaching its f est value and the average CPU time (time) over the runs on which the f est value is reached. From Tale 7, we notice that for all the selected instances, MAMBP performs far etter than TS. Especially for each of the instances with at least 5000 vertices, MAMBP is ale to reach a larger ojective value f est than TS. In addition, improvements are more pronounced for larger-size graphs. These comparative results provide clear evidence that the recomination operator plays an important role in the overall performance of our MAMBP algorithm and is more efficient when it comes to handling large graphs. 4.. Influence of population updating strategy In order to evaluate the distance-and-quality ased population updating strategy (denoted y DisQual), we compare it with a popular updating strategy widely used in the literature (denoted y PoolWorst), which uses the new offspring solution to replace the worst solution (in terms of the fitness) of the population. We have experimented oth strategies within our memetic algorithm. As an illustration, Fig. 4 shows the detailed comparison on a large and difficult graph (G 55 ). Similar results have een oserved on other instances. The stopping

An effective iterated tabu search for the maximum bisection problem

An effective iterated tabu search for the maximum bisection problem An effective iterated tabu search for the maximum bisection problem Fuda Ma a, Jin-Kao Hao a,b,, Yang Wang c a LERIA, Université d Angers, 2 Boulevard Lavoisier, 49045 Angers, France b Institut Universitaire

More information

A tabu search based memetic algorithm for the max-mean dispersion problem

A tabu search based memetic algorithm for the max-mean dispersion problem A tabu search based memetic algorithm for the max-mean dispersion problem Xiangjing Lai a and Jin-Kao Hao a,b, a LERIA, Université d'angers, 2 Bd Lavoisier, 49045 Angers, France b Institut Universitaire

More information

Adaptive feasible and infeasible tabu search for weighted vertex coloring

Adaptive feasible and infeasible tabu search for weighted vertex coloring Adaptive feasible and infeasible tabu search for weighted vertex coloring Wen Sun a, Jin-Kao Hao a,b,, Xiangjing Lai c, Qinghua Wu d a LERIA, Université d Angers, 2 Boulevard Lavoisier, 49045 Angers, France

More information

A Memetic Algorithm for Graph Coloring

A Memetic Algorithm for Graph Coloring A Memetic Algorithm for Graph Coloring Zhipeng Lü and Jin-Kao Hao LERIA, Université d Angers, 2 Boulevard Lavoisier, 49045 Angers, Cedex 01, France Abstract Given an undirected graph G = (V, E) with a

More information

Recent Results from Analyzing the Performance of Heuristic Search

Recent Results from Analyzing the Performance of Heuristic Search Recent Results from Analyzing the Performance of Heuristic Search Teresa M. Breyer and Richard E. Korf Computer Science Department University of California, Los Angeles Los Angeles, CA 90095 {treyer,korf}@cs.ucla.edu

More information

Iterated maxima search for the maximally diverse grouping problem

Iterated maxima search for the maximally diverse grouping problem Iterated maxima search for the maximally diverse grouping problem Xiangjing Lai a and Jin-Kao Hao a,b, a LERIA, Université d'angers, 2 bd Lavoisier, 49045 Angers, France b Institut Universitaire de France,

More information

Principles of Scatter Search

Principles of Scatter Search Principles of Scatter Search RAFAEL MARTÍ Dpto. de Estadística e Investigación Operativa, Facultad de Matemáticas, Universidad de Valencia, Dr. Moliner 50, 4600 Burjassot (Valencia) Spain. Rafael.Marti@uv.es

More information

An Adaptive Multistart Tabu Search Approach to solve the Maximum Clique Problem

An Adaptive Multistart Tabu Search Approach to solve the Maximum Clique Problem Noname manuscript No. (will be inserted by the editor) An Adaptive Multistart Tabu Search Approach to solve the Maximum Clique Problem Qinghua Wu Jin-Kao Hao* Accepted to Journal of Combinatorial Optimization,

More information

A Learning-based Path Relinking algorithm for the Bandwidth Coloring Problem

A Learning-based Path Relinking algorithm for the Bandwidth Coloring Problem A Learning-based Path Relinking algorithm for the Bandwidth Coloring Problem Xiangjing Lai a, Jin-Kao Hao a,b,, Zhipeng Lü c, Fred Glover d a LERIA, Université d Angers, 2 Boulevard Lavoisier, 49045 Angers,

More information

Neighborhood Combination for Unconstrained Binary Quadratic Programming

Neighborhood Combination for Unconstrained Binary Quadratic Programming id-1 Neighborhood Combination for Unconstrained Binary Quadratic Programming Zhipeng Lü Fred Glover Jin-Kao Hao LERIA, Université d Angers 2 boulevard Lavoisier, 49045 Angers, France lu@info.univ-angers.fr

More information

A Study of Neighborhood Structures for the Multiple Depot Vehicle Scheduling Problem

A Study of Neighborhood Structures for the Multiple Depot Vehicle Scheduling Problem A Study of Neighborhood Structures for the Multiple Depot Vehicle Scheduling Problem Benoît Laurent 1,2 and Jin-Kao Hao 2 1 Perinfo SA, Strasbourg, France 2 LERIA, Université d Angers, Angers, France blaurent@perinfo.com,

More information

Fair inter-tap routing and backhaul assignment for wireless mesh networks

Fair inter-tap routing and backhaul assignment for wireless mesh networks WIRELESS COMMUNICATIONS AND MOBILE COMPUTING Wirel. Commun. Mo. Comput. (2008) Pulished online in Wiley InterScience (www.interscience.wiley.com).629 Fair inter-tap routing and ackhaul assignment for wireless

More information

6. Tabu Search. 6.3 Minimum k-tree Problem. Fall 2010 Instructor: Dr. Masoud Yaghini

6. Tabu Search. 6.3 Minimum k-tree Problem. Fall 2010 Instructor: Dr. Masoud Yaghini 6. Tabu Search 6.3 Minimum k-tree Problem Fall 2010 Instructor: Dr. Masoud Yaghini Outline Definition Initial Solution Neighborhood Structure and Move Mechanism Tabu Structure Illustrative Tabu Structure

More information

Vertex 3-colorability of claw-free graphs

Vertex 3-colorability of claw-free graphs R u t c o r Research R e p o r t Vertex 3-coloraility of claw-free graphs M. Kamiński a V. Lozin RRR 8 2007, Feruary 2007 RUTCOR Rutgers Center for Operations Research Rutgers University 640 Bartholomew

More information

Improving probability learning based local search for graph coloring

Improving probability learning based local search for graph coloring Improving probability learning based local search for graph coloring Yangming Zhou a,b, Béatrice Duval b, Jin-Kao Hao b,c, a Glorious Sun School of Business and Management, Donghua University, No.1882,

More information

THE DECISION OF THE OPTIMAL PARAMETERS IN MARKOV RANDOM FIELDS OF IMAGES BY GENETIC ALGORITHM

THE DECISION OF THE OPTIMAL PARAMETERS IN MARKOV RANDOM FIELDS OF IMAGES BY GENETIC ALGORITHM Zhaoao Zheng THE DECISION OF THE OPTIMAL PARAMETERS IN MARKOV RANDOM FIELDS OF IMAGES BY GENETIC ALGORITHM Zhaoao Zheng, Hong Zheng School of Information Engineering Wuhan Technical University of Surveying

More information

Tabu Search for Constraint Solving and Its Applications. Jin-Kao Hao LERIA University of Angers 2 Boulevard Lavoisier Angers Cedex 01 - France

Tabu Search for Constraint Solving and Its Applications. Jin-Kao Hao LERIA University of Angers 2 Boulevard Lavoisier Angers Cedex 01 - France Tabu Search for Constraint Solving and Its Applications Jin-Kao Hao LERIA University of Angers 2 Boulevard Lavoisier 49045 Angers Cedex 01 - France 1. Introduction The Constraint Satisfaction Problem (CSP)

More information

Comp Online Algorithms

Comp Online Algorithms Comp 7720 - Online Algorithms Assignment 1: Introduction, Searching & List Update Shahin Kamalli University of Manitoa - Fall 2018 Due: Thursday, Octoer 4th at 11:59 pm Octoer 29, 2018 The real prolem

More information

Escaping Local Optima: Genetic Algorithm

Escaping Local Optima: Genetic Algorithm Artificial Intelligence Escaping Local Optima: Genetic Algorithm Dae-Won Kim School of Computer Science & Engineering Chung-Ang University We re trying to escape local optima To achieve this, we have learned

More information

Tabu search with feasible and infeasible searches for equitable coloring

Tabu search with feasible and infeasible searches for equitable coloring Tabu search with feasible and infeasible searches for equitable coloring Wenyu Wang a, Jin-Kao Hao b,c, Qinghua Wu a, a School of Management, Huazhong University of Science and Technology, No. 1037, Luoyu

More information

Lamarckian Repair and Darwinian Repair in EMO Algorithms for Multiobjective 0/1 Knapsack Problems

Lamarckian Repair and Darwinian Repair in EMO Algorithms for Multiobjective 0/1 Knapsack Problems Repair and Repair in EMO Algorithms for Multiobjective 0/ Knapsack Problems Shiori Kaige, Kaname Narukawa, and Hisao Ishibuchi Department of Industrial Engineering, Osaka Prefecture University, - Gakuen-cho,

More information

Metaheuristic Development Methodology. Fall 2009 Instructor: Dr. Masoud Yaghini

Metaheuristic Development Methodology. Fall 2009 Instructor: Dr. Masoud Yaghini Metaheuristic Development Methodology Fall 2009 Instructor: Dr. Masoud Yaghini Phases and Steps Phases and Steps Phase 1: Understanding Problem Step 1: State the Problem Step 2: Review of Existing Solution

More information

An Evolutionary Approach with Diversity Guarantee and Well-Informed Grouping Recombination for Graph Coloring

An Evolutionary Approach with Diversity Guarantee and Well-Informed Grouping Recombination for Graph Coloring An Evolutionary Approach with Diversity Guarantee and Well-Informed Grouping Recombination for Graph Coloring Daniel Cosmin Porumbel a,b), Jin-Kao Hao a) and Pascale Kuntz b) a) LERIA, Université d Angers,

More information

Diversification-driven tabu search for unconstrained binary quadratic problems

Diversification-driven tabu search for unconstrained binary quadratic problems 4OR-Q J Oper Res DOI 10.1007/s10288-009-0115-y RESEARCH PAPER Diversification-driven tabu search for unconstrained binary quadratic problems Fred Glover Zhipeng Lü Jin-Kao Hao Received: 24 April 2009 /

More information

VLSI Logic Test, Validation and Verification Lecture 7 Properties & Applications of Binary Decision Diagrams

VLSI Logic Test, Validation and Verification Lecture 7 Properties & Applications of Binary Decision Diagrams VLSI Logic Test, Validation and Verification Lecture 7 Properties & Applications of Binary Decision Diagrams 1 Instructor: Priyank Kalla Department of Electrical and Computer Engineering University of

More information

Array Dependence Analysis as Integer Constraints. Array Dependence Analysis Example. Array Dependence Analysis as Integer Constraints, cont

Array Dependence Analysis as Integer Constraints. Array Dependence Analysis Example. Array Dependence Analysis as Integer Constraints, cont Theory of Integers CS389L: Automated Logical Reasoning Omega Test Işıl Dillig Earlier, we talked aout the theory of integers T Z Signature of T Z : Σ Z : {..., 2, 1, 0, 1, 2,..., 3, 2, 2, 3,..., +,, =,

More information

Memetic Algorithms in Discrete Optimization

Memetic Algorithms in Discrete Optimization Memetic Algorithms in Discrete Optimization Jin-Kao Hao Appeared in F. Neri, C. Cotta, P. Moscato (Eds.) Handbook of Memetic Algorithms. Studies in Computational Intelligence 379, Chapter 6, pages 73-94,

More information

GRASP. Greedy Randomized Adaptive. Search Procedure

GRASP. Greedy Randomized Adaptive. Search Procedure GRASP Greedy Randomized Adaptive Search Procedure Type of problems Combinatorial optimization problem: Finite ensemble E = {1,2,... n } Subset of feasible solutions F 2 Objective function f : 2 Minimisation

More information

Theory of Integers. CS389L: Automated Logical Reasoning. Lecture 13: The Omega Test. Overview of Techniques. Geometric Description

Theory of Integers. CS389L: Automated Logical Reasoning. Lecture 13: The Omega Test. Overview of Techniques. Geometric Description Theory of ntegers This lecture: Decision procedure for qff theory of integers CS389L: Automated Logical Reasoning Lecture 13: The Omega Test şıl Dillig As in previous two lectures, we ll consider T Z formulas

More information

Memetic search for identifying critical nodes in sparse graphs

Memetic search for identifying critical nodes in sparse graphs 1 Memetic search for identifying critical nodes in sparse graphs Yangming Zhou, Jin-Kao Hao*, Fred Glover arxiv:1705.04119v2 [cs.ai] 7 Oct 2017 Abstract Critical node problems involve identifying a subset

More information

An Evolutionary Algorithm for the Multi-objective Shortest Path Problem

An Evolutionary Algorithm for the Multi-objective Shortest Path Problem An Evolutionary Algorithm for the Multi-objective Shortest Path Problem Fangguo He Huan Qi Qiong Fan Institute of Systems Engineering, Huazhong University of Science & Technology, Wuhan 430074, P. R. China

More information

METAHEURISTIC. Jacques A. Ferland Department of Informatique and Recherche Opérationnelle Université de Montréal.

METAHEURISTIC. Jacques A. Ferland Department of Informatique and Recherche Opérationnelle Université de Montréal. METAHEURISTIC Jacques A. Ferland Department of Informatique and Recherche Opérationnelle Université de Montréal ferland@iro.umontreal.ca March 2015 Overview Heuristic Constructive Techniques: Generate

More information

EMPIRICAL ANALYIS OF THE BEE COLONY OPTMIZATION METHOD ON 3-SAT PROBLEM

EMPIRICAL ANALYIS OF THE BEE COLONY OPTMIZATION METHOD ON 3-SAT PROBLEM EMPIRICAL ANALYIS OF THE BEE COLONY OPTMIZATION METHOD ON 3-SAT PROBLEM TATJANA JAKŠIĆ KRÜGER Mathematical Institute SASA, Belgrade, tatjana@mi.sanu.ac.rs TATJANA DAVIDOVIĆ Mathematical Institute SASA,

More information

DCloud: Deadline-aware Resource Allocation for Cloud Computing Jobs

DCloud: Deadline-aware Resource Allocation for Cloud Computing Jobs : Deadline-aware Resource Allocation for Cloud Computing Jos Dan Li, Congjie Chen, Junjie Guan, Ying Zhang, Jing Zhu, Ruozhou Yu Tsinghua University HP Las Astract With the tremendous growth of cloud computing,

More information

Introduction to Machine Learning Spring 2018 Note Sparsity and LASSO. 1.1 Sparsity for SVMs

Introduction to Machine Learning Spring 2018 Note Sparsity and LASSO. 1.1 Sparsity for SVMs CS 189 Introduction to Machine Learning Spring 2018 Note 21 1 Sparsity and LASSO 1.1 Sparsity for SVMs Recall the oective function of the soft-margin SVM prolem: w,ξ 1 2 w 2 + C Note that if a point x

More information

METAHEURISTICS Genetic Algorithm

METAHEURISTICS Genetic Algorithm METAHEURISTICS Genetic Algorithm Jacques A. Ferland Department of Informatique and Recherche Opérationnelle Université de Montréal ferland@iro.umontreal.ca Genetic Algorithm (GA) Population based algorithm

More information

Multi Objective Reconfiguration of Distribution Networks with the Objective to Reduce Losses and Improving Power Quality Parameters

Multi Objective Reconfiguration of Distribution Networks with the Objective to Reduce Losses and Improving Power Quality Parameters Applied mathematics in Engineering, Management and Technology 2 (5) 214:177-183 www.amiemt-journal.com Multi Ojective Reconfiguration of Distriution Networks with the Ojective to Reduce Losses and Improving

More information

Binary Decision Tree Using Genetic Algorithm for Recognizing Defect Patterns of Cold Mill Strip

Binary Decision Tree Using Genetic Algorithm for Recognizing Defect Patterns of Cold Mill Strip Binary Decision Tree Using Genetic Algorithm for Recognizing Defect Patterns of Cold Mill Strip Kyoung Min Kim 1,4, Joong Jo Park, Myung Hyun Song 3, In Cheol Kim 1, and Ching Y. Suen 1 1 Centre for Pattern

More information

Adaptive Memory-Based Local Search for MAX-SAT

Adaptive Memory-Based Local Search for MAX-SAT Adaptive Memory-Based Local Search for MAX-SAT Zhipeng Lü a,b, Jin-Kao Hao b, Accept to Applied Soft Computing, Feb 2012 a School of Computer Science and Technology, Huazhong University of Science and

More information

Topologically Sorted Skylines for Partially Ordered Domains

Topologically Sorted Skylines for Partially Ordered Domains Topologically Sorted Skylines for Partially Ordered Domains Dimitris Sacharidis #, Stavros Papadopoulos, Dimitris Papadias # National Technical University of Athens Athens, Greece dsachar@dla.ntua.gr Hong

More information

Agus Harjoko Lab. Elektronika dan Instrumentasi, FMIPA, Universitas Gadjah Mada, Yogyakarta, Indonesia

Agus Harjoko Lab. Elektronika dan Instrumentasi, FMIPA, Universitas Gadjah Mada, Yogyakarta, Indonesia A Comparison Study of the Performance of the Fourier Transform Based Algorithm and the Artificial Neural Network Based Algorithm in Detecting Faric Texture Defect Agus Harjoko La. Elektronika dan Instrumentasi,

More information

Chap5 The Theory of the Simplex Method

Chap5 The Theory of the Simplex Method College of Management, NCTU Operation Research I Fall, Chap The Theory of the Simplex Method Terminology Constraint oundary equation For any constraint (functional and nonnegativity), replace its,, sign

More information

Maximum Clique Problem

Maximum Clique Problem Maximum Clique Problem Dler Ahmad dha3142@rit.edu Yogesh Jagadeesan yj6026@rit.edu 1. INTRODUCTION Graph is a very common approach to represent computational problems. A graph consists a set of vertices

More information

Heuristis for Combinatorial Optimization

Heuristis for Combinatorial Optimization Heuristis for Combinatorial Optimization Luigi De Giovanni Dipartimento di Matematica, Università di Padova Luigi De Giovanni Heuristic for Combinatorial Optimization 1 / 59 Exact and heuristic methods

More information

Submodular Function Maximization via the Multilinear Relaxation and Contention Resolution Schemes

Submodular Function Maximization via the Multilinear Relaxation and Contention Resolution Schemes Sumodular Function Maximization via the Multilinear Relaxation and Contention Resolution Schemes Chandra Chekuri Dept. of Computer Science University of Illinois Urana, IL 61801 chekuri@cs.illinois.edu

More information

A Genetic Algorithm with Evolutionary Path-relinking for the SONET Ring Assignment Problem

A Genetic Algorithm with Evolutionary Path-relinking for the SONET Ring Assignment Problem EngOpt 2008 - International Conference on Engineering Optimization Rio de Janeiro, Brazil, 01-05 June 2008. A Genetic Algorithm with Evolutionary Path-relinking for the SONET Ring Assignment Problem Lucas

More information

An iterated hyperplane exploration approach for the Quadratic Knapsack Problem

An iterated hyperplane exploration approach for the Quadratic Knapsack Problem An iterated hyperplane exploration approach for the Quadratic Knapsack Problem Yuning Chen a and Jin-Kao Hao a,b, a LERIA, Université d Angers, Bd Lavoisier, 90 Angers, France b Institut Universitaire

More information

Analyzing the Performance of Pattern Database Heuristics

Analyzing the Performance of Pattern Database Heuristics Analyzing the Performance of Pattern Dataase Heuristics Richard E. Korf Computer Science Department University of California, Los Angeles Los Angeles, CA 90095 korf@cs.ucla.edu Astract We introduce a model

More information

Heuristis for Combinatorial Optimization

Heuristis for Combinatorial Optimization Heuristis for Combinatorial Optimization Luigi De Giovanni Dipartimento di Matematica, Università di Padova Luigi De Giovanni Heuristic for Combinatorial Optimization 1 / 57 Exact and heuristic methods

More information

Algorithms for the Bin Packing Problem with Conflicts

Algorithms for the Bin Packing Problem with Conflicts Algorithms for the Bin Packing Problem with Conflicts Albert E. Fernandes Muritiba *, Manuel Iori, Enrico Malaguti*, Paolo Toth* *Dipartimento di Elettronica, Informatica e Sistemistica, Università degli

More information

Non-deterministic Search techniques. Emma Hart

Non-deterministic Search techniques. Emma Hart Non-deterministic Search techniques Emma Hart Why do local search? Many real problems are too hard to solve with exact (deterministic) techniques Modern, non-deterministic techniques offer ways of getting

More information

Suppose you have a problem You don t know how to solve it What can you do? Can you use a computer to somehow find a solution for you?

Suppose you have a problem You don t know how to solve it What can you do? Can you use a computer to somehow find a solution for you? Gurjit Randhawa Suppose you have a problem You don t know how to solve it What can you do? Can you use a computer to somehow find a solution for you? This would be nice! Can it be done? A blind generate

More information

Using Penalties instead of Rewards: Solving OCST Problems with Problem-Specific Guided Local Search

Using Penalties instead of Rewards: Solving OCST Problems with Problem-Specific Guided Local Search Using Penalties instead of Rewards: Solving OCST Problems with Problem-Specific Guided Local Search Wolfgang Steitz, Franz Rothlauf Working Paper 01/2011 March 2011 Working Papers in Information Systems

More information

Load the Edges You Need: A Generic I/O Optimization for Disk-based Graph Processing

Load the Edges You Need: A Generic I/O Optimization for Disk-based Graph Processing Load the Edges You Need: A Generic I/O Optimization for Disk-ased Graph Processing Keval Vora, University of California, Riverside; Guoqing Xu, University of California, Irvine; Rajiv Gupta, University

More information

Hardware-Software Codesign

Hardware-Software Codesign Hardware-Software Codesign 4. System Partitioning Lothar Thiele 4-1 System Design specification system synthesis estimation SW-compilation intellectual prop. code instruction set HW-synthesis intellectual

More information

Combination Replicas Placements Strategy for Data sets from Cost-effective View in the Cloud *

Combination Replicas Placements Strategy for Data sets from Cost-effective View in the Cloud * Comination Replicas Placements Strategy for Data sets from Cost-effective View in the Cloud * Xiuguo Wu School of Management Science and Engineering, Shandong University of Finance and Economics, No. 7366,

More information

Genetic Algorithm Performance with Different Selection Methods in Solving Multi-Objective Network Design Problem

Genetic Algorithm Performance with Different Selection Methods in Solving Multi-Objective Network Design Problem etic Algorithm Performance with Different Selection Methods in Solving Multi-Objective Network Design Problem R. O. Oladele Department of Computer Science University of Ilorin P.M.B. 1515, Ilorin, NIGERIA

More information

G Force Tolerance Sample Solution

G Force Tolerance Sample Solution G Force Tolerance Sample Solution Introduction When different forces are applied to an oject, G-Force is a term used to descrie the resulting acceleration, and is in relation to acceleration due to gravity(g).

More information

Response time analysis in AFDX networks

Response time analysis in AFDX networks Response time analysis in AFDX networks J. Javier Gutiérrez, J. Carlos Palencia, and Michael González Harour Computers and Real-Time Group, Universidad de Cantaria, 39005-Santander, SPAIN {gutierjj, palencij,

More information

This article appeared in a journal published by Elsevier. The attached copy is furnished to the author for internal non-commercial research and

This article appeared in a journal published by Elsevier. The attached copy is furnished to the author for internal non-commercial research and This article appeared in a journal published by Elsevier. The attached copy is furnished to the author for internal non-commercial research and education use, including for instruction at the authors institution

More information

Ant Algorithms for the University Course Timetabling Problem with Regard to the State-of-the-Art

Ant Algorithms for the University Course Timetabling Problem with Regard to the State-of-the-Art Ant Algorithms for the University Course Timetabling Problem with Regard to the State-of-the-Art Krzysztof Socha, Michael Sampels, and Max Manfrin IRIDIA, Université Libre de Bruxelles, CP 194/6, Av. Franklin

More information

Caching Policies for In-Network Caching

Caching Policies for In-Network Caching Caching Policies for In-Network Caching Zhe Li, Gwendal Simon, Annie Gravey Institut Mines Telecom - Telecom Bretagne, UMR CNRS 674 IRISA Université Européenne de Bretagne, France {firstname.lastname}@telecom-retagne.eu

More information

Leveraging Set Relations in Exact Set Similarity Join

Leveraging Set Relations in Exact Set Similarity Join Leveraging Set Relations in Exact Set Similarity Join Xubo Wang, Lu Qin, Xuemin Lin, Ying Zhang, and Lijun Chang University of New South Wales, Australia University of Technology Sydney, Australia {xwang,lxue,ljchang}@cse.unsw.edu.au,

More information

A Memetic Heuristic for the Co-clustering Problem

A Memetic Heuristic for the Co-clustering Problem A Memetic Heuristic for the Co-clustering Problem Mohammad Khoshneshin 1, Mahtab Ghazizadeh 2, W. Nick Street 1, and Jeffrey W. Ohlmann 1 1 The University of Iowa, Iowa City IA 52242, USA {mohammad-khoshneshin,nick-street,jeffrey-ohlmann}@uiowa.edu

More information

A Framework for Dynamic Image Sampling Based on Supervised Learning

A Framework for Dynamic Image Sampling Based on Supervised Learning A Framework for Dynamic Image Sampling Based on Supervised Learning G. M. Dilshan P. Godaliyadda, Dong Hye Ye, Michael D. Uchic, Michael A. Groeer, Gregery T. Buzzard, and Charles A. Bouman School of Electrical

More information

Pedestrian Detection Using Structured SVM

Pedestrian Detection Using Structured SVM Pedestrian Detection Using Structured SVM Wonhui Kim Stanford University Department of Electrical Engineering wonhui@stanford.edu Seungmin Lee Stanford University Department of Electrical Engineering smlee729@stanford.edu.

More information

Fast Efficient Clustering Algorithm for Balanced Data

Fast Efficient Clustering Algorithm for Balanced Data Vol. 5, No. 6, 214 Fast Efficient Clustering Algorithm for Balanced Data Adel A. Sewisy Faculty of Computer and Information, Assiut University M. H. Marghny Faculty of Computer and Information, Assiut

More information

Evolutionary Computation Algorithms for Cryptanalysis: A Study

Evolutionary Computation Algorithms for Cryptanalysis: A Study Evolutionary Computation Algorithms for Cryptanalysis: A Study Poonam Garg Information Technology and Management Dept. Institute of Management Technology Ghaziabad, India pgarg@imt.edu Abstract The cryptanalysis

More information

Network Game Traffic Modelling

Network Game Traffic Modelling Network Game Traffic Modelling Johannes Färer University of Stuttgart, Inst. of Communication Networks and Computer Engineering Pfaffenwaldring, 9 Stuttgart, Germany E-mail: faerer@ind.uni-stuttgart.de

More information

Timing-Constrained I/O Buffer Placement for Flip- Chip Designs

Timing-Constrained I/O Buffer Placement for Flip- Chip Designs Timing-Constrained I/O Buffer Placement for Flip- Chip Designs Zhi-Wei Chen 1 and Jin-Tai Yan 2 1 College of Engineering, 2 Department of Computer Science and Information Engineering Chung-Hua University,

More information

Tree Based Symmetric Key Broadcast Encryption

Tree Based Symmetric Key Broadcast Encryption Tree Based Symmetric Key Broadcast Encryption Sanjay Bhattacherjee and Palash Sarkar Applied Statistics Unit Indian Statistical Institute 203, B.T.Road, Kolkata, India - 700108. {sanjay r,palash}@isical.ac.in

More information

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Mathematical and Algorithmic Foundations Linear Programming and Matchings Adavnced Algorithms Lectures Mathematical and Algorithmic Foundations Linear Programming and Matchings Paul G. Spirakis Department of Computer Science University of Patras and Liverpool Paul G. Spirakis

More information

A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2

A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2 Chapter 5 A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2 Graph Matching has attracted the exploration of applying new computing paradigms because of the large number of applications

More information

Lazy Reachability Analysis in Distributed Systems

Lazy Reachability Analysis in Distributed Systems Lazy Reachaility Analysis in Distriuted Systems Loïg Jezequel 1,3 and Didier Lime 2,3 1 Université de Nantes 2 École Centrale de Nantes 3 IRCCyN, UMR CNRS 6597 CONCUR August 24, 2016 Quéec Overview of

More information

Hybrids on Steroids: SGX-Based High Performance BFT

Hybrids on Steroids: SGX-Based High Performance BFT Hyrids on Steroids: SGX-Based High Performance BFT Johannes Behl TU Braunschweig ehl@ir.cs.tu-s.de Toias Distler FAU Erlangen-Nürnerg distler@cs.fau.de Rüdiger Kapitza TU Braunschweig rrkapitz@ir.cs.tu-s.de

More information

α Coverage to Extend Network Lifetime on Wireless Sensor Networks

α Coverage to Extend Network Lifetime on Wireless Sensor Networks Noname manuscript No. (will be inserted by the editor) α Coverage to Extend Network Lifetime on Wireless Sensor Networks Monica Gentili Andrea Raiconi Received: date / Accepted: date Abstract An important

More information

arxiv: v1 [cs.ai] 12 Feb 2017

arxiv: v1 [cs.ai] 12 Feb 2017 GENETIC AND MEMETIC ALGORITHM WITH DIVERSITY EQUILIBRIUM BASED ON GREEDY DIVERSIFICATION ANDRÉS HERRERA-POYATOS 1 AND FRANCISCO HERRERA 1,2 arxiv:1702.03594v1 [cs.ai] 12 Feb 2017 1 Research group Soft

More information

A Diversified Multi-Start Algorithm for Unconstrained Binary Quadratic Problems Leveraging the Graphics Processor Unit

A Diversified Multi-Start Algorithm for Unconstrained Binary Quadratic Problems Leveraging the Graphics Processor Unit A Diversified Multi-Start Algorithm for Unconstrained Binary Quadratic Problems Leveraging the Graphics Processor Unit Mark Lewis Missouri Western State University, Saint Joseph, Missouri 64507, USA mlewis14@missouriwestern.edu

More information

Towards a Fast and Reliable Software Implementation of SLI-FLP Hybrid Computer Arithmetic

Towards a Fast and Reliable Software Implementation of SLI-FLP Hybrid Computer Arithmetic Proceedings of the 6th WSEAS Int. Conf. on Systems Theory & Scientific Computation, Elounda, Greece, August 2-23, 2006 (pp0-08) Towards a Fast and Reliale Software Implementation of SLI-FLP Hyrid Computer

More information

1 Model checking and equivalence checking

1 Model checking and equivalence checking 978--52-85972- - Practical Design Verification Model checking and equivalence checking Masahiro Fujita. Introduction Owing to the advances in semiconductor technology, a large and complex system that has

More information

RBFT: Redundant Byzantine Fault Tolerance

RBFT: Redundant Byzantine Fault Tolerance RBFT: Redundant Byzantine Fault Tolerance Pierre-Louis Aulin Grenole University Sonia Ben Mokhtar CNRS - LIRIS Vivien Quéma Grenole INP Astract Byzantine Fault Tolerant state machine replication (BFT)

More information

Simple mechanisms for escaping from local optima:

Simple mechanisms for escaping from local optima: The methods we have seen so far are iterative improvement methods, that is, they get stuck in local optima. Simple mechanisms for escaping from local optima: I Restart: re-initialise search whenever a

More information

arxiv: v2 [cs.db] 19 Apr 2015

arxiv: v2 [cs.db] 19 Apr 2015 Clustering RDF Dataases Using Tunale-LSH Güneş Aluç, M. Tamer Özsu, and Khuzaima Daudjee University of Waterloo David R. Cheriton School of Computer Science {galuc,tamer.ozsu,kdaudjee}@uwaterloo.ca arxiv:154.2523v2

More information

Hybridization EVOLUTIONARY COMPUTING. Reasons for Hybridization - 1. Naming. Reasons for Hybridization - 3. Reasons for Hybridization - 2

Hybridization EVOLUTIONARY COMPUTING. Reasons for Hybridization - 1. Naming. Reasons for Hybridization - 3. Reasons for Hybridization - 2 Hybridization EVOLUTIONARY COMPUTING Hybrid Evolutionary Algorithms hybridization of an EA with local search techniques (commonly called memetic algorithms) EA+LS=MA constructive heuristics exact methods

More information

A General Data and Acknowledgement Dissemination Scheme in Mobile Social Networks

A General Data and Acknowledgement Dissemination Scheme in Mobile Social Networks A General Data and Acknowledgement Dissemination Scheme in Moile Social Networks Ning Wang and Jie Wu Department of Computer and Information Sciences, Temple University, USA Email: {ning.wang, jiewu}@temple.edu

More information

Umbrella : A novel fixed-size DHT protocol

Umbrella : A novel fixed-size DHT protocol Umrella : A novel fixed-size DHT protocol A. D. Sotiriou, P. Kalliaras, P. Papageorgiou, N. Mitrou Computer Network Laoratory, School of Electrical and Computer Engineering National Technical University

More information

Constructive meta-heuristics

Constructive meta-heuristics Constructive meta-heuristics Heuristic algorithms Giovanni Righini University of Milan Department of Computer Science (Crema) Improving constructive algorithms For many problems constructive algorithms

More information

TEXTURE CLASSIFICATION BY LOCAL SPATIAL PATTERN MAPPING BASED ON COMPLEX NETWORK MODEL. Srisupang Thewsuwan and Keiichi Horio

TEXTURE CLASSIFICATION BY LOCAL SPATIAL PATTERN MAPPING BASED ON COMPLEX NETWORK MODEL. Srisupang Thewsuwan and Keiichi Horio International Journal of Innovative Computing, Information and Control ICIC International c 2018 ISSN 1349-4198 Volume 14, Numer 3, June 2018 pp. 1113 1121 TEXTURE CLASSIFICATION BY LOCAL SPATIAL PATTERN

More information

CMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017

CMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017 CMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017 Reading: Section 9.2 of DPV. Section 11.3 of KT presents a different approximation algorithm for Vertex Cover. Coping

More information

Binary Decision Diagrams (BDDs) Pingqiang Zhou ShanghaiTech University

Binary Decision Diagrams (BDDs) Pingqiang Zhou ShanghaiTech University Binary Decision Diagrams (BDDs) Pingqiang Zhou ShanghaiTech University Computational Boolean Algera Representations Applying unate recursive paradigm (URP) in solving tautology is a great warm up example.

More information

Chapter 14 Global Search Algorithms

Chapter 14 Global Search Algorithms Chapter 14 Global Search Algorithms An Introduction to Optimization Spring, 2015 Wei-Ta Chu 1 Introduction We discuss various search methods that attempts to search throughout the entire feasible set.

More information

The study of comparisons of three crossover operators in genetic algorithm for solving single machine scheduling problem. Quan OuYang, Hongyun XU a*

The study of comparisons of three crossover operators in genetic algorithm for solving single machine scheduling problem. Quan OuYang, Hongyun XU a* International Conference on Manufacturing Science and Engineering (ICMSE 2015) The study of comparisons of three crossover operators in genetic algorithm for solving single machine scheduling problem Quan

More information

Coloring 3-Colorable Graphs

Coloring 3-Colorable Graphs Coloring -Colorable Graphs Charles Jin April, 015 1 Introduction Graph coloring in general is an etremely easy-to-understand yet powerful tool. It has wide-ranging applications from register allocation

More information

/06/$20.00 c 2006 IEEE I. INTRODUCTION

/06/$20.00 c 2006 IEEE I. INTRODUCTION Scalale Router Memory Architecture Based on Interleaved DRAM Feng Wang and Mounir Hamdi Computer Science Department of The Hong Kong University of Science and Technology {fwang, hamdi}@cs.ust.hk Astract

More information

Efficient Non-domination Level Update Approach for Steady-State Evolutionary Multiobjective Optimization

Efficient Non-domination Level Update Approach for Steady-State Evolutionary Multiobjective Optimization Efficient Non-domination Level Update Approach for Steady-State Evolutionary Multiobjective Optimization Ke Li 1, Kalyanmoy Deb 1, Qingfu Zhang 2, and Sam Kwong 2 1 Department of Electrical and Computer

More information

T Parallel and Distributed Systems (4 ECTS)

T Parallel and Distributed Systems (4 ECTS) T 79.4301 Parallel and Distriuted Systems (4 ECTS) T 79.4301 Rinnakkaiset ja hajautetut järjestelmät (4 op) Lecture 4 11th of Feruary 2008 Keijo Heljanko Keijo.Heljanko@tkk.fi T 79.4301 Parallel and Distriuted

More information

The Genetic Algorithm for finding the maxima of single-variable functions

The Genetic Algorithm for finding the maxima of single-variable functions Research Inventy: International Journal Of Engineering And Science Vol.4, Issue 3(March 2014), PP 46-54 Issn (e): 2278-4721, Issn (p):2319-6483, www.researchinventy.com The Genetic Algorithm for finding

More information

Effective probabilistic stopping rules for randomized metaheuristics: GRASP implementations

Effective probabilistic stopping rules for randomized metaheuristics: GRASP implementations Effective probabilistic stopping rules for randomized metaheuristics: GRASP implementations Celso C. Ribeiro Isabel Rosseti Reinaldo C. Souza Universidade Federal Fluminense, Brazil July 2012 1/45 Contents

More information

Evolutionary Linkage Creation between Information Sources in P2P Networks

Evolutionary Linkage Creation between Information Sources in P2P Networks Noname manuscript No. (will be inserted by the editor) Evolutionary Linkage Creation between Information Sources in P2P Networks Kei Ohnishi Mario Köppen Kaori Yoshida Received: date / Accepted: date Abstract

More information

A Parallel Evolutionary Algorithm for Discovery of Decision Rules

A Parallel Evolutionary Algorithm for Discovery of Decision Rules A Parallel Evolutionary Algorithm for Discovery of Decision Rules Wojciech Kwedlo Faculty of Computer Science Technical University of Bia lystok Wiejska 45a, 15-351 Bia lystok, Poland wkwedlo@ii.pb.bialystok.pl

More information