Compare commits
22 Commits
latest
..
0987ecc4f3
| Author | SHA1 | Date | |
|---|---|---|---|
| 0987ecc4f3 | |||
| 586f79bf2b | |||
| d6b82b71ef | |||
| 979399b211 | |||
| 928305623b | |||
| dea0747d9d | |||
| 7f7b831c14 | |||
| ada3865ad4 | |||
| e08ba4dce6 | |||
| 77da4af12b | |||
| 10e96af266 | |||
| 35e00b921b | |||
| ff1db55ca0 | |||
| 9aedda643f | |||
| a276cd658f | |||
| 763e86f307 | |||
| 2f79036d1f | |||
| 1d09b82a41 | |||
| 70672ae603 | |||
| 4f7a6f2383 | |||
| 8edb8f8a45 | |||
| 99ef773ecb |
@@ -17,7 +17,6 @@ jobs:
|
||||
- uses: http://localhost:3000/sxlxc/gitea-release-action@v1
|
||||
with:
|
||||
body: ''
|
||||
prerelease: true
|
||||
name: PDF
|
||||
token: ${{ secrets.RELEASE_TOKEN }}
|
||||
tag_name: latest
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
|
||||
.vscode/
|
||||
*.sage.py
|
||||
./*.pdf
|
||||
*.pdf
|
||||
## Core latex/pdflatex auxiliary files:
|
||||
*.aux
|
||||
*.lof
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
// Static tasks configuration.
|
||||
//
|
||||
[
|
||||
{
|
||||
"label": "forward_search",
|
||||
"command": "/Applications/Skim.app/Contents/SharedSupport/displayline -r -z $ZED_ROW \"$ZED_DIRNAME/$ZED_STEM.pdf\"",
|
||||
"allow_concurrent_runs": false,
|
||||
"reveal": "never",
|
||||
"hide": "always"
|
||||
},
|
||||
{
|
||||
"label": "pdflatex_view",
|
||||
"command": "cd \"$ZED_DIRNAME\" && pdflatex -shell-escape -synctex=-1 \"$ZED_STEM\" && /Applications/Skim.app/Contents/SharedSupport/displayline -r -z -b $ZED_ROW \"$ZED_STEM\".pdf",
|
||||
"allow_concurrent_runs": false,
|
||||
"reveal": "no_focus",
|
||||
"hide": "on_success"
|
||||
},
|
||||
{
|
||||
"label": "latexmk_view",
|
||||
"command": "cd \"$ZED_DIRNAME\" && latexmk -pdf \"$ZED_STEM\" && /Applications/Skim.app/Contents/SharedSupport/displayline -r -z -b $ZED_ROW \"$ZED_STEM\".pdf",
|
||||
"allow_concurrent_runs": false,
|
||||
"reveal": "no_focus",
|
||||
"hide": "on_success"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,14 @@
|
||||
\def\begin@lg{\begin{minipage}{1in}\begin{tabbing}
|
||||
\quad\=\qquad\=\qquad\=\qquad\=\qquad\=\qquad\=\qquad\=\kill}
|
||||
\def\end@lg{\end{tabbing}\end{minipage}}
|
||||
|
||||
\newenvironment{algorithm}
|
||||
{\begin{tabular}{|l|}\hline\begin@lg}
|
||||
{\end@lg\\\hline\end{tabular}}
|
||||
|
||||
\newenvironment{algo}
|
||||
{\begin{center}\begin{algorithm}}
|
||||
{\end{algorithm}\end{center}}
|
||||
|
||||
\def\argmax{\operatornamewithlimits{arg\,max}}
|
||||
\def\argmin{\operatornamewithlimits{arg\,min}}
|
||||
@@ -44,8 +44,8 @@
|
||||
\RequirePackage{microtype}
|
||||
\RequirePackage[mathletters]{ucs} % allow Unicode in .tex file
|
||||
\RequirePackage[utf8]{inputenc}
|
||||
|
||||
\RequirePackage[charter]{mathdesign} % change fonts
|
||||
\RequirePackage{XCharter} % change fonts
|
||||
\RequirePackage{berasans, beramono}
|
||||
\RequirePackage{eucal}
|
||||
\RequirePackage[nocompress]{cite} % other convenient stuff
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"SolutionInfo": {
|
||||
"Status": 2,
|
||||
"Runtime": 1.2390613555908203e-03,
|
||||
"Work": 1.0477234319444459e-04,
|
||||
"ObjVal": 978.02,
|
||||
"ObjBound": 978.02,
|
||||
"ObjBoundC": 978.02,
|
||||
"MIPGap": 0,
|
||||
"IntVio": 0,
|
||||
"BoundVio": 0,
|
||||
"ConstrVio": 1.2434497875801753e-14,
|
||||
"IterCount": 9,
|
||||
"BarIterCount": 0,
|
||||
"NodeCount": 1,
|
||||
"SolCount": 1,
|
||||
"PoolObjBound": 978.02,
|
||||
"PoolObjVal": [
|
||||
978.02
|
||||
]
|
||||
},
|
||||
"Vars": [
|
||||
{
|
||||
"VarName": "l",
|
||||
"X": 9.99
|
||||
},
|
||||
{
|
||||
"VarName": "b",
|
||||
"X": 100
|
||||
},
|
||||
{
|
||||
"VarName": "w1",
|
||||
"X": 999
|
||||
},
|
||||
{
|
||||
"VarName": "w2",
|
||||
"X": 1000
|
||||
},
|
||||
{
|
||||
"VarName": "w3",
|
||||
"X": 1
|
||||
},
|
||||
{
|
||||
"VarName": "c1",
|
||||
"X": 99
|
||||
},
|
||||
{
|
||||
"VarName": "c2",
|
||||
"X": 1
|
||||
},
|
||||
{
|
||||
"VarName": "c3",
|
||||
"X": 101
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
import gurobipy as gp
|
||||
from gurobipy import GRB
|
||||
|
||||
def solve_lp():
|
||||
# 1. Create model
|
||||
model = gp.Model("my_lp")
|
||||
|
||||
# 2. Add variables
|
||||
# Example: x, y >= 0
|
||||
l = model.addVar(lb=0, ub= 100, name="l", vtype=GRB.CONTINUOUS)
|
||||
b = model.addVar(lb=0, ub= 100, name="b", vtype=GRB.INTEGER)
|
||||
w = {}
|
||||
c = {}
|
||||
for i in range(1, 4):
|
||||
w[i] = model.addVar(lb=1, ub=1000, name=f"w{i}", vtype= GRB.INTEGER)
|
||||
for i in range(1, 4):
|
||||
c[i] = model.addVar(lb=1, ub=1000, name=f"c{i}", vtype= GRB.INTEGER)
|
||||
ans = model.addVar(lb=0, name="ans", vtype=GRB.CONTINUOUS)
|
||||
|
||||
# 3. Set objective
|
||||
# model.setObjective(ans, GRB.MAXIMIZE)
|
||||
model.setObjective(l*(c[1]-c[2])-w[2]+w[1], GRB.MAXIMIZE)
|
||||
|
||||
# 4. Add constraints
|
||||
# model.addConstr(w[2] >= w[1] >= w[3] >= 0)
|
||||
model.addConstr(w[2] >= 0.1+ w[1], name="w2_ge_w1")
|
||||
model.addConstr(w[1] >= 0.1+ w[3], name="w1_ge_w3")
|
||||
model.addConstr(w[3] >= 0.1+ 0, name="w3_ge_0")
|
||||
# model.addConstr(c[3] >= b >= c[1] >= c[2] >= 0)
|
||||
model.addConstr(c[3] >= 0.1+ b, name="c3_ge_b")
|
||||
model.addConstr(b >= 0.1+ c[1], name="b_ge_c1")
|
||||
model.addConstr(c[1] >= 0.1+ c[2], name="c1_ge_c2")
|
||||
model.addConstr(c[2] >= 0.1+ 0, name="c2_ge_0")
|
||||
model.addConstr((c[3]-c[2])*l >= w[2]-w[3])
|
||||
model.addConstr((c[3]-c[2])*l <= w[2]-w[3])
|
||||
# model.addConstr(ans*b <= l*(c[1]-c[2])-w[2]+w[1])
|
||||
|
||||
# 5. Optimize
|
||||
model.optimize()
|
||||
|
||||
# 6. Retrieve results
|
||||
if model.status == GRB.OPTIMAL:
|
||||
model.write("gap.json")
|
||||
else:
|
||||
print("No optimal solution found.")
|
||||
|
||||
if __name__ == "__main__":
|
||||
solve_lp()
|
||||
@@ -1,29 +1,10 @@
|
||||
\documentclass[12pt]{article}
|
||||
\documentclass[a4paper,11pt]{article}
|
||||
\usepackage{chao}
|
||||
\usepackage{algo}
|
||||
|
||||
\geometry{margin=2cm}
|
||||
|
||||
\geometry{a4paper,margin=2cm}
|
||||
% \usepackage[breakable, theorems, skins]{tcolorbox}
|
||||
% \tcbset{enhanced}
|
||||
% \DeclareRobustCommand{\note}[2][blue]{%
|
||||
% \begin{tcolorbox}[
|
||||
% breakable,
|
||||
% left=0pt,
|
||||
% right=0pt,
|
||||
% top=0pt,
|
||||
% bottom=0pt,
|
||||
% colback=white,
|
||||
% colframe=#1,
|
||||
% width=\dimexpr\textwidth\relax,
|
||||
% enlarge left by=0mm,
|
||||
% boxsep=5pt,
|
||||
% arc=0pt,outer arc=0pt,
|
||||
% ]
|
||||
% #2
|
||||
% \end{tcolorbox}
|
||||
% }
|
||||
|
||||
\title{connectivity interdiction}
|
||||
\title{Faster FPTAS for Connectivity Interdiction}
|
||||
\author{}
|
||||
\date{}
|
||||
|
||||
@@ -31,26 +12,20 @@
|
||||
\DeclareMathOperator*{\len}{len}
|
||||
|
||||
\begin{document}
|
||||
\maketitle
|
||||
|
||||
|
||||
\section{``Cut-free'' Proof}
|
||||
\section{Generalize proof in [Huang \etal{}, IPCO'24]}
|
||||
\begin{problem}[b-free knapsack]\label{bfreeknap}
|
||||
Consider a set of elements $E$ and two weights $w:E\to \Z_+$ and
|
||||
$c:E\to \Z_+$ and a budget $b\in \Z_+$. Given a feasible set $\mathcal
|
||||
F\subset 2^E$, find $\min_{X
|
||||
\in \mathcal F, F\subset E} w(X\setminus F)$ such that $c(F)\leq b$.
|
||||
Consider a set of elements $E$ with weights $w:E\to \Z_+$ and cost $c:E\to \Z_+$ and a budget $b\in \Z_+$. Given a feasible set $\mathcal F\subset 2^E$, find $\min_{X\in \mathcal F, F\subset E} w(X\setminus F)$ such that $c(F)\leq b$.
|
||||
\end{problem}
|
||||
Always remember that $\mathcal F$ is usually not explicitly given.
|
||||
Note that $\mathcal F$ is usually not explicitly given.
|
||||
|
||||
\begin{problem}[Normalized knapsack]\label{nknap}
|
||||
Given the same input as \autoref{bfreeknap}, find $\min \limits_{X
|
||||
\in \mathcal F, F\subset E} \frac{w(X\setminus F)}{B-c(F)}$ such that
|
||||
$c(F)\leq b$.
|
||||
Given the same input as \autoref{bfreeknap}, find $\min \limits_{X\in \mathcal F, F\subset E} \frac{w(X\setminus F)}{B-c(F)}\; s.t.\; c(F)\leq b$.
|
||||
\end{problem}
|
||||
In \cite{vygen_fptas_2024} the normalized min-cut problem use $B=b+1$. Here we use any integer $B>b$ and see how their method works.
|
||||
In \cite{huang_fptas_2024} the normalized min-cut problem use $B=b+1$. Here we use any integer $B>b$ and see how their method works.
|
||||
|
||||
Denote by $\tau$ the optimum of \autoref{nknap}. Define a new weight
|
||||
$w_\tau:\E\to \R$,
|
||||
Let $\tau$ be the optimum of \autoref{nknap}. Define a new weight $w_\tau:\E\to \R$,
|
||||
|
||||
\[
|
||||
w_\tau(e)=\begin{cases}
|
||||
@@ -63,7 +38,7 @@ w_\tau(e)=\begin{cases}
|
||||
Let $(X^N,F^N)$ be the optimal solution to \autoref{nknap}.
|
||||
Every element in $F^N$ is heavy.
|
||||
\end{lemma}
|
||||
The proof is exactly the same as \cite[Lemma 1]{vygen_fptas_2024}.
|
||||
The proof is the same as \cite[Lemma 1]{huang_fptas_2024}.
|
||||
|
||||
The following two lemmas show (a general version of) that the optimal cut $C^N$ to normalized min-cut is exactly the minimum cut under weights $w_\tau$.
|
||||
|
||||
@@ -85,9 +60,9 @@ The following two lemmas show (a general version of) that the optimal cut $C^N$
|
||||
Thus by \autoref{lem:lb}, $X^N$ gets the minimum.
|
||||
\end{proof}
|
||||
|
||||
Now we show the counter part of \cite[Theorem 5]{vygen_fptas_2024}, which states the optimal solution to \autoref{bfreeknap} is a $\alpha$-approximate solution to $\min_{F\in \mathcal{F}} w_\tau(F)$.
|
||||
% Now we show the counter part of \cite[Theorem 5]{huang_fptas_2024}, which states the optimal solution to \autoref{bfreeknap} is a $\alpha$-approximate solution to $\min_{F\in \mathcal{F}} w_\tau(F)$.
|
||||
|
||||
\begin{lemma}[Lemma 4 in \cite{vygen_fptas_2024}]\label{lem:conditionalLB}
|
||||
\begin{lemma}\label{lem:conditionalLB}
|
||||
Let $(X^*,F^*)$ be the optimal solution to \autoref{bfreeknap}.
|
||||
$X^*$ is either an $\alpha$-approximate solution to $\min_{X\in\mathcal F}
|
||||
w_\tau(X)$ for some $\alpha>1$, or $w(X^*\setminus F^*)\geq
|
||||
@@ -95,8 +70,8 @@ Now we show the counter part of \cite[Theorem 5]{vygen_fptas_2024}, which states
|
||||
\end{lemma}
|
||||
|
||||
% In fact, corollary 1 and theorem 5 are also the same as those in
|
||||
% \cite{vygen_fptas_2024}.
|
||||
Then following the argument of Corollary 1 in \cite{vygen_fptas_2024}, assume that $X^*$ is not an $\alpha$-approximate solution to $\min_{X\in\mathcal F}
|
||||
% \cite{huang_fptas_2024}.
|
||||
Then following arguments in \cite[Corollary 1]{huang_fptas_2024}, assume that $X^*$ is not an $\alpha$-approximate solution to $\min_{X\in\mathcal F}
|
||||
w_\tau(X)$ for some $\alpha>1$. We have
|
||||
\[
|
||||
\frac{w(C^N\setminus F^N)}{w(C^*\setminus F^*)}\leq \frac{\tau(B-c(F^N))}{\tau(\alpha B-b)}\leq \frac{B}{\alpha B-b},
|
||||
@@ -104,18 +79,16 @@ Then following the argument of Corollary 1 in \cite{vygen_fptas_2024}, assume th
|
||||
where the second inequality uses \autoref{lem:conditionalLB}.
|
||||
One can see that if $\alpha>2$, $\frac{w(C^N\setminus F^N)}{w(C^*\setminus F^*)}\leq \frac{B}{\alpha B-b} <1$ which implies $(C^*,F^*)$ is not optimal. Thus for $\alpha >2$, $X^*$ must be a $2$-approximate solution to $\min_{X\in\mathcal F} w_\tau(X)$.
|
||||
|
||||
Finally we get a knapsack version of Theorem 4:
|
||||
\begin{theorem}[Theorem 4 in \cite{vygen_fptas_2024}]\label{thm:main}
|
||||
Finally we get a general version of \cite[Theorem 4]{huang_fptas_2024}:
|
||||
\begin{theorem}\label{thm:main}
|
||||
Let $X^{\min}$ be the optimal solution to $\min_{X\in\mathcal F} w_\tau(X)$.
|
||||
The optimal set $X^*$ in \autoref{bfreeknap} is a
|
||||
2-approximation to $X^{\min}$.
|
||||
\end{theorem}
|
||||
|
||||
Thus to obtain a FPTAS for \autoref{bfreeknap}, one need to design a FPTAS for
|
||||
\autoref{nknap} and a polynomial time alg for finding all 2-approximations to
|
||||
$\min_{X\in\mathcal F} w_\tau(X)$.
|
||||
Thus to obtain a FPTAS for \autoref{bfreeknap}, one need to design a FPTAS for \autoref{nknap} and a polynomial time algorithm for finding all 2-approximations to $\min_{X\in\mathcal F} w_\tau(X)$.
|
||||
|
||||
\paragraph{FPTAS for \autoref{nknap} in \cite{vygen_fptas_2024}} (The name
|
||||
\paragraph{FPTAS for \autoref{nknap} in \cite{huang_fptas_2024}} (The name
|
||||
``FPTAS'' here is not precise since we do not have a approximation scheme but
|
||||
an enumeration algorithm. But I will use this term anyway.) In their settings,
|
||||
$\mathcal F$ is the collection of all cuts in some graph.
|
||||
@@ -134,20 +107,21 @@ have a non-zero lowerbound on $\opt^N$.
|
||||
|
||||
\begin{conjecture}
|
||||
Let $(C,F)$ be the optimal solution to connectivity interdiction. The optimum
|
||||
cut $C$ can be computed in polynomial time. In other words, connectivity
|
||||
interdiction is almost as easy as knapsack.
|
||||
cut $C$ can be computed in polynomial time.
|
||||
\end{conjecture}
|
||||
|
||||
Note that there is a FPTAS algorithm for finding $C$ in \cite{huang_fptas_2024}.
|
||||
|
||||
\section{Connections}
|
||||
For unit costs, connectivity interdiction with budget $b=k-1$ is the same
|
||||
For unit weight and cost, connectivity interdiction with budget $b=k-1$ is the same
|
||||
problem as finding the minimum weighted edge set whose removal breaks $k$-edge
|
||||
connectivity.
|
||||
|
||||
It turns out that \autoref{nknap} is just a necessary ingredient for MWU.
|
||||
Authors of \cite{vygen_fptas_2024} $\subset$ authors of
|
||||
\cite{chalermsook_approximating_2022}.
|
||||
\autoref{nknap} may come from an intermediate problem of MWU methods for positive covering LPs.
|
||||
% Authors of \cite{huang_fptas_2024} $\subset$ authors of
|
||||
% \cite{chalermsook_approximating_2022}.
|
||||
|
||||
How to derive normalized min cut for connectivity interdiction?
|
||||
Can we get an FPTAS using LP methods?
|
||||
|
||||
|
||||
\begin{equation*}
|
||||
@@ -175,9 +149,9 @@ s.t.& & \sum_{e\in T} x_e&\geq 1 & &\forall T\quad \text{($x$ is a c
|
||||
|
||||
Now this LP looks similar to the normalized min-cut problem.
|
||||
|
||||
A further reformulation (the new $x$ is $x-y$) gives us the following,
|
||||
A further reformulation ($x\from x-y$) gives us the following integer program,
|
||||
|
||||
\begin{equation}\label{lp:conninterdict}
|
||||
\begin{equation}\label{ip:interdiction}
|
||||
\begin{aligned}
|
||||
\min& & \sum_{e} x_e w(e) & & \\
|
||||
s.t.& & \sum_{e\in T} x_e+y_e&\geq 1 & &\forall T\quad \text{($x+y$ is a cut)}\\
|
||||
@@ -189,23 +163,21 @@ s.t.& & \sum_{e\in T} x_e+y_e&\geq 1 & &\forall T\quad \text{($x+y$
|
||||
|
||||
Note that now this is almost a positive covering LP. Let $L(\lambda)= \min \{ w(C\setminus F)-\lambda(b-c(F)) | \forall \text{cut $C$}\;\forall F\subset C
|
||||
% \land c(F)\leq b
|
||||
\}$.
|
||||
Consider the Lagrangian dual,
|
||||
\begin{equation*}
|
||||
\}$
|
||||
and consider the Lagrangian dual,
|
||||
\[
|
||||
\max_{\lambda\geq 0} L(\lambda)= \max_{\lambda\geq 0} \min \left\{ w(C\setminus F)-\lambda(b-c(F)) | \forall \text{cut $C$}\;\forall F\subset C
|
||||
% \land c(F)\leq b
|
||||
\right\}
|
||||
\end{equation*}
|
||||
\right\}.
|
||||
\]
|
||||
|
||||
|
||||
% At this point, it becomes clear how the normalized min-cut is implicated in \cite{vygen_fptas_2024}. The optimum of normalized min-cut is exactly the value of $\lambda$ when $L(\lambda)$ is 0.
|
||||
We have shown that the budget $B$ in normalized min-cut does not really matter as long as $B>b$. Note that $L(\lambda)$ and the normalized min-cut look similar to the principal sequence of partitions of a graph and the graph strength problem.
|
||||
|
||||
\subsection{graph strength}
|
||||
% Assume that the graph $G$ is connected.
|
||||
Given a graph $G=(V,E)$ and a cost function $c:V\to \Z_+$, the strength $\sigma(G)$ is defined as $\sigma(G)=\min_{\Pi}\frac{c(\delta(\Pi))}{|\Pi|-1}$, where $\Pi$ is any partition of $V$, $|\Pi|$ is the number of parts in the partition and $\delta(\Pi)$ is the set of edges between parts. Note that an alternative formulation of strength (using graphic matroid rank) is $\sigma(G)=\min_{F\subset E} \frac{|E-F|}{r(E)-r(F)}$, which in general is the fractional optimum of matroid base packing.
|
||||
For a graph $G=(V,E)$ with edge capacity $c:V\to \Z_+$, the strength $\sigma(G)$ is defined as $\sigma(G)=\min_{\Pi}\frac{c(\delta(\Pi))}{|\Pi|-1}$, where $\Pi$ is any partition of $V$, $|\Pi|$ is the number of parts in the partition and $\delta(\Pi)$ is the set of edges between parts. Note that an alternative formulation of strength (using graphic matroid rank function) is $\sigma(G)=\min_{F\subset E} \frac{c(E-F)}{r(E)-r(F)}$, which in general is the fractional optimum of matroid base packing.
|
||||
|
||||
The principal sequence of partitions of $G$ is a piecewise linear concave curve $L(\lambda)=\min_\Pi c(\delta(\Pi))-\lambda |\Pi|$. ($L(\lambda)=\min_{F\in E}c(E\setminus F)-\lambda(r(E)-r(F)+1)$) Cunningham used principal partition to computed graph strength\cite{cunningham_optimal_1985}. There is a list of good properties mentioned in \cite[Section 6]{chekuri_lp_2020}(implicated stated in \cite{cunningham_optimal_1985}).
|
||||
The principal sequence of partitions of $G$ is a pwl concave curve $L(\lambda)= \min_\Pi c(\delta(\Pi))-\lambda |\Pi|$. (alternatively, $L(\lambda)=\min_{F\in E}c(E\setminus F)-\lambda(r(E)-r(F)+1)$) Cunningham used principal partition to computed graph strength\cite{cunningham_optimal_1985}. There is a list of good properties mentioned in \cite[Section 6]{chekuri_lp_2020}(implicated stated in \cite{cunningham_optimal_1985}).
|
||||
\begin{enumerate}
|
||||
\item We can assume $G$ is connected and deal with the smallest strength component. One can see this by fractional base packing on the direct sum of matroids. Note that on disconnected graphs we should use the edge set definition instead of partitions.
|
||||
\item $L(\lambda)$ is piecewise linear concave since it is the lower envelope of some line arrangement.
|
||||
@@ -227,6 +199,16 @@ Now we focus on $L(\lambda)=\min \{w(C\setminus F)-\lambda(b-c(F)) | \forall \te
|
||||
% Now we can see that $B$ in the denominator $B-c(F)$ should be the cost of mincut in $G$.
|
||||
Let $B$ be the minimum cost of cuts in $G$.
|
||||
We have $-\lambda(b-B)\leq w(C\setminus F)-\lambda(b-c(F))$ for any cut $C$ and $F\subsetneq C$. Thus the upperbound is $\e=\min \frac{w(C\setminus F)}{B-c(F)}$.
|
||||
Note that $B-c(F)$ is always positive since otherwise the curve is not concave.
|
||||
|
||||
Now we depict the curve. The first segment is determined by $C=F\in \argmin_{X\subset V} c(\delta(X))$. The first breakpoint is $\e=\min \frac{w(C\setminus F)}{B-c(F)}$ and for the second segment we have $(C,F)\in \argmin\frac{w(C\setminus F)}{B-c(F)}$ with minimum $c(F)$.
|
||||
Now there are two cases:
|
||||
\begin{enumerate}
|
||||
\item if $c(F)\leq b$, then the first breakpoint is the optimal $\lambda$.
|
||||
\item if $c(F)\in (b,B)$, we have to look at more segments.
|
||||
\end{enumerate}
|
||||
Unfortunately, the seconds case is possible (consider a path with parallel edges) and the number of segments can be exponential.
|
||||
|
||||
|
||||
% \note{It remains to show that the optimal solution at $\e$ guarantees $c(F)\leq b$? or maybe we don't need this for normalized mincut. I think normalized min-cut should not require $c(F)\leq b$. Further checks are needed. What we can guarantee is that $c(F)\leq B$.}
|
||||
|
||||
@@ -235,9 +217,9 @@ Consider $L(\lambda)$ for cut problem. One can see that the optimal $\lambda$ is
|
||||
|
||||
|
||||
\subsection{integrality gap}
|
||||
I guess the 2-approximate min-cut enumeration algorithm implies an integrality gap of 2 for cut interdiction problem.
|
||||
% I guess the 2-approximate min-cut enumeration algorithm implies an integrality gap of 2 for cut interdiction problem. \textcolor{red}{Which is wrong}.
|
||||
|
||||
First consider the dual of linear relaxation of \autoref{lp:conninterdict}.
|
||||
First consider the dual of linear relaxation of \autoref{ip:interdiction}.
|
||||
|
||||
\begin{equation}\label{lp:dualcutint}
|
||||
\begin{aligned}
|
||||
@@ -247,14 +229,14 @@ s.t.& & \sum_{T\ni e} z_T &\leq w(e) & &\forall e\in E\\
|
||||
& & z_T,\lambda &\geq 0 & &
|
||||
\end{aligned}
|
||||
\end{equation}
|
||||
We want to prove something like tree packing theorem for \autoref{lp:dualcutint}.
|
||||
\begin{conjecture}
|
||||
The optimum of \autoref{lp:dualcutint} is $\min \set{\frac{w(C\setminus F)}{B-c(F)}| \forall \text{cut $C$}, c(F)\leq b}$, where $B$ is the cost of mincut in $G$ and $b$ is the budget.
|
||||
\end{conjecture}
|
||||
% We want to prove something like tree packing theorem for \autoref{lp:dualcutint}.
|
||||
% \begin{conjecture}
|
||||
% The optimum of \autoref{lp:dualcutint} is $\min \set{\frac{w(C\setminus F)}{B-c(F)}| \forall \text{cut $C$}, c(F)\leq b}$, where $B$ is the cost of mincut in $G$ and $b$ is the budget.
|
||||
% \end{conjecture}
|
||||
|
||||
I believe the previous conjecture is not likely to be true.
|
||||
% I believe the previous conjecture is not likely to be true.
|
||||
|
||||
\paragraph{Weight truncation} Assuming we know the optimal $\lambda$ to the LP dual, \autoref{lp:dualcutint} in fact gives the idea of weight truncation. The capacity of each edge $e$ in the ``tree packing'' is $\min\{c(e)\lambda,w(e)\}$. Therefore, the optimum of \autoref{lp:dualcutint} is $\Lambda_{w_\tau}^{fr}-b\lambda$, where $\Lambda_{w_\tau}^{fr}$ is the fractional mincut on $G$ with weights $w_\tau$.
|
||||
\paragraph{Weight truncation} Assuming that the optimal $\lambda$ to the LP dual is known, \autoref{lp:dualcutint} in fact gives the idea of weight truncation. The capacity of each edge $e$ in the ``tree packing'' is $\min\{c(e)\lambda,w(e)\}$. Therefore, the optimum of \autoref{lp:dualcutint} is $\Lambda_{w_\tau}^{fr}-b\lambda$, where $\Lambda_{w_\tau}^{fr}$ is the fractional mincut on $G$ with weights $w_\tau$.
|
||||
|
||||
\paragraph{The optimal $\lambda$} Denote by $\lambda^*$ the optimal $\lambda$ that maximizes $L(\lambda)$. From the previous argument on the first segment of $L(\lambda)$ we know that $\lambda^* \geq \min \frac{w(C\setminus F)}{B-c(F)}$. Now assume $\lambda^* > \min_{c(F)\leq b} \frac{w(C\setminus F)}{b-c(F)}$. We have $\min w(C\setminus F)-\lambda^*(b-c(F))<w(C\setminus F)-\min_{c(F)\leq b} \frac{w(C\setminus F)}{b-c(F)}(b-c(F))=0$ since the optimum must be achieved by $F$ such that $0\leq b-c(F)$(the slope). The negative optimum of $L(\lambda)$ contradicts the fact that $L(0)=0$ and $L$ is concave. Hence, the optimal solution $\lambda^*$ is in the range $[\min\frac{w(C\setminus F)}{B-c(F)},\min_{c(F)\leq b}\frac{w(C\setminus F)}{b-c(F)}]$.
|
||||
|
||||
@@ -265,7 +247,7 @@ $\lambda_i=\min \frac{w(C\setminus F)-w(C_{i-1}\setminus F_{i-1})}{c(F_{i-1})-c(
|
||||
The proof is using the argument for showing $\lambda_1=\min \frac{w(C\setminus F)}{B-c(F)}$ and induction. $\lambda_i$ looks similar to normalized mincut but is related to the slope and vertical intercept of a previous segment.
|
||||
|
||||
\begin{conjecture}\label{conj:intgap}
|
||||
\autoref{lp:conninterdict} has an integrality gap of 4.
|
||||
\autoref{ip:interdiction} has an integrality gap of 4.
|
||||
\end{conjecture}
|
||||
|
||||
However, \autoref{conj:intgap} is wrong. The integrality gap is unbounded. Consider a cycle $C_n$ of $n$ vertices with two special edges $e_1,e_2$. Let $L$ be a large number.
|
||||
@@ -286,9 +268,167 @@ For LP, we assign $x=0$ and $y_e=\frac{1}{n-2}$ for every edge except $e_1$. The
|
||||
|
||||
What is the gap if we only relax $\lambda$ in the Lagrangian dual?
|
||||
|
||||
\section{Random Stuff}
|
||||
\section{LP method}
|
||||
Consider the following IP for connectivity interdiction:
|
||||
|
||||
\subsection{remove box constraints}
|
||||
\begin{equation*}
|
||||
\begin{aligned}
|
||||
\min& & \sum_{e} x_e w(e) & & \\
|
||||
s.t.& & \sum_{e\in T} x_e+y_e&\geq 1 & &\forall T\quad \text{($x+y$ is a cut)}\\
|
||||
& & \sum_{e} y_e c(e) &\leq b & &\text{(budget for $F$)}\\
|
||||
% & & x_e&\geq y_e & &\forall e\quad(F\subset C)\\
|
||||
& & y_e,x_e&\in\{0,1\} & &\forall e
|
||||
\end{aligned}
|
||||
\end{equation*}
|
||||
|
||||
We write its Lagrangian dual.
|
||||
\[
|
||||
LD = \max_{\lambda\geq 0} \min_{\substack{\text{cut $C$} \\ F\subseteq C}} w(C-F)-\lambda(b-c(F))
|
||||
\]
|
||||
|
||||
For fixed $\lambda$, we define $L(\lambda)=\min \set{ w(C)-w(F)+\lambda c(F),\text{cut $C$ and $F\subseteq C$} }$. Note that the Lagrangian dual is $\max_{\lambda\geq 0} L(\lambda) - \lambda b$.
|
||||
|
||||
If the optimal $C^*$ of $L(\lambda)$ is known, any edge in $C^*$ with $w(e)\geq c(e)\lambda$ will be added to $F^*$. So now the hard part is to find $C^*$. We reweight edges.
|
||||
|
||||
\[
|
||||
w_\lambda(e)=\begin{cases}
|
||||
w(e) & \text{if $w(e)< \lambda\cdot c(e)$ (light elem)}\\
|
||||
\lambda\cdot c(e) & \text{otherwise (heavy elem)}
|
||||
\end{cases}
|
||||
\]
|
||||
|
||||
Then clearly edges in $F^*$ are heavy and edges in $C^*-F^*$ are light.
|
||||
|
||||
Now consider the min cut under capacity $w_\lambda$. For any cut $C$ in $G$, its capacity $w_\lambda(C)$ can be write as the sum of heavy elements ($\lambda c(F)$) and light elements ($w(C-F)$) which is at least $L(\lambda)$.
|
||||
On the other hand, $C^*$ is a feasible cut and the capacity of $C^*$ is exactly $L(\lambda)$. Thus $C^*$ is a mincut in the reweighted graph and we can find it in near-linear time.
|
||||
|
||||
\subsection{Approximation}
|
||||
|
||||
How is $C^*$ related to the optimal solution to IP?
|
||||
|
||||
% The argument is almost identical to lyft optimization
|
||||
|
||||
One can see that the Lagrangian dual (denoted by LD) is at most the optimum of IP. So we have $\opt(LD) \leq \opt(IP)$.
|
||||
|
||||
We can assume WLOG that the optimal $\lambda^*$ in LD is the intersection of two lines with positive and negative slopes. Then there exists an optimal solution $(\lambda^*, C^{LD},F^{LD})$ to LD such that $c(F^{LD})\leq b$. Then we have
|
||||
\begin{equation}\label{eq:ub}
|
||||
L(\lambda^*)\geq \opt(LD)+\lambda^* b -\lambda c(F^{LD}) = w(C^{LD}-F^{LD}) \geq \opt(IP)=w(C^*-F^*),
|
||||
\end{equation}
|
||||
since $\opt(IP)$ is the smallest $b$-free min cut.
|
||||
|
||||
We have $L(\lambda^*)\leq w_{\lambda^*}(C^*)$ since $L(\lambda^*)$ is the value of the minimum cut in $(G,w_{\lambda^*})$. Now we prove $L(\lambda^*)+b\lambda \geq w_{\lambda^*}(C^*)$.
|
||||
|
||||
\begin{equation*}
|
||||
\begin{aligned}
|
||||
L(\lambda^*)+b\lambda^* &\geq \opt(IP)+\lambda^* c(F^*)\\ &=w(C^*-F^*)+\lambda^* c(F^*)\\ &\geq w_{\lambda^*}(C^*)
|
||||
\end{aligned}
|
||||
\end{equation*}
|
||||
The first line uses \autoref{eq:ub} and the fact that $c(F^*)\leq b$. The last line follows from the definition of $w_{\lambda}$.
|
||||
Finally the approximation guarantee $w_{\lambda^*}(C^*)\in [L(\lambda^*),2L(\lambda^*))$ easily follows since $L(\lambda^*)-\lambda^* b = LD > 0$.
|
||||
|
||||
\begin{remark}
|
||||
Let $F'\subset C^*$ be the set of light elements in $C^*$ under weights $w_{\lambda^*}$.
|
||||
The real gap between $w_\lambda^*(C^*)$ and $L(\lambda^*)$ is
|
||||
\[
|
||||
\begin{aligned}
|
||||
&\lambda^*(c(F^*)-\textcolor{blue}{c(F^{LD})})\\
|
||||
- &\textcolor{blue}{[w(C^{LD}\setminus F^{LD})-w(C^*\setminus F^*)]}\\
|
||||
- &\textcolor{blue}{[\lambda^*(c(F^*)-c(F'))+w(F')-w(F^*)]}
|
||||
\end{aligned}
|
||||
\]
|
||||
Note that everything in blue is non-negative.
|
||||
And we get that upperbound of $\lambda^*b$ by throwing away all blue terms and using $c(F^*)\leq b$.
|
||||
|
||||
Can we show that the gap is 0 or much smaller than 2?
|
||||
\begin{enumerate}
|
||||
\item One cannot do better than $b\lambda^*$ for general costs.
|
||||
There are examples (a 4-vertex path with parallel edges) where the gap is almost $b\lambda^*$.\footnote{see \url{https://gitea.talldoor.uk/sxlxc/edge_conn_interdiction/src/branch/master/gap.py}}
|
||||
\item Unit cost. There is still a gap between $L(\lambda^*)$ and $w(C^*\setminus F^*)$.\footnote{see \url{https://gitea.talldoor.uk/sxlxc/edge_conn_interdiction/src/branch/master/plot.py}}
|
||||
\end{enumerate}
|
||||
|
||||
\end{remark}
|
||||
|
||||
\subsection{general objective function}
|
||||
Consider the following optimization problem.
|
||||
\begin{problem}\label{prob:generalf}
|
||||
Let $S$ be a set of $n$ elements and let $f:2^S\to \Z_+$ be a set function on $S$.
|
||||
Given a cost function $c:S\to \Z_+$ and a budget $b\in Z_+$,
|
||||
find $\min_{F\subset X\subset S} \set{f(X\setminus F)| c(F)\leq b}$.
|
||||
\end{problem}
|
||||
|
||||
Now we show that the $<2$-approximation holds for general set function.
|
||||
First we need to generalize the definition of Lagrangian dual and $L(\lambda)$ to general set function $f$.
|
||||
Let the Lagrangian dual be
|
||||
\[
|
||||
LD = \max_{\lambda\geq 0} \min_{F\subset X\subset S} f(X\setminus F)+ \lambda(c(F)-b)
|
||||
\]
|
||||
and define $L(\lambda)=\min_{F\subset X\subset S} f(X\setminus F)+ \lambda c(F)$.
|
||||
Let $\lambda^{LD},X^{LD},F^{LD}$ be the optimal solution to $LD$.
|
||||
We have shown that $LD$ is the maximum of the lower envelope of some linear functions when $f$ is modular.
|
||||
Similarly, for general set function $LD$ is the maximum of a pwl-concave function and we can assume $c(F^{LD})\leq b$.
|
||||
|
||||
Let $f_\lambda (X)=\min_{F\subset X} f(X\setminus F)+\lambda c(F)$ be the generalized ``reweighted-mincut''.
|
||||
|
||||
\begin{lemma}
|
||||
Let $(X^*,F^*)$ be the optimal solution to \autoref{prob:generalf}.
|
||||
We have $L(\lambda^{LD})\leq f_{\lambda^{LD}}(X^*)\leq L(\lambda^{LD})+b\lambda^{LD}$.
|
||||
\end{lemma}
|
||||
\begin{proof}
|
||||
For the first inequality, we have
|
||||
\begin{equation*}
|
||||
\begin{aligned}
|
||||
L(\lambda^{LD}) & = \min_{F\subset X\subset S} f(X\setminus F)+ \lambda^{LD} c(F)\\
|
||||
& \leq \min_{F\subset X^*} f(X^*\setminus F)+\lambda^{LD} c(F)\\
|
||||
& = f_{\lambda^{LD}}(X^*).
|
||||
\end{aligned}
|
||||
\end{equation*}
|
||||
|
||||
To see the upperbound:
|
||||
\begin{equation*}
|
||||
\begin{aligned}
|
||||
L(\lambda^{LD})+b\lambda^{LD} &= f(X^{LD}\setminus F^{LD})+ \lambda^{LD} c(F^{LD}) + b\lambda^{LD}\\
|
||||
&\geq f(X^*\setminus F^*) + b\lambda^{LD}\\
|
||||
&\geq f(X^*\setminus F^*) + c(F^*)\lambda^{LD}\\
|
||||
&\geq f_{\lambda^{LD}}(X^*)
|
||||
\end{aligned}
|
||||
\end{equation*}
|
||||
\end{proof}
|
||||
|
||||
Now the $<2$-approximation easily follows from the fact that $L(\lambda^{LD})-b\lambda^{LD}=LD > 0$
|
||||
|
||||
Note that if $f$ is submodular, then one can solve $f_\lambda(X)$ in polynomial time. However, the framework doesn't seem very useful if one cannot enumerate all $<2$-approximate solutions to $L(\lambda^{LD})$.
|
||||
|
||||
\subsection{complexity}
|
||||
|
||||
\begin{algo}
|
||||
\underbar{\textsc{$b$-free MinCut}}($G,w,c,b$):\\
|
||||
compute $\lambda^*$ using parametric search\\
|
||||
reweight $G$ with $w_\lambda$\\
|
||||
for each 2-approx mincut $C$ in $(G,w_\lambda)$:\\
|
||||
\quad run FPTAS for knapsack to compute $\min \set{w(C-F)| F\subset C, c(F)\leq b}$\\
|
||||
return the optimal $(C,F)$
|
||||
\end{algo}
|
||||
|
||||
To compute $\lambda^*$ we need to use parametric search.
|
||||
\begin{lemma}[\cite{salowe_parametric}]
|
||||
Let $S(n)$ be the complexity of solving the Lagrangian dual problem for fixed $\lambda$ (where $n$ is the size of the input), then one can compute $\lambda^*$ using parametric search in $O(S(n)^2)$ time.
|
||||
\end{lemma}
|
||||
It follows directly from the preceding lemma that $\lambda^*$ can be computed in $\tilde O(m^2)$ time.
|
||||
|
||||
Reweighting the graph takes linear time.
|
||||
Finding $<2$-approx mincut takes $\tilde O(n^3)$.
|
||||
The total complexity is $\tilde O(m^2+n^3 T)$, where $T$ is the running time of FPTAS for 0-1 knapsack.\footnote{An $1+\e$ approximate solution to knapsack can be found in time $\tilde O(m+\frac{1}{\e^2})$ \cite{10.1145/3618260.3649730}.}
|
||||
|
||||
\subsection{Avoid the parametric search}
|
||||
The $\tilde O(m^2)$ term in the complexity is hard to improve.
|
||||
We want to find an $(1+\e)$-approximate $\lambda^*$ in near linear time.
|
||||
|
||||
\bibliographystyle{plain}
|
||||
\bibliography{ref}
|
||||
|
||||
\appendix
|
||||
|
||||
\section{remove box constraints}
|
||||
Given a positive covering LP,
|
||||
|
||||
\begin{equation*}
|
||||
@@ -317,11 +457,10 @@ suppose that $c(f)<x_f\in x^*$. Consider all constraints $\sum_{e\in T\setminus
|
||||
x_e\geq k-c(f)$ on $T\ni f$. For any such constraint, we have $\sum_{e\in T} c(e)
|
||||
x_e>k$ since we assume $x_f>c(f)$, which means we can decrease $x_f$ without violating any constraint. Thus it contradicts the assumption that $x^*$ is optimal. Then we can add redundant constraints $x_e\leq c(e) \;\forall e$ to LP2 and see that LP1 and LP2 have the same optimum.
|
||||
|
||||
This applies to \cite{chalermsook_approximating_2022} but cannot get an improvement on their algorithm.(MWU does not care the number of constraints.) So does this trick apply to connectivity interdiction?
|
||||
This applies to \cite{chalermsook_approximating_2022} but cannot get an improvement on their algorithm.(MWU does not care the number of constraints.)
|
||||
|
||||
\[
|
||||
\min_{\text{cut C}, f\in C}\frac{\sum_{e\in C\setminus\set{f}}w(e)x_e}{k-c(f)}
|
||||
\]
|
||||
\bibliographystyle{plain}
|
||||
\bibliography{ref}
|
||||
|
||||
\end{document}
|
||||
|
||||
@@ -0,0 +1,228 @@
|
||||
\documentclass[a4paper]{article}
|
||||
\usepackage{chao}
|
||||
\usepackage{algo}
|
||||
|
||||
\geometry{margin=2cm}
|
||||
|
||||
\title{A Note on Minimization Interdiction}
|
||||
\author{Yu Cong \and Kangyi Tian}
|
||||
\date{\today}
|
||||
|
||||
\DeclareMathOperator*{\opt}{OPT}
|
||||
|
||||
\begin{document}
|
||||
\maketitle
|
||||
|
||||
\begin{abstract}
|
||||
Motivated by the FPTAS for connectivity interdiction of Huang \etal{}
|
||||
\cite{huang_fptas_2024}, we isolate the part of the argument that does not use
|
||||
cuts. The setting is a minimization problem over a feasible-set family
|
||||
$\mathcal F$ with a linear objective $w(S)=\sum_{e\in S}w(e)$. After dualizing
|
||||
the interdiction budget, deletion can be absorbed into truncated weights
|
||||
$w_\lambda(e)=\min\{w(e),\lambda c(e)\}$. At an optimal Lagrange multiplier
|
||||
$\lambda^*$, the unknown optimal interdiction witness is a strict
|
||||
$2$-approximate minimizer of the reweighted problem. Thus an exact algorithm
|
||||
can be obtained whenever one can optimize $w_{\lambda^*}$ over $\mathcal F$,
|
||||
enumerate all its $2$-approximate minimizers, and solve the remaining knapsack problem.
|
||||
\end{abstract}
|
||||
|
||||
\section{Model}
|
||||
|
||||
Let $E$ be a finite ground set and let $\mathcal F\subseteq 2^E$ be the family
|
||||
of feasible sets of an underlying linear minimization problem
|
||||
\[
|
||||
\min_{S\in\mathcal F} w(S),
|
||||
\]
|
||||
where $w(S)=\sum_{e\in S}w(e)$ for weights $w:E\to \Z_+$. We are also given
|
||||
an interdiction cost $c:E\to \Z_+$ and a budget $b\in \Z_+$.
|
||||
|
||||
The linear minimization interdiction problem considered here is
|
||||
\begin{equation}\label{eq:interdiction}
|
||||
\opt
|
||||
=
|
||||
\min_{\substack{S\in\mathcal F,\; R\subseteq S\\ c(R)\leq b}}
|
||||
w(S\setminus R),
|
||||
\end{equation}
|
||||
where $c(R)=\sum_{e\in R}c(e)$. This is equivalent to first deleting an
|
||||
arbitrary set $R$ with $c(R)\leq b$ and then minimizing $w(S\setminus R)$ over
|
||||
$S\in\mathcal F$, because only $R\cap S$ affects the value of a chosen feasible
|
||||
set $S$.
|
||||
|
||||
Connectivity interdiction is the special case where $\mathcal F$ is the family
|
||||
of cuts of a graph. In that case \eqref{eq:interdiction} is exactly the
|
||||
$b$-free min-cut formulation
|
||||
\[
|
||||
\min_{\substack{\text{cut } C,\;R\subseteq C\\c(R)\leq b}}
|
||||
w(C\setminus R).
|
||||
\]
|
||||
|
||||
The argument below uses both minimization and linearity. Minimization gives the
|
||||
near-minimizer certificate in \autoref{thm:two-approx-witness}; linearity gives
|
||||
the truncation formula $w_\lambda(e)=\min\{w(e),\lambda c(e)\}$.
|
||||
|
||||
\section{Lagrangian relaxation}
|
||||
|
||||
It is helpful to first look at \eqref{eq:interdiction} as an integer program,
|
||||
even though we do not write variables for the feasible-set constraints:
|
||||
\[
|
||||
\begin{aligned}
|
||||
\opt=\min&\quad w(S\setminus R)\\
|
||||
\text{s.t.}&\quad S\in\mathcal F,\quad R\subseteq S,\\
|
||||
&\quad c(R)\leq b.
|
||||
\end{aligned}
|
||||
\tag{IP}
|
||||
\]
|
||||
The set $S$ is the object chosen by the original minimization problem, and
|
||||
$R$ is the part of $S$ removed by the interdiction budget. For a fixed $S$,
|
||||
choosing $R$ is a knapsack-like deletion problem; the global difficulty is that
|
||||
we do not know which feasible set $S$ will be optimal after deletion.
|
||||
|
||||
The Lagrangian relaxation prices the single budget constraint. For a multiplier
|
||||
$\lambda\geq 0$, move the constraint $c(R)\leq b$ into the objective:
|
||||
\[
|
||||
\Phi(\lambda)
|
||||
=
|
||||
\min_{\substack{S\in\mathcal F\\R\subseteq S}}
|
||||
\bigl(w(S\setminus R)+\lambda(c(R)-b)\bigr).
|
||||
\]
|
||||
For every fixed $\lambda$, this is a lower bound on the interdiction optimum:
|
||||
budget-feasible pairs get a non-positive correction term
|
||||
$\lambda(c(R)-b)$. The Lagrangian dual is $\Lambda=\max_{\lambda\geq 0}\Phi(\lambda)$ and we denote a maximizer by $\lambda^*$. We assume $\Lambda>0$ since otherwise every feasible set $S$ would satisfy $c(S)\leq b$, so the interdiction problem would reduce to the original optimization problem.
|
||||
|
||||
Now remove the constant term $-\lambda b$ from $\Phi(\lambda)$ and focus on the
|
||||
inner minimization
|
||||
\[
|
||||
L(\lambda)
|
||||
=
|
||||
\min_{\substack{S\in\mathcal F\\R\subseteq S}}
|
||||
\bigl(w(S\setminus R)+\lambda c(R)\bigr),
|
||||
\]
|
||||
so that $\Phi(\lambda)=L(\lambda)-\lambda b$. For a fixed $S$ and $\lambda$,
|
||||
each element $e\in S$ has only two relevant choices: If $e$ is included in $R$, its cost will be $\lambda c(e)$; Otherwise the cost is $w(e)$.
|
||||
Thus the best truncated weight of whether including $e$ in $R$ is $w_\lambda(e)=\min\{w(e),\lambda c(e)\}$.
|
||||
Because both $w$ and $c$ are linear,
|
||||
\[
|
||||
\begin{aligned}
|
||||
\min_{R\subseteq S}\bigl(w(S\setminus R)+\lambda c(R)\bigr)
|
||||
&=\sum_{e\in S}\min\{w(e),\lambda c(e)\}\\
|
||||
&=w_\lambda(S).
|
||||
\end{aligned}
|
||||
\]
|
||||
Therefore we have $L(\lambda)=\min_{S\in\mathcal F} w_\lambda(S)$, which is the original linear optimization problem under the truncated weight.
|
||||
|
||||
The function $\Phi$ is the lower envelope of finitely many lines in $\lambda$,
|
||||
so it is piecewise-linear and concave.
|
||||
|
||||
\begin{lemma}\label{lem:lagrangian-lower-bound}
|
||||
For every $\lambda\geq 0$, $\Phi(\lambda)\leq \opt$. Hence
|
||||
$\Lambda\leq \opt$.
|
||||
\end{lemma}
|
||||
|
||||
\begin{proof}
|
||||
Let $(S,R)$ be feasible for \eqref{eq:interdiction}. Since $c(R)\leq b$, $w(S\setminus R)+\lambda(c(R)-b)\leq w(S\setminus R)$.
|
||||
Minimizing the left-hand side over all pairs $(S,R)$, and then minimizing the
|
||||
right-hand side only over budget-feasible pairs, gives
|
||||
$\Phi(\lambda)\leq \opt$.
|
||||
\end{proof}
|
||||
|
||||
\begin{lemma}\label{lem:feasible-active}
|
||||
Assume $\lambda^*$ is a finite maximizer of $\Phi$. Then there is a pair
|
||||
$(S^{LD},R^{LD})$ attaining $L(\lambda^*)$ such that $c(R^{LD})\leq b$.
|
||||
Consequently,
|
||||
\[
|
||||
L(\lambda^*)\geq \opt.
|
||||
\]
|
||||
\end{lemma}
|
||||
|
||||
\begin{proof}
|
||||
If every pair attaining $L(\lambda^*)$ had $c(R)>b$, then every active line in
|
||||
the lower envelope defining $\Phi$ would have positive slope at $\lambda^*$.
|
||||
For sufficiently small $\delta>0$, the value of the lower envelope would then
|
||||
increase from $\lambda^*$ to $\lambda^*+\delta$, contradicting the optimality of
|
||||
$\lambda^*$.
|
||||
|
||||
Thus some active pair $(S^{LD},R^{LD})$ has $c(R^{LD})\leq b$. This pair is
|
||||
feasible for \eqref{eq:interdiction}, so
|
||||
$w(S^{LD}\setminus R^{LD})\geq \opt$. Therefore
|
||||
\[
|
||||
L(\lambda^*)
|
||||
=
|
||||
w(S^{LD}\setminus R^{LD})+\lambda^*c(R^{LD})
|
||||
\geq \opt.
|
||||
\]
|
||||
\end{proof}
|
||||
|
||||
\section{The main observation}
|
||||
|
||||
\begin{theorem}\label{thm:two-approx-witness}
|
||||
Let $(S^*,R^*)$ be an optimal solution to \eqref{eq:interdiction}. If
|
||||
$\Lambda>0$, then
|
||||
\[
|
||||
L(\lambda^*)
|
||||
\leq
|
||||
w_{\lambda^*}(S^*)
|
||||
\leq
|
||||
L(\lambda^*)+b\lambda^*
|
||||
<
|
||||
2L(\lambda^*).
|
||||
\]
|
||||
In particular, $S^*$ is a strict $2$-approximate minimizer of
|
||||
$\min_{S\in\mathcal F} w_{\lambda^*}(S)$.
|
||||
\end{theorem}
|
||||
|
||||
\begin{proof}
|
||||
The lower bound follows immediately from the definition of $L(\lambda^*)$:
|
||||
\[
|
||||
L(\lambda^*)=\min_{S\in\mathcal F}w_{\lambda^*}(S)
|
||||
\leq w_{\lambda^*}(S^*).
|
||||
\]
|
||||
For the upper bound, use the particular deletion set $R^*$ inside the definition
|
||||
of $w_{\lambda^*}(S^*)$:
|
||||
\[
|
||||
\begin{aligned}
|
||||
w_{\lambda^*}(S^*)
|
||||
&\leq w(S^*\setminus R^*)+\lambda^*c(R^*) \\
|
||||
&= \opt+\lambda^*c(R^*) \\
|
||||
&\leq \opt+\lambda^*b \\
|
||||
&\leq L(\lambda^*)+\lambda^*b,
|
||||
\end{aligned}
|
||||
\]
|
||||
where the last inequality is \autoref{lem:feasible-active}. Finally,
|
||||
$\Lambda=L(\lambda^*)-\lambda^*b>0$, so
|
||||
$L(\lambda^*)+\lambda^*b<2L(\lambda^*)$.
|
||||
\end{proof}
|
||||
|
||||
\begin{remark}
|
||||
For connectivity interdiction, $S^*$ is the optimal interdiction cut, so it is
|
||||
among the strict $2$-approximate min-cuts in the graph with capacities
|
||||
$w_{\lambda^*}$.
|
||||
\end{remark}
|
||||
|
||||
\section{Algorithmic template}
|
||||
|
||||
The theorem gives the following general template.
|
||||
|
||||
\begin{algo}
|
||||
\underbar{\textsc{Linear-Minimization-Interdiction}}$(E,\mathcal F,w,c,b)$:\\
|
||||
compute a maximizer $\lambda^*$ of $\Phi(\lambda)=L(\lambda)-\lambda b$\\
|
||||
compute the truncated weight $w_{\lambda^*}$\\
|
||||
enumerate every $S\in\mathcal F$ with $w_{\lambda^*}(S)<2L^*$\\
|
||||
for each enumerated $S$:\\
|
||||
\;\; compute $g_b(S)=\min\{w(S\setminus R):R\subseteq S,\ c(R)\leq b\}$\\
|
||||
return the pair $(S,R)$ with minimum value
|
||||
\end{algo}
|
||||
|
||||
$\lambda^*$ can be found using parametric search techniques.
|
||||
|
||||
\begin{lemma}[\cite{salowe_parametric}]\label{lem:para}
|
||||
Let $T(n)$ be the complexity of computing $L(\lambda)=\min_{S\in\mathcal F} w_\lambda(S)$ for fixed $\lambda$ (where $n$ is the size of the input), then one can compute $\lambda^*$ using parametric search in $O(T(n)^2)$ time.
|
||||
\end{lemma}
|
||||
|
||||
Computing $g_b(S)$ is essentially solving a knapsack problem on groundset $S$ and takes $\tilde O(m+\frac{1}{\e^2})$ time for an $(1+\e)$-approximation \cite{10.1145/3618260.3649730}.
|
||||
|
||||
\paragraph{Application on Connecticity Interdiction} $L(\lambda)$ can be obtained via min-cut in deterministic $\tilde O(m)$ time \cite{Li_2021}. Combining with \autoref{lem:para} gives a $\tilde O(m^2)$-time algorithm for $\lambda^*$. Karger \cite{Karger2000} showed the number of $\alpha$-approximate min-cut is $O(n^{\floor{2\alpha}})$. Thus the number of enumerated $S$ is $O(n^3)$ and we can enumerate them in ...
|
||||
|
||||
\bibliographystyle{plain}
|
||||
\bibliography{ref}
|
||||
|
||||
\end{document}
|
||||
@@ -0,0 +1,62 @@
|
||||
import matplotlib.pyplot as plt
|
||||
import numpy as np
|
||||
|
||||
|
||||
def plot_linear_functions(list1, list2, list3, b, x_range=(0, 10)):
|
||||
"""
|
||||
Plots linear functions y = Cx + D where:
|
||||
C = b - k (k elements removed)
|
||||
D = sum of remaining elements
|
||||
k ranges from 0 to b.
|
||||
"""
|
||||
datasets = [list1, list2, list3]
|
||||
# Distinct colors for the 3 sets
|
||||
colors = ['#E63946', '#457B9D', '#1D3557']
|
||||
labels = ['List 1', 'List 2', 'List 3']
|
||||
|
||||
plt.figure(figsize=(12, 8))
|
||||
x = np.linspace(x_range[0], x_range[1], 100)
|
||||
|
||||
for i, current_list in enumerate(datasets):
|
||||
# Sort descending so the first k elements are the 'top k'
|
||||
sorted_list = sorted(current_list, reverse=True)
|
||||
|
||||
for k in range(len(sorted_list) + 1):
|
||||
# C is the fixed number b minus the number of elements removed
|
||||
C = k-b
|
||||
|
||||
# Remove top k elements (if k > list length, remaining is empty)
|
||||
remaining = sorted_list[k:] if k < len(sorted_list) else []
|
||||
|
||||
# D is the sum of the remaining elements
|
||||
D = sum(remaining)
|
||||
|
||||
y = C * x + D
|
||||
|
||||
# Plot the line; label only once per list for a clean legend
|
||||
line_label = labels[i] if k == 0 else ""
|
||||
if C == 0:
|
||||
plt.plot(x, y, color=colors[i], alpha=1,
|
||||
label=line_label, linestyle='-')
|
||||
else:
|
||||
plt.plot(x, y, color=colors[i], alpha=0.6,
|
||||
label=line_label, linestyle='--')
|
||||
|
||||
plt.title(
|
||||
f"2D Linear Functions: $y = (b-k)x + sum(rem)$ for $0 ≤ k ≤ b$ ($b={b}$)")
|
||||
plt.xlabel("x")
|
||||
plt.ylabel("y")
|
||||
plt.grid(True, linestyle='--', alpha=0.7)
|
||||
plt.legend()
|
||||
plt.savefig('linear_plot.png')
|
||||
plt.show()
|
||||
|
||||
|
||||
# --- Example Usage ---
|
||||
# Replace these with your actual lists and b value
|
||||
L1 = [45, 14, 7, 7, 4, 2]
|
||||
L2 = [20, 15, 10, 5, 4, 2]
|
||||
L3 = [5, 5, 5, 5, 5, 5]
|
||||
fixed_b = 2
|
||||
|
||||
plot_linear_functions(L1, L2, L3, fixed_b)
|
||||
@@ -1,5 +1,4 @@
|
||||
|
||||
@inproceedings{vygen_fptas_2024,
|
||||
@inproceedings{huang_fptas_2024,
|
||||
address = {Cham},
|
||||
title = {An {FPTAS} for {Connectivity} {Interdiction}},
|
||||
volume = {14679},
|
||||
@@ -10,12 +9,11 @@
|
||||
booktitle = {Integer {Programming} and {Combinatorial} {Optimization}},
|
||||
publisher = {Springer Nature Switzerland},
|
||||
author = {Huang, Chien-Chung and Obscura Acosta, Nidia and Yingchareonthawornchai, Sorrachai},
|
||||
editor = {Vygen, Jens and Byrka, Jarosław},
|
||||
editor = {Vygen, Jens and Byrka, Jaros\l{}aw},
|
||||
year = {2024},
|
||||
doi = {10.1007/978-3-031-59835-7_16},
|
||||
pages = {210--223},
|
||||
pages = {210--223}
|
||||
}
|
||||
|
||||
@article{chalermsook_approximating_2022,
|
||||
title = {Approximating k-{Edge}-{Connected} {Spanning} {Subgraphs} via a {Near}-{Linear} {Time} {LP} {Solver}},
|
||||
volume = {229},
|
||||
@@ -27,26 +25,24 @@
|
||||
urldate = {2025-03-09},
|
||||
journal = {LIPIcs, Volume 229, ICALP 2022},
|
||||
author = {Chalermsook, Parinya and Huang, Chien-Chung and Nanongkai, Danupon and Saranurak, Thatchaphol and Sukprasert, Pattara and Yingchareonthawornchai, Sorrachai},
|
||||
editor = {Bojańczyk, Mikołaj and Merelli, Emanuela and Woodruff, David P.},
|
||||
editor = {Boja\'{n}czyk, Miko\l{}aj and Merelli, Emanuela and Woodruff, David P.},
|
||||
year = {2022},
|
||||
keywords = {Approximation Algorithms, Data Structures, Theory of computation → Routing and network design problems},
|
||||
pages = {37:1--37:20},
|
||||
keywords = {Approximation Algorithms, Data Structures, Theory of computation \rightarrow{} Routing and network design problems},
|
||||
pages = {37:1--37:20}
|
||||
}
|
||||
|
||||
@article{garg_faster_nodate,
|
||||
author = {Garg, Naveen and K\"{o}nemann, Jochen},
|
||||
title = {Faster and Simpler Algorithms for Multicommodity Flow and Other Fractional Packing Problems},
|
||||
journal = {SIAM Journal on Computing},
|
||||
volume = {37},
|
||||
number = {2},
|
||||
pages = {630-652},
|
||||
pages = {630--652},
|
||||
year = {2007},
|
||||
doi = {10.1137/S0097539704446232},
|
||||
URL = { https://doi.org/10.1137/S0097539704446232},
|
||||
url = {https://doi.org/10.1137/S0097539704446232},
|
||||
eprint = {https://doi.org/10.1137/S0097539704446232},
|
||||
abstract = {This paper considers the problem of designing fast, approximate, combinatorial algorithms for multicommodity flows and other fractional packing problems. We present new, faster, and much simpler algorithms for these problems.}
|
||||
}
|
||||
|
||||
@article{cunningham_optimal_1985,
|
||||
title = {Optimal attack and reinforcement of a network},
|
||||
volume = {32},
|
||||
@@ -60,10 +56,8 @@ abstract = { This paper considers the problem of designing fast, approximate, co
|
||||
author = {Cunningham, William H.},
|
||||
month = jul,
|
||||
year = {1985},
|
||||
pages = {549--561},
|
||||
pages = {549--561}
|
||||
}
|
||||
|
||||
|
||||
@article{chekuri_lp_2020,
|
||||
title = {{LP} {Relaxation} and {Tree} {Packing} for {Minimum} $k$-{Cut}},
|
||||
volume = {34},
|
||||
@@ -78,8 +72,48 @@ abstract = { This paper considers the problem of designing fast, approximate, co
|
||||
month = jan,
|
||||
year = {2020},
|
||||
keywords = {Approximation, K-cut, Minimum cut, Tree packing},
|
||||
pages = {1334--1353},
|
||||
pages = {1334--1353}
|
||||
}
|
||||
@inproceedings{10.1145/3618260.3649730,
|
||||
author = {Chen, Lin and Lian, Jiayi and Mao, Yuchen and Zhang, Guochuan},
|
||||
title = {A Nearly Quadratic-Time FPTAS for Knapsack},
|
||||
year = {2024},
|
||||
isbn = {9798400703836},
|
||||
publisher = {Association for Computing Machinery},
|
||||
address = {New York, NY, USA},
|
||||
url = {https://doi.org/10.1145/3618260.3649730},
|
||||
doi = {10.1145/3618260.3649730},
|
||||
abstract = {We investigate the classic Knapsack problem and propose a fully polynomial-time approximation scheme (FPTAS) that runs in O(n + (1/)2) time. Prior to our work, the best running time is O(n + (1/)11/5) [Deng, Jin, and Mao'23]. Our algorithm is the best possible (up to a polylogarithmic factor), as Knapsack has no O((n + 1/)2-\ensuremath{\delta})-time FPTAS for any constant \ensuremath{\delta} > 0, conditioned on the conjecture that (min, +)-convolution has no truly subquadratic-time algorithm.},
|
||||
booktitle = {Proceedings of the 56th Annual ACM Symposium on Theory of Computing},
|
||||
pages = {283–294},
|
||||
numpages = {12},
|
||||
keywords = {Approximation scheme, Knapsack},
|
||||
location = {Vancouver, BC, Canada},
|
||||
series = {STOC 2024}
|
||||
}
|
||||
@incollection{salowe_parametric,
|
||||
author = {Salowe, Jeffrey S.},
|
||||
title = {Parametric search},
|
||||
year = {1997},
|
||||
isbn = {0849385245},
|
||||
publisher = {CRC Press, Inc.},
|
||||
address = {USA},
|
||||
booktitle = {Handbook of Discrete and Computational Geometry},
|
||||
pages = {683–695},
|
||||
numpages = {13}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@article{Karger2000,
|
||||
title = {Minimum cuts in near-linear time},
|
||||
volume = {47},
|
||||
issn = {00045411},
|
||||
url = {http://portal.acm.org/citation.cfm?doid=331605.331608},
|
||||
doi = {10.1145/331605.331608},
|
||||
number = {1},
|
||||
journal = {Journal of the ACM},
|
||||
author = {Karger, David R},
|
||||
month = jan,
|
||||
year = {2000},
|
||||
pages = {46--76},
|
||||
}
|
||||
@inproceedings{Li_2021, address={Virtual Italy}, title={Deterministic mincut in almost-linear time}, ISBN={9781450380539}, url={https://dl.acm.org/doi/10.1145/3406325.3451114}, DOI={10.1145/3406325.3451114}, booktitle={Proceedings of the 53rd Annual ACM SIGACT Symposium on Theory of Computing}, publisher={ACM}, author={Li, Jason}, year={2021}, month=june, pages={384–395}, language={en} }
|
||||
Reference in New Issue
Block a user