CO 769. Paper presentation. A New Method for Quick Solving Quadratic Assignment Problem by Zhongzhen Zhang 0. Before intro Focus. “A New Method for Quickly Solving Quadratic Assignment Problems” Key concept. “Pivoting Algorithms” • • Linear Programming well established in Quadratic Programming Follows from. “An efficient method for solving the local minimum of indefinite quadratic programming” More work: same person & same topic. • Book (in Chinese,2004) Convex Programming: Pivoting Algorithms for Portfolio Selection and Network Optimization CO 769 An algorithm for solving Quadratic Assignment Problems 1. Intro: Pivoting • Start with a set of vectors • Definition. The subset independent and maximal i.e. • Assume is called a basis if it is linearly is a basis. Represent this situation with the table Basic vectors Nonbasic vectors CO 769 An algorithm for solving Quadratic Assignment Problems 1. Pivoting • Pivoting. Swap one basic vector with a nonbasic vector When it can be done? swapped • How to do it? What comes out? CO 769 non zero An algorithm for solving Quadratic Assignment Problems 1. Pivoting • Pivoting. Swap one basic vector with a nonbasic vector Update the table ! … … … non zero … CO 769 An algorithm for solving Quadratic Assignment Problems 2.Solving systems of linear equalities&inequalities B can be empty • Solve: l can be 0 • Take large M>0: System defined by n+m vectors: • Set up the “pivoting table”: CO 769 An algorithm for solving Quadratic Assignment Problems 2.Solving systems of linear equalities&inequalities ≥ Let x1 be the solution of: = ≥ measure the offset x1 is a solution CO 769 An algorithm for solving Quadratic Assignment Problems 3. Preprocessing: move the equalities in the basis. ≥ ≥ ≥ Assume is <0 1. Find a positive element = = • no such thing: infeasible problem 2. Do a pivoting on a positive element = • ≥ for example a11 = ≥ ≥ ≥ ≥ = = Theorem. >0 ≥ ≥ CO 769 An algorithm for solving Quadratic Assignment Problems 3. Preprocessing: move the equalities in the basis. = ≥ ≥ Assume is >0 1. Find a negative element ≥ • = no such thing: infeasible problem 2. Do a pivoting on a negative element • = for example = ≥ = ≥ ≥ ≥ ≥ = ≥ Theorem. Once an equality goes in the basis it stays there ! ! ! CO 769 ≥ An algorithm for solving Quadratic Assignment Problems 3. Preprocessing: move the equalities in the basis. = = ≥ Assume is =0 1. If everything =0 the equality is redundant. Just throw it away. ≥ ≥ 2. Else do a pivoting on a nonzero element = ≥ ≥ CO 769 An algorithm for solving Quadratic Assignment Problems 3. Main iterations = = ≥ ≥ ≥ ≥ assume <0 1. Find a positive element • ≥ ≥ no such thing: infeasible 2. Do a pivoting on it ≥ • Pivoting rules: the smallest deviation rule, the largest distance rule, the smallest index rule etc. • Theorem. When cycling doesn’t occur. CO 769 An algorithm for solving Quadratic Assignment Problems 4. Quadratic programming • What I’m about to do can be done for general quadratic problems • For simplicity, I’ll work directly with the quadratic problem that will come from QAP • Same ideas CO 769 An algorithm for solving Quadratic Assignment Problems 4. Quadratic programming • Consider: where • As before: • Set up KKT for this: CO 769 An algorithm for solving Quadratic Assignment Problems 4. Quadratic programming • Consider: where • KKT • Step 1: get rid of γ’s CO 769 0≤ An algorithm for solving Quadratic Assignment Problems 4. Quadratic programming. Preprocessing. • New KKT The unknowns Ignore this! ≥ ≥ ≥ ≥ ≥ ≥ = Step 1. Preprocessing. ! ! Must become basic ! ! = CO 769 An algorithm for solving Quadratic Assignment Problems 4. QP. Preprocessing. • New KKT The unknowns Ignore this! ≥ ≥ ≥ ≥ ≥ ≥ = Step 1. Preprocessing. ! ! Must become basic ! ! = CO 769 An algorithm for solving Quadratic Assignment Problems 4. QP. Preprocessing. • KKT The unknowns Ignore this! = ≥ ≥ !Don’t destroy other complementarity! Choose pivot! ≥ ≥ ≥ ≥ Step 1. Preprocessing. ! ! Must become basic ! ! = CO 769 An algorithm for solving Quadratic Assignment Problems 4. QP. Preprocessing. • KKT The unknowns Ignore this! = ≥ ≥ ≥ ≥ ≥ ≥ Step 1. Preprocessing. ! ! Must become basic ! ! = CO 769 An algorithm for solving Quadratic Assignment Problems 4. QP. Preprocessing. =0 or 1 =0 or 1 or -1 • Preprocessing leads to a feasible solution • Choosing pivots in preprocessing can be done in more than one way. Pivot selection plays a role in the implementation. If a choice fails, another is pursued. Remark 1. The method described in the paper is heuristic. 2. Attempts to gain insight are made. 3. No insights for pivot selection in preprocessing. CO 769 An algorithm for solving Quadratic Assignment Problems 4. QP. Main Iterations: Local search. Not any local search is good. Goal: • Decrease in the objective! • Nothing else. • No other insight. Local search: What happens: The offset column must be updated. Feasibility can be lost!! CO 769 An algorithm for solving Quadratic Assignment Problems 4. QP. Main Iterations: Pivoting. • In general for QP: pivoting is done such that complementarity is preserved ! • Pivoting can destroy the feasibility ! Keep feasibility all the time • Pivoting modifies the objective ! Heuristic goal: pivot to decrease the objective Feasibility Forward pivoting. Assume the pivot is • produces a feasible solution Objective Decrease • CO 769 An algorithm for solving Quadratic Assignment Problems 4. QP. Main Iterations: Pivoting. • In general for QP: pivoting is done such that complementarity is preserved ! • Pivoting can destroy the feasibility ! Keep feasibility all the time • Pivoting modifies the objective ! Heuristic goal: pivot to decrease the objective Feasibility Backward pivoting. Assume the pivot is • produces a feasible solution Objective Decrease • CO 769 An algorithm for solving Quadratic Assignment Problems 4. QP. Main Iterations: Pivoting. • In general for QP: pivoting is done such that complementarity is preserved ! • Pivoting can destroy the feasibility ! Keep feasibility all the time • Pivoting modifies the objective ! Heuristic goal: pivot to decrease the objective Par pivoting. Assume the pivot is Feasibility No Decrease in Objective CO 769 An algorithm for solving Quadratic Assignment Problems 4. QP. Main Iterations: Pivoting. • This pivoting: against heuristic. • Experiments show: Par pivoting. Assume the pivot is equivalent with + Feasibility No Decrease in Objective CO 769 An algorithm for solving Quadratic Assignment Problems 4. QP. Main Iterations: Pivoting. “The contraction effect of pivoting operations occurs to us the formation of substance that is under certain conditions or control while the formation of a good solution of QAP is depending on the appropriate control of pivoting operations. It is hopeful to discover the deep mechanism of QAP and develop more efficient computing method.” Z.Zhang Thanks! CO 769 An algorithm for solving Quadratic Assignment Problems