Compare commits

...

9 Commits

Author SHA1 Message Date
19c544e04c z
All checks were successful
build pdf / build (push) Successful in 16s
2025-08-29 20:55:07 +08:00
642260d568 new poster img & fix typo in slides
All checks were successful
build pdf / build (push) Successful in 14s
2025-08-27 15:40:41 +08:00
98f0985195 z
All checks were successful
build pdf / build (push) Successful in 14s
2025-08-23 13:30:09 +08:00
848a0b5c6b z
Some checks failed
build pdf / build (push) Has been cancelled
2025-08-23 13:29:32 +08:00
114b2896eb localhost works
All checks were successful
build pdf / build (push) Successful in 13s
2025-08-22 10:37:18 +08:00
f464f47e17 use localhost?
Some checks failed
build pdf / build (push) Has been cancelled
2025-08-22 10:32:58 +08:00
421bbca37d z
Some checks failed
build pdf / build (push) Failing after 1s
2025-08-22 10:31:18 +08:00
0ddd930119 update action & fix typo
Some checks failed
build pdf / build (push) Failing after 1s
2025-08-22 10:29:54 +08:00
1361b5fac1 z
All checks were successful
build pdf / build (push) Successful in 14s
2025-08-21 16:21:37 +08:00
6 changed files with 52 additions and 36 deletions

View File

@@ -7,19 +7,19 @@ jobs:
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@v4 uses: http://localhost:3000/sxlxc/checkout@v4
- name: Compile LaTeX using local TeX Live - name: Compile LaTeX using local TeX Live
# These commands run directly in your machine's shell # These commands run directly in your machine's shell
run: | run: |
echo "Compiling document..." echo "Compiling document..."
latexmk -pdf poster.tex latexmk poster.tex -pdf
latexmk -pdf slides.tex latexmk slides.tex -pdf
- name: List files in the workspace - name: List files in the workspace
run: ls -l run: ls -l
- uses: akkuman/gitea-release-action@v1 - uses: http://localhost:3000/sxlxc/gitea-release-action@v1
with: with:
body: '' body: ''
prerelease: true prerelease: true

View File

@@ -7,8 +7,8 @@
\ProvidesPackage{beamerthemePoster} \ProvidesPackage{beamerthemePoster}
\RequirePackage[dvipsnames]{xcolor} \RequirePackage[dvipsnames]{xcolor}
% \RequirePackage{tikz} \RequirePackage{tikz}
% \usetikzlibrary{arrows,decorations.pathmorphing,backgrounds,calc} \usetikzlibrary{arrows,decorations.pathmorphing,backgrounds,calc}
% \RequirePackage{lmodern} % \RequirePackage{lmodern}
% \RequirePackage{textcomp} % \RequirePackage{textcomp}
\RequirePackage{amsmath,amssymb,amsthm} \RequirePackage{amsmath,amssymb,amsthm}
@@ -185,7 +185,7 @@
\end{center} \end{center}
\end{minipage} \end{minipage}
\end{center} \end{center}
\vskip1cm \vskip0.8cm
} }
% %
@@ -195,11 +195,11 @@
\renewcommand{\section}[1]{ \renewcommand{\section}[1]{
\par\vskip\medskipamount% \par\vskip\medskipamount%
% %
% \begin{flushleft} \begin{flushleft}
% \begin{tikzpicture}[remember picture,overlay] \begin{tikzpicture}[remember picture,overlay]
% \shade [inner color=color2,outer color=color3] (0,0) rectangle (\columnwidth,0.3cm); \shade [inner color=color2,outer color=color3] (0,0) rectangle (\columnwidth,0.3cm);
% \end{tikzpicture} \end{tikzpicture}
% \end{flushleft} \end{flushleft}
% \vspace{5pt} % \vspace{5pt}
% %
\begin{center} \begin{center}
@@ -208,12 +208,12 @@
{\parskip0pt\par} {\parskip0pt\par}
\end{center} \end{center}
% %
% \begin{flushleft} \begin{flushleft}
% \vskip-1cm \vskip-1cm
% \begin{tikzpicture}[remember picture,overlay] \begin{tikzpicture}[remember picture,overlay]
% \shade [inner color=color2,outer color=color3] (0,0) rectangle (\columnwidth,0.3cm); \shade [inner color=color2,outer color=color3] (0,0) rectangle (\columnwidth,0.3cm);
% \end{tikzpicture} \end{tikzpicture}
% \end{flushleft} \end{flushleft}
% \vspace{2.5pt} % \vspace{2.5pt}
% %
{\parskip0pt\par} {\parskip0pt\par}

BIN
image/chatgpt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 MiB

BIN
image/poster.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 428 KiB

View File

@@ -39,31 +39,31 @@
\begin{document} \begin{document}
% larger font % larger font
\large \large
\begin{frame}[t] \begin{frame}[t]
\vspace{-3cm}
\begin{multicols}{2} \begin{multicols}{2}
\section{Problem} \section{Problem}
We consider the incentive allocation problem with additional constraints. We consider the incentive allocation problem with additional constraints.
\textbf{Input}: A set of coupons $E=\bigcupdot_i E_i$, where each coupon $e\in E$ has value and cost $v_e,c_e\in \mathbb{Z}_+$. Budget $B\in \mathbb{Z}_+$. Constraints $\mathcal F_i$ on each subset $E_i$. \textbf{Input}: A set of coupons $E=\bigcupdot_i E_i$, where each coupon $e\in E$ has a value and a cost $v_e,c_e\in \mathbb{Z}_+$. Budget $B\in \mathbb{Z}_+$. Constraints $\mathcal F_i$ on each subset $E_i$.
\textcolor{Gray}{ \textcolor{Gray}{
\textbf{Output}: A subset $X\subset E$ of coupons that maximizes the total value $\sum_{e\in X}v_e$ while satisfying $\sum_{e\in X}c_e\leq B$ and additional constraints $X\cap E_i\in \mathcal F_i$. \textbf{Output}: A subset $X\subset E$ of coupons that maximizes the total value $\sum_{e\in X}v_e$ while satisfying the budget constraint $\sum_{e\in X}c_e\leq B$ and additional constraints $X\cap E_i\in \mathcal F_i$.
} }
This problem is NP-hard. Consider its LP relaxation. This problem is NP-hard. Consider its LP relaxation.
\begin{equation}\label{LP} \begin{equation*}\label{LP}
\begin{aligned} \begin{aligned}
\tau(B)=\max_x&\; & v\cdot x& & & \\ \tau(B)=\max_x&\; & v\cdot x& & & \\
s.t.&\; & c \cdot x &\leq B & &\\ s.t.&\; & c \cdot x &\leq B & &\\
& & x_{E_i}&\in \conv(\mathcal{F}_i) & &\;\forall i\in [n]\\ & & x_{E_i}&\in \conv(\mathcal{F}_i) & &\;\forall i\in [n]\\
& & x&\in [0,1]^m & & & & x&\in [0,1]^m & &
\end{aligned} \end{aligned}
\end{equation} \end{equation*}
\textbf{Output}: The entire curve $\tau(B)$ for $B\in [0,\infty)$. \textbf{Output}: The entire curve $\tau(B)$ for $B\in [0,\infty)$.
We consider 3 cases of additional constraints $x_{E_i}\in \mathcal{F}_i$ : We consider 3 cases of additional constraints $x_{E_i}\in \mathcal{F}_i$ :
@@ -101,17 +101,17 @@ We consider 3 cases of additional constraints $x_{E_i}\in \mathcal{F}_i$ :
\end{table} \end{table}
\section{Methods} \section{Methods}
The idea is to take advantage of the independence among the constraints $\mathcal{F}_i$ and to reduce the optimization problem to one in computational geometry. The idea is to take advantage of the independence among the constraints $\mathcal{F}_i$ and reduce the optimization problem to one in computational geometry.
\textcolor{DarkOrchid}{\textit{Signature Function.}} Let $f_i(\lambda) = \max\{(v_{E_i}-\lambda c_{E_i}) x | x\in \conv(\mathcal F_i) \}$ be the signature function of agent $i$. The signature function is piecewise-linar and convex. \textcolor{DarkOrchid}{\textit{Signature Function.}} Let $f_i(\lambda) = \max\{(v_{E_i}-\lambda c_{E_i}) x | x\in \conv(\mathcal F_i) \}$ be the signature function of agent $i$. The signature function is piecewise-linar and convex.
\textcolor{DarkOrchid}{\textit{Lagrangian Dual.}} The Lagrangian dual of LP\autoref{LP} is therefore \textcolor{DarkOrchid}{\textit{Lagrangian Dual.}} The Lagrangian dual of LP\autoref{LP} is therefore
\begin{equation} \begin{equation*}
\label{eq:Lagrangiandual} \label{eq:Lagrangiandual}
\begin{aligned} \begin{aligned}
\min_{\lambda} \left( B\lambda+\sum_i f_i(\lambda)\right). \min_{\lambda} \left( B\lambda+\sum_i f_i(\lambda)\right).
\end{aligned} \end{aligned}
\end{equation} \end{equation*}
\begin{theorem}[4]\large \begin{theorem}[4]\large
$\tau(B)$ is piecewise-linear and concave. $\tau(B)$ is piecewise-linear and concave.

View File

@@ -4,6 +4,15 @@
\usepackage{algo} \usepackage{algo}
\usepackage{soul} \usepackage{soul}
% \usepackage{cancel} % \usepackage{cancel}
\newcommand{\munepsfig}[3][scale=1.0]{% <===============================
\begin{figure}[!htbp]
\centering
\vspace{2mm}
\setlength{\fboxrule}{#3} % <===================================
\framebox{\includegraphics[#1]{#2.png}} % <=====================
\label{fig:#2}
\end{figure}
}
\title[Incentive allocation]{Large-Scale Trade-Off Curve Computation for Incentive Allocation with Cardinality and Matroid Constraints} \title[Incentive allocation]{Large-Scale Trade-Off Curve Computation for Incentive Allocation with Cardinality and Matroid Constraints}
\date{August 30, 2025} \date{August 30, 2025}
@@ -28,8 +37,9 @@ A ride sharing company wants to send riders promotional coupons in the hope of m
% each agent gets at most 1 coupon. % each agent gets at most 1 coupon.
\begin{figure} \begin{figure}
placeholder\\ \includegraphics[width=.7\textwidth]{image/chatgpt.png}
\includegraphics[width=.5\textwidth]{image/landscape.png}
\scriptsize Image courtesy: ChatGPT-5
\end{figure} \end{figure}
\end{frame} \end{frame}
@@ -37,24 +47,24 @@ placeholder\\
\begin{frame}{Multiple-choice knapsack} \begin{frame}{Multiple-choice knapsack}
\textbf{Input}: $n$ sets of coupons $K_1,\dots,K_n$. Each coupon $e\in K_i$ has a non-negative cost $c_e\in \Z_+$ and value $v_e\in \Z_+$. A positive budget $b\in \Z_+$. \textbf{Input}: $n$ sets of coupons $K_1,\dots,K_n$. Each coupon $e\in K_i$ has a non-negative cost $c_e\in \Z_+$ and value $v_e\in \Z_+$. A positive budget $b\in \Z_+$.
\textbf{Output}: A (multi)set of coupons $K$ that maximizes the total value $\sum_{e\in K} c_e$ while satisfying \textcolor{Red}{$|K\cap K_i|\leq 1$} and $\sum_{e\in K} c_e\leq b$. \textbf{Output}: A subset of coupons $K$ that maximizes the total value $\sum_{e\in K} v_e$ while satisfying \textcolor{Red}{$|K\cap K_i|\leq 1$} and $\sum_{e\in K} c_e\leq b$.
\vspace{1em} \vspace{1em}
\pause \pause
Three problems with this modeling: Three problems with this formulation:
\begin{enumerate} \begin{enumerate}
\item Finding the exact optimum is NP-hard. So we consider solving it approximately. \item Finding the exact optimum is NP-hard. So we consider solving it approximately.
\item Companies may run multiple campaigns at the same time. So a trade-off curve between budget and profit will be useful. \item Companies may run multiple campaigns at the same time. So a trade-off curve between budget and profit will be useful.
\item The multiple-choice constraint \textcolor{Red}{$|K\cap K_i|\leq 1$} is too weak for real applications. \item The multiple-choice constraint \textcolor{Red}{$|K\cap K_i|\leq 1$} is too strong for real-world applications.
\end{enumerate} \end{enumerate}
\end{frame} \end{frame}
\begin{frame}{Linear programming formulation} \begin{frame}{Linear programming relaxation}
\textcolor{gray}{ % \textcolor{gray}{
\textbf{Input}: $n$ sets of coupons $K_1,\dots,K_n$. Each coupon $e\in K_i$ has a non-negative cost $c_e\in \Z_+$ and value $v_e\in \Z_+$. \st{A positive budget $b\in \Z_+$.} \textbf{Input}: $n$ sets of coupons $K_1,\dots,K_n$. Each coupon $e\in K_i$ has a non-negative cost $c_e\in \Z_+$ and value $v_e\in \Z_+$. \st{A positive budget $b\in \Z_+$.}
} % }
\pause \pause
\begin{equation*} \begin{equation*}
\begin{aligned} \begin{aligned}
@@ -64,7 +74,7 @@ s.t.& & c\cdot x&\leq b & &\\
\end{aligned} \end{aligned}
\end{equation*} \end{equation*}
\textbf{Output}: A compact representation of $\tau(b)$. \textbf{Output}: function $\tau(b)$ for $b\in (0,+\infty)$.
\pause \pause
We focus on 2 kinds of constraints of \textcolor{Plum}{$x_{K_i}\in P_{K_i}$}. We focus on 2 kinds of constraints of \textcolor{Plum}{$x_{K_i}\in P_{K_i}$}.
@@ -88,6 +98,12 @@ $k=O(mp^{1/3})$ and $\tau$ can be computed in $O((k+m)\log m)$ time.
\end{frame} \end{frame}
\begin{frame}[plain] \begin{frame}[plain]
poster \centering
\Large \textit{Let's discuss this in detail at my poster!}
\munepsfig[width=.8\linewidth]{image/poster}{1pt}
% \begin{figure}
% \includegraphics[width=0.8\linewidth]{image/poster.png}
% \end{figure}
\end{frame} \end{frame}
\end{document} \end{document}