Searcharxiv⌕ Search

arXiv subjects

Gokarna Sharma

Publications and source records attributed to Gokarna Sharma.

35 records · Page 2Linked to original sources

BeRGeR: Byzantine-Robust Geometric Routing

We present BeRGeR: the first asynchronous geometric routing algorithm that guarantees delivery of a message despite a Byzantine fault without relying on cryptographic primitives or randomization. The communication graph is a planar embedding that remains three-connected if all edges intersecting the source-target line segment are removed. We prove the algorithm correct and estimate its message complexity.

cs.DC↗

Consensus on an Unknown Torus with Dense Byzantine Faults

We present a solution to consensus on a torus with Byzantine faults. Any solution to classic consensus that is tolerant to $f$ Byzantine faults requires $2f+1$ node-disjoint paths. Due to limited torus connectivity, this bound necessitates spatial separation between faults. Our solution does not require this many disjoint paths and tolerates dense faults. Specifically, we consider the case where all faults are in one column. We address the version of consensus where only processes in fault-free columns must agree. We prove that even this weaker version is not solvable if the column may be completely faulty. We then present a solution for the case where at least one row is fault-free. The correct processes share orientation but do not know the identities of other processes or the torus dimensions. The communication is synchronous. To achieve our solution, we build and prove correct an all-to-all broadcast algorithm $\mathcal{BAT}$ that guarantees delivery to all processes in fault-free columns. We use this algorithm to solve our weak consensus problem. Our solution, $\mathcal{CBAT}$, runs in $O(H+W)$ rounds, where $H$ and $W$ are torus height and width respectively. We extend our consensus solution to the fixed message size model where it runs in $O(H^3W^2)$ rounds. Our results are immediately applicable if the faults are located in a single row, rather than a column.

cs.DC↗

Deep Recurrent Q-learning for Energy-constrained Coverage with a Mobile Robot

In this paper, we study the problem of coverage of an environment with an energy-constrained robot in the presence of multiple charging stations. As the robot's on-board power supply is limited, it might not have enough energy to cover all the points in the environment with a single charge. Instead, it will need to stop at one or more charging stations to recharge its battery intermittently. The robot cannot violate the energy constraint, i.e., visit a location with negative available energy. To solve this problem, we propose a deep Q-learning framework that produces a policy to maximize the coverage and minimize the budget violations. Our proposed framework also leverages the memory of a recurrent neural network (RNN) to better suit this multi-objective optimization problem. We have tested the presented framework within a 16 x 16 grid environment having charging stations and various obstacle configurations. Results show that our proposed method finds feasible solutions and outperforms a comparable existing technique.

cs.RO↗

Collisionless Pattern Discovery in Robot Swarms Using Deep Reinforcement Learning

We present a deep reinforcement learning-based framework for automatically discovering patterns available in any given initial configuration of fat robot swarms. In particular, we model the problem of collision-less gathering and mutual visibility in fat robot swarms and discover patterns for solving them using our framework. We show that by shaping reward signals based on certain constraints like mutual visibility and safe proximity, the robots can discover collision-less trajectories leading to well-formed gathering and visibility patterns.

cs.RO↗

Blockchain in Dynamic Networks

We consider blockchain in dynamic networks. We define the Blockchain Decision Problem. It requires miners that maintain the blockchain to confirm whether a particular block is accepted. We establish the necessary conditions for the existence of a solution. We, however, prove that the solution, even under these necessary conditions is, in general, impossible. We then present two algorithms that solve the Blockchain Decision Problem under either the knowledge of the maximum source pool propagation time or the knowledge of the source pool membership. We evaluate the performance of the two algorithms.

cs.DC↗

Near-Optimal Dispersion on Arbitrary Anonymous Graphs

Given an undirected, anonymous, port-labeled graph of $n$ memory-less nodes, $m$ edges, and degree $Δ$, we consider the problem of dispersing $k\leq n$ robots (or tokens) positioned initially arbitrarily on one or more nodes of the graph to exactly $k$ different nodes of the graph, one on each node. The objective is to simultaneously minimize time to achieve dispersion and memory requirement at each robot. If all $k$ robots are positioned initially on a single node, depth first search (DFS) traversal solves this problem in $O(\min\{m,kΔ\})$ time with $Θ(\log(k+Δ))$ bits at each robot. However, if robots are positioned initially on multiple nodes, the best previously known algorithm solves this problem in $O(\min\{m,kΔ\}\cdot \log \ell)$ time storing $Θ(\log(k+Δ))$ bits at each robot, where $\ell\leq k/2$ is the number of multiplicity nodes in the initial configuration. In this paper, we present a novel multi-source DFS traversal algorithm solving this problem in $O(\min\{m,kΔ\})$ time with $Θ(\log(k+Δ))$ bits at each robot, improving the time bound of the best previously known algorithm by $O(\log \ell)$ and matching asymptotically the single-source DFS traversal bounds. This is the first algorithm for dispersion that is optimal in both time and memory in arbitrary anonymous graphs of constant degree, $Δ=O(1)$. Furthermore, the result holds in both synchronous and asynchronous settings.

cs.DC↗

Partitionable Asynchronous Cryptocurrency Blockchain

We consider operation of blockchain-based cryptocurrency in case of partitioning. We define the Partitionable Blockchain Consensus Problem. The problem may have an interesting solution if the partitions proceed independently by splitting accounts. We prove that this problem is not solvable in the asynchronous system. The peers in the two partitions may not agree on the last jointly mined block or, alternatively, on the starting point of independent concurrent computation. We introduce a family of detectors that enable a solution. We establish the relationship between detectors. We present the algorithm that solves the Partitionable Blockchain Consensus Problem using our detectors. We extend our solution to multiple splits, message loss and to partition merging. We simulate and evaluate the performance of detectors, discuss the implementation of the detectors and future work.

cs.DC↗

Byzantine Geoconsensus

We define and investigate the consensus problem for a set of $N$ processes embedded on the $d$-dimensional plane, $d\geq 2$, which we call the {\em geoconsensus} problem. The processes have unique coordinates and can communicate with each other through oral messages. In contrast to the literature where processes are individually considered Byzantine, it is considered that all processes covered by a finite-size convex fault area $F$ are Byzantine and there may be one or more processes in a fault area. Similarly as in the literature where correct processes do not know which processes are Byzantine, it is assumed that the fault area location is not known to the correct processes. We prove that the geoconsensus is impossible if all processes may be covered by at most three areas where one is a fault area. Considering the 2-dimensional embedding, on the constructive side, for $M \geq 1$ fault areas $F$ of arbitrary shape with diameter $D$, we present a consensus algorithm that tolerates $f\leq N-(2M+1)$ Byzantine processes provided that there are $9M+3$ processes with pairwise distance between them greater than $D$. For square $F$ with side $\ell$, we provide a consensus algorithm that lifts this pairwise distance requirement and tolerates $f\leq N-15M$ Byzantine processes given that all processes are covered by at least $22M$ axis aligned squares of the same size as $F$. For a circular $F$ of diameter $\ell$, this algorithm tolerates $f\leq N-57M$ Byzantine processes if all processes are covered by at least $85M$ circles. We then extend these results to various size combinations of fault and non-fault areas as well as $d$-dimensional process embeddings, $d\geq 3$.

cs.DC↗

Dispersion of Mobile Robots in the Global Communication Model

The dispersion problem on graphs asks $k\leq n$ robots placed initially arbitrarily on the nodes of an $n$-node anonymous graph to reposition autonomously to reach a configuration in which each robot is on a distinct node of the graph. This problem is of significant interest due to its relationship to other fundamental robot coordination problems, such as exploration, scattering, load balancing etc. In this paper, we consider dispersion in the {\em global communication} model where a robot can communicate with any other robot in the graph (but the graph is unknown to robots). We provide three novel deterministic algorithms, two for arbitrary graphs and one for arbitrary trees, in a synchronous setting where all robots perform their actions in every time step. For arbitrary graphs, our first algorithm is based on a DFS traversal and guarantees $O(\min(m,kΔ))$ steps runtime using $Θ(\log (\max(k,Δ)))$ bits at each robot, where $m$ is the number of edges and $Δ$ is the maximum degree of the graph. The second algorithm for arbitrary graphs is based on a BFS traversal and guarantees $O( \max(D,k) Δ(D+Δ))$ steps runtime using $O(\max(D,Δ\log k))$ bits at each robot, where $D$ is the diameter of the graph. The algorithm for arbitrary trees is also based on a BFS travesal and guarantees $O(D\max(D,k))$ steps runtime using $O(\max(D,Δ\log k))$ bits at each robot. Our results are significant improvements compared to the existing results established in the {\em local communication} model where a robot can communication only with other robots present at the same node. Particularly, the DFS-based algorithm is optimal for both memory and time in constant-degree arbitrary graphs. The BFS-based algorithm for arbitrary trees is optimal with respect to runtime when $k\leq O(D)$.

cs.DC↗

Blockguard: Adaptive Blockchain Security

We consider the problem of varying the security of blockchain transactions according to their importance. This adaptive security is achieved by using variable size consensus committees. To improve performance, such committees function concurrently. We present two algorithms that allow adaptive security by forming concurrent variable size consensus committees on demand. One is based on a single joint blockchain, the other is based on separate sharded blockchains. For in-committee consensus, our algorithms may use various available byzantine-robust fault tolerant algorithms (BFT). We implement synchronous BFT, asynchronous BFT and proof-of-work consensus. We thoroughly evaluate the performance of our adaptive security algorithms.

cs.DC↗

A Constant-Factor Approximation Algorithm for Online Coverage Path Planning with Energy Constraint

In this paper, we study the problem of coverage planning by a mobile robot with a limited energy budget. The objective of the robot is to cover every point in the environment while minimizing the traveled path length. The environment is initially unknown to the robot. Therefore, it needs to avoid the obstacles in the environment on-the-fly during the exploration. As the robot has a specific energy budget, it might not be able to cover the complete environment in one traversal. Instead, it will need to visit a static charging station periodically in order to recharge its energy. To solve the stated problem, we propose a budgeted depth-first search (DFS)-based exploration strategy that helps the robot to cover any unknown planar environment while bounding the maximum path length to a constant-factor of the shortest-possible path length. Our $O(1)$-approximation guarantee advances the state-of-the-art of log-approximation for this problem. Simulation results show that our proposed algorithm outperforms the current state-of-the-art algorithm both in terms of the traveled path length and run time in all the tested environments with concave and convex obstacles.

cs.RO↗

Efficient Dispersion of Mobile Robots on Arbitrary Graphs and Grids

The mobile robot dispersion problem on graphs asks $k\leq n$ robots placed initially arbitrarily on the nodes of an $n$-node anonymous graph to reposition autonomously to reach a configuration in which each robot is on a distinct node of the graph. This problem is of significant interest due to its relationship to other fundamental robot coordination problems, such as exploration, scattering, load balancing, and relocation of self-driven electric cars (robots) to recharge stations (nodes). In this paper, we provide two novel deterministic algorithms for dispersion, one for arbitrary graphs and another for grid graphs, in a synchronous setting where all robots perform their actions in every time step. Our algorithm for arbitrary graphs has $O(\min(m,kΔ) \cdot \log k)$ steps runtime using $O(\log n)$ bits of memory at each robot, where $m$ is the number of edges and $Δ$ is the maximum degree of the graph. This is an exponential improvement over the $O(mk)$ steps best previously known algorithm. In particular, the runtime of our algorithm is optimal (up to a $O(\log k)$ factor) in constant-degree arbitrary graphs. Our algorithm for grid graphs has $O(\min(k,\sqrt{n}))$ steps runtime using $Θ(\log k)$ bits at each robot. This is the first algorithm for dispersion in grid graphs. Moreover, this algorithm is optimal for both memory and time when $k=Ω(n)$.

cs.DC↗

Weighted Reservoir Sampling from Distributed Streams

We consider message-efficient continuous random sampling from a distributed stream, where the probability of inclusion of an item in the sample is proportional to a weight associated with the item. The unweighted version, where all weights are equal, is well studied, and admits tight upper and lower bounds on message complexity. For weighted sampling with replacement, there is a simple reduction to unweighted sampling with replacement. However, in many applications the stream has only a few heavy items which may dominate a random sample when chosen with replacement. Weighted sampling \textit{without replacement} (weighted SWOR) eludes this issue, since such heavy items can be sampled at most once. In this work, we present the first message-optimal algorithm for weighted SWOR from a distributed stream. Our algorithm also has optimal space and time complexity. As an application of our algorithm for weighted SWOR, we derive the first distributed streaming algorithms for tracking \textit{heavy hitters with residual error}. Here the goal is to identify stream items that contribute significantly to the residual stream, once the heaviest items are removed. Residual heavy hitters generalize the notion of $\ell_1$ heavy hitters and are important in streams that have a skewed distribution of weights. In addition to the upper bound, we also provide a lower bound on the message complexity that is nearly tight up to a $\log(1/ε)$ factor. Finally, we use our weighted sampling algorithm to improve the message complexity of distributed $L_1$ tracking, also known as count tracking, which is a widely studied problem in distributed streaming. We also derive a tight message lower bound, which closes the message complexity of this fundamental problem.

cs.DS↗

Distributed Queuing in Dynamic Networks

We consider the problem of forming a distributed queue in the adversarial dynamic network model of Kuhn, Lynch, and Oshman (STOC 2010) in which the network topology changes from round to round but the network stays connected. This is a synchronous model in which network nodes are assumed to be fixed, the communication links for each round are chosen by an adversary, and nodes do not know who their neighbors are for the current round before they broadcast their messages. Queue requests may arrive over rounds at arbitrary nodes and the goal is to eventually enqueue them in a distributed queue. We present two algorithms that give a total distributed ordering of queue requests in this model. We measure the performance of our algorithms through round complexity, which is the total number of rounds needed to solve the distributed queuing problem. We show that in 1-interval connected graphs, where the communication links change arbitrarily between every round, it is possible to solve the distributed queueing problem in O(nk) rounds using O(log n) size messages, where n is the number of nodes in the network and k <= n is the number of queue requests. Further, we show that for more stable graphs, e.g. T-interval connected graphs where the communication links change in every T rounds, the distributed queuing problem can be solved in O(n+ (nk/min(alpha,T))) rounds using the same O(log n) size messages, where alpha > 0 is the concurrency level parameter that captures the minimum number of active queue requests in the system in any round. These results hold in any arbitrary (sequential, one-shot concurrent, or dynamic) arrival of k queue requests in the system. Moreover, our algorithms ensure correctness in the sense that each queue request is eventually enqueued in the distributed queue after it is issued and each queue request is enqueued exactly once. We also provide an impossibility result for this distributed queuing problem in this model. To the best of our knowledge, these are the first solutions to the distributed queuing problem in adversarial dynamic networks.

cs.DC↗

A Streaming Approximation Algorithm for Klee's Measure Problem

The efficient estimation of frequency moments of a data stream in one-pass using limited space and time per item is one of the most fundamental problem in data stream processing. An especially important estimation is to find the number of distinct elements in a data stream, which is generally referred to as the zeroth frequency moment and denoted by $F_0$. In this paper, we consider streams of rectangles defined over a discrete space and the task is to compute the total number of distinct points covered by the rectangles. This is known as the Klee's measure problem in 2 dimensions. We present and analyze a randomized streaming approximation algorithm which gives an $(ε, δ)$-approximation of $F_0$ for the total area of Klee's measure problem in 2 dimensions. Our algorithm achieves the following complexity bounds: (a) the amortized processing time per rectangle is $O(\frac{1}{ε^4}\log^3 n\log\frac{1}δ)$; (b) the space complexity is $O(\frac{1}{ε^2}\log n \log\frac{1}δ)$ bits; and (c) the time to answer a query for $F_0$ is $O(\log\frac{1}δ)$, respectively. To our knowledge, this is the first streaming approximation for the Klee's measure problem that achieves sub-polynomial bounds.

cs.DS↗

A Competitive Analysis for Balanced Transactional Memory Workloads

We consider transactional memory contention management in the context of balanced workloads, where if a transaction is writing, the number of write operations it performs is a constant fraction of its total reads and writes. We explore the theoretical performance boundaries of contention management in balanced workloads from the worst-case perspective by presenting and analyzing two new contention management algorithms. The first algorithm Clairvoyant is O(\surd s)-competitive, where s is the number of shared resources. This algorithm depends on explicitly knowing the conflict graph. The second algorithm Non-Clairvoyant is O(\surd s \cdot log n)-competitive, with high probability, which is only a O(log n) factor worse, but does not require knowledge of the conflict graph, where n is the number of transactions. Both of these algorithms are greedy. We also prove that the performance of Clairvoyant is tight since there is no contention management algorithm that is better than O((\surd s)^(1-ε))-competitive for any constant ε> 0, unless NP\subseteq ZPP. To our knowledge, these results are significant improvements over the best previously known O(s) competitive ratio bound.

cs.DC↗

Window-Based Greedy Contention Management for Transactional Memory

We consider greedy contention managers for transactional memory for M x N execution windows of transactions with M threads and N transactions per thread. Assuming that each transaction conflicts with at most C other transactions inside the window, a trivial greedy contention manager can schedule them within CN time. In this paper, we show that there are much better schedules. We present and analyze two new randomized greedy contention management algorithms. The first algorithm Offline-Greedy produces a schedule of length O(C + N log(MN)) with high probability, and gives competitive ratio O(log(MN)) for C <= N log(MN). The offline algorithm depends on knowing the conflict graph. The second algorithm Online-Greedy produces a schedule of length O(C log(MN) + N log^2(MN)) with high probability which is only a O(log(NM)) factor worse, but does not require knowledge of the conflict graph. We also give an adaptive version which achieves similar worst-case performance and C is determined on the fly under execution. Our algorithms provide new tradeoffs for greedy transaction scheduling that parameterize window sizes and transaction conflicts within the window.

cs.DC↗