An Improved Cutting Plane Method for Convex Optimization, Convex-Concave Games and its Applications
Haotian Jiang, Yin Tat Lee, Zhao Song, Sam Chiu-wai Wong
Introduction
The cutting plane methods are a class of optimization primitives for solving Linear and Convex Programming, which is encapsulated by the feasibility problem of finding a point in a given convex set equipped with a separation oracle. In each iteration, cutting plane methods query the separation oracle which returns a hyperplane separating the query point from . Since Khachiyan’s breakthrough result [Kha80] on the ellipsoid method, cutting plane methods have played a central role in theoretical computer science, showing that a plethora of problems from diverse areas admit polynomial time algorithms. Early prominent examples include linear programming and submodular function minimization.
While more applications of the cutting plane methods are still being discovered to this date, progress on faster cutting plane methods had stagnated until the recent work of Lee, Sidford and Wong [LSW15]. Prior to their work, cutting plane methods were considered too slow to be of relevance in theory or in practice (other than establishing polynomiality). [LSW15] debunked this by showing how their cutting plane method is faster than tailor-made algorithms for a long list of well-studied problems.
The fastest algorithm before their work was Vaidya’s algorithm [Vai89a], which runs in time. Here is the exponent of matrix multiplication [CW87, Wil12, DS13, LG14]. Leveraging recent advances in optimization and numerical linear algebra, LSW lowered the dependence on the dimension at the expense of additional log factors in the accuracy , namely . The following table compares the runtimes of Vaidya’s and LSW methods, which both achieve the optimal number of oracle calls of .
This extra overhead of , as exemplified by various problems in combinatorial optimization in their paper, translates into only a log-squared factor in the maximum value of the input by taking . This is because solutions to (polynomial-time solvable) problems in combinatorial optimization are guaranteed to be integral. Despite being a nuisance, this small overhead is relatively mild and can even be absorbed completely for unweighted problems and strongly polynomial time algorithms. Indeed, armed with this faster cutting plane method, they improved the state-of-the-art running times for a host of problems such as semidefinite programming, matroid intersection and submodular minimization.
For many other problems including linear programming and market equilibrium computation, must be taken as resulting in an additional factor between and . For these applications, LSW is slower than Vaidy’s by a factor of . This raises a natural question: is there a cutting plane method that simultaneously runs in calls and time? That is, can we achieve the best of both worlds of Vaidya’s and LSW methods in terms of the dependence on and ?
In this paper, we answer this question in the affirmative. Somewhat surprisingly, we are able to remove dependence in LSW as well.
There is a cutting plane method which runs in time , where is the time complexity of the separation oracle.
As with previous methods, our result achieves the asymptotic optimal oracle complexity of . Moreover, we conjecture that the runtime is likely the best possible. Note that in each iteration where a separation oracle call is made, even basic matrix operations require time. Thus our runtime is essentially tight unless properties like sparsity can be surprisingly exploited to update the feasible region and compute the next query point for the separation oracle.
Our result is obtained by marrying Vaidya’s method with recent advances in numerical linear algebra. Similar to LSW, we implement each iteration of Vaidya’s via tools from fast numerical linear algebra. The main issue is that such tools rely on approximation and would lead to errors which must be carefully controlled.
Our first innovation is to run Vaidya’s method in phases, each of which consist of a certain number of iterations. Between phases we “recompute” to eliminate the errors accumulated within a phase. Because of this recomputation we can afford to tolerate higher errors in an iteration. Secondly, we present a sophisticated data structure that enables us to implement each iteration of Vaidya’s efficiently. Our data structure leverages recent advances on applying numerical techniques to optimization. We hope that these numerical tools, as well as our approach to applying them, would play a greater role in future development of optimization.
1 Applications
We highlight some of the key applications of our faster cutting plane method. Interestingly, even though our cutting plane method is a general purpose algorithm, we are able to improve the runtimes of tailor-made algorithms for various problems.
Using a standard reduction of convex minimization to the feasiblity problem ([Nem94] and Theorem 42 of [LSW15]), we can minimize a convex function with an optimal subgradient oracle calls and an additional time per oracle call.
Our convex minimization result can be further generalized to convex-concave games.
Leveraging this improved dependence on (and hence ), our cutting plane method can be used to improve the runtimes of a wide range of problems, especially those on market equilibrium computation (see Table 2, 3 and 4 for a summary of previous runtimes). In all our applications, needs to be exponentially large in which renders the factor polynomially large.
We show the following runtime improvement for the problem of computing a market equilibrium in linear exchange markets:
There exists a weakly polynomial algorithm that computes a market equilibrium in linear exchange markets in time .
The celebrated result of Arrow and Debreu [AD54] shows the existence of a market equilibrium for a broad class of utility functions. Since then researchers have attempted to design efficient algorithms to compute market equilibria. One prominent special case of linear utilities has enjoyed significant attention as demonstrated by the long line of work in Table 2. Essentially, this problem can be captured by a convex program with linear constraints [DGV16] (see (19)). While this convex program exhibits certain advantageous features over previous ones [Cor89, Jai07, NP83], it had not led to improved runtimes since the objective is not separable [GV19]. Moreover, the number of variables in the convex program can be as large as , which prohibits a fast runtime for the cutting plane method if applied directly. Our approach in Theorem 1.4 is to transform the convex program into a convex-concave game with variables and apply Theorem 1.3.
A similar technique can be applied to the problem of computing market equilibrium for Fisher markets with spending utility constraints where a convex program is given in [BDX10] (see (21)). However, directly transforming it into a convex-concave game does not reduce the dimension of the variables, as both the number of variables and constraints in the original convex program is , where is the total number of segments and it can be much larger than . In order to reduce the dimension of the convex-concave game to , we express part of the variables as functions of variables and show that this does not increase the time of the first-order oracle. This leads to the following runtime improvement:
There exists a weakly polynomial algorithm that computes a market equilibrium in Fisher markets with spending constraint utilities in time .
Yet another economics application of our cutting plane method is the problem of computing a Walrasian equilibrium in a market with fixed supply. In this economy, buyers may have arbitrary valuation functions and we would like to compute prices so that the market clears, i.e. the aggregate demand of the buyers matches the fixed supply. Recently Paes Leme and Wong [LW17] gave a polynomial time algorithm for this problem provided that an equilbrium actually exists. They achieved this by showing that the cutting plane method can be modified so that the convex program for the equilibrium can be solved under the aggregate demand oracle.
By leveraging our faster cutting plane method we obtain an improved runtime:
2 Previous works
The cutting plane methods solve the following feasbility problem that conveniently abstracts the applications to specific scenarios.
Feasibility Problem: Given a separation oracle for a set contained in a box of radius either find a point or prove that does not contain a ball of radius .
All cutting plane methods maintain a candidate region and solve the feasibility problem by iteratively refining based on the present and the new separating hyperplane. In each iteration: 1. The separation oracle is queried at some point . 2. If we have solved the feasibility problem. 3. Otherwise, the separation oracle returns a separating hyperplane from which is further refined and the next query point is computed.
Previous works differ in how is selected and how is refined. For instance, the classic ellipsoid method maintains as an ellipsoid and as its center. Given and the new separating hyperplane, the new is chosen to be the smallest ellipsoid containing their intersection. Table 1 lists the running times for solving the feasibility problem in the literature.
We focus our discussion on the trade-off between the oracle complexity and the runtime per iteration. The oracle complexity has a lower bound [NY83]. While the ellipsoid method achieves a suboptimal in oracle complexity, the runtime per iteration is which is faster than all subsequent methods. The good runtime follows from the simple calculations needed to update the ellipsoid, whereas the suboptimal oracle complexity can be attributed to the “looseness” of maintaining only an ellipsoid as a proxy to the intersection of past separating half-spaces.
Indeed, one can attain the optimal oracle complexity by maintaining all previous separating half-spaces. This is the random walk method [BV02] where the query point is chosen to be its (approximate) center of gravity. Updating involves performing a random walk in this polytope and is computationally expensive.
Nevertheless, by judiciously including only a representative subset of previous half-spaces , Vaidya showed that the volumetric center and can be updated by basic matrix operations which run in time.
We defer the discussion of LSW to the next subsection, which explains how Vaidya’s method can be sped up using machineries from numerical linear algebra.
3 Lee-Sidford-Wong method (LSW)
LSW’s key observation is that Vaidya’s method relies heavily on leverage scores, which measure the relative importance of each separating hyperplane. In Vaidya’s method, naively updating leverage scores requires time and is a bottleneck. Inspired by the work of Spielman and Srivistava [SS11], LSW attempted to address this by using random Johnson-Lindenstrauss [JL84] (JL) projection to approximate changes in leverage scores. Leverage scores can then be updated by summing over the differences.
Approximating leverage scores changes via JL projection however still requires solving a linear system which would still take time. LSW further overcame this barrier by resorting to a recent work that efficiently solves “slowly-changing” linear system in amortized time. Thus after paying initially, they can solve such linear systems in time per iteration.
Error accumulation. Nevertheless, as an approximate method JL introduces errors which would accumulate across iterations. While Vaidya’s method tolerates small errors in leverage scores, the total errors incurred in JL projection (as accumulated across iterations) would eventually become too big and destroy the performance guarantee of Vaidya’s method.
LSW handled this by modifying Vaidya’s framework to take into account of the error in the convex function to be minimized. This approach gives rise to a “hybrid” center algorithm, which involves a complicated interplay of optimization and linear algebra. In particular, to reduce the error accumulated the error parameter in JL projection has to be as small as . As the runtime of JL depends on , this unfortunately introduces the overhead in LSW runtime when compared to Vaidya’s volumetric center method.
4 Overview of our approach
Our data structure employs a layered approach where different layers are associated with different error tolerances, and achieve different accuracy-efficiency tradeoffs in approximating the changes in leverage scores. The more inner a layer is, the more error it can tolerate and the faster is the runtime. Whenever the error accumulated in a layer becomes too much, the layer above would take over and produce a finer error estimate which would, of course, be more time costly. But because of our layered approach, the higher layer is called on less often and afford to spend more time.
Such a layered approach further leads to the following issue. In the middle and outer layers, we batch the updates of multiple steps into one which allows us to make use of fast rectangular matrix multiplication. However, our algorithm needs to handle possibly exponential weight changes. We show there are not too many such weights and can be handled separately in groups of size using low-rank update formula.
Our data structure also draws on various numerical tools such as fast rectangular matrix multiplication, “tall” JL projection, preconditioning, inverse maintenance, and polynomial interpolation for approximating integrals.
A more in-depth discussion of our techniques can be found in Section 2.
5 Discussion of optimality
Similar to previous methods our cutting plane method achieves the optimal oracle complexity [NY83]. We present some evidence that our running time of is also tight.
A bottleneck of Vaidya’s method is to solve the inverse maintenance problem. Formally, given a sequence of positive vectors , let be defined as
where is the diagonal matrix such that . The goal is to output a sequence of vectors such that
There is a long line of research on inverse maintenance and dynamic matrix data-structure problems [Kha80, Vai89b, San04, LS15, HKNS15, CLS19, LSZ19, Son19, BNS19, Bra20]. This task can be done naively by spending time so the goal is to achieve amortized cost per iteration. For example, in the LP setting the number of iterations is and Vaidya [Vai89b] combined fast matrix multiplication with inverse maintenance to achieve amortized cost per iteration, which gives an time algorithm. This remained a barrier until recent works [CLS19, LSZ19] combined sampling and sketching techniques with fast rectangular matrix multiplication and inverse matrix maintenance to give an time algorithm.
One of the major computation required in each step is matrix-vector multiplication, e.g., . Naively, this step takes time per iteration. To achieve amortized cost per iteration, previous works [CLS19, LSZ19] used an idea called “iterating and sketching” which was formally described in [Son19]. This idea is very different from the classical “sketch and solve” [CW13] and “guess a sketch” [RSW16]. The classical idea usually applying sketching matrices only once without modifying the solver itself. However, the “iterating and sketching” idea has to modify the solver and applying sketching/sampling matrices over each iteration.
Compared to the cutting plane method, LP is an easier maintenance task as the matrix is fixed throughout. In the cutting plane method, however, rows get inserted into or deleted from from continuously. One critical idea used in all previous works on LP [Vai89b, CLS19, LSZ19] is to delay low-rank updates on . However, in the cutting plane method, the low rank updates to cannot be delayed. Thus it appears that previous techniques are inapplicable. Moreover, lower bounds have recently been established for natural matrix maintenance tasks (e.g. determinant, inverse) with row/column insertions/deletions under the Online Matrix-Vector conjecture (e.g. [HKNS15, BNS19]). Therefore, we believe our algorithm is tight and conjecture the following:
Solving the feasibility problem requires time. Hence our cutting plane method achieves the optimal runtime.
6 Related works
Leverage scores are a fundamental concept in graph problems and numerical linear algebra. There are many works about how to approximate leverage scores [SS11, DMIMW12, CW13, NN13] or more general version of leverages, e.g. Lewis weights [Lew78, BLM89, CP15] and ridge leverage scores [CMM17]. From graph perspective, it was applied to solve max-flow [Mad13, Mad16], generate random spanning trees [Sch18], and sparsify graphs [SS11]. From matrix perspective, it was used to give matrix CUR decomposition [BW14, SWZ17, SWZ19] and tensor CURT decomposition [SWZ19]. From optimization perspective, it was used for approximating the John Ellipsoid [CCLY19], accelerating the kernel methods [AKM+17, AKM+19], showing the convergence of the deep neural network [LSS+20], cutting plane methods, e.g. [Vai89a, LSW15] and this paper.
Linear Program is a fundamental problem in convex optimization and can be treated as an special case where one can apply the cutting plane method. There is a super long list of work focused on fast algorithms for linear program [Dan47, Kha80, Kar84, Vai87, Vai89b, LS14, LS15, Sid15, Lee16, CLS19, LSZ19, Son19, Bra20, BLSS20].
Besides the separation oracle considered in this paper, there is another line of work on using the membership oracle to solve the feasibility problem [Pro96, KV06, LV06, GLS12, LSV18]. For a query point , this oracle outputs or .
Our Techniques
Section 1.4 provided a quick overview. Here we take a deeper dive into our techniques.
The key to fast maintenance of leverage scores is an efficient way to approximate their changes between consecutive steps. While a fine-grained approximation leads to an accurate approximation, the time to compute such an approximation might be unaffordable. On the other hand, a coarse-grained approximation can be efficiently computed, but might lead to accumulating errors that blow up after a small number of steps. This leads to a tradeoff between accuracy and efficiency.
Central to our data structure are a coarse-grained formula (Lemma 7.4) and a fine-grained formula for the change in leverage scores (Lemma 8.4). While the coarse-grained formula approximates the leverage score’s change via a single integral, the fine-grained formula is a cocktail involving integrals, matrix inverse and matrix multiplication. For the coarse-grained formula, we simply estimate the integral by a single point along the integral (Lemma 7.5). For the fine-grained formula, however, the approximation (Lemma 8.10) is more involved and requires appropreiate numerical tools.
Our course-grained and fine-grained formulas lead to two different data structures for leverage score maintenance: a simple deterministic data structure that achieves low running time but introduces a large error in each step, and a more complicated randomized data structure that incurs small error each step at the cost of efficiency.
2 Layered data structure
Our data structure employs a layered approach (see Figure 1) where different layers are associated with different error tolerances. The more inner a layer is, the more error it can tolerate and the faster is the runtime. Whenever the error accumulated in a layer becomes too high, the layer above would take over and produce a finer error estimate which would, of course, be more time costly. But because of our layered approach, the higher layer is called on less often and can afford to spend more time. More specifically, our layered data structure contains three layers. The inner and middle layers both employ the simple data structure to achieve computational efficiency while the outer layer uses the complicated data structure to ensure a low error.
Our layered approach builds on several fundamental results on matrix multiplication which we summarize in Theorem 2.1. We remark that Vaidya [Vai89b] used the first result, a recent LP solver [CLS19] used the first two, while our cutting plane method crucially depends on all the results in the table.
Our data structure also draws on various numerical tools such as fast rectangular matrix multiplication, “tall” JL projection, preconditioning, inverse maintenance, and polynomial interpolation for approximating integrals, which we discuss in more details below.
3 Batched low-rank update
To rescue this preconditioner idea, we transform and split the sequence into pieces of size . We ensure the weight changes by only a quasi-polynomial factor and this decreases the cost of solving linear systems to steps. Since we batch the task of handling weight changes into one rectangular matrix multiplication which can be performed in time, we make sure the cost per weight change is exactly time (Theorem 6.3).
4 Illustration of our analysis
We describe the numerical tools used in our analysis, and provide simple illustrations of our applications of these tools. The actual way in which they are used in Sections 7-8 are more involved.
The most standard way to approximate an integral is by discretization, which takes a weighted sum of the integrand over a set of points in the domain. Unlike common discretization tools like the trapezoidal method, for our purpose we need to interpolate multiple variable integral using a polynomial for higher accuracy (Theorem 3.10). We give a simple example to illustrate our application of polynomial interpolation for multiple variable integrals as follows. In our fine-grained formula of the leverage score change from to , one of the integral terms is
In order to approximate such an integral, we take a set of points along the integration together with weights as in Theorem 3.10, and approximate the integral by
Inverse maintenance was first proposed in [Kha80] as a method for solving “slowly-changing” linear system.
From the previous paragraph on discrete sampling, it suffices to compute for all , where
Notice that computing for all is essentially computing the matrix products
which would take time if computed exactly. To improve the time while ensuring keeping the error small, we invoke JL with dimension for small constant by computing
5 Much faster rectangular matrix multiplication implies deterministic cutting plane method
Our algorithm crucially relies on different kinds of fast rectangular matrix multiplication results. We also show that if these results are improved, then we are able to get a deterministic cutting plane method immediately.
where is the time complexity of the separation oracle.
Organization. We introduce basic notations, backgrounds and tools in Section 3. In Section 4, we present the statement that Vaidya’s cutting plane method tolerates perturbed leverage scores. We present our main data-structure for maintaining leverage scores in Section 5. Our main data-structure uses two different leverage score maintenance data-structures in Sections 7 and 8 with three different settings of the error parameter. Both our data-structures in Section 7 and 8 reply on the batched low rank algorithm in Section 6.
In Section A, we prove that Vaidya’s cutting plane method tolerates perturbed leverage scores. We provide several modified versions of projection maintenance data-structures in Section B. Finally, we explain how to handle convex-concave game optimization in Section C, and present our applications to market equilibrium computations in Section D.
Acknowledgments
The authors would like to express their sincere gratitude to matrix multiplicationer Josh Alman for his patient and answers of our exponential number of questions about fast matrix multiplication.
The authors would like to thank Swati Padmanabhan for very useful discussions at the early stage of this project. The authors would like to thank Lijie Chen, Nikhil Devanur, Irit Dinur, Simon S. Du, Wei Hu, Jason Lee, Jerry Li, Ruoqi Shen, Aaron Schild, Aaron Sidford, Santosh Vempala, Xin Yang, Peilin Zhong, and Danyang Zhuo.
The authors would like to thank Josh Alman, Irit Dinur, Avi Wigderson, and Jeroen Zuiddam for useful discussion about limitation of fast matrix multiplication.
The authors would like to thank Sanjeev Arora, Alexandr Andoni, Ainesh Bakshi, Yangsibo Huang, Rajesh Jayaram, Ravindran Kanna, Michael Kapralov, Adam Klivans, Kai Li, Christos Papadimitriou, Eric Price, Daniel Roy, Clifford Stein, Omri Weinstein, David P. Woodruff, and Hengjie Zhang for asking interesting questions at the end of the talk of this paper.
This project was supported in part by NSF awards CCF-1749609, CCF-1740551, DMS-1839116, and Microsoft Research Faculty Fellowship.
This project was supported in part by Special Year on Optimization, Statistics, and Theoretical Machine Learning (being led by Sanjeev Arora) at Institute for Advanced Study.
References
Preliminaries
In this section we introduce the notions and tools used throughout this paper.
For a positive integer , let denote the set . For any function , we define to be . In addition to notation, for two functions , , we use the shorthand (resp. ) to indicate that (resp. ) for some absolute constant
For square full-rank matrix , we use to denote the inverse of .
2 Operators
3 Different types of running time
An algorithm runs in pseudo-polynomial time if its running time is a polynomial in the length of the input (the number of bits required to represent it) and the numeric value of the input (the largest integer present in the input).
An algorithm runs in strongly polynomial time if (1) the number of operations in the arithmetic model of computation is bounded by a polynomial in the number of rational numbers in the input instance, and (2) the space used by the algorithm is bounded by a polynomial in the size of the input.
An algorithm runs in weakly-polynomial time if its running time is upper bounded by a polynomial in the size of the input, and it doesn’t run in strongly polynomial time.
4 Basic results on matrices
Given a square invertible matrix , an matrix and a matrix , let be an matrix such that . Then, assuming is invertible, we have
5 Fast matrix multiplication
For any , denote the time to compute the multiplication of an matrix and an matrix.
We have the following upper bound on :
[GU18]. For , we have .
[Cop82]. For , we have .
[BD76]. For for any constant , then we have .
6 Multiple variable polynomial interpolation
We first state a one-variable version interpolation theorem.
Now, we explain how to use one variable interpolation result (Theorem 3.9) to prove a multiple variable interpolation result (Theorem 3.10).
Using one variable theorem 3.9, we have that : for all ,
To write recursive thing in an easy way, we let denote function . We use to denote .
where the last step follows by Claim 3.11. ∎
First, using one variable theorem 3.9, we can upper bound
where the last step follows by re-using and .
Perturbed Volumetric Center Cutting Plane Method
Recall that the feasibility problem is defined as follows.
Feasibility Problem: Given a separation oracle for a set contained in a box of radius either find a point or prove that does not contain a ball of radius .
At a high level, Vaidya’s method heavily employs leverage scores to decide which hyperplane to add or to drop from the feasible region. The main innovation behind our faster implementation is a data structure that maintains an estimate of the leverage scores in amortized . This removes the bottleneck in Vaidya’s algorithm and yields the following result.
Since the proof of the validity of Vaidya’s method for our result is mostly a perturbed version of his analysis, we defer the proof of Theorem 4.1 to Section A.
Main Data Structure for Leverage Score Maintenance
In this section, we present our main data structure for leverage score maintenance that achieves an amortized time per update. Combined with Theorem 4.1 in Section 4, our main data structure implies a faster time cutting plane method. Our main data structure further uses the simple leverage score maintenance data structure in Section 7 and the complicated leverage score maintenance data structure in Section 8.
for positive diagonal matrices through the following operations:
: takes time to intialize the data structure.
: updates the data structure for the single update .
Insertion (resp. deletion) of row with weight into (resp. from) that satisfies
then the function takes an amortized time, and the vector output by at each step satisfies that
The proof of Theorem 5.1 relies on the data structures in Sections 6, 7 and 8.
We first prove the running time upper bound of the different functions. Notice that the running time upper bound for , and are immediate corollaries of Theorem 7.2 and 8.1. We prove running time upper bound for the function in the following. In particular, we show that the inner, middle and outer phases all run in amortized time, and the amortized time to restart the data structure in Step 29 is .
We start by analyzing the running time of the inner phase. Since each call to makes one call of with having a single action , it follows from Theorem 7.2 that the inner phase makes one call to and takes extra time at most . Since we choose our parameter as (see Table 5), it then follows from Theorem B.4 with that the amortized time per call to is . Therefore, the inner phase runs in amortized time .
Batched Low Rank Update
In this section, we show how to maintain leverage score under low rank update. First, we start with a preconditioning lemma showing that given two spectrally similar matrix, we can invert one matrix faster by knowing the inverse of the other matrix.
Given PSD matrices and such that . For any integer such that , we have
Multiplying on both sides of the above equation with a formula (Eq. (6.1)), we get
Using the definition of , we have that
Using , we have
The result follows from some rearranging. ∎
Now, we show how to do leverage score update under monotone updates.
The same statement holds for decreasing , namely , with .
We note that the decreasing case follows from the increasing case by swapping and . Hence, we focus on the increasing case. Using Lemma 6.1, we can construct such that is low-degree polynomial of and and that
We define similarly. We will show how to use and to approximate . First, we note that
We define , , as follows:
where and .
Lemma 6.1 shows that has terms and that it takes
to compute . Finally, it takes extra to do the left multiplication on .
For the second term in (5). Woodbury matrix identity shows that
Then, we can compute in time. Then, we compute
Now, we multiple the two terms above together in time . Hence, the total time is
For the first term in , we have
For the second term in , we have that the error is given by
where . To simplify the notation, we define where . Then, the error term becomes
To bound the Frobenius norm, we note that by the assumption and that (4). Hence, we have that and
(4) shows that and hence . Continuing the last equation, we have
Finally, using has rank , we have
2 Batched low rank update
When we are given a sequence of update and we need to compute the change of leverage score, we cannot apply Lemma 6.2 directly for the following reasons:
The update in general involves both increasing some weight and decreasing some weight. This can be fixed by splitting the update into positive update and negative update. (See Step 1 in Algorithm 2)
To get error , Lemma 6.2 takes at least time. Hence, it is too costly to do a rank 1 update, which can happen if we have alternating positive and negative updates (since we can only apply Lemma 6.2 for a monotone change). This can be fixed by moving all positive/update and insert in the front of the update sequence. (See Step 2 in Algorithm 2)
Given the above intuitions, Theorem 6.3 follows from multiple use of Lemma 6.2.
Update:
Insert/Delete:
Note that the algorithm 2 involves reducing the sequence to to and finally to . All steps maintains the matrix at . The first two steps maintains the matrix at the last step. For the last step, we only ignore the rows with multiplicative changes less than . Since there are at most phases, the total accumulated multiplicative changes for one row is . Therefore, we have
for some such that . Furthermore, we output the good enough approximation of where we abused the notation to use to denote the leverage score of the rows insides . This is simply because we split the difference into
By the assumptions on insert/delete and update, we see that for all . The first step clearly maintains this relation. We claim that the second step also maintains this relation. To see this, we let . By the relation, we have that
Note that step 2 simply permutes , namely, for each there is an unique such that . Finally, we note that for all because is simply plus some PSD matrix (which due to some insert/positive update move into the sum or some delete/negative update removed from the sum). Hence, we still have the relation (10).
For the step 3, we should not expect the relation (10). However, we claim that within each phase, let and be two matrices in the phase. Then, we have that
The proof for this is same for the phase with increasing and the phase with decreasing phase. Hence, we only discuss the first case. Say is the first matrix in the phase and is the last matrix in the phase. Note that the step does not change the matrix and because we only swapping operation order within a phase. Hence by (10), we have
Since all matrix in the phase is sandwiched between and (due to the monotonicity of the sequence of ). Hence, we have (11).
Now, we bound the runtime. We will show the each phase takes time. Since there are phases, this shows that the total cost is .
Each phase contains at most insert or delete. Hence, Line 65 involves estimating leverage score up to rank update. By (11), we know the matrix is changed by a factor. Theorem 6.3 shows the cost is
where , and . By the choice of , we have and hence the cost is .
where , and . By the choice of , we have and hence the cost is .
Similar to above, we have that . Furthermore, we have that . Due to Line 44 and 49, we removed all rows with multiplicative changes less than . Hence, the number of coordinates that is non-zero in is at most . Hence, Theorem 6.3 shows the cost is
where , and . By the choice of and , we have and hence the cost is .
Simple Deterministic Leverage Score Maintenance
In this section, we give a simple deterministic leverage score maintenance data-structure which is used by both the inner and middle phases in our main data structure in Section 5. As a sub-procedure, we make use of the batched low-rank update procedure in Section 6 which requires the following assumption for a sequence of updates acts:
Update: .
Insert/Delete: .
for positive diagonal matrices through the following operations:
: takes time to initialize the data structure.
: takes time to update the approximation of to .
We only need to prove the guarantee for the function , as the guarantees for other functions are straightforward. Notice that each call to the function makes at most one call to , and the extra running time of follows directly from Theorem 6.3. To prove the error guarantee, we let the sequence of matrices and vectors in be and . notice that by Theorem 6.3, we have
The error guarantee then follows by summing up the two error upper bounds above. ∎
The following corollary is an immediate consequence of Theorem 7.2 and B.1. It states that if matrix multiplication can be performed fast enough, then the simple leverage score maintenance would imply a deterministic algorithm for the cutting plane method.
If for with , then there’s a deterministic time algorithm for the cutting plane method.
This algorithm only uses the inner and middle phases. The inner phase is run as is our main algorithm. For the middle phase, we notice that, in this case, the exponent of matrix multiplication time can be bounded as . Therefore, the data structure is restarted after every calls to the middle phase. For the middle phase, we use the simple leverage score maintenance data structure in Theorem 7.2 with parameter . It follows from Theorem 7.2 that the error accumulated in the steps is . By Theorem 7.2 and 5.1, the running time is per step for middle phase which is fast enough. This finishes the proof of the corollary. ∎
2 Approximate leverage score’s moving
We use and to denote the two corresponding error terms
Assume Assumption 7.1 holds and that . Then we have the following upper bound on
Recall the definition of the error term as
and we use to denote . Then we have
where the last step follows from Theorem 6.3. ∎
Assume Assumption 7.1 holds and that . Then we have the following upper bound on
Recall the definition of the error term as
and we use to denote . By Assumption 7.1, we have
This together with the assumption that further implies that
Complicated Randomized Leverage Score Maintenance
In this section, we present a complicated randomized leverage score maintenance data structure which is used by the outer phase in our main data structure in Section 5. We again make crucial use of the batched low-rank update procedure in Section 6.
for positive diagonal matrices through the following operations:
: takes time to initialize the data structure.
: takes time to update the approximation of to .
2 Leverage score’s moving
To define for , we first define for all as in Algorithm 5. We then extend the definition of to the entire interval $$ by connecting consecutive points with segments.
For any , we define .
The change in leverage score can be written as
The lemma then follows immediately from the following Lemma 8.5 and 8.6. ∎
For the second term in Lemma 8.4, we have
3 Running time anlaysis
Assume the sequence satisfies Assumption 7.1 and . Then each call to the function makes calls to and takes an extra time.
Assume . Then for any , the time to compute for all is .
Denote and the entry-wise square of . We have
We only describe how to compute for all in time as the rest of the calculations are similar. Notice that that computing for all is essentially computing the matrix
Assume we know the matrix , then we can perform the computation from left to right, and it follows that each matrix multiplication here can be done in time . To remove the assumption that we know , we pre-condition on the matrix and apply Lemma 6.1 to compute for all (up to negligible error) in time .
Assume and . Define an approximation to the change in leverage score to be
Then the time to compute for all (up to negligible error) is .
4 Upper bounding η𝜂\eta, α𝛼\alpha, β𝛽\beta and γ𝛾\gamma
From the computation in Section 8.5, the variance of the three terms where we applied JL matrices are bounded by , and . Our bounds for these terms are summarized in Table 6.
Assume , where is the error parameter in Algorithm 5. Then for any , we have
where and . Recall from Definition 3.2 that . We can rewrite as
and for simplicity, we use to denote the projection matrix . Since , it follows that
where recall that and . Recall from Definition 3.2 that . We therefore can rewrite and as
Therefore we can upper bound as
where in the last step we define diagonal matrices
where recall that and . Recall from Definition 3.2 that . We therefore can rewrite as
and for simplicity, we use to denote . By our assumptions that and
5 Variance upper bound for random Gaussian matrices
Our variance bounds for the terms where we applied JL matrices are summarized in Table 7. These results are consequences of the following Lemma 8.14.
Since , we have
Next we prove the bound on the variance. We use for each to denote the column vector that corresponds to the th row of . We have
where the last inequality is because is a Gaussian random variable with variance .
The lemmas below all follow immediately from Lemma 8.14.
Let and be defined as follows
Let and be defined as follows
Let and be defined as follows
6 Error upper bound for discrete sampling
Our error upper bounds for approximating integral by discrete sampling are summarized in Table 8. We only prove Lemma 8.18 in the following. The rest of the lemmas follows from similar arguments.
Assume . Let and be defined as follows
In order to bound , we need the following Cauchy’s estimates.
Since is a rational polynomial, we can extend the definition of to the complex plane and the resulting function, which we also denote as . Since , is invertible for . Hence is holomorphic on the unit ball on the complex plane around . Applying Theorem 8.19 with , we have that
Assume . Let and be defined as follows
Assume . Let and be defined as follows
where . Then we have
Assume . Let and be defined as follows
where . Then we have
Appendix
Appendix A Perturbed Volumetric Center Cutting Plane Method
In this section we present an overview of Vaidya’s cutting plane method [Vai89a] and illustrate how our leverage score maintenance data structure in Section 5 implies a faster implementation in time. Formally, we prove the following Theorem 4.1 from Section 4.
Our cutting plane method essentially replaces the leverage scores in Vaidya’s method by estimates from our leverage score maintenance data structure in Section 5, which satisfies that . To justify the validility of such a replacement, we first give an overview of Vaidya’s method.
Each constraint of is associated with a leverage score
which measures its relative importance (see preliminary for the definition). It is well-known that , and . We denote by and the vector and diagonal matrix of leverage scores respectively.
Whenever the leverage score is smaller than some universal constant , constraint is dropped and is updated by the Newton method below. As , this implies that the number of constraints is .
Otherwise, the separation oracle is queried at the volumetric center and returns a new separating hyperplane . However, is not the intersection of and . Instead, is added for some so that the leverage score of is , where is another small universal constant.
Since the decrease is multiplicative, this can be accomplished in only many iterations.
Vaidya showed that after iterations, the volume of decreases by a factor of for some constant , i.e.
Therefore in iterations, we have showing that does not contain a ball of radius and hence solving the feasibility problem.
As and the leverage scores are maintained so that always holds, the number of constraints is . Thus all vectors and matrices above have dimension and . Moreover, recall that only steps of Newton method are needed within a iteartion of cutting plane.
Therefore in one iteration, the running time of Vaidya is plus the time to compute and to solve a linear system in (from the Newton step), which naively requires time. In the rest of this section we explain speed up these two bottlenecks using our leverage score maintenance data structure.
A.1 Our faster implementation via leverage score maintenance
We provide a faster implementation of Vaidya’s method via our leverage score maintenance data structure, which efficiently updates leverage scores. Specifically, We design a data structure which, upon updates to the volumetric center , maintains an estimate of the leverage scores in amortized time (Theorem 5.1). Our error guarantee satisfies
To apply our data structure, we plug in as the weight in Theorem 5.1. To establish the validity of our method, we show that conditions (1) and (2) required for our data structure are satisfied for sufficiently small parameters . We then prove that Vaidya’s performance guarantee is preserved in the presence of a small perturbation to the leverage score.
For any constraint added or removed, let be its slack. We have
Let . Our goal is to show
Recall that a constraint is removed when its leverage score is smaller than and added so that its leverage score is . In Vaidya’s analysis, the only requirement on and is that are sufficiently small constants and . Hence in either case, we can make the leverage score of smaller than 0.01 by choosing and small enough, i.e. the leverage score of satisfies
Since is PSD and the square root of a PSD matrix exists,
Note that the spectral norm of is . Thus
Multiplying by on the both sides of the above equation, we have
First, we note that it suffices to show that
Thus each coordinate of is bounded by .
Now using for , we have
It then remains to prove .
In Vaidya’s work [Vai89a], they showed that
Recall that leverage scores are at least , and is PSD. Thus
Moreover, note that so
Having established the conditions of our data structure which maintains perturbed leverage scores, we argue that Vaidya’s method tolerates small additive perturbations in the leverage scoresIn fact, Vaidya’s method would survive even if the perturbation is a sufficiently small constant.. Note that in the presence of such perturbations, both the procedure for updating and the Newton step are affected.
For the Newton step, let be the diagonal matrix of . Vaidya’s Newton step is modified as
As only and are changed, this amounts to a small difference in the convergence rate, i.e.
Assume the leverage scores are replaced by estimate , where in Vaidya’s method.
Then Vaidya’s convergence guarantee still holds: after iterations, the volume of decreases by a factor of for some constant , i.e.
The proof of Vaidya’s convergence lemma essentially depends on the fact that leverage scores are at least and at most .
Note that is updated by dropping constraint if , or adding constraint s.t. . The purpose of the constraint adding and dropping is to make sure the leverage score of all constraints are . Hence, we can use any constant approximation to leverage score. In particular, an additive pertubation in the leverage score can be absorbed by scaling slightly. ∎
Now we are ready to bound the running time of our modification of Vaidya’s cutting plane method and complete the proof of Theorem 4.1.
By Lemma A.4, in iterations, we have showing that does not contain a ball of radius . Thus the number of calls to the separation oracle is . We next analyze the runtime per iteration.
By Lemma A.3, we still only need Newton steps. Thus, as argued at the end of last subsection, the per-iteration running time is plus the time to compute and to solve a linear system in . We argue that both of these two tasks can be accomplished in amortized time.
For , we instead use its estimate output by our leverage score maintenance data structure (Theorem 5.1). By Lemmas A.1 and A.2, the conditions of the data structure are satisfied. Hence we can update in amortized time.
Solving a linear system in , as pointed out in Theorem 31 of LSW [LSW15], can be done by inverse maintenance. Using the inverse maintenance procedure in [CLS19], this can also be done in amortized time (see Theorem B.4). ∎
Appendix B Modified Projection Maintenance
: Initialize the data structure of the matrix , the weight and the target accuracy in time.
: Insert a column into , a weight into in time.
: Delete a column from and its corresponding weight from in time.
Suppose that the number of columns is during the whole algorithm and that for any call of Update, we have
where is the input of call, is the weight before the call. Then, the amortized expected time per call of is
We will use this theorem with difference algorithms for rectangular matrix multiplication. Recall that it takes time to multiply an and an matrix. By splitting the matrix into blocks (See e.g. [CLS19, Lemma A.5]), one can check it takes
time to multiply a and a matrix with . Using this and putting , we have
Hence, applying Theorem B.1 with , we have the following Theorem
There is a variant of the data structure in Theorem B.1 where the amortized time per call of is
Unfortunately, this version still have extra terms in the runtime. To get the time, we use the following lemma:
time to multiply and matrices.
If , we simply multiply it using a time square matrix multiplication algorithm. This is faster than . If , we simply use (3) in Theorem 3.8 which takes time. Hence, we can assume .
Let . We can view the problem as multiplying a and a block matrices and each block has size size.
Hence, (3) in Theorem 3.8 shows that the total cost is many block matrix multiplication and each takes time. Therefore, the total cost is
Now, applying Theorem B.1 with , we have
For any , there is a variant of the data structure in Theorem B.1 with the amortized time per call of is
Appendix C Cutting Plane Method for Convex Minimization and Saddle Point Problems
We show in this section that cutting plane methods can be applied to not only convex minimization, but also the more general problem of computing a saddle point in a convex-concave game with essentially the same guarantee.
C.2 Convex minimization
Using a standard reduction of convex minimization to the feasiblity problem ([Nem94] and Theorem 42 of [LSW15]), we can minimize a convex function with subgradient oracle calls and time. This improves over the previous best of [LSW15]. Since can be exponential in certain applications, this allows us to obtain significantly faster algorithms (see e.g. subsection D.3).
C.3 Convex-concave games
In this subsection we show that a similar guarantee holds for solving convex-concave games. Much of the materials in this section are modified from [Nem95, Lecture 5]. For completeness, we will explain both the standard theory and the various changes needed for our promised runtime.
In the convex-concave game, we are asked to solve
and that all solutions to the LHS are solutions to the RHS, and vice versa. Any solution to this problem is called a saddle point, and satisifes for any .
We will be interested in computing an -saddle point which we define in the following. Define and . The minimax theorem is equivalent to
Since certifying the values of around the boundary of and is quite difficult under the black-box setting, our definition of -saddle point ignores small portion of the domain around the boundary.
It follows from (13) that the LHS of (14) is
In what follows we assume access to a first-order oracle which, given , returns the subgradient vector
The crucial property of this vector is as follows:
In particular, if is a saddle point of , then we have
Since is convex in and concave in , we have
which proves the first part of the lemma. For the second part, simply notice that if is a saddle point, we have
C.4 Applying cutting plane method to convex-concave games
For simplicity, we extend the gradient function as follows:
Furthermore, with .
By Lemma C.3, any saddle point lies in showing that it is indeed a separating hyperplane. With this separation oracle, we apply our faster implementation of Vaidya’s cutting plane method from section 4.
The second part of the lemma follows from the fact that this method always maintains a polytope with constraints. For the first part, note that this just paraphases Lemma A.4. ∎
C.5 Cutting plane method for convex-concave games: generating solutions
Recall that for minimizing a convex function , one can simply output the best found in all iterations. The argument here is that as long as the volume is small enough, then in some iteration , a point close to the optimal solution gets removed from which indicates that is also close to optimal. For the convex-concave game, however, such a naive approach of outputting the “best” would fail as illustrated by [Nem95, Section 5.3]. The crucial difference here in the convex-concave game is that although we have an objective function , but we are not interested in optimizing it. Instead, we are interested in finding an -saddle point that satisfies (14).
The correct idea is to output some convex combination of all ’s that does converge to the saddle point which we describe in the following.
Assume that we have performed steps of the cutting plane method.
Let be the set of all constraints in . If the constraint comes from , denote by the center of the face and the vector normal to the face scaled by . Otherwise, and denote the query point of the oracle and its output . The gap function is defined as
Notice that is concave as it is the minimum of affine functions.
Now we show that if is small for all , then we can form a good approximation to the saddle point set from . We first prove the following lemma which states that the maximum of is given by some certain convex combination of .
Furthermore, for any , we can find such that
in time .
The second part of the lemma follows from the observation that “ is a constant function” is a linear constraint over . Therefore, finding that forms a constant function with smallest possible value can be captured by the following linear program (in ):
Using a recent LP solver from Theorem 2.1 in [CLS19], in time we can output an approximate solution satisfying
where we used and . Now for ,
Our result then follows by taking . ∎
Now given the notion of approximate multipliers (17), we prove the following lemma.
with . Assume that . Let
where . Then is feasible, i.e. , and we have
Since for each , it follows from convexity that . For any point , we have and from Lemma C.3, for any
Let . Taking weighted sum of these inequalities, we have
where the last inequality follows from the fact that is convex in and concave in . Taking the maximum over on both sides, we have
Now we bound . For , because is -Lipschitz and
Recall that is cut off by a constraint of with normal of length . Hence is the length of the projection of onto , which is at least .
Using , we have . Now the result follows from (18). ∎
Thus, given that the maximum of the function is small, we can find some convex combination of the ’s in the cutting plane method that is a good approximation to the saddle point of . And it turns out that the maximum of goes to 0 as , and at the same convergence rate as the cutting plane method for convex minimization.
Consider solving the convex-concave game by the cutting plane method. Assume that at certain step we have
Denote for simplicity. First, we note that for since we include all constraints of into the definition of . Hence, it suffices to consider over .
Notice that . Therefore, there is some . This point is cut off by some :
for some (by Line 7 of the algorithm). It follows that
where we used and both and are in . It follows that
Combining Theorem C.4, Lemma C.6, C.7 and C.8, we obtain the following theorem which states that solving convex-concave games is exactly as fast as minimizing convex functions.
with high probability in where is the cost of computing subgradient .
We run our cutting plane method for iterations. By Theorem C.4, we obtain with volume
in time. Notice that
Lemma C.6 shows in time, we can find such that
for all . Using this , Lemma C.7 shows that, by taking a convex combination w.r.t. , we can find for which
Now our result follows by replacing with , which doesn’t change the asymptotic runtime. ∎
Next we give a slightly refined runtime in the case where the domain is a ball using a result of Nemirovski [Nem95].
with high probability in where is the cost of computing .
By [Nem95, Theorem 5.5.4], we can minimize such a function in time . On the other hand, Theorem C.9 shows we can minimize it in time
By using the first result when and using the second result when , we have the promised runtime. ∎
Appendix D Applications of Cutting Plane Method
for every agent , i.e. every good is fully sold.
for every agent , i.e. the money spent by agent equals to his income .
for every , i.e. prices are positive.
, if then , i.e. agent only buys good that attains the best bang-per-bucks.
To ensure the existence of an equilibrium, we assume the following. Consider the directed graph where and directed edges .
For each agent , there exist such that and , i.e. each has at least one incoming edge and one outgoing edge.
For every strongly connected component , if then there is a loop incident to the node in .
A market equilibrium always exists under the above assumptions.
The celebrated result of Arrow and Debreu [AD54] shows the existence of a market equilibrium for a broad class of utility functions. From the computational aspects, computing the equilibrium of a market equilibrium in the case of linear utility functions admits a long line of research (see Table 9), leading to both weakly and strongly polynomial runtimes.
which is further equivalent to the following convex-concave game
Notice that the convex-concave game formulation above has variables. The following upper bound on equilibrium prices is due to [DGV16].
Assume all utilities are integers and we let . Then there exists equilibrium prices that are quotient of two integers , along with allocations that are quotients of two integers .
Now using Theorem C.9, we need iterations and the first order oracle requires operations. Therefore, the total number of operations is . We formally state our result as follows.
There exists a weakly polynomial algorithm that computes a market equilibrium in linear exchange markets in time .
D.2 Fisher markets with spending constraint utilities
In the Fisher market model with spending constraint utilities, there are buyers and perfectly divisible goods. There is a unitThis is without loss of generality since the goods are divisible. supply of each good. Each buyer has a budget . The utility of a buyer depends on the prices, as follows. The utility is additive across goods, that is, the total utility for a bundle of goods is the sum of utilities for each good separately. For a given good, the utility function is divided into segments; each segment has a constant rate of utility , and a budget . The utility of the buyer for amount of good under segment is , but is subject to the constraint that . Denote the total number of buyers and goods, and the total number of segments among all pair .
The second equilibrium condition, market clearance, is that for all .
The Fisher market with spending constraint utilities problem was introduced in [Vaz10] where they gave a weakly poly time algorithm that takes max-flow computations, where . A convex formulation of the problem was first given in the unpublished manuscript [BDX10]. A strongly poly time algorithm (which is also the best weakly polynomial running time) was given in [Vég16]which achieves number of operations.
The problem of computing a market equilibrium in Fisher markets with spending constraint utilities problem can be captured by the following convex program due to [BDX10].
An optimum solution to the above convex program corresponds to an equilibrium for the Fisher market with spending constraint utilities with allocation given by .
We transform the convex program above to a convex-concave saddle point which allows us to apply the cutting plane method. Let be the Lagrange multipliers for the two equality constraints and be the Lagrange multipliers for the inequalities in the above convex formulation. We have the above convex program is equivalent to
where the last step is because . Now applying Theorem C.9, we need iterations and the first order oracle takes operations. So the total number of operations is . We formally state our result as follows:
There exists a weakly polynomial algorithm that computes a market equilibrium in Fisher markets with spending constraint utilities in time .
D.3 Walrasian equilibrium for general buyer valuations and fixed supply
Recently Paes Leme and Wong [LW17] studied the problem of computing Walrasian equilibrium in a market with arbitrary buyers’ valuation functions and fixed supply of indivisible goods. They showed that such equilibria are characterized by the minima of the following convex program, which can be solved in polynomial time via a suitable extension of the cutting plane methods.
Let and be the set of buyers and goods respectively. The setting of the problem is as follows.
To study this problem computationally, one must specify the information about the market available to the algorithm. Paes Leme and Wong showed that this problem can be solved in polynomial time assuming the aggregate demand oracle.
Given prices , the aggregate demand is given by , where
is a utility-maximizing bundle for buyer .
One approach to computing Walrasian equilibrium is by formalating the problem as the following convex program. Previous works applied subgradient descent methods to this program to obtain pseudopolynomial time algorithms [Par99, PU02, AM02]. In contrast, Paes Leme and Wong showed that this program can in fact be solved in weakly polynomial time.
Here denotes the prices and can be thought of as the utility of buyer , . This convex program can clearly be solved with access to the demand oracle of each buyer , i.e. given , return , which serves as a separation oracle.
The main result of Paes Leme and Wong is that this can be done via the weaker aggregate demand oracle, i.e. given , return , where
Their algorithm is based on a suitable extension of standard cutting plane methods:
to compute Walrasian prices whenever it exists using only access to an aggregate demand oracle. Here denotes the runtime of the aggregate demand oracle, denotes the number of goods, and ( and are integer-valued).
As in previous applications, iterations of cutting plane are required as has to be taken to be exponentially small which results in an overall runtime overhead of . By leveraging our faster cutting plane method, we obtain the following improved result:
to compute Walrasian prices whenever it exists using only access to an aggregate demand oracle.
Same as Paes Leme-Wong except that we invoke our cutting plane method for convex minimization in Theorem C.1 instead of LSW’s. ∎