Easy Optimization Problems, Relaxation, Local Processing for a single variable.

Slides:



Advertisements
Similar presentations
Optimization.
Advertisements

Engineering Optimization
Artificial Neural Networks
Optimization 吳育德.
Optimization Introduction & 1-D Unconstrained Optimization
Easy Optimization Problems, Relaxation, Local Processing for a small subset of variables.
Linear Discriminant Functions Wen-Hung Liao, 11/25/2008.
Steepest Decent and Conjugate Gradients (CG). Solving of the linear equation system.
Classification and Prediction: Regression Via Gradient Descent Optimization Bamshad Mobasher DePaul University.
Algebraic MultiGrid. Algebraic MultiGrid – AMG (Brandt 1982)  General structure  Choose a subset of variables: the C-points such that every variable.
1cs542g-term Notes  Assignment 1 due tonight ( me by tomorrow morning)
PHYS2020 NUMERICAL ALGORITHM NOTES ROOTS OF EQUATIONS.
Supervised learning 1.Early learning algorithms 2.First order gradient methods 3.Second order gradient methods.
Numerical Optimization
Function Optimization Newton’s Method. Conjugate Gradients
Easy Optimization Problems, Relaxation, Local Processing for a small subset of variables.
Lecture #18 EEE 574 Dr. Dan Tylavsky Nonlinear Problem Solvers.
1cs542g-term Notes  Extra class this Friday 1-2pm  If you want to receive s about the course (and are auditing) send me .
458 Interlude (Optimization and other Numerical Methods) Fish 458, Lecture 8.
Tutorial 12 Unconstrained optimization Conjugate gradients.
Motion Analysis (contd.) Slides are from RPI Registration Class.
Engineering Optimization
EDA (CS286.5b) Day 6 Partitioning: Spectral + MinCut.
Announcements Readings for today:
Optimization Methods One-Dimensional Unconstrained Optimization
Hard Optimization Problems: Practical Approach DORIT RON Tel Ziskind room #303
Easy Optimization Problems, Relaxation, Local Processing for a single variable.
12 1 Variations on Backpropagation Variations Heuristic Modifications –Momentum –Variable Learning Rate Standard Numerical Optimization –Conjugate.
Advanced Topics in Optimization
Linear Discriminant Functions Chapter 5 (Duda et al.)
Why Function Optimization ?
Stochastic Relaxation, Simulating Annealing, Global Minimizers.
Easy Optimization Problems, Relaxation, Local Processing for a small subset of variables.
Optimization Methods One-Dimensional Unconstrained Optimization
FP1: Chapter 2 Numerical Solutions of Equations
Tier I: Mathematical Methods of Optimization
9 1 Performance Optimization. 9 2 Basic Optimization Algorithm p k - Search Direction  k - Learning Rate or.
Computational Optimization
UNCONSTRAINED MULTIVARIABLE
Collaborative Filtering Matrix Factorization Approach
Chapter 17 Boundary Value Problems. Standard Form of Two-Point Boundary Value Problem In total, there are n 1 +n 2 =N boundary conditions.
ENCI 303 Lecture PS-19 Optimization 2
Chapter 11 – Neural Networks COMP 540 4/17/2007 Derek Singer.
Non-Linear Models. Non-Linear Growth models many models cannot be transformed into a linear model The Mechanistic Growth Model Equation: or (ignoring.
1 Unconstrained Optimization Objective: Find minimum of F(X) where X is a vector of design variables We may know lower and upper bounds for optimum No.
MA/CS 375 Fall MA/CS 375 Fall 2002 Lecture 31.
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Optimization & Constraints Add mention of global techiques Add mention of calculus.
CHAPTER 4, Part II Oliver Schulte Summer 2011 Local Search.
CHAPTER 3 NUMERICAL METHODS
559 Fish 559; Lecture 5 Non-linear Minimization. 559 Introduction Non-linear minimization (or optimization) is the numerical technique that is used by.
Example Ex. Find Sol. So. Example Ex. Find (1) (2) (3) Sol. (1) (2) (3)
Quasi-Newton Methods of Optimization Lecture 2. General Algorithm n A Baseline Scenario Algorithm U (Model algorithm for n- dimensional unconstrained.
Data Modeling Patrice Koehl Department of Biological Sciences National University of Singapore
Non-Linear Models. Non-Linear Growth models many models cannot be transformed into a linear model The Mechanistic Growth Model Equation: or (ignoring.
1 Chapter 6 General Strategy for Gradient methods (1) Calculate a search direction (2) Select a step length in that direction to reduce f(x) Steepest Descent.
Chapter 2-OPTIMIZATION
Chapter 2-OPTIMIZATION G.Anuradha. Contents Derivative-based Optimization –Descent Methods –The Method of Steepest Descent –Classical Newton’s Method.
METHOD OF STEEPEST DESCENT ELE Adaptive Signal Processing1 Week 5.
Computational Biology BS123A/MB223 UC-Irvine Ray Luo, MBB, BS.
Bump Hunting The objective PRIM algorithm Beam search References: Feelders, A.J. (2002). Rule induction by bump hunting. In J. Meij (Ed.), Dealing with.
Numerical Methods for Inverse Kinematics Kris Hauser ECE 383 / ME 442.
Project on Newton’s Iteration Method Presented by Dol Nath Khanal Project Advisor- Professor Dexuan Xie 05/11/2015.
Linear Discriminant Functions Chapter 5 (Duda et al.) CS479/679 Pattern Recognition Dr. George Bebis.
CSC321: Neural Networks Lecture 9: Speeding up the Learning
Non-linear Minimization
Dr. Arslan Ornek IMPROVING SEARCH
CS5321 Numerical Optimization
Collaborative Filtering Matrix Factorization Approach
CSE 589 Applied Algorithms Spring 1999
Instructor :Dr. Aamer Iqbal Bhatti
Presentation transcript:

Easy Optimization Problems, Relaxation, Local Processing for a single variable

The advantages of multileveling  Linear running time  Provided a “good coarsening” is performed: 1.The number of variables is reduced in such a way that preserves the essence (skeleton) of the graph => an easier problem 2.Enables processing in different scales, moves which are not likely to happen systematically in a “flat” approach  A better GLOBAL solver

General 1D Arrangement Problems A graph G(v,  a ij

General 1D Arrangement Problems E(x)=  i j a i j | x i -x j | p x i = v i /2 +  k:  k)<  i) v k ij xixi xjxj From the graph To the arrangement a ij

The complexity of pointwise relaxation for P=2 Go over all variables in lexicographic order, put x i at the weighted average location of its graph neighbors Problem: Does not preserve the volume demands! Reinforce volume demands at the end of each sweep  If the reinforcement is done after every variable, the complexity will be quadratic and not linear !  Sorting of x i is O(nlogn), however, usually logn<C, where C is the constant of the linear complexity  If the ‘sort’ is too slow, use bucketing instead

Different types of relaxation  Variable by variable relaxation – strict minimization  Changing a small subset of variables simultaneously – Window strict minimization relaxation  Stochastic relaxation – may increase the energy – should be followed by strict minimization

Variable by variable strict unconstrained minimization  Discrete (combinatorial) case : Ising model

Exc#1: 2D Ising spins exercise  Minimize  Periodic boundary condition  Initialize randomly: with probability.5 1.Go over the grid in lexicographic order, for each spin choose 1 or -1 whichever minimizes the energy (choose with probability ½ when the two possibilities have the same energy) until no changes are observed. 2. Repeat 3 times for each of the 4 possibilities of (h 1,h 2 ). 3. Is the global minimum achievable? 4. What local minima do you observe?

Variable by variable strict unconstrained minimization  Discrete (combinatorial) case : Ising model  Quadratic case : P=2  General functional : P=1, P>2

Exc#2: Pointwise relaxation for P=1  Minimize  Pick a variable, fix all at  Minimize  Find the optimal location for

Pointwise relaxation for P=6  Minimize  Pick a variable, fix all at  Minimize  Find the roots (zeros) of

Variable by variable strict unconstrained minimization  Discrete (combinatorial) case : Ising model  Quadratic case : P=2  General functional : P=1, P>2  Newton’s Method

Newton’s Method (Newton-Raphson)  Geometry  Taylor expansion Starting close enough to the root results with a very fast convergence  What is “close enough”?  May even diverge or oscillate  Verify local reduction in E

Variable by variable strict unconstrained minimization  Discrete (combinatorial) case : Ising model  Quadratic case : P=2  General functional : P=1, P>2  Newton’s Method  Verify local reduction in E  Numerical derivatives

Numerical derivatives  Newton’s Method :  Calculate numerically

Variable by variable strict unconstrained minimization  Discrete (combinatorial) case : Ising model  Quadratic case : P=2  General functional : P=1, P>2  Newton’s Method  Verify local reduction in E  Numerical derivatives  Steepest descent

Steepest descent  Level sets

Steepest descent  Level sets E(x,y)=x 2 +y 2

Steepest descent  Level sets E(x,y)=x 2 +y 2 c1c1 c2c2 c 1 < c 2

Steepest descent  Level sets  The gradient at a point is perpendicular to the level set and is directed towards the maximal rate of increase in the energy  Vector field of gradients

Steepest descent The vector field of the gradient of E(x,y)=x 2 +y 2 At every point it is perpendicular to the level set c1c1 c2c2 c 1 < c 2

Steepest descent  Level sets  The gradient at a point is perpendicular to the level set and is directed towards the maximal rate of increase in the energy  Vector field of gradients => Choose the opposite direction of the gradient as the direction for maximal decrease of the energy How much should you go in this direction?

Variable by variable strict unconstrained minimization  Discrete (combinatorial) case : Ising model  Quadratic case : P=2  General functional : P=1, P>2  Newton’s Method  Verify local reduction in E  Numerical derivatives  Steepest descent  Line search

Line search  Starting at some  Minimize along  Exact minimization: solve  Guess an and use backtracking  Quadratic approximation: Choose, then, draw a parabola through the 3 points and find its minimum  Verify local reduction in E  If not - choose the available minimum

Exc#3: Steepest descent exercise For at Find the steepest descent direction Compare its analytical and numerical calculations Choose 2 small steps in this direction Draw a parabola through the 3 points Find the minimum of the parabola Verify reduction in the energy Find a step that increases the energy

An example of a single node relaxation for the placement problem

The placement problem Given a hypergraph: 1. A list of nodes each with its length and pins’ location 2. A list of lists of subsets of nodes - hyperedges

The hypergraph for a microchip

The placement problem Given a hypergraph: 1. A list of nodes each with its length and pins’ location 2. A list of lists of subsets of nodes - hyperedges  Minimize the sum of all wires approximated by the half Bounding Box of each hyperedge

Bounding Box The bounding box Pins’ locations

The placement problem Given a hypergraph: 1. A list of nodes each with its length and pins’ location 2. A list of lists of subsets of nodes - hyperedges  Minimize the sum of all wires approximated by the half Bounding Box of each hyperedge  Approximate the hypergraph by a graph and the Bounding Box by a quadratic functional

From hypergraph to graph Add a virtual node at the center of mass of the nodes belonging to an hyperedge

From hypergraph to graph Add a virtual node at x 0, the center of mass of the nodes The resulting graph is x1x1 x3x3 x2x2 x4x4 x 0 =(x 1 + x 2 + x 3 + x 4 ) /4 E(x)=  i (x i - x 0 ) 2, i=1,…,4 By eliminating x 0 : E(x)=  ij (x i - x j ) 2 /4, i,j=1,…,4

From hypergraph to graph E(x)=  ij (x i - x j ) 2 /4, i,j=1,…,4 x1x1 x3x3 x2x2 x4x4 A hyperedge with n nodes contributes n(n-1)/2 quadratic terms with weight 1/n to E(x) Creates a clique of connections

The placement problem Given a hypergraph: 1. A list of nodes each with its length and pins’ location 2. A list of lists of subsets of nodes - hyperedges  Minimize the sum of all wires approximated by the half Bounding Box of each hyperedge  Approximate the hypergraph by a graph and the Bounding Box by a quadratic function The placement has 2 phases: global and detailed  Use the original definition towards the detailed

Approximations for the placement problem  Given a hypergraph => translate it to a graph  The nodes are now connected at their center of mass (not at the pins) with straight lines (not rectilinear connections)  The used energy function is quadratic (not the bounding box)  Towards the end of the global placement and definitely at the (discrete) detailed placement use the original definition of the problem not the approximations

Data structure For each node in the graph keep 1.A list of all the graph’s neighbors: for each neighbor keep a pair of index and weight 2.… 3.… 4.Its current placement 5.The unique square in the grid the node belongs to For each square in the grid keep 1.A list of all the nodes which are mostly within  Defines the current physical neighborhood

The augmented E(x i,y i ) to be minimized For node i, fix all other nodes at their current and minimize the augmented functional where j are the nodes in the 3x3 window of squares around the square which includes i

The augmented E(x i,y i ) to be minimized For node i, fix all other nodes at their current and minimize the augmented functional where j are the nodes in the 3x3 window of squares around the square which includes i  How can the “steepest descent direction” be found?

The “steepest descent”

The augmented E(x i,y i ) to be minimized For node i, fix all other nodes at their current and minimize the augmented functional where j are the nodes in the 3x3 window of squares around the square which includes i  How can the “steepest descent direction” be found?  Use numerical “discrete derivatives”  For simplicity calculate each direction separately!  This is a numerical discrete line search minimization

Move node to the right

Changes in the energy and overlap

X-direction “discrete derivatives”  For node, fix all other nodes at their current  Current overlap  Calculate  Calculate optimal change by quadratic approximation  Check that the energy has indeed decreased  Update the data structure at the end of the sweep

Problems  Slowly converging  Minimization of one variable may conflict and influence other variables => instead of a single variable at a time, use a small subset Window minimization