-
Better Algorithms for Constructing Minimum Cost Markov Chains and AIFV Codes
Authors:
Reza Hosseini Dolatabadi,
Mordedcai J. Golin,
Arian Zamani
Abstract:
The problem of constructing optimal AIFV codes is a special case of that of constructing minimum cost Markov Chains. This paper provides the first complete proof of correctness for the previously known iterative algorithm for constructing such Markov chains.
A recent work describes how to efficiently solve the Markov Chain problem by first constructing a Markov Chain Polytope and then running th…
▽ More
The problem of constructing optimal AIFV codes is a special case of that of constructing minimum cost Markov Chains. This paper provides the first complete proof of correctness for the previously known iterative algorithm for constructing such Markov chains.
A recent work describes how to efficiently solve the Markov Chain problem by first constructing a Markov Chain Polytope and then running the Ellipsoid algorithm for linear programming on it. This paper's second result is that, in the AIFV case, a special property of the polytope instead permits solving the corresponding linear program using simple binary search
△ Less
Submitted 10 May, 2024;
originally announced May 2024.
-
A (Weakly) Polynomial Algorithm for AIVF Coding
Authors:
Reza Hosseini Dolatabadi,
Mordecai J. Golin,
Arian Zamani
Abstract:
It is possible to improve upon Tunstall coding using a collection of multiple parse trees. The best such results so far are Iwata and Yamamoto's maximum cost AIVF codes. The most efficient algorithm for designing such codes is an iterative one that could run in exponential time. In this paper, we show that this problem fits into the framework of a newly developed technique that uses linear program…
▽ More
It is possible to improve upon Tunstall coding using a collection of multiple parse trees. The best such results so far are Iwata and Yamamoto's maximum cost AIVF codes. The most efficient algorithm for designing such codes is an iterative one that could run in exponential time. In this paper, we show that this problem fits into the framework of a newly developed technique that uses linear programming with the Ellipsoid method to solve the minimum cost Markov chain problem. This permits constructing maximum cost AIVF codes in (weakly) polynomial time.
△ Less
Submitted 10 May, 2024;
originally announced May 2024.
-
The Markov-Chain Polytope with Applications
Authors:
Mordecai J. Golin,
Albert John Lalim Patupat
Abstract:
This paper addresses the problem of finding a minimum-cost $m$-state Markov chain $(S_0,\ldots,S_{m-1})$ in a large set of chains. The chains studied have a reward associated with each state. The cost of a chain is its "gain", i.e., its average reward under its stationary distribution.
Specifically, for each $k=0,\ldots,m-1$ there is a known set ${\mathbb S}_k$ of type-$k$ states. A permissible…
▽ More
This paper addresses the problem of finding a minimum-cost $m$-state Markov chain $(S_0,\ldots,S_{m-1})$ in a large set of chains. The chains studied have a reward associated with each state. The cost of a chain is its "gain", i.e., its average reward under its stationary distribution.
Specifically, for each $k=0,\ldots,m-1$ there is a known set ${\mathbb S}_k$ of type-$k$ states. A permissible Markov chain contains exactly one state of each type; the problem is to find a minimum-cost permissible chain.
The original motivation was to find a cheapest binary AIFV-$m$ lossless code on a source alphabet of size $n$. Such a code is an $m$-tuple of trees, in which each tree can be viewed as a Markov Chain state. This formulation was then used to address other problems in lossless compression. The known solution techniques for finding minimum-cost Markov chains were iterative and ran in exponential time.
This paper shows how to map every possible type-$k$ state into a type-$k$ hyperplane and then define a "Markov Chain Polytope" as the lower envelope of all such hyperplanes. Finding a minimum-cost Markov chain can then be shown to be equivalent to finding a "highest" point on this polytope.
The local optimization procedures used in the previous iterative algorithms are shown to be separation oracles for this polytope. Since these were often polynomial time, an application of the Ellipsoid method immediately leads to polynomial time algorithms for these problems.
△ Less
Submitted 4 July, 2024; v1 submitted 21 January, 2024;
originally announced January 2024.
-
Fully Dynamic $k$-Center in Low Dimensions via Approximate Furthest Neighbors
Authors:
**xiang Gan,
Mordecai Jay Golin
Abstract:
Let $P$ be a set of points in some metric space. The approximate furthest neighbor problem is, given a second point set $C,$ to find a point $p \in P$ that is a $(1+ε)$ approximate furthest neighbor from $C.$
The dynamic version is to maintain $P,$ over insertions and deletions of points, in a way that permits efficiently solving the approximate furthest neighbor problem for the current $P.$ We…
▽ More
Let $P$ be a set of points in some metric space. The approximate furthest neighbor problem is, given a second point set $C,$ to find a point $p \in P$ that is a $(1+ε)$ approximate furthest neighbor from $C.$
The dynamic version is to maintain $P,$ over insertions and deletions of points, in a way that permits efficiently solving the approximate furthest neighbor problem for the current $P.$ We provide the first algorithm for solving this problem in metric spaces with finite doubling dimension. Our algorithm is built on top of the navigating net data-structure.
An immediate application is two new algorithms for solving the dynamic $k$-center problem. The first dynamically maintains $(2+ε)$ approximate $k$-centers in general metric spaces with bounded doubling dimension and the second maintains $(1+ε)$ approximate Euclidean $k$-centers. Both these dynamic algorithms work by starting with a known corresponding static algorithm for solving approximate $k$-center, and replacing the static exact furthest neighbor subroutine used by that algorithm with our new dynamic approximate furthest neighbor one.
Unlike previous algorithms for dynamic $k$-center with those same approximation ratios, our new ones do not require knowing $k$ or $ε$ in advance. In the Euclidean case, our algorithm also seems to be the first deterministic solution.
△ Less
Submitted 19 February, 2023;
originally announced February 2023.
-
Minmax-Regret $k$-Sink Location on a Dynamic Tree Network with Uniform Capacities
Authors:
Mordecai J. Golin,
Sai Sandeep
Abstract:
A dynamic flow network $G$ with uniform capacity $c$ is a graph in which at most $c$ units of flow can enter an edge in one time unit. If flow enters a vertex faster than it can leave, congestion occurs. The evacuation problem is to evacuate all flow to sinks assuming that all flow is confluent, i.e., all flow passing through a particular vertex must follow the same exit edge. The $k$-sink locatio…
▽ More
A dynamic flow network $G$ with uniform capacity $c$ is a graph in which at most $c$ units of flow can enter an edge in one time unit. If flow enters a vertex faster than it can leave, congestion occurs. The evacuation problem is to evacuate all flow to sinks assuming that all flow is confluent, i.e., all flow passing through a particular vertex must follow the same exit edge. The $k$-sink location problem is to place $k$-sinks so as to minimize this evacuation time. Although the $k$-sink location problem is NP-Hard on a general graph it can be solved in $\tilde O(k^2 n)$ time on trees.
The concept of minmax-regret arises from robust optimization. For each source, a range of possible flow values is provided and any scenario with flow values in those ranges might occur. The goal is to find a sink placement that minimizes, over all possible scenarios, the difference between the evacuation time to those sinks and the minimal evacuation time of that scenario.
The Minmax-Regret $k$-Sink Location on a Dynamic Path Networks with uniform capacities is polynomial solvable in $n$ and $k$. Similarly, the Minmax-Regret $k$-center problem on trees is polynomial solvable in $n$ and $k$. Prior to this work, polynomial time solutions to the Minmax-Regret $k$-Sink Location on Dynamic Tree Networks with uniform capacities were only known for $k=1$. This paper solves this problem, for general $k,$ in time $$O\Bigl( \max(k^2,\log ^2n)\, k^2 n^2 \log^5 n\Bigr).$$
△ Less
Submitted 11 June, 2018;
originally announced June 2018.
-
Minmax Centered k-Partitioning of Trees and Applications to Sink Evacuation with Dynamic Confluent Flows
Authors:
Di Chen,
Mordecai J. Golin
Abstract:
Let $T=(V,E)$ be a tree with associated costs on its subtrees. A minmax $k$-partition of $T$ is a partition into $k$ subtrees, minimizing the maximum cost of a subtree over all possible partitions. In the centered version of the problem, the cost of a subtree cost is defined as the minimum cost of "servicing" that subtree using a center located within it.
The problem motivating this work was the…
▽ More
Let $T=(V,E)$ be a tree with associated costs on its subtrees. A minmax $k$-partition of $T$ is a partition into $k$ subtrees, minimizing the maximum cost of a subtree over all possible partitions. In the centered version of the problem, the cost of a subtree cost is defined as the minimum cost of "servicing" that subtree using a center located within it.
The problem motivating this work was the sink-evacuation problem on trees, i.e., finding a collection of $k$-sinks that minimize the time required by a confluent dynamic network flow to evacuate all supplies to sinks.
This paper provides the first polynomial-time algorithm for solving this problem, running in $O\Bigl(\max(k,\log n) k n \log^4 n\Bigr)$ time. The technique developed can be used to solve any Minmax Centered $k$-Partitioning problem on trees in which the servicing costs satisfy some very general conditions. Solutions can be found for both the discrete case, in which centers must be on vertices, and the continuous case, in which centers may also be placed on edges. The technique developed also improves previous results for finding a minmax cost $k$-partition of a tree given the location of the sinks in advance.
△ Less
Submitted 25 March, 2018;
originally announced March 2018.
-
Non-approximability and Polylogarithmic Approximations of the Single-Sink Unsplittable and Confluent Dynamic Flow Problems
Authors:
Mordecai J. Golin,
Hadi Khodabande,
Bo Qin
Abstract:
Dynamic Flows were introduced by Ford and Fulkerson in 1958 to model flows over time. They define edge capacities to be the total amount of flow that can enter an edge {\em in one time unit}. Each edge also has a length, representing the time needed to traverse it. Dynamic Flows have been used to model many problems including traffic congestion, hop-routing of packets and evacuation protocols in b…
▽ More
Dynamic Flows were introduced by Ford and Fulkerson in 1958 to model flows over time. They define edge capacities to be the total amount of flow that can enter an edge {\em in one time unit}. Each edge also has a length, representing the time needed to traverse it. Dynamic Flows have been used to model many problems including traffic congestion, hop-routing of packets and evacuation protocols in buildings. While the basic problem of moving the maximal amount of supplies from sources to sinks is polynomial time solvable, natural minor modifications can make it NP-hard.
One such modification is that flows be confluent, i.e., all flows leaving a vertex must leave along the same edge. This corresponds to natural conditions in, e.g., evacuation planning and hop routing.
We investigate the single-sink Confluent Quickest Flow problem. The input is a graph with edge capacities and lengths, sources with supplies and a sink. The problem is to find a confluent flow minimizing the time required to send supplies to the sink. Our main results include: a) Logarithmic Non-Approximability: Directed Confluent Quickest Flows cannot be approximated in polynomial time with an $O(\log n)$ approximation factor, unless $P=NP$.
b) Polylogarithmic Bicriteria Approximations: Polynomial time $(O(\log^8 n), O(\log^2 κ))$ bicritera approximation algorithms for the Confluent Quickest Flow problem where $κ$ is the number of sinks, in both directed and undirected graphs.
Corresponding results are also developed for the Confluent Maximum Flow over timeproblem. The techniques developed also improve recent approximation algorithms for static confluent flows.
△ Less
Submitted 29 September, 2017;
originally announced September 2017.
-
Improved Algorithms for Computing $k$-Sink on Dynamic Path Networks
Authors:
Binay Bhattacharya,
Mordecai J. Golin,
Yuya Higashikawa,
Tsunehiko Kameda,
Naoki Katoh
Abstract:
We present a novel approach to finding the $k$-sink on dynamic path networks with general edge capacities. Our first algorithm runs in $O(n \log n + k^2 \log^4 n)$ time, where $n$ is the number of vertices on the given path, and our second algorithm runs in $O(n \log^3 n)$ time. Together, they improve upon the previously most efficient $O(kn \log^2 n)$ time algorithm due to Arumugam et al. for all…
▽ More
We present a novel approach to finding the $k$-sink on dynamic path networks with general edge capacities. Our first algorithm runs in $O(n \log n + k^2 \log^4 n)$ time, where $n$ is the number of vertices on the given path, and our second algorithm runs in $O(n \log^3 n)$ time. Together, they improve upon the previously most efficient $O(kn \log^2 n)$ time algorithm due to Arumugam et al. for all values of $k$. In the case where all the edges have the same capacity, we again present two algorithms that run in $O(n + k^2 \log^2n)$ time and $O(n \log n)$ time, respectively, and they together improve upon the previously best $O(kn)$ time algorithm due to Higashikawa et al. for all values of $k$.
△ Less
Submitted 5 September, 2016;
originally announced September 2016.
-
Optimal Evacuation Flows on Dynamic Paths with General Edge Capacities
Authors:
Guru Prakash Arumugam,
John Augustine,
Mordecai J. Golin,
Yuya Higashikawa,
Naoki Katoh,
Prashanth Srikanthan
Abstract:
A Dynamic Graph Network is a graph in which each edge has an associated travel time and a capacity (width) that limits the number of items that can travel in parallel along that edge. Each vertex in this dynamic graph network begins with the number of items that must be evacuated into designated sink vertices. A $k$-sink evacuation protocol finds the location of $k$ sinks and associated evacuation…
▽ More
A Dynamic Graph Network is a graph in which each edge has an associated travel time and a capacity (width) that limits the number of items that can travel in parallel along that edge. Each vertex in this dynamic graph network begins with the number of items that must be evacuated into designated sink vertices. A $k$-sink evacuation protocol finds the location of $k$ sinks and associated evacuation movement protocol that allows evacuating all the items to a sink in minimum time. The associated evacuation movement must impose a confluent flow, i.e, all items passing through a particular vertex exit that vertex using the same edge. In this paper we address the $k$-sink evacuation problem on a dynamic path network. We provide solutions that run in $O(n \log n)$ time for $k=1$ and $O(k n \log^2 n)$ for $k >1$ and work for arbitrary edge capacities.
△ Less
Submitted 23 June, 2016;
originally announced June 2016.
-
Improved Algorithms for Multiple Sink Location Problems in Dynamic Path Networks
Authors:
Yuya Higashikawa,
Mordecai J. Golin,
Naoki Katoh
Abstract:
This paper considers the k-sink location problem in dynamic path networks. In our model, a dynamic path network consists of an undirected path with positive edge lengths, uniform edge capacity, and positive vertex supplies. Here, each vertex supply corresponds to a set of evacuees. Then, the problem requires to find the optimal location of $k$ sinks in a given path so that each evacuee is sent to…
▽ More
This paper considers the k-sink location problem in dynamic path networks. In our model, a dynamic path network consists of an undirected path with positive edge lengths, uniform edge capacity, and positive vertex supplies. Here, each vertex supply corresponds to a set of evacuees. Then, the problem requires to find the optimal location of $k$ sinks in a given path so that each evacuee is sent to one of k sinks. Let x denote a k-sink location. Under the optimal evacuation for a given x, there exists a (k-1)-dimensional vector d, called (k-1)-divider, such that each component represents the boundary dividing all evacuees between adjacent two sinks into two groups, i.e., all supplies in one group evacuate to the left sink and all supplies in the other group evacuate to the right sink. Therefore, the goal is to find x and d which minimize the maximum cost or the total cost, which are denoted by the minimax problem and the minisum problem, respectively. We study the k-sink location problem in dynamic path networks with continuous model, and prove that the minimax problem can be solved in O(kn) time and the minisum problem can be solved in O(n^2 min{k, 2^{sqrt{log k log log n}}}) time, where n is the number of vertices in the given network. Note that these improve the previous results by [6].
△ Less
Submitted 21 May, 2014;
originally announced May 2014.
-
A Polynomial Time Algorithm for Minimax-Regret Evacuation on a Dynamic Path
Authors:
Guru Prakash Arumugam,
John Augustine,
Mordecai J. Golin,
Prashanth Srikanthan
Abstract:
A dynamic path network is an undirected path with evacuees situated at each vertex. To evacuate the path, evacuees travel towards a designated sink (doorway) to exit. Each edge has a capacity, the number of evacuees that can enter the edge in unit time. Congestion occurs if an evacuee has to wait at a vertex for other evacuees to leave first. The basic problem is to place k sinks on the line, with…
▽ More
A dynamic path network is an undirected path with evacuees situated at each vertex. To evacuate the path, evacuees travel towards a designated sink (doorway) to exit. Each edge has a capacity, the number of evacuees that can enter the edge in unit time. Congestion occurs if an evacuee has to wait at a vertex for other evacuees to leave first. The basic problem is to place k sinks on the line, with an associated evacuation strategy, so as to minimize the total time needed to evacuate everyone. The minmax-regret version introduces uncertainty into the input, with the number of evacuees at vertices only being specified to within a range. The problem is to find a universal solution whose regret (difference from optimal for a given input) is minimized over all legal inputs. The previously best known algorithms for the minmax regret version problem ran in time exponential in k. In this paper, we derive new prop- erties of solutions that yield the first polynomial time algorithms for solving the problem.
△ Less
Submitted 22 April, 2014;
originally announced April 2014.
-
Encoding 2-D Range Maximum Queries
Authors:
Mordecai J. Golin,
John Iacono,
Danny Krizanc,
Rajeev Raman,
S. Srinivasa Rao,
Sunil Shende
Abstract:
We consider the \emph{two-dimensional range maximum query (2D-RMQ)} problem: given an array $A$ of ordered values, to pre-process it so that we can find the position of the smallest element in the sub-matrix defined by a (user-specified) range of rows and range of columns. We focus on determining the \emph{effective} entropy of 2D-RMQ, i.e., how many bits are needed to encode $A$ so that 2D-RMQ qu…
▽ More
We consider the \emph{two-dimensional range maximum query (2D-RMQ)} problem: given an array $A$ of ordered values, to pre-process it so that we can find the position of the smallest element in the sub-matrix defined by a (user-specified) range of rows and range of columns. We focus on determining the \emph{effective} entropy of 2D-RMQ, i.e., how many bits are needed to encode $A$ so that 2D-RMQ queries can be answered \emph{without} access to $A$. We give tight upper and lower bounds on the expected effective entropy for the case when $A$ contains independent identically-distributed random values, and new upper and lower bounds for arbitrary $A$, for the case when $A$ contains few rows. The latter results improve upon previous upper and lower bounds by Brodal et al. (ESA 2010). In some cases we also give data structures whose space usage is close to the effective entropy and answer 2D-RMQ queries rapidly.
△ Less
Submitted 25 April, 2012; v1 submitted 13 September, 2011;
originally announced September 2011.