Compare commits

...

22 Commits

Author SHA1 Message Date
sxlxc 0987ecc4f3 z
build pdf / build (push) Successful in 5s
2026-04-24 18:11:44 +08:00
sxlxc 586f79bf2b add notes 2026-04-24 13:42:07 +08:00
sxlxc d6b82b71ef fix forward_search task
build pdf / build (push) Successful in 4s
2026-01-11 19:42:22 +08:00
sxlxc 979399b211 unit cost gap is not better
build pdf / build (push) Successful in 4s
2026-01-11 16:01:57 +08:00
sxlxc 928305623b unit cost gap
build pdf / build (push) Successful in 4s
2026-01-11 15:17:56 +08:00
sxlxc dea0747d9d <2-approx for general set functions
build pdf / build (push) Successful in 4s
2026-01-08 18:03:33 +08:00
sxlxc 7f7b831c14 z
build pdf / build (push) Successful in 4s
2026-01-08 13:42:59 +08:00
sxlxc ada3865ad4 z
build pdf / build (push) Successful in 4s
2026-01-07 18:00:18 +08:00
sxlxc e08ba4dce6 z
build pdf / build (push) Successful in 4s
2026-01-07 17:01:11 +08:00
sxlxc 77da4af12b z
build pdf / build (push) Successful in 4s
2026-01-06 14:47:26 +08:00
sxlxc 10e96af266 z
build pdf / build (push) Successful in 5s
2026-01-05 20:11:02 +08:00
sxlxc 35e00b921b fix typo
build pdf / build (push) Successful in 12s
2025-10-20 15:39:01 +08:00
sxlxc ff1db55ca0 never use inbook. use incollection instead
build pdf / build (push) Successful in 13s
2025-10-11 14:50:04 +08:00
sxlxc 9aedda643f complexity
build pdf / build (push) Successful in 4s
2025-09-29 15:32:40 +08:00
sxlxc a276cd658f parametric search
build pdf / build (push) Successful in 6s
2025-09-29 10:41:48 +08:00
sxlxc 763e86f307 fix bug
build pdf / build (push) Successful in 5s
2025-09-21 15:58:02 +08:00
sxlxc 2f79036d1f z
build pdf / build (push) Successful in 4s
2025-09-19 00:08:24 +08:00
sxlxc 1d09b82a41 alg and complexity
build pdf / build (push) Successful in 4s
2025-09-19 00:06:52 +08:00
sxlxc 70672ae603 LP method
build pdf / build (push) Successful in 4s
2025-09-18 23:50:54 +08:00
sxlxc 4f7a6f2383 z
build pdf / build (push) Successful in 6s
2025-09-17 23:32:33 +08:00
sxlxc 8edb8f8a45 fix bug
build pdf / build (push) Successful in 5s
2025-09-17 13:42:59 +08:00
sxlxc 99ef773ecb z
build pdf / build (push) Successful in 7s
2025-09-16 14:01:35 +08:00
11 changed files with 762 additions and 157 deletions
-1
View File
@@ -17,7 +17,6 @@ jobs:
- uses: http://localhost:3000/sxlxc/gitea-release-action@v1 - uses: http://localhost:3000/sxlxc/gitea-release-action@v1
with: with:
body: '' body: ''
prerelease: true
name: PDF name: PDF
token: ${{ secrets.RELEASE_TOKEN }} token: ${{ secrets.RELEASE_TOKEN }}
tag_name: latest tag_name: latest
+1 -1
View File
@@ -1,7 +1,7 @@
.vscode/ .vscode/
*.sage.py *.sage.py
./*.pdf *.pdf
## Core latex/pdflatex auxiliary files: ## Core latex/pdflatex auxiliary files:
*.aux *.aux
*.lof *.lof
+25
View File
@@ -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"
}
]
+14
View File
@@ -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}}
+1 -1
View File
@@ -44,8 +44,8 @@
\RequirePackage{microtype} \RequirePackage{microtype}
\RequirePackage[mathletters]{ucs} % allow Unicode in .tex file \RequirePackage[mathletters]{ucs} % allow Unicode in .tex file
\RequirePackage[utf8]{inputenc} \RequirePackage[utf8]{inputenc}
\RequirePackage[charter]{mathdesign} % change fonts \RequirePackage[charter]{mathdesign} % change fonts
\RequirePackage{XCharter} % change fonts
\RequirePackage{berasans, beramono} \RequirePackage{berasans, beramono}
\RequirePackage{eucal} \RequirePackage{eucal}
\RequirePackage[nocompress]{cite} % other convenient stuff \RequirePackage[nocompress]{cite} % other convenient stuff
+56
View File
@@ -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
}
]
}
+48
View File
@@ -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()
+218 -79
View File
@@ -1,29 +1,10 @@
\documentclass[12pt]{article} \documentclass[a4paper,11pt]{article}
\usepackage{chao} \usepackage{chao}
\usepackage{algo}
\geometry{margin=2cm}
\geometry{a4paper,margin=2cm} \title{Faster FPTAS for Connectivity Interdiction}
% \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}
\author{} \author{}
\date{} \date{}
@@ -31,26 +12,20 @@
\DeclareMathOperator*{\len}{len} \DeclareMathOperator*{\len}{len}
\begin{document} \begin{document}
\maketitle
\section{Generalize proof in [Huang \etal{}, IPCO'24]}
\section{``Cut-free'' Proof}
\begin{problem}[b-free knapsack]\label{bfreeknap} \begin{problem}[b-free knapsack]\label{bfreeknap}
Consider a set of elements $E$ and two weights $w:E\to \Z_+$ and 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$.
$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} \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} \begin{problem}[Normalized knapsack]\label{nknap}
Given the same input as \autoref{bfreeknap}, find $\min \limits_{X 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$.
\in \mathcal F, F\subset E} \frac{w(X\setminus F)}{B-c(F)}$ such that
$c(F)\leq b$.
\end{problem} \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 Let $\tau$ be the optimum of \autoref{nknap}. Define a new weight $w_\tau:\E\to \R$,
$w_\tau:\E\to \R$,
\[ \[
w_\tau(e)=\begin{cases} 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}. Let $(X^N,F^N)$ be the optimal solution to \autoref{nknap}.
Every element in $F^N$ is heavy. Every element in $F^N$ is heavy.
\end{lemma} \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$. 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. Thus by \autoref{lem:lb}, $X^N$ gets the minimum.
\end{proof} \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}. Let $(X^*,F^*)$ be the optimal solution to \autoref{bfreeknap}.
$X^*$ is either an $\alpha$-approximate solution to $\min_{X\in\mathcal F} $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 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} \end{lemma}
% In fact, corollary 1 and theorem 5 are also the same as those in % In fact, corollary 1 and theorem 5 are also the same as those in
% \cite{vygen_fptas_2024}. % \cite{huang_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} 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 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}, \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}. 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)$. 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: Finally we get a general version of \cite[Theorem 4]{huang_fptas_2024}:
\begin{theorem}[Theorem 4 in \cite{vygen_fptas_2024}]\label{thm:main} \begin{theorem}\label{thm:main}
Let $X^{\min}$ be the optimal solution to $\min_{X\in\mathcal F} w_\tau(X)$. 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 The optimal set $X^*$ in \autoref{bfreeknap} is a
2-approximation to $X^{\min}$. 2-approximation to $X^{\min}$.
\end{theorem} \end{theorem}
Thus to obtain a FPTAS for \autoref{bfreeknap}, one need to design a FPTAS for 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)$.
\autoref{nknap} and a polynomial time alg 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 ``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, an enumeration algorithm. But I will use this term anyway.) In their settings,
$\mathcal F$ is the collection of all cuts in some graph. $\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} \begin{conjecture}
Let $(C,F)$ be the optimal solution to connectivity interdiction. The optimum Let $(C,F)$ be the optimal solution to connectivity interdiction. The optimum
cut $C$ can be computed in polynomial time. In other words, connectivity cut $C$ can be computed in polynomial time.
interdiction is almost as easy as knapsack.
\end{conjecture} \end{conjecture}
Note that there is a FPTAS algorithm for finding $C$ in \cite{huang_fptas_2024}.
\section{Connections} \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 problem as finding the minimum weighted edge set whose removal breaks $k$-edge
connectivity. connectivity.
It turns out that \autoref{nknap} is just a necessary ingredient for MWU. \autoref{nknap} may come from an intermediate problem of MWU methods for positive covering LPs.
Authors of \cite{vygen_fptas_2024} $\subset$ authors of % Authors of \cite{huang_fptas_2024} $\subset$ authors of
\cite{chalermsook_approximating_2022}. % \cite{chalermsook_approximating_2022}.
How to derive normalized min cut for connectivity interdiction? Can we get an FPTAS using LP methods?
\begin{equation*} \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. 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} \begin{aligned}
\min& & \sum_{e} x_e w(e) & & \\ \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)}\\ 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 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 % \land c(F)\leq b
\}$. \}$
Consider the Lagrangian dual, and consider the Lagrangian dual,
\begin{equation*} \[
\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 \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 % \land c(F)\leq b
\right\} \right\}.
\end{equation*} \]
% 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. 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} \subsection{graph strength}
% Assume that the graph $G$ is connected. % 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} \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 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. \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$. % 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$. 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)}$. 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$.} % \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} \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{equation}\label{lp:dualcutint}
\begin{aligned} \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 & & & & z_T,\lambda &\geq 0 & &
\end{aligned} \end{aligned}
\end{equation} \end{equation}
We want to prove something like tree packing theorem for \autoref{lp:dualcutint}. % We want to prove something like tree packing theorem for \autoref{lp:dualcutint}.
\begin{conjecture} % \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. % 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} % \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)}]$. \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. 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} \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} \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. 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? 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, Given a positive covering LP,
\begin{equation*} \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\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. 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)} \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} \end{document}
+228
View File
@@ -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}
+62
View File
@@ -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)
+61 -27
View File
@@ -1,5 +1,4 @@
@inproceedings{huang_fptas_2024,
@inproceedings{vygen_fptas_2024,
address = {Cham}, address = {Cham},
title = {An {FPTAS} for {Connectivity} {Interdiction}}, title = {An {FPTAS} for {Connectivity} {Interdiction}},
volume = {14679}, volume = {14679},
@@ -10,12 +9,11 @@
booktitle = {Integer {Programming} and {Combinatorial} {Optimization}}, booktitle = {Integer {Programming} and {Combinatorial} {Optimization}},
publisher = {Springer Nature Switzerland}, publisher = {Springer Nature Switzerland},
author = {Huang, Chien-Chung and Obscura Acosta, Nidia and Yingchareonthawornchai, Sorrachai}, 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}, year = {2024},
doi = {10.1007/978-3-031-59835-7_16}, doi = {10.1007/978-3-031-59835-7_16},
pages = {210--223}, pages = {210--223}
} }
@article{chalermsook_approximating_2022, @article{chalermsook_approximating_2022,
title = {Approximating k-{Edge}-{Connected} {Spanning} {Subgraphs} via a {Near}-{Linear} {Time} {LP} {Solver}}, title = {Approximating k-{Edge}-{Connected} {Spanning} {Subgraphs} via a {Near}-{Linear} {Time} {LP} {Solver}},
volume = {229}, volume = {229},
@@ -27,26 +25,24 @@
urldate = {2025-03-09}, urldate = {2025-03-09},
journal = {LIPIcs, Volume 229, ICALP 2022}, 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}, 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}, year = {2022},
keywords = {Approximation Algorithms, Data Structures, Theory of computation Routing and network design problems}, keywords = {Approximation Algorithms, Data Structures, Theory of computation \rightarrow{} Routing and network design problems},
pages = {37:1--37:20}, pages = {37:1--37:20}
} }
@article{garg_faster_nodate, @article{garg_faster_nodate,
author = {Garg, Naveen and K\"{o}nemann, Jochen}, author = {Garg, Naveen and K\"{o}nemann, Jochen},
title = {Faster and Simpler Algorithms for Multicommodity Flow and Other Fractional Packing Problems}, title = {Faster and Simpler Algorithms for Multicommodity Flow and Other Fractional Packing Problems},
journal = {SIAM Journal on Computing}, journal = {SIAM Journal on Computing},
volume = {37}, volume = {37},
number = {2}, number = {2},
pages = {630-652}, pages = {630--652},
year = {2007}, year = {2007},
doi = {10.1137/S0097539704446232}, 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}, 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. } 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, @article{cunningham_optimal_1985,
title = {Optimal attack and reinforcement of a network}, title = {Optimal attack and reinforcement of a network},
volume = {32}, volume = {32},
@@ -60,10 +56,8 @@ abstract = { This paper considers the problem of designing fast, approximate, co
author = {Cunningham, William H.}, author = {Cunningham, William H.},
month = jul, month = jul,
year = {1985}, year = {1985},
pages = {549--561}, pages = {549--561}
} }
@article{chekuri_lp_2020, @article{chekuri_lp_2020,
title = {{LP} {Relaxation} and {Tree} {Packing} for {Minimum} $k$-{Cut}}, title = {{LP} {Relaxation} and {Tree} {Packing} for {Minimum} $k$-{Cut}},
volume = {34}, volume = {34},
@@ -78,8 +72,48 @@ abstract = { This paper considers the problem of designing fast, approximate, co
month = jan, month = jan,
year = {2020}, year = {2020},
keywords = {Approximation, K-cut, Minimum cut, Tree packing}, 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 = {283294},
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 = {683695},
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={384395}, language={en} }