From b5a067e2f9dfec1b03146c7ba6cb1bcdfde9e946 Mon Sep 17 00:00:00 2001 From: Daniel Rosel Date: Sat, 10 Jan 2026 11:55:53 +0100 Subject: [PATCH] mdp additionally --- paper/src/chapters/02-literature-review.tex | 2 +- paper/src/chapters/03-methodology.tex | 7 +++++++ paper/src/chapters/mdp_human.pdf | Bin 0 -> 12194 bytes 3 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 paper/src/chapters/mdp_human.pdf diff --git a/paper/src/chapters/02-literature-review.tex b/paper/src/chapters/02-literature-review.tex index bc06743..566d03f 100644 --- a/paper/src/chapters/02-literature-review.tex +++ b/paper/src/chapters/02-literature-review.tex @@ -31,7 +31,7 @@ When dynamic pricing algorithms operate on highly contaminated or noisy data, th -Early hints of exploration of prices in a standard English auction explored in \cite{varian_economic_nodate} which hints at exploration of prices in a sequential manner, which leads to a marginally different cost to the bidder than the reservation price of the seller. This is a setting in which there is no cost incured by the buyer for their actions or exploring prices in the market. They propose that any agent responsable for the pricing of a good must be imune to dynamic strategies which might extract private information from a market. A key take-away which relates to the Vickery auction mechanism (also called a \textit{direct mechanism}) suggests that not only would defenses against such exploitation be necessary, but the construction of a mechanism in which revelation of the true willingness to pay is the dominant strategy for commerce. +Early hints of exploration of prices in a standard English auction explored in \cite{varian_economic_1995} which hints at exploration of prices in a sequential manner, which leads to a marginally different cost to the bidder than the reservation price of the seller. This is a setting in which there is no cost incured by the buyer for their actions or exploring prices in the market. They propose that any agent responsable for the pricing of a good must be imune to dynamic strategies which might extract private information from a market. A key take-away which relates to the Vickery auction mechanism (also called a \textit{direct mechanism}) suggests that not only would defenses against such exploitation be necessary, but the construction of a mechanism in which revelation of the true willingness to pay is the dominant strategy for commerce. Like in classical revenue-maximizing auctions \cite{roughgarden_cs364a_2013} we assume that the human actor in our system has a private valuation $v$ which we formally draw from later defined distributions. The important note here is that the agent proxy does not have a mechanism to convey this private information into the demand data which directly impacts the pricing systems. diff --git a/paper/src/chapters/03-methodology.tex b/paper/src/chapters/03-methodology.tex index c8af6ec..83bf825 100644 --- a/paper/src/chapters/03-methodology.tex +++ b/paper/src/chapters/03-methodology.tex @@ -187,6 +187,13 @@ To develop a robust pricing agent, we require a simulation environment capable o \subsubsection{GOFAI-Based Separability} We employ Good Old-Fashioned AI (GOFAI) heuristics to generate initial weak labels for separability. We define a set of rule-based predicates $\phi_j: \tau \to \{0, 1\}$ to partition the dataset $\mathcal{D}$ into high-confidence sets $\mathcal{D}_H$ and $\mathcal{D}_A$. We construct distinct MDPs per each behavioral profile of humans and agents and from those we establish $D_{KL}$. +\begin{figure}[ht] + \centering + \includegraphics[width=0.8\textwidth]{chapters/mdp_human.pdf} + \caption{Markov Decision Process visualization illustrating the behavioral transition dynamics for human and agent actor profiles. The state space and transition probabilities are learned from observed session trajectories to enable generative contamination.} + \label{fig:mdp_viz} +\end{figure} + \subsubsection{Transition Probability Estimation} For both subsets, we model the session dynamics as a Markov Decision Process (MDP) and estimate the transition kernel $\mathcal{T}$. The probability of transitioning to state $s'$ given state $s$ is estimated via maximum likelihood: \begin{equation} diff --git a/paper/src/chapters/mdp_human.pdf b/paper/src/chapters/mdp_human.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7cef37a21dc48a0a6c66fa87a788419045bb8fcd GIT binary patch literal 12194 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