This document summarizes a PhD thesis defense about algorithms and computations involving high-dimensional polytopes defined by oracles. It introduces polytope representations, oracle definitions, and discusses resultant polytopes arising in algebraic geometry. It outlines an output-sensitive algorithm for computing projections of resultant polytopes using mixed subdivisions. It also describes work on edge-skeleton computations, a volume algorithm, 4D resultant polytope combinatorics, and high-dimensional predicate software.
High-dimensional polytopes defined by oracles: algorithms, computations and a...Vissarion Fisikopoulos
The document discusses algorithms for computing volumes of polytopes. It notes that exactly computing volumes is hard, but randomized polynomial-time algorithms can approximate volumes with high probability. It describes two algorithms: Random Directions Hit-and-Run (RDHR), which generates random points within a polytope via random walks; and Multiphase Monte Carlo, which approximates a polytope's volume by sampling points within a sequence of enclosing balls. RDHR mixes in O(d^3) steps and these algorithms can compute volumes of high-dimensional polytopes that exact algorithms cannot handle.
This document summarizes two algorithms for computing properties of high-dimensional polytopes given access to certain oracle functions:
1. An algorithm for computing the edge-skeleton of a polytope in oracle polynomial-time using an oracle that returns the vertex maximizing a linear function.
2. A randomized algorithm for approximating the volume of a polytope by generating random points within it using a hit-and-run process, and estimating the volume from these points. The algorithm runs in oracle polynomial-time and provides an approximation with high probability.
Experimental results show the volume algorithm can approximate volumes of polytopes up to 100 dimensions within 1% error in under 2 hours, outperforming exact
Computing the volume of a convex body is a fundamental problem in computational geometry and optimization. In this talk we discuss the computational complexity of this problem from a theoretical as well as practical point of view. We show examples of how volume computation appear in applications ranging from combinatorics to algebraic geometry.
Next, we design the first practical algorithm for polytope volume approximation in high dimensions (few hundreds).
The algorithm utilizes uniform sampling from a convex region and efficient boundary polytope oracles.
Interestingly, our software provides a framework for exploring theoretical advances since it is believed, and our experiments provide evidence for this belief, that the current asymptotic bounds are unrealistically high.
Efficient Edge-Skeleton Computation for Polytopes Defined by OraclesVissarion Fisikopoulos
This document summarizes algorithms for computing the edge skeleton of a polytope defined by oracle functions. It first describes an existing algorithm for vertex enumeration in the oracle model that works by computing an initial simplex and recursively querying the oracle. It then presents a new algorithm for computing the edge skeleton that takes as input the oracle functions and a superset of edge directions, and works by generating candidate edge segments and validating them with the oracle. The runtime of this edge skeleton algorithm is polynomial in parameters of the polytope representation.
Polyhedral computations in computational algebraic geometry and optimizationVissarion Fisikopoulos
The document summarizes a talk on polyhedral computations in computational algebraic geometry and optimization. It discusses algorithms for enumerating vertices of resultant polytopes and 2-level polytopes. Applications include support computation for implicit equations and computing resultants and discriminants. Open problems include finding the maximum number of faces of 4-dimensional resultant polytopes and explaining symmetries in their maximal f-vectors.
Algorithm Portfolios for Noisy Optimization: Compare Solvers Early (LION8)Jialin LIU
"Algorithm Portfolios for Noisy Optimization: Compare Solvers Early". Marie-Liesse Cauwet, Jialin Liu and Olivier Teytaud. The 8th Learning and Intelligent OptimizatioN Conference (LION8), 2014.
This document discusses the instruction set of the 8085 microprocessor. It is divided into 5 categories: data transfer, arithmetic, logic, branch, and stack/I/O control. Examples are provided for common instructions like MOV, ADD, SUB, AND, OR, etc. along with explanations of how they work and which flags they affect. An example program is given that performs a logical operation to reset the last 4 bits of a number and stores the result in memory.
This document discusses approximation algorithms and introduces several combinatorial optimization problems. It begins by explaining that approximation algorithms are needed to find near-optimal solutions for problems that cannot be solved in polynomial time, such as set cover and bin packing. It then provides examples of problems that are in P, NP, and NP-complete. Several techniques for designing approximation algorithms are outlined, including greedy algorithms, linear programming, and semidefinite programming. Specific NP-complete problems like vertex cover, set cover, and independent set are introduced and approximations algorithms with performance guarantees are provided for set cover and vertex cover.
High-dimensional polytopes defined by oracles: algorithms, computations and a...Vissarion Fisikopoulos
The document discusses algorithms for computing volumes of polytopes. It notes that exactly computing volumes is hard, but randomized polynomial-time algorithms can approximate volumes with high probability. It describes two algorithms: Random Directions Hit-and-Run (RDHR), which generates random points within a polytope via random walks; and Multiphase Monte Carlo, which approximates a polytope's volume by sampling points within a sequence of enclosing balls. RDHR mixes in O(d^3) steps and these algorithms can compute volumes of high-dimensional polytopes that exact algorithms cannot handle.
This document summarizes two algorithms for computing properties of high-dimensional polytopes given access to certain oracle functions:
1. An algorithm for computing the edge-skeleton of a polytope in oracle polynomial-time using an oracle that returns the vertex maximizing a linear function.
2. A randomized algorithm for approximating the volume of a polytope by generating random points within it using a hit-and-run process, and estimating the volume from these points. The algorithm runs in oracle polynomial-time and provides an approximation with high probability.
Experimental results show the volume algorithm can approximate volumes of polytopes up to 100 dimensions within 1% error in under 2 hours, outperforming exact
Computing the volume of a convex body is a fundamental problem in computational geometry and optimization. In this talk we discuss the computational complexity of this problem from a theoretical as well as practical point of view. We show examples of how volume computation appear in applications ranging from combinatorics to algebraic geometry.
Next, we design the first practical algorithm for polytope volume approximation in high dimensions (few hundreds).
The algorithm utilizes uniform sampling from a convex region and efficient boundary polytope oracles.
Interestingly, our software provides a framework for exploring theoretical advances since it is believed, and our experiments provide evidence for this belief, that the current asymptotic bounds are unrealistically high.
Efficient Edge-Skeleton Computation for Polytopes Defined by OraclesVissarion Fisikopoulos
This document summarizes algorithms for computing the edge skeleton of a polytope defined by oracle functions. It first describes an existing algorithm for vertex enumeration in the oracle model that works by computing an initial simplex and recursively querying the oracle. It then presents a new algorithm for computing the edge skeleton that takes as input the oracle functions and a superset of edge directions, and works by generating candidate edge segments and validating them with the oracle. The runtime of this edge skeleton algorithm is polynomial in parameters of the polytope representation.
Polyhedral computations in computational algebraic geometry and optimizationVissarion Fisikopoulos
The document summarizes a talk on polyhedral computations in computational algebraic geometry and optimization. It discusses algorithms for enumerating vertices of resultant polytopes and 2-level polytopes. Applications include support computation for implicit equations and computing resultants and discriminants. Open problems include finding the maximum number of faces of 4-dimensional resultant polytopes and explaining symmetries in their maximal f-vectors.
Algorithm Portfolios for Noisy Optimization: Compare Solvers Early (LION8)Jialin LIU
"Algorithm Portfolios for Noisy Optimization: Compare Solvers Early". Marie-Liesse Cauwet, Jialin Liu and Olivier Teytaud. The 8th Learning and Intelligent OptimizatioN Conference (LION8), 2014.
This document discusses the instruction set of the 8085 microprocessor. It is divided into 5 categories: data transfer, arithmetic, logic, branch, and stack/I/O control. Examples are provided for common instructions like MOV, ADD, SUB, AND, OR, etc. along with explanations of how they work and which flags they affect. An example program is given that performs a logical operation to reset the last 4 bits of a number and stores the result in memory.
This document discusses approximation algorithms and introduces several combinatorial optimization problems. It begins by explaining that approximation algorithms are needed to find near-optimal solutions for problems that cannot be solved in polynomial time, such as set cover and bin packing. It then provides examples of problems that are in P, NP, and NP-complete. Several techniques for designing approximation algorithms are outlined, including greedy algorithms, linear programming, and semidefinite programming. Specific NP-complete problems like vertex cover, set cover, and independent set are introduced and approximations algorithms with performance guarantees are provided for set cover and vertex cover.
The document discusses the A* search algorithm, which is an informed search or heuristic search algorithm. A* combines the best aspects of uniform cost search and greedy best-first search. It is guaranteed to find the shortest path to the goal, if such a path exists. A* evaluates nodes by using both the path cost from the start node to the current node, plus an estimate of the cost to get from the current node to the goal node. It prioritizes expanding the most promising nodes first, those with the lowest combined cost. A* is optimal and admissible if the heuristic function never overestimates the actual cost to the goal.
The document discusses approximation algorithms for NP-hard problems. It begins with an introduction that defines approximation algorithms as algorithms that find feasible but not necessarily optimal solutions to optimization problems in polynomial time.
It then discusses different types of approximation schemes - absolute approximation where the approximate solution is within a constant of optimal, epsilon (ε)-approximation where the approximate solution is within a factor of ε times optimal, and polynomial time approximation schemes that run in polynomial time for any fixed ε.
The document provides examples of problems that admit absolute approximation algorithms, such as planar graph coloring and maximum programs stored on disks. It also discusses Graham's theorem, which proves that the largest processing time scheduling algorithm generates schedules within 1/3
TMPA-2017: Generating Cost Aware Covering Arrays For Free Iosif Itkin
TMPA-2017: Tools and Methods of Program Analysis
3-4 March, 2017, Hotel Holiday Inn Moscow Vinogradovo, Moscow
Generating Cost Aware Covering Arrays For Free
Mustafa Kemal Tas, Hanefi Mercan, Gülşen Demiröz, Kamer Kaya, Cemal Yilmaz, Sabanci University
For video follow the link: https://youtu.be/Wkdd4A0rRjE
Would like to know more?
Visit our website:
www.tmpaconf.org
www.exactprosystems.com/events/tmpa
Follow us:
https://www.linkedin.com/company/exactpro-systems-llc?trk=biz-companies-cym
https://twitter.com/exactpro
We experimentally study the fundamental problem of computing the volume of a convex polytope given as an intersection of linear inequalities. We implement and evaluate practical randomized algorithms for accurately approximating the polytope’s volume in high dimensions (e.g. one hundred). To carry out this efficiently we experimentally correlate the effect of parameters, such as random walk length and number of sample points, on accuracy andruntime. Moreover, we exploit the problem’s geometry by implementing an iterative rounding procedure, computing partial generations of random points and designing fast polytope boundary oracles. Our publicly available code is significantly faster than exact computation and more accurate than existing approximation methods. We provide volume approximations for the Birkhoff polytopes B11,...,B15, whereas exact methods have only computed that ofB10.
This document provides an overview of separation logic, including:
- Applications include program analysis, verified software, and axiomatic semantics.
- Future work may focus on logics beyond pre/post conditions to specify order of actions or observable program states.
- SpaceInvader is an implementation of compositional shape analysis via bi-abduction that uses separation logic to reason about mutable data structures.
- Smallfoot is an earlier tool that used symbolic execution and a decidable fragment of separation logic to perform automatic reasoning with Hoare logic for a toy language.
The document summarizes informed search strategies, including best-first search algorithms like greedy search, uniform-cost search (UCS), and A* search. It provides an overview of how heuristics can be used to guide search toward more promising solutions. A* search is described as using both path cost g(n) and heuristic estimate h(n) to determine the best order of node expansion. The properties of A*, including admissibility, completeness, and optimality, are proven assuming h(n) underestimates cost to the goal. Performance depends on heuristic accuracy, with exponential growth possible if errors are large.
This document discusses probabilistic error bounds for order reduction of smooth nonlinear models. It begins with motivation for using reduced order models (ROM) in computationally intensive applications and the need for error metrics. It then provides background on Dixon's theory for probabilistic error bounds, which has mostly been used for linear models. The document outlines snapshot and gradient-based reduction algorithms to reduce the response and parameter interfaces of a model. It defines different types of errors that can occur from reducing these interfaces and discusses propagating the errors across interfaces using Dixon's theory. Numerical tests and results are briefly mentioned along with conclusions.
Best-first search is a heuristic search algorithm that expands the most promising node first. It uses an evaluation function f(n) that estimates the cost to reach the goal from each node n. Nodes are ordered in the fringe by increasing f(n). A* search is a special case of best-first search that uses an admissible heuristic function h(n) and is guaranteed to find the optimal solution.
This paper presents a novel SAT-based approach for the computation of extensions in abstract argumentation, with focus on preferred semantics, and an empirical evaluation of its performances. The approach is based on the idea of reducing the problem of computing complete extensions to a SAT problem and then using a depth-first search method to derive preferred extensions. The proposed approach has been tested using two distinct SAT solvers and compared with three state-of-the-art systems for preferred extension computation. It turns out that the proposed approach delivers significantly better performances in the large majority of the considered cases.
A new approach in specifying the inverse quadratic matrix in modulo-2 for con...Anax Fotopoulos
The document discusses a new approach for specifying the inverse quadratic matrix in modulo-2 for information channels. It describes modeling communication systems using state space equations from digital control theory. It discusses concepts like controllability and observability of systems using rank tests on controllability and observability tables. It also covers concepts from information theory like groups, cyclic groups, and rings as they relate to channel encoding.
This document is a presentation on modern C++ for beginners given by Kangjun Heo. It introduces several new features of modern C++ including auto type deduction, nullptr, constexpr, rvalue references and move semantics, smart pointers, and lambda expressions. The presentation provides examples and explanations of each feature and recommends additional resources for learning modern C++.
Lecture 14 Heuristic Search-A star algorithmHema Kashyap
A* is a search algorithm that finds the shortest path through a graph to a goal state. It combines the best aspects of Dijkstra's algorithm and best-first search. A* uses a heuristic function to evaluate the cost of a path passing through each state to guide the search towards the lowest cost goal state. The algorithm initializes the start state, then iteratively selects the lowest cost node from its open list to expand, adding successors to the open list until it finds the goal state. A* is admissible, complete, and optimal under certain conditions relating to the heuristic function and graph structure.
A Commutative Alternative to Fractional Calculus on k-Differentiable FunctionsMatt Parker
This document presents a method for creating a commutative operator that acts parallel to fractional calculus operators on continuous functions. It defines spaces Ck that contain images of continuous functions and combines these into a space Cdiff that contains a subset isomorphic to the space of continuous functions C(R). An operator Dk is defined on Cdiff that commutes with itself and acts equivalently to fractional derivatives on C(R) up to the differentiability of the function. This provides a commutative alternative to fractional calculus on continuous functions.
The document describes parsing the string "aabb" using an LR(0) parser for a context-free grammar (CFG) with the following production rules: S → X X, X → a X, X → b.
Giáo trình Phân tích và thiết kế giải thuật - CHAP 8Nguyễn Công Hoàng
The document outlines approximation algorithms for NP-hard problems including vertex cover, set cover, and traveling salesman problem (TSP). It discusses why approximation algorithms are useful for intractable but important problems. For vertex cover, it presents a 2-approximation algorithm and proves its performance ratio. For set cover, it presents the greedy algorithm and proves its bound of O(ln|X|). For TSP, it presents an algorithm that returns a tour within a factor of 2 the optimal using minimum spanning trees.
This document provides an introduction to SPU optimizations by summarizing the SPU assembly instructions. It begins by explaining the SPU execution environment and memory model. It then categorizes the instruction set into classes based on arity and latency. The majority of the document details the various instructions in the Single Precision Floating Point (SP), Fixed precision (FX), and other classes; explaining their syntax, latency, and examples of use. The goal is to familiarize programmers with the SPU hardware and instruction set to enable improved performance through optimization techniques.
Practical Spherical Harmonics Based PRT MethodsNaughty Dog
The document summarizes methods for compressing precomputed radiance transfer (PRT) coefficients using spherical harmonics. It presents 4 methods with progressively higher compression ratios: Method 1 uses 9 bytes by removing a factor and scaling, Method 2 uses 6 bytes with a bit field allocation, Method 3 uses 6 bytes with a Lloyd-Max non-uniform quantizer, and Method 4 achieves 4 bytes with a different bit allocation. The methods are evaluated based on storage size, reconstruction quality, and rendering performance.
14th Athens Colloquium on Algorithms and Complexity (ACAC19)Apostolos Chalkis
This document presents a new method for estimating the volume of convex polytopes called practical volume estimation by a new annealing schedule. It uses a multiphase Monte Carlo approach with a sequence of concentric convex bodies to approximate the volume. A new simulated annealing method constructs a sparser sequence of bodies. Billiard walk sampling is used for volume-represented and zonotope polytopes. The method scales to dimensions of 100 in an hour for random V-polytopes and zonotopes, outperforming previous methods with theoretical complexity of O*(d^3).
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by OraclesVissarion Fisikopoulos
The document discusses efficient algorithms for computing volume and edge skeletons of polytopes defined implicitly by optimization oracles. It presents an algorithm to compute the edge skeleton of a polytope in oracle calls and arithmetic operations. It also describes using geometric random walks and optimization oracles to approximate polytope volume, which is more efficient than exact computation for high dimensions. Experimental results show the approach computes volume within minutes for polytopes up to dimension 12 with less than 2% error.
The document discusses the A* search algorithm, which is an informed search or heuristic search algorithm. A* combines the best aspects of uniform cost search and greedy best-first search. It is guaranteed to find the shortest path to the goal, if such a path exists. A* evaluates nodes by using both the path cost from the start node to the current node, plus an estimate of the cost to get from the current node to the goal node. It prioritizes expanding the most promising nodes first, those with the lowest combined cost. A* is optimal and admissible if the heuristic function never overestimates the actual cost to the goal.
The document discusses approximation algorithms for NP-hard problems. It begins with an introduction that defines approximation algorithms as algorithms that find feasible but not necessarily optimal solutions to optimization problems in polynomial time.
It then discusses different types of approximation schemes - absolute approximation where the approximate solution is within a constant of optimal, epsilon (ε)-approximation where the approximate solution is within a factor of ε times optimal, and polynomial time approximation schemes that run in polynomial time for any fixed ε.
The document provides examples of problems that admit absolute approximation algorithms, such as planar graph coloring and maximum programs stored on disks. It also discusses Graham's theorem, which proves that the largest processing time scheduling algorithm generates schedules within 1/3
TMPA-2017: Generating Cost Aware Covering Arrays For Free Iosif Itkin
TMPA-2017: Tools and Methods of Program Analysis
3-4 March, 2017, Hotel Holiday Inn Moscow Vinogradovo, Moscow
Generating Cost Aware Covering Arrays For Free
Mustafa Kemal Tas, Hanefi Mercan, Gülşen Demiröz, Kamer Kaya, Cemal Yilmaz, Sabanci University
For video follow the link: https://youtu.be/Wkdd4A0rRjE
Would like to know more?
Visit our website:
www.tmpaconf.org
www.exactprosystems.com/events/tmpa
Follow us:
https://www.linkedin.com/company/exactpro-systems-llc?trk=biz-companies-cym
https://twitter.com/exactpro
We experimentally study the fundamental problem of computing the volume of a convex polytope given as an intersection of linear inequalities. We implement and evaluate practical randomized algorithms for accurately approximating the polytope’s volume in high dimensions (e.g. one hundred). To carry out this efficiently we experimentally correlate the effect of parameters, such as random walk length and number of sample points, on accuracy andruntime. Moreover, we exploit the problem’s geometry by implementing an iterative rounding procedure, computing partial generations of random points and designing fast polytope boundary oracles. Our publicly available code is significantly faster than exact computation and more accurate than existing approximation methods. We provide volume approximations for the Birkhoff polytopes B11,...,B15, whereas exact methods have only computed that ofB10.
This document provides an overview of separation logic, including:
- Applications include program analysis, verified software, and axiomatic semantics.
- Future work may focus on logics beyond pre/post conditions to specify order of actions or observable program states.
- SpaceInvader is an implementation of compositional shape analysis via bi-abduction that uses separation logic to reason about mutable data structures.
- Smallfoot is an earlier tool that used symbolic execution and a decidable fragment of separation logic to perform automatic reasoning with Hoare logic for a toy language.
The document summarizes informed search strategies, including best-first search algorithms like greedy search, uniform-cost search (UCS), and A* search. It provides an overview of how heuristics can be used to guide search toward more promising solutions. A* search is described as using both path cost g(n) and heuristic estimate h(n) to determine the best order of node expansion. The properties of A*, including admissibility, completeness, and optimality, are proven assuming h(n) underestimates cost to the goal. Performance depends on heuristic accuracy, with exponential growth possible if errors are large.
This document discusses probabilistic error bounds for order reduction of smooth nonlinear models. It begins with motivation for using reduced order models (ROM) in computationally intensive applications and the need for error metrics. It then provides background on Dixon's theory for probabilistic error bounds, which has mostly been used for linear models. The document outlines snapshot and gradient-based reduction algorithms to reduce the response and parameter interfaces of a model. It defines different types of errors that can occur from reducing these interfaces and discusses propagating the errors across interfaces using Dixon's theory. Numerical tests and results are briefly mentioned along with conclusions.
Best-first search is a heuristic search algorithm that expands the most promising node first. It uses an evaluation function f(n) that estimates the cost to reach the goal from each node n. Nodes are ordered in the fringe by increasing f(n). A* search is a special case of best-first search that uses an admissible heuristic function h(n) and is guaranteed to find the optimal solution.
This paper presents a novel SAT-based approach for the computation of extensions in abstract argumentation, with focus on preferred semantics, and an empirical evaluation of its performances. The approach is based on the idea of reducing the problem of computing complete extensions to a SAT problem and then using a depth-first search method to derive preferred extensions. The proposed approach has been tested using two distinct SAT solvers and compared with three state-of-the-art systems for preferred extension computation. It turns out that the proposed approach delivers significantly better performances in the large majority of the considered cases.
A new approach in specifying the inverse quadratic matrix in modulo-2 for con...Anax Fotopoulos
The document discusses a new approach for specifying the inverse quadratic matrix in modulo-2 for information channels. It describes modeling communication systems using state space equations from digital control theory. It discusses concepts like controllability and observability of systems using rank tests on controllability and observability tables. It also covers concepts from information theory like groups, cyclic groups, and rings as they relate to channel encoding.
This document is a presentation on modern C++ for beginners given by Kangjun Heo. It introduces several new features of modern C++ including auto type deduction, nullptr, constexpr, rvalue references and move semantics, smart pointers, and lambda expressions. The presentation provides examples and explanations of each feature and recommends additional resources for learning modern C++.
Lecture 14 Heuristic Search-A star algorithmHema Kashyap
A* is a search algorithm that finds the shortest path through a graph to a goal state. It combines the best aspects of Dijkstra's algorithm and best-first search. A* uses a heuristic function to evaluate the cost of a path passing through each state to guide the search towards the lowest cost goal state. The algorithm initializes the start state, then iteratively selects the lowest cost node from its open list to expand, adding successors to the open list until it finds the goal state. A* is admissible, complete, and optimal under certain conditions relating to the heuristic function and graph structure.
A Commutative Alternative to Fractional Calculus on k-Differentiable FunctionsMatt Parker
This document presents a method for creating a commutative operator that acts parallel to fractional calculus operators on continuous functions. It defines spaces Ck that contain images of continuous functions and combines these into a space Cdiff that contains a subset isomorphic to the space of continuous functions C(R). An operator Dk is defined on Cdiff that commutes with itself and acts equivalently to fractional derivatives on C(R) up to the differentiability of the function. This provides a commutative alternative to fractional calculus on continuous functions.
The document describes parsing the string "aabb" using an LR(0) parser for a context-free grammar (CFG) with the following production rules: S → X X, X → a X, X → b.
Giáo trình Phân tích và thiết kế giải thuật - CHAP 8Nguyễn Công Hoàng
The document outlines approximation algorithms for NP-hard problems including vertex cover, set cover, and traveling salesman problem (TSP). It discusses why approximation algorithms are useful for intractable but important problems. For vertex cover, it presents a 2-approximation algorithm and proves its performance ratio. For set cover, it presents the greedy algorithm and proves its bound of O(ln|X|). For TSP, it presents an algorithm that returns a tour within a factor of 2 the optimal using minimum spanning trees.
This document provides an introduction to SPU optimizations by summarizing the SPU assembly instructions. It begins by explaining the SPU execution environment and memory model. It then categorizes the instruction set into classes based on arity and latency. The majority of the document details the various instructions in the Single Precision Floating Point (SP), Fixed precision (FX), and other classes; explaining their syntax, latency, and examples of use. The goal is to familiarize programmers with the SPU hardware and instruction set to enable improved performance through optimization techniques.
Practical Spherical Harmonics Based PRT MethodsNaughty Dog
The document summarizes methods for compressing precomputed radiance transfer (PRT) coefficients using spherical harmonics. It presents 4 methods with progressively higher compression ratios: Method 1 uses 9 bytes by removing a factor and scaling, Method 2 uses 6 bytes with a bit field allocation, Method 3 uses 6 bytes with a Lloyd-Max non-uniform quantizer, and Method 4 achieves 4 bytes with a different bit allocation. The methods are evaluated based on storage size, reconstruction quality, and rendering performance.
14th Athens Colloquium on Algorithms and Complexity (ACAC19)Apostolos Chalkis
This document presents a new method for estimating the volume of convex polytopes called practical volume estimation by a new annealing schedule. It uses a multiphase Monte Carlo approach with a sequence of concentric convex bodies to approximate the volume. A new simulated annealing method constructs a sparser sequence of bodies. Billiard walk sampling is used for volume-represented and zonotope polytopes. The method scales to dimensions of 100 in an hour for random V-polytopes and zonotopes, outperforming previous methods with theoretical complexity of O*(d^3).
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by OraclesVissarion Fisikopoulos
The document discusses efficient algorithms for computing volume and edge skeletons of polytopes defined implicitly by optimization oracles. It presents an algorithm to compute the edge skeleton of a polytope in oracle calls and arithmetic operations. It also describes using geometric random walks and optimization oracles to approximate polytope volume, which is more efficient than exact computation for high dimensions. Experimental results show the approach computes volume within minutes for polytopes up to dimension 12 with less than 2% error.
This document discusses dynamic programming and provides examples of serial and parallel formulations for several problems. It introduces classifications for dynamic programming problems based on whether the formulation is serial/non-serial and monadic/polyadic. Examples of serial monadic problems include the shortest path problem and 0/1 knapsack problem. The longest common subsequence problem is an example of a non-serial monadic problem. Floyd's all-pairs shortest path is a serial polyadic problem, while the optimal matrix parenthesization problem is non-serial polyadic. Parallel formulations are provided for several of these examples.
An algorithm for producing a linear size superset of a point set that yields a linear size Delaunay triangulation in any dimension. This talk was presented at CCCG 2008.
The document summarizes a computational geometry problem of finding the largest area axis-parallel rectangle contained within a polygon. The speaker presents an algorithm to solve this problem in O(n log2 n) time. This is achieved by characterizing the possible contacts between the rectangle and polygon, developing a general framework based on rectangular visibility and matrix monotonicity, and using divide-and-conquer. Lower bounds are also established to show the problem requires Ω(n log n) time.
This document discusses algorithms and their analysis. It begins by defining an algorithm and its key characteristics like being finite, definite, and terminating after a finite number of steps. It then discusses designing algorithms to minimize cost and analyzing algorithms to predict their performance. Various algorithm design techniques are covered like divide and conquer, binary search, and its recursive implementation. Asymptotic notations like Big-O, Omega, and Theta are introduced to analyze time and space complexity. Specific algorithms like merge sort, quicksort, and their recursive implementations are explained in detail.
The document discusses portfolio methods for optimization problems with uncertainty. It introduces noisy optimization problems where the objective function includes random variables. It then discusses various optimization criteria and methods for noisy optimization problems, including resampling methods to reduce noise. The document also covers portfolio approaches that combine or select among multiple optimization solvers to handle uncertainty.
This document discusses feature extraction techniques for time series data from power systems. It describes extracting features from raw time series data to improve model performance. Common time series features extracted by the tsfresh Python package are listed, including absolute energy, autocorrelation, entropy measures, Fourier transforms, and wavelet transforms. Discrete Fourier transforms express a time series as a sum of periodic components, while wavelet transforms find similarity between a signal and shifting/scaling functions.
1. SGD was tested on simple learning problems like support vector machines and conditional random fields and showed competitive performance compared to specialized solvers.
2. On text categorization with SVMs, SGD achieved the same test error as SVMLight and SVMPerf but was over 100 times faster to train.
3. On log-loss classification, SGD achieved a slightly better test error than LibLinear and was over 10 times faster to train.
4. The results demonstrate that SGD can optimize simple learning problems very efficiently without the need for more complex optimization methods.
Ineluctable modality of the distributed systems knowledge in distributed systems. Uncertainty is what makes reasoning about distributed systems difficult. Protocols are just mechanisms to ensure that a group has shared knowledge of a fact by climbing the hierarchy from someone knowing to common knowledge. Common knowledge of initially undetermined facts is not attainable in any distributed system where communication is not guaranteed.
The document proposes a more efficient method for scalar multiplication on elliptic curves defined over extension fields. The proposed method reduces the number of elliptic curve doublings (ECD) needed by around half compared to existing methods. It achieves this by using the Frobenius mapping to represent the scalar value with coefficients in the extension field's subfield, allowing half the bit size. An example shows the proposed method requires around half as many ECD operations. Evaluation on sample scalars confirms a 40-50% reduction in ECD operations and a similar improvement in execution times for scalar multiplication. Future work involves testing the approach in pairing-based cryptographic protocols.
The document discusses kernelization, which is a polynomial-time transformation that maps an instance of a parameterized problem to an equivalent instance whose size is bounded by a function of the parameter k. If a problem admits a kernelization algorithm, then it is fixed-parameter tractable. The document introduces kernelization and provides definitions. It also notes that every fixed-parameter tractable problem has a kernelization algorithm.
This document provides an overview of kernel methods for machine learning. It discusses the evolution of learning methods from perceptrons in the 1950s to kernel methods in the 1990s. Kernel methods embed data into a higher-dimensional Hilbert space to allow for linear classification of non-linear relationships. The kernel trick replaces the inner product in this space with a kernel function, avoiding the need to explicitly define the embedding. Common kernel functions include polynomial kernels and Gaussian RBF kernels. The document provides code examples of kernel ridge regression in Python and discusses applications of string kernels and normalization techniques.
Lecture 1 from https://irdta.eu/deeplearn/2022su/
Covers concepts from Part 1 of my new book, https://meyn.ece.ufl.edu/2021/08/01/control-systems-and-reinforcement-learning/
I am Gabriel C. I love exploring new topics. Academic writing seemed an interesting option for me. After working for many years with programmingexamhelp.com, I have assisted many students with their exams. I can proudly say, each student I have served is happy with the quality of the solution that I have provided. I have acquired Business analyst of Information Technology, Montreal College of Information Technology, Canada.
Locality sensitive hashing (LSH) is a technique to improve the efficiency of near neighbor searches in high-dimensional spaces. LSH works by hash functions that map similar items to the same buckets with high probability. The document discusses applications of near neighbor searching, defines the near neighbor reporting problem, and introduces LSH. It also covers techniques like gap amplification to improve LSH performance and parameter optimization to minimize query time.
Elementary Landscape Decomposition of the Hamiltonian Path Optimization Problemjfrchicanog
The document describes research on decomposing optimization problem landscapes into elementary components. It defines key landscape concepts like configuration space, neighborhood operators, and objective functions. It then introduces the idea of elementary landscapes where the objective function is a linear combination of eigenfunctions. The paper discusses decomposing general landscapes into a sum of elementary components and proposes using average neighborhood fitness for selection in non-elementary landscapes. It applies these concepts to the Hamiltonian Path Optimization problem, analyzing the problem's reversals and swaps neighborhoods.
This document discusses various greedy algorithms, including Dijkstra's algorithm for finding shortest paths in graphs. It provides details on Dijkstra's algorithm, including its greedy approach, proof of correctness, and efficient implementations using priority queues. It also discusses applications of shortest path algorithms and how the techniques extend to related problems involving closed semirings rather than just numbers.
This document describes a genetic algorithm called PGA for solving the clustered Steiner tree problem (CluSteiner). The CluSteiner problem involves finding the minimum cost tree that connects target vertices while satisfying constraints that trees within each cluster are disjoint. PGA uses a two-level approach, first finding local trees for each cluster and then linking the trees. It represents solutions as an ordering of clusters and applies crossover and mutation genetic operators. Computational experiments show PGA improves on previous algorithms by up to 83% on test instances.
Similar to High-dimensional polytopes defined by oracles: algorithms, computations and applications (20)
The document discusses meshing periodic surfaces in CGAL. It describes adapting the CGAL surface meshing algorithm to work with periodic triangulations by modifying point insertion and refinement criteria. Examples meshing various periodic minimal surfaces like the gyroid and schwarz P surface are shown for different criteria values. Future work includes improving the refinement criteria to handle all cases and proving algorithm correctness and termination.
This document discusses regular triangulations and resultant polytopes. It introduces the concepts of mixed subdivisions, the Cayley trick relating triangulations to mixed subdivisions, and how mixed subdivisions relate to the Newton polytope of the resultant. It defines i-mixed cells and how they correspond to vertices of the resultant polytope. The document outlines an algorithm to enumerate the vertices of the resultant polytope based on enumerating regular triangulations using i-mixed cell configurations and cubical flips between mixed subdivisions. It provides examples and complexity analysis and discusses future work on fully enumerating resultant polytopes.
The document describes an incremental algorithm for computing the Birkhoff resultant polytope Π of a system of n+1 polynomials in n variables. The algorithm takes as input the supports of the polynomials and incrementally constructs an inner approximation Q of Π by calling an oracle to extend illegal facets. At each step Q is refined until all facets are legal, at which point Q = Π. The algorithm outputs the H-representation and V-representation of Π.
"An output-sensitive algorithm for computing projections of resultant polytop...Vissarion Fisikopoulos
This document summarizes an incremental algorithm for computing projections of resultant polytopes. The algorithm uses an oracle that, given a direction vector, computes a vertex of the resultant polytope that is extremal in that direction. It starts with an initial inner approximation of the resultant polytope and incrementally extends facets by calling the oracle until all facets are legal, meaning they support facets of the true resultant polytope. This provides an output-sensitive algorithm that computes only as many triangulations as needed to represent the resultant polytope.
"Faster Geometric Algorithms via Dynamic Determinant Computation." Vissarion Fisikopoulos
The document proposes faster algorithms for geometric problems by using dynamic determinant computation. Many geometric algorithms involve computing determinants of matrices to evaluate geometric predicates. Computing determinants directly is expensive, especially for high-dimensional problems. The document presents an algorithm for dynamically updating determinants when a column of the matrix is changed in O(d^2) time, faster than recomputing from scratch. This dynamic determinant computation can speed up algorithms that require repeated predicate evaluations, such as the incremental convex hull algorithm, by updating determinants instead of recomputing them.
The document discusses resultant polytopes, which are the Newton polytopes of the resultant polynomial for a system of polynomials. It focuses on analyzing the face vectors of 4-dimensional resultant polytopes. The main results characterize the possible face vectors in three cases: (1) when all supports have size 2 except one of size 5, (2) when all supports have size 2 except two of sizes 3 and 4, and (3) when all supports have size 2 except three of size 3. Lower bounds are proved for the number of faces in the third case. Computation of resultant polytopes uses software that implements algorithms utilizing polytope computations and tropical geometry.
Recently, there is a growing interest in geospatial trajectory computing. We call trajectories the sequences of time-stamped locations. As the technology for tracking moving objects becomes cheaper and more accurate, massive amounts of spatial trajectories are generated nowadays by smartphones, infrastructure, computer games, natural phenomena, and many other sources.
In this talk we will present the set of tools available in Boost Geometry to work with trajectories highlighting latest as well as older library developments. Starting with more basic operations like length, distance and closest points computations between trajectories we move forward to more advanced operations like compression or simplification as well as the conceptually opposite operation of densify by interpolating or generating random points on a given trajectory. We conclude with the important topic of similarity measurements between trajectories.
All implemented algorithms are parameterized by using the Boost Geometry's strategy mechanism that control the accuracy-efficiency trade-off and work for 3 different coordinate systems (namely, cartesian, spherical and ellipsoidal) each of which comes with its own advantages and limitations.
This document discusses algorithms for computing the volume of high-dimensional convex bodies. It begins by introducing the problem and some challenges in high dimensions. It then describes various randomized algorithms that use sampling techniques like Markov chain Monte Carlo (MCMC) to estimate volumes. Specific algorithms discussed include multiphase Monte Carlo, hit-and-run sampling, and billiard walks. The document reviews the theoretical and practical complexity of these algorithms. It also presents applications of volume computation in fields like engineering, biology, and machine learning.
This document summarizes a presentation on computing polytopes via a vertex oracle. It discusses:
1. Using a vertex oracle that takes a direction vector as input and outputs a vertex of the resultant polytope that is extremal in that direction.
2. An incremental algorithm that starts with an inner approximation of the resultant polytope and iteratively calls the oracle to extend illegal facets until the approximation equals the resultant polytope.
3. The oracle works by lifting the point set to construct a regular subdivision, then refining to a triangulation to extract the vertex of the resultant polytope extremal in the given direction.
The document describes an algorithm for enumerating 2-level polytopes in fixed dimensions. A 2-level polytope has vertices that are contained in two parallel hyperplanes. The algorithm takes as input a list of (d-1)-dimensional 2-level polytopes and extends each one to d dimensions, computing the closed sets of vertices to obtain new d-dimensional 2-level polytopes. Experimental results show the numbers of 2-level polytopes enumerated for dimensions up to 6. Open questions ask for a more output-sensitive enumeration algorithm and whether the number of d-dimensional 2-level polytopes is exponential in d.
The Newton polytope of the resultant, or resultant polytope, characterizes the resultant polynomial more precisely than total degree. The combinatorics of resultant polytopes are known in the Sylvester case [Gelfand et al.90] and up to dimension 3 [Sturmfels 94]. We extend this work by studying the combinatorial characterization of 4-dimensional resultant polytopes, which show a greater diversity and involve computational and combinatorial challenges. In particular, our experiments, based on software respol for computing resultant polytopes, establish lower bounds on the maximal number of faces. By studying mixed subdivisions, we obtain tight upper bounds on the maximal number of facets and ridges, thus arriving at the following maximal f-vector: (22,66,66,22), i.e. vector of face cardinalities. Certain general features emerge, such as the symmetry of the maximal f-vector, which are intriguing but still under investigation. We establish a result of independent interest, namely that the f-vector is maximized when the input supports are sufficiently generic, namely full dimensional and without parallel edges. Lastly, we offer a classification result of all possible 4-dimensional resultant polytopes.
A new practical algorithm for volume estimation using annealing of convex bodiesVissarion Fisikopoulos
We study the problem of estimating the volume of convex polytopes, focusing on H- and V-polytopes, as well as zonotopes. Although a lot of effort is devoted to practical algorithms for H-polytopes there is no such method for the latter two representations. We propose a new, practical algorithm for all representations, which is faster than existing methods. It relies on Hit-and-Run sampling, and combines a new simulated annealing method with the Multiphase Monte Carlo (MMC) approach. Our method introduces the following key features to make it adaptive: (a) It defines a sequence of convex bodies in MMC by introducing a new annealing schedule, whose length is shorter than in previous methods with high probability, and the need of computing an enclosing and an inscribed ball is removed; (b) It exploits statistical properties in rejection-sampling and proposes a better empirical convergence criterion for specifying each step; (c) For zonotopes, it may use a sequence of convex bodies for MMC different than balls, where the chosen body adapts to the input. We offer an open-source, optimized C++ implementation, and analyze its performance to show that it outperforms state-of-the-art software for H-polytopes by Cousins-Vempala (2016) and Emiris-Fisikopoulos (2018), while it undertakes volume computations that were intractable until now, as it is the first polynomial-time, practical method for V-polytopes and zonotopes that scales to high dimensions (currently 100). We further focus on zonotopes, and characterize them by their order (number of generators over dimension), because this largely determines sampling complexity. We analyze a related application, where we evaluate methods of zonotope approximation in engineering.
The figure of the Earth can be modelled either by a cartesian plane, a sphere or an (oblate) ellipsoid, in decreasing order with respect to the approximation quality. The shortest path between two points on such a surface is called a geodesic. Studying geodesic problems on ellipsoids dates back to Newton. However, the majority of open-source GIS systems today use methods on the cartesian plane. The main advantages of those approaches are simplicity of implementation and performance. On the other hand, those approaches come with a handicap: accuracy.
We experimentally study the accuracy-performance trade-offs of various methods for distance computation (as well as similar geodesic problems such as azimuth and area computation). We test projections paired with cartesian computations, spherical-trigonometric computations and a number of ellipsoidal methods such as [Andoyer'65] and [Thomas'70] formulas, [Vincenty'75] iterative method, great elliptic arc's method, and [Karney'15] series approximation. We also show that some methods from the bibliography (e.g. [Tseng'15]) are neither faster nor more accurate compared to the above list of methods and thus become redundant. For our experiments we use the open source libraries Boost Geometry and GeographicLib.
Our results are of independent interest since we are not aware of a similar experimental study. More interestingly, they can be used as a reference for practitioners that want to use the most efficient method with respect to some given accuracy.
Geodesic computations (such as distance computations) apart from being a fundamental problem in computational geometry and geography/geodesy are also building blocks for many higher level algorithms such as k-nearest neighbour problems, line interpolation, densification of geometries, area and buffer, to name a few.
# References
* Some experimental results can be found here: https://github.com/vissarion/geometry/wiki/Accuracy-and-performance-of-geographic-algorithms
* A related talk (with some graphs on performance and accuracy) can be found here https://fosdem.org/2019/schedule/event/geo_boostgeometry
* The source code of most of the algorithms of the study is in Boost Geometry: https://github.com/boostorg/geometry but we contain to our study GeographicLib https://geographiclib.sourceforge.io
The Earth is not flat; but it's not round either (Geography on Boost.Geometry)Vissarion Fisikopoulos
What is a great circle, a loxodrome or a geodesic? What are the differences between them and which one is more suitable for each GIS application? This talk addresses this kind of questions and how geography is implemented in Boost.Geometry. The library that is currently being used to provide GIS support to MySQL.
Following up the introductory talk on Boost.Geometry we discuss the algorithmic, the implementation as well as the user perspective of the development of geography in Boost.Geometry. We define basic geometric objects such as geodesics, and the modeling of the Earth as a sphere or ellipsoid. We try to understand the effect of different Earth models to the accuracy and speed of fundamental geometric algorithms (such as length, area, intersection etc.) by showing particular examples. Finally, we are having a look towards the future of geography in Boost.Geometry.
Presentation of the paper "An output-sensitive algorithm for computing (projections of) resultant polytopes" in the Annual Symposium on Computational Geometry (SoCG 2012)
Presentation of the paper "Combinatorics of 4-dimensional Resultant Polytopes" in International Symposium on Symbolic and Algebraic Computation (ISSAC) 2013
The cost of acquiring information by natural selectionCarl Bergstrom
This is a short talk that I gave at the Banff International Research Station workshop on Modeling and Theory in Population Biology. The idea is to try to understand how the burden of natural selection relates to the amount of information that selection puts into the genome.
It's based on the first part of this research paper:
The cost of information acquisition by natural selection
Ryan Seamus McGee, Olivia Kosterlitz, Artem Kaznatcheev, Benjamin Kerr, Carl T. Bergstrom
bioRxiv 2022.07.02.498577; doi: https://doi.org/10.1101/2022.07.02.498577
Unlocking the mysteries of reproduction: Exploring fecundity and gonadosomati...AbdullaAlAsif1
The pygmy halfbeak Dermogenys colletei, is known for its viviparous nature, this presents an intriguing case of relatively low fecundity, raising questions about potential compensatory reproductive strategies employed by this species. Our study delves into the examination of fecundity and the Gonadosomatic Index (GSI) in the Pygmy Halfbeak, D. colletei (Meisner, 2001), an intriguing viviparous fish indigenous to Sarawak, Borneo. We hypothesize that the Pygmy halfbeak, D. colletei, may exhibit unique reproductive adaptations to offset its low fecundity, thus enhancing its survival and fitness. To address this, we conducted a comprehensive study utilizing 28 mature female specimens of D. colletei, carefully measuring fecundity and GSI to shed light on the reproductive adaptations of this species. Our findings reveal that D. colletei indeed exhibits low fecundity, with a mean of 16.76 ± 2.01, and a mean GSI of 12.83 ± 1.27, providing crucial insights into the reproductive mechanisms at play in this species. These results underscore the existence of unique reproductive strategies in D. colletei, enabling its adaptation and persistence in Borneo's diverse aquatic ecosystems, and call for further ecological research to elucidate these mechanisms. This study lends to a better understanding of viviparous fish in Borneo and contributes to the broader field of aquatic ecology, enhancing our knowledge of species adaptations to unique ecological challenges.
ESPP presentation to EU Waste Water Network, 4th June 2024 “EU policies driving nutrient removal and recycling
and the revised UWWTD (Urban Waste Water Treatment Directive)”
hematic appreciation test is a psychological assessment tool used to measure an individual's appreciation and understanding of specific themes or topics. This test helps to evaluate an individual's ability to connect different ideas and concepts within a given theme, as well as their overall comprehension and interpretation skills. The results of the test can provide valuable insights into an individual's cognitive abilities, creativity, and critical thinking skills
The technology uses reclaimed CO₂ as the dyeing medium in a closed loop process. When pressurized, CO₂ becomes supercritical (SC-CO₂). In this state CO₂ has a very high solvent power, allowing the dye to dissolve easily.
The use of Nauplii and metanauplii artemia in aquaculture (brine shrimp).pptxMAGOTI ERNEST
Although Artemia has been known to man for centuries, its use as a food for the culture of larval organisms apparently began only in the 1930s, when several investigators found that it made an excellent food for newly hatched fish larvae (Litvinenko et al., 2023). As aquaculture developed in the 1960s and ‘70s, the use of Artemia also became more widespread, due both to its convenience and to its nutritional value for larval organisms (Arenas-Pardo et al., 2024). The fact that Artemia dormant cysts can be stored for long periods in cans, and then used as an off-the-shelf food requiring only 24 h of incubation makes them the most convenient, least labor-intensive, live food available for aquaculture (Sorgeloos & Roubach, 2021). The nutritional value of Artemia, especially for marine organisms, is not constant, but varies both geographically and temporally. During the last decade, however, both the causes of Artemia nutritional variability and methods to improve poorquality Artemia have been identified (Loufi et al., 2024).
Brine shrimp (Artemia spp.) are used in marine aquaculture worldwide. Annually, more than 2,000 metric tons of dry cysts are used for cultivation of fish, crustacean, and shellfish larva. Brine shrimp are important to aquaculture because newly hatched brine shrimp nauplii (larvae) provide a food source for many fish fry (Mozanzadeh et al., 2021). Culture and harvesting of brine shrimp eggs represents another aspect of the aquaculture industry. Nauplii and metanauplii of Artemia, commonly known as brine shrimp, play a crucial role in aquaculture due to their nutritional value and suitability as live feed for many aquatic species, particularly in larval stages (Sorgeloos & Roubach, 2021).
Authoring a personal GPT for your research and practice: How we created the Q...Leonel Morgado
Thematic analysis in qualitative research is a time-consuming and systematic task, typically done using teams. Team members must ground their activities on common understandings of the major concepts underlying the thematic analysis, and define criteria for its development. However, conceptual misunderstandings, equivocations, and lack of adherence to criteria are challenges to the quality and speed of this process. Given the distributed and uncertain nature of this process, we wondered if the tasks in thematic analysis could be supported by readily available artificial intelligence chatbots. Our early efforts point to potential benefits: not just saving time in the coding process but better adherence to criteria and grounding, by increasing triangulation between humans and artificial intelligence. This tutorial will provide a description and demonstration of the process we followed, as two academic researchers, to develop a custom ChatGPT to assist with qualitative coding in the thematic data analysis process of immersive learning accounts in a survey of the academic literature: QUAL-E Immersive Learning Thematic Analysis Helper. In the hands-on time, participants will try out QUAL-E and develop their ideas for their own qualitative coding ChatGPT. Participants that have the paid ChatGPT Plus subscription can create a draft of their assistants. The organizers will provide course materials and slide deck that participants will be able to utilize to continue development of their custom GPT. The paid subscription to ChatGPT Plus is not required to participate in this workshop, just for trying out personal GPTs during it.
The debris of the ‘last major merger’ is dynamically youngSérgio Sacani
The Milky Way’s (MW) inner stellar halo contains an [Fe/H]-rich component with highly eccentric orbits, often referred to as the
‘last major merger.’ Hypotheses for the origin of this component include Gaia-Sausage/Enceladus (GSE), where the progenitor
collided with the MW proto-disc 8–11 Gyr ago, and the Virgo Radial Merger (VRM), where the progenitor collided with the
MW disc within the last 3 Gyr. These two scenarios make different predictions about observable structure in local phase space,
because the morphology of debris depends on how long it has had to phase mix. The recently identified phase-space folds in Gaia
DR3 have positive caustic velocities, making them fundamentally different than the phase-mixed chevrons found in simulations
at late times. Roughly 20 per cent of the stars in the prograde local stellar halo are associated with the observed caustics. Based
on a simple phase-mixing model, the observed number of caustics are consistent with a merger that occurred 1–2 Gyr ago.
We also compare the observed phase-space distribution to FIRE-2 Latte simulations of GSE-like mergers, using a quantitative
measurement of phase mixing (2D causticality). The observed local phase-space distribution best matches the simulated data
1–2 Gyr after collision, and certainly not later than 3 Gyr. This is further evidence that the progenitor of the ‘last major merger’
did not collide with the MW proto-disc at early times, as is thought for the GSE, but instead collided with the MW disc within
the last few Gyr, consistent with the body of work surrounding the VRM.
Current Ms word generated power point presentation covers major details about the micronuclei test. It's significance and assays to conduct it. It is used to detect the micronuclei formation inside the cells of nearly every multicellular organism. It's formation takes place during chromosomal sepration at metaphase.
High-dimensional polytopes defined by oracles: algorithms, computations and applications
1. High-dimensional polytopes defined by oracles:
algorithms, computations and applications
Vissarion Fisikopoulos
Dept. of Informatics & Telecommunications, University of Athens
PhD defence, Athens, 24.Apr.2014
2. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Classical Polytope Representations
A convex polytope P ⊆ Rd can be represented as the
1. convex hull of a pointset {p1, . . . , pn} (V-representation)
2. intersection of halfspaces {h1, . . . , hm} (H-representation)
convex hull problem
vertex enumeration problem
• These problems are equivalent by polytope duality.
3. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Algorithmic Issues
• For general dimension d there is no polynomial algorithm for
the convex hull (or vertex enumeration) problem since m can
be O n d/2 [McMullen’70].
• It is open whether there exist a total poly-time algorithm for
the convex hull (or vertex enumeration) problem, i.e. runs in
poly-time in n, m, d.
4. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
What is an Oracle?
5. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Polytope Oracles
Implicit representation for a polytope P ⊆ Rd.
OPTP: Given direction c ∈ Rd return the vertex v ∈ P that maximizes
cT v.
SEPP: Given point y ∈ Rd, return yes if y ∈ P otherwise a
hyperplane h that separates y from P.
c
v
P P
h
y
6. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Why polytope Oracles?
• Polynomial time algorithms for combinatorial optimization
problems using the ellipsoid method
[Gr¨otschel-Lov´asz-Schrijver’93]
• Randomized polynomial-time algorithms for approximating the
volume of convex bodies
[Dyer-Frieze-Kannan ’90],. . . ,[Lov´asz-Vempala ’04]
7. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Our view of the Oracles
Resultant, Discriminant, Secondary polytopes
• Vertices → subdivisions of a
pointset’s convex hull
• OPTP is available via a subdivision
computation
• Applications in Computational Algebraic Geometry, Geometric
Modelling, Optimization, Combinatorics
8. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
9. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
10. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main actor: resultant polytope
• Geometry: Minkowski summands of secondary polytopes,
generalize Birkhoff polytopes
• Algebra: resultant expresses the solvability of polynomial
systems
• Applications: resultant computation, implicitization of
parametric hypersurfaces [Emiris, Kalinka, Konaxis, LuuBa ’12]
Enneper’s Minimal Surface
11. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Polytopes and Algebra
• Given n + 1 polynomials on n variables.
f0(x) = ax2
+ b
f1(x) = cx2
+ dx + e
12. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Polytopes and Algebra
• Given n + 1 polynomials on n variables.
• Supports (set of exponents of monomials with non-zero
coefficient) A0, A1, . . . , An ⊂ Zn.
A0
A1
f0(x) = ax2
+ b
f1(x) = cx2
+ dx + e
13. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Polytopes and Algebra
• Given n + 1 polynomials on n variables.
• Supports (set of exponents of monomials with non-zero
coefficient) A0, A1, . . . , An ⊂ Zn.
• The resultant R is the polynomial in the coefficients of a
system of polynomials which vanishes if there exists a
common root in the torus of the given polynomials.
A0
A1
R(a, b, c, d, e) = ad2
b + c2
b2
− 2caeb + a2
e2
f0(x) = ax2
+ b
f1(x) = cx2
+ dx + e
14. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Polytopes and Algebra
• Given n + 1 polynomials on n variables.
• Supports (set of exponents of monomials with non-zero
coefficient) A0, A1, . . . , An ⊂ Zn.
• The resultant R is the polynomial in the coefficients of a
system of polynomials which vanishes if there exists a
common root in the torus of the given polynomials.
• The resultant polytope N(R), is the convex hull of the
support of R, i.e. the Newton polytope of the resultant.
A0
A1
N(R)R(a, b, c, d, e) = ad2
b + c2
b2
− 2caeb + a2
e2
f0(x) = ax2
+ b
f1(x) = cx2
+ dx + e
15. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Mixed subdivisions
A subdivision S of Minkowski sum A0 + A1 + · · · + An is
• mixed: cells are Minkowski sums of subsets of Ai’s,
• fine: for each cell σ = σ0 + · · · + σn, dim(σ) = n
i=0 dim(σi)
Example
A0
A1
A2 fine mixed subdivision S of A0 + A1 + A2
16. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Resultant polytope vertices
Theorem [GKZ’94,
Sturmfels’94]
• many-to-one relation from
regular fine mixed
subdivisions of
A0 + · · · + An to N(R)
vertices
• one-to-one relation between
regular fine mixed
subdivisions and secondary
polytope Σ vertices
17. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The idea of the algorithm
Input: A0, A1, . . . , An ⊂ Zn
Simplistic method:
• compute the vertices of secondary polytope Σ [Rambau ’02]
• many-to-one relation between vertices of Σ and N(R)
18. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The idea of the algorithm
Input: A0, A1, . . . , An ⊂ Zn
New Algorithm:
• Optimization oracle for N(R) by subdivision computation
• Output sensitive: 1 subd. per N(R) vertex + 1 per N(R) facet
• Computes projections of N(R), Σ
19. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The Algorithm
• incremental
• first: compute conv.hull of d + 1 aff. indep. vertices of N(R)
• step: call the oracle with outer normal vector of a halfspace
→ either validate this halfspace
→ or add a new vertex to the convex hull
N(R)
Q
20. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The Algorithm
• incremental
• first: compute conv.hull of d + 1 aff. indep. vertices of N(R)
• step: call the oracle with outer normal vector of a halfspace
→ either validate this halfspace
→ or add a new vertex to the convex hull
Theorem
H-, V-repr. & triang. T of N(R) can be computed in
O(d5
ns2
) arithmetic operations + O(n + m) oracle calls
n, m, s are the number of vertices, facets of N(R), cells of T resp.
21. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The Algorithm
• incremental
• first: compute conv.hull of d + 1 aff. indep. vertices of N(R)
• step: call the oracle with outer normal vector of a halfspace
→ either validate this halfspace
→ or add a new vertex to the convex hull
Theorem
H-, V-repr. & triang. T of N(R) can be computed in
O(d5
ns2
) arithmetic operations + O(n + m) oracle calls
n, m, s are the number of vertices, facets of N(R), cells of T resp.
BUT: s can be O n d/2
22. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
ResPol package
• C++
• Towards high-dimensional
• Propose hashing of determinantal predicates scheme:
optimizing sequences of similar determinants (x100 speed-up)
• Computes 5-, 6- and 7-dimensional polytopes with 35K, 23K
and 500 vertices, respectively, within 2hrs
• Computes polytopes of many important surface equations
encountered in geometric modeling in < 1sec, whereas the
corresponding secondary polytopes are intractable
23. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
References
• Emiris, F, Konaxis, Pe˜naranda An output-sensitive algorithm
for computing projections of resultant polytopes. Proc. of
28th ACM Annual Symposium on Computational Geometry,
2012, Chapel Hill, NC, USA.
• Emiris, F, Konaxis, Pe˜naranda An oracle-based, output
sensitive algorithm for projections of resultant polytopes.
International Journal of Computational Geometry and
Applications (Special issue) World Scientific.
24. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
25. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Vertex enumeration with edge-directions
Given OPTP and a superset D of the edge directions D(P) of
P ⊆ Rd, compute the vertices P.
Proposition (Rothblum, Onn ’07)
Let P ⊆ Rd given by OPTP, and D ⊇ D(P). All vertices of P can
be computed in
O(|D|d−1
) calls to OPTP + O(|D|d−1
) arithmetic operations.
26. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Well-described polytopes and oracles
Definition
A polytope P ⊆ Rd is well-described (with a parameter ϕ) if there
exists an H-representation for P in which every inequality has
encoding length at most ϕ. The encoding length of P is
P = d + ϕ.
Proposition (Gr¨otschel et al.’93)
For a well-described polytope, we can compute OPTP from SEPP
(and vice versa) in oracle polynomial-time. The runtime
(polynomially) depends on d and ϕ.
27. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The edge-skeleton algorithm
Input:
• OPTP
• Edge vec. P (dir. & len.): D
Output:
• Edge-skeleton of P
P
c
Sketch of Algorithm:
• Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
28. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The edge-skeleton algorithm
Input:
• OPTP
• Edge vec. P (dir. & len.): D
Output:
• Edge-skeleton of P
P
Sketch of Algorithm:
• Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
• Compute segments S = {(x, x + d), for all d ∈ D}
29. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The edge-skeleton algorithm
Input:
• OPTP
• Edge vec. P (dir. & len.): D
Output:
• Edge-skeleton of P
P
Sketch of Algorithm:
• Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
• Compute segments S = {(x, x + d), for all d ∈ D}
• Remove from S all segments (x, y) s.t. y /∈ P (OPTP → SEPP)
30. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The edge-skeleton algorithm
Input:
• OPTP
• Edge vec. P (dir. & len.): D
Output:
• Edge-skeleton of P
P
Sketch of Algorithm:
• Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
• Compute segments S = {(x, x + d), for all d ∈ D}
• Remove from S all segments (x, y) s.t. y /∈ P (OPTP → SEPP)
• Remove from S the segments that are not extreme
31. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The edge-skeleton algorithm
Input:
• OPTP
• Edge vec. P (dir. & len.): D
Output:
• Edge-skeleton of P
P
Sketch of Algorithm:
• Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
• Compute segments S = {(x, x + d), for all d ∈ D}
• Remove from S all segments (x, y) s.t. y /∈ P (OPTP → SEPP)
• Remove from S the segments that are not extreme
Can be altered to work with edge directions only
32. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Complexity
Theorem
Given OPTP and a superset of edge directions D of a well-
described polytope P ⊆ Rd, the edge skeleton of P can be
computed in oracle total polynomial-time
O n|D| T + LP(d3
|D| B ) + d log n ,
• n the number of vertices of P,
• T : runtime of oracle conversion algorithm for P and D,
• B is the binary encoding length of the vector set P and D,
• LP( A + b + c ) runtime of max cT x over {x : Ax ≤ b}.
33. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Applications
Corollary
The edge skeleton of resultant, secondary polytopes can be
computed in oracle total polynomial-time.
Corollary
The edge skeletons of polytopes appearing in convex combinatorial
optimization [Rothblum-Onn ’04] and convex integer
programming [De Loera et al. ’09] problems can be computed in
oracle total polynomial-time.
34. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
References
• Emiris, F, G¨artner Efficient Volume and Edge-Skeleton
Computation for Polytopes Given by Oracles. Proc. of 29th
European Workshop on Computational Geometry,
Braunschweig, Germany 2013.
• Emiris, F, G¨artner Efficient edge skeleton computation for
polytopes defined by oracles. Submitted to Computational
Geometry - Theory and Applications.
35. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
36. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
• #-P hard for vertex and for halfspace repres. [DyerFrieze’88]
37. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
• #-P hard for vertex and for halfspace repres. [DyerFrieze’88]
• randomized poly-time algorithm approximates the volume of a
convex body with high probability and arbitrarily small relative
error [DyerFriezeKannan’91] O∗(d23) → O∗(d4) [LovVemp’04]
38. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
• #-P hard for vertex and for halfspace repres. [DyerFrieze’88]
• randomized poly-time algorithm approximates the volume of a
convex body with high probability and arbitrarily small relative
error [DyerFriezeKannan’91] O∗(d23) → O∗(d4) [LovVemp’04]
Implementations
• Exact (VINCI, Qhull, etc.) cannot compute in high
dimensions (e.g. > 20)
• Randomized ([CousinsVempala’14], [EmirisF’14]) compute in
high dimensions (e.g. 100)
39. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
How do we compute a random point in a polytope P?
• easy for simple shapes like simplex or cube
40. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
How do we compute a random point in a polytope P?
• easy for simple shapes like simplex or cube
• BUT for arbitrary polytopes we need random walks
41. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Random Directions Hit-and-Run (RDHR)
x
P
B
Input: point x ∈ P
Output: new point x ∈ P
1. line through x, uniform on B(x, 1)
2. set x to be a uniform disrtibuted
point on P ∩
Iterate this for W steps.
42. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Random Directions Hit-and-Run (RDHR)
x
P
Input: point x ∈ P
Output: new point x ∈ P
1. line through x, uniform on B(x, 1)
2. set x to be a uniform disrtibuted
point on P ∩
Iterate this for W steps.
43. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Random Directions Hit-and-Run (RDHR)
xP
Input: point x ∈ P
Output: new point x ∈ P
1. line through x, uniform on B(x, 1)
2. set x to be a uniform disrtibuted
point on P ∩
Iterate this for W steps.
• x is unif. random distrib. in P after W = O∗(d3) steps,
where O∗(·) hides log factors [LovaszVempala’06]
• to generate many random points iterate this procedure
44. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Multiphase Monte Carlo (Sequence of balls)
B = B(c, r)
B = B(c, ρ)
P
• B(c, 2i/d), i = α, α + 1, . . . , β,
α = d log r , β = d log ρ
• Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β,
Pα = B(c, 2α/d) ⊆ B(c, r)
45. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Multiphase Monte Carlo (Generate/count random points)
P0 = B(c, r)
B = B(c, ρ)
P
P1
• B(c, 2i/d), i = α, α + 1, . . . , β,
α = d log r , β = d log ρ
• Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β,
Pα = B(c, 2α/d) ⊆ B(c, r)
1. Generate rand. points in Pi
2. Count how many rand. points in Pi fall
in Pi−1
vol(P) = vol(Pα)
β
i=α+1
vol(Pi)
vol(Pi−1)
46. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Multiphase Monte Carlo (Generate/count random points)
P0 = B(c, r)
B = B(c, ρ)
P
P1
• B(c, 2i/d), i = α, α + 1, . . . , β,
α = d log r , β = d log ρ
• Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β,
Pα = B(c, 2α/d) ⊆ B(c, r)
1. Generate rand. points in Pi
2. Count how many rand. points in Pi fall
in Pi−1
vol(P) = vol(Pα)
β
i=α+1
vol(Pi)
vol(Pi−1)
47. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Contributions
Some modifications towards practicality
• W = 10 + d/10 random walk steps (vs. O∗(d3) which hides
constant 1011) achieve < 1% error in up to 100 dim.
• implement boundary oracles with O(m) runtime in coordinate
(vs. random) directions hit-and-run
48. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Contributions
Some modifications towards practicality
• W = 10 + d/10 random walk steps (vs. O∗(d3) which hides
constant 1011) achieve < 1% error in up to 100 dim.
• implement boundary oracles with O(m) runtime in coordinate
(vs. random) directions hit-and-run
Highlights of experimental results
• approximate the volume of a series of polytopes (cubes,
random, cross, Birkhoff) for d < 100 in <2 hrs with mean
approximation error <1%
• Compute the volume of Birkhoff polytopes B11, . . . , B15 in few
hrs whereas exact methods have only computed that of B10 by
specialized software in ∼ 1 year of parallel computation
49. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
References
• Emiris, F. Efficient random-walk methods for approximating
polytope volume. Proc. of 30th ACM Annual Symposium on
Computational Geometry, 2014, Kyoto, Japan.
50. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
51. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Existing work
• [GKZ’90] Univariate case / general dimensional N(R)
52. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Existing work
• [GKZ’90] Univariate case / general dimensional N(R)
• [Sturmfels’94] Multivariate case / up to 3 dimensional N(R)
53. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
One step beyond... 4-dimensional N(R)
• Polytope P ⊆ R4; f-vector is the vector of its face cardinalities.
54. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
One step beyond... 4-dimensional N(R)
• Polytope P ⊆ R4; f-vector is the vector of its face cardinalities.
• Call vertices, edges, ridges, facets, the 0,1,2,3-d, faces of P.
56. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main result
Theorem
Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R)
are degenerations of the polytopes in following cases.
• Degenarations can only decrease the number of faces.
57. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main result
Theorem
Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R)
are degenerations of the polytopes in following cases.
(i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex
with f-vector (5, 10, 10, 5).
• Degenarations can only decrease the number of faces.
58. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main result
Theorem
Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R)
are degenerations of the polytopes in following cases.
(i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex
with f-vector (5, 10, 10, 5).
(ii) All |Ai| = 2, except for two with cardinalities 3 and 4, has
f-vector (10, 26, 25, 9).
• Degenarations can only decrease the number of faces.
59. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main result
Theorem
Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R)
are degenerations of the polytopes in following cases.
(i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex
with f-vector (5, 10, 10, 5).
(ii) All |Ai| = 2, except for two with cardinalities 3 and 4, has
f-vector (10, 26, 25, 9).
(iii) All |Ai| = 2, except for three with cardinality 3, maximal
number of ridges is ˜f2 = 66 and of facets ˜f3 = 22. Moreover,
22 ≤ ˜f0 ≤ 28, and 66 ≤ ˜f1 ≤ 72. The lower bounds are tight.
• Degenarations can only decrease the number of faces.
• Focus on new case (iii), which reduces to n = 2 and each
|Ai| = 3.
60. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main result
Theorem
Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R)
are degenerations of the polytopes in following cases.
(i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex
with f-vector (5, 10, 10, 5).
(ii) All |Ai| = 2, except for two with cardinalities 3 and 4, has
f-vector (10, 26, 25, 9).
(iii) All |Ai| = 2, except for three with cardinality 3, maximal
number of ridges is ˜f2 = 66 and of facets ˜f3 = 22. Moreover,
22 ≤ ˜f0 ≤ 28, and 66 ≤ ˜f1 ≤ 72. The lower bounds are tight.
• Degenarations can only decrease the number of faces.
• Focus on new case (iii), which reduces to n = 2 and each
|Ai| = 3.
• Generic upper bound for vertices yields 6608 [Sturmfels’94].
61. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Tool (1): N(R) faces and subdivisions
A subdivision S of A0 + A1 + · · · + An is mixed when its cells are
Minkowski sums of Ai’s subsets.
Example
A0
A1
A2 NOT fine mixed subdivision S of A0 + A1 + A2
62. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Tool (1): N(R) faces and subdivisions
A subdivision S of A0 + A1 + · · · + An is mixed when its cells are
Minkowski sums of Ai’s subsets.
Example
A0
A1
A2 NOT fine mixed subdivision S of A0 + A1 + A2
Proposition (Sturmfels’94)
A regular mixed subdivision S of A0 + A1 + · · · + An corresponds
to a face of N(R).
63. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Tool (2): Input genericity
Proposition
Input genericity maximizes the number of resultant polytope faces.
Proof idea
N(R∗
) f-vector: (18, 52, 50, 16)
N(R) f-vector: (14, 38, 36, 12)
p
p∗
A0 A1 A2
A0 A1 A2
64. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Facets of 4-d resultant polytopes
Lemma
A 4-dimensioanl N(R) have at most
• 9 resultant facets: 3-d N(R)
• 9 prism facets: 2-d N(R) (triangle) + 1-d N(R)
• 4 zonotope facets: Mink. sum of 1-d N(R)s
65. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
References
• Dickenstein, Emiris, F. Combinatorics of 4-dimensional
Resultant Polytopes. Proc. of the 38th ACM Symposium on
Symbolic and Algebraic Computation, 2013, Boston, MA,
USA.
66. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
67. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Geometric algorithms and predicates
Setting
• geometric algorithms → sequence of geometric predicates
• Hi-dim: as dimension grows predicates become more expensive
68. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Geometric algorithms and predicates
Setting
• geometric algorithms → sequence of geometric predicates
• Hi-dim: as dimension grows predicates become more expensive
Examples
• Orientation: Does
c lie on, left or
right of ab?
ax ay 1
bx by 1
cx cy 1
0
a
b
c
70. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Dynamic Determinant Computations
One-column update problem
Given matrix A ⊆ Rd×d, answer queries for det(A) when i-th
column of A, (A)i, is replaced by u ⊆ Rd.
71. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Dynamic Determinant Computations
One-column update problem
Given matrix A ⊆ Rd×d, answer queries for det(A) when i-th
column of A, (A)i, is replaced by u ⊆ Rd.
Solution: Sherman-Morrison formula (1950)
A −1
= A−1
−
(A−1(u − (A)i)) (eT
i A−1)
1 + eT
i A−1(u − (A)i)
det(A ) = (1 + eT
i A−1
(u − (A)i)det(A)
• Only vector×vector, vector×matrix → Complexity: O(d2)
74. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Incremental convex hull: REVISITED
p2 p5
p6 p4 p5
1 1 1
A =
p1
p3
p4
p6
• Orientation(p6, p4, p5) = sgn(det(A )) in O(d2)
• Store det(A), A−1 in a hash table
75. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Incremental convex hull: REVISITED
p2 p5
p6 p4 p5
1 1 1
A =
p1
p3
p4
p6
• Orientation(p6, p4, p5) = sgn(det(A )) in O(d2)
• Store det(A), A−1 in a hash table
• Update det(A ), A −1 (Sherman-Morrison)
76. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Experiments
Determinants (1-column updates)
• 2 and 7 times faster than state-of-the-art software (Eigen,
Linbox, Maple) in rational and integer arithmetic resp.
Convex hull
• Plug into triangulation/CGAL improving performance
• Outperforms polymake, lrs, cdd in most cases with generic
input in d ≤ 7
Point location
• Improves up to 78 times in triangulation/CGAL, using up
to 50 times more memory, d ≤ 11
77. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
References
• F, Pe˜naranda. Faster Geometric Algorithms via Dynamic
Determinant Computation. Proc. of European Symposium on
Algorithms, LNCS, 2012, Ljubljana, Slovenia.