forgot about tables and graphs

This commit is contained in:
2025-12-14 11:17:41 +01:00
parent 0d6e9d3a3d
commit f58804ebfc
3 changed files with 178 additions and 0 deletions

View File

@@ -8,6 +8,7 @@ We consider a business across time during which we have an evolving vector $p_t
\subsection{Cost of Information Framework} \subsection{Cost of Information Framework}
Mathematical demonstration and validation of the COI and citation backed evidence, and framework overview + show harm to user via other cost distortions. Maybe split into 3.2.1 (COI Theory) and 3.2.2 (Framework Design) Mathematical demonstration and validation of the COI and citation backed evidence, and framework overview + show harm to user via other cost distortions. Maybe split into 3.2.1 (COI Theory) and 3.2.2 (Framework Design)

View File

@@ -0,0 +1,65 @@
\begin{table}[ht]
\centering
\small
\resizebox{\columnwidth}{!}{%
\begin{tabular}{p{4.5cm}p{1.5cm}p{6cm}}
\hline
\textbf{Feature} & \textbf{Type} & \textbf{Description} \\
\hline
\multicolumn{3}{l}{\textit{Session Identifiers}} \\
sessionId & object & Unique identifier for user session \\
experimentId & object & Experiment run identifier \\
\hline
\multicolumn{3}{l}{\textit{Temporal Features}} \\
session\_duration\_sec & float & Total session duration in seconds \\
avg\_time\_between\_events & float & Mean inter-event time \\
std\_time\_between\_events & float & Standard deviation of inter-event times \\
min\_time\_between\_events & float & Minimum time between consecutive events \\
session\_start\_hour & int & Hour of day when session started \\
\hline
\multicolumn{3}{l}{\textit{Interaction Metrics}} \\
total\_interactions & int & Count of all user interactions \\
total\_events & int & Total number of tracked events \\
interaction\_velocity & float & Rate of interactions per time unit \\
max\_velocity\_5min & int & Peak interaction count in any 5-minute window \\
\hline
\multicolumn{3}{l}{\textit{Navigation Behavior}} \\
unique\_pages & int & Number of distinct pages visited \\
page\_views & int & Total page view events \\
\hline
\multicolumn{3}{l}{\textit{Product Engagement}} \\
item\_views & int & Number of product detail views \\
unique\_products\_viewed & int & Count of distinct products examined \\
product\_view\_depth & int & Repeat views of same products \\
\hline
\multicolumn{3}{l}{\textit{Conversion Funnel}} \\
cart\_adds & int & Number of items added to cart \\
purchases & int & Completed transactions \\
cart\_to\_view\_ratio & float & Ratio of cart additions to item views \\
conversion\_rate & float & Purchase to view conversion \\
\hline
\multicolumn{3}{l}{\textit{Interaction Quality}} \\
hover\_events & int & Mouse hover event count \\
hover\_intensity & float & Hover events per interaction \\
\hline
\multicolumn{3}{l}{\textit{Price Behavior}} \\
avg\_price\_seen & float & Mean price across viewed products \\
min\_price\_seen & float & Lowest price encountered \\
max\_price\_seen & float & Highest price encountered \\
price\_range & float & Difference between max and min prices seen \\
\hline
\multicolumn{3}{l}{\textit{Technical Fingerprinting}} \\
is\_headless & bool & Headless browser detection flag \\
is\_automation & bool & Automation framework detection flag \\
browser\_family & object & Browser type classification \\
\hline
\multicolumn{3}{l}{\textit{Experimental Labels}} \\
is\_agent & bool & Ground truth agent classification \\
xp\_human\_only & bool & Human-only experiment indicator \\
xp\_market\_mode & object & Market context (hotel/airline) \\
\hline
\end{tabular}%
}
\caption{Feature matrix schema for session-level behavioral classification (32 features total).}
\label{tab:features}
\end{table}

View File

@@ -0,0 +1,112 @@
\definecolor{mygreenfill}{RGB}{169, 234, 186}
\definecolor{mygreenborder}{RGB}{29, 145, 61}
\definecolor{mybluefill}{RGB}{204, 222, 255}
\definecolor{myblueborder}{RGB}{66, 106, 189}
\definecolor{mygray}{RGB}{150, 150, 150}
\begin{tikzpicture}[
node distance=2cm,
% Style for Green Nodes
greenbox/.style={
rectangle,
draw=mygreenborder,
fill=mygreenfill,
line width=1.2pt,
align=center,
minimum height=1cm,
font=\sffamily
},
% Style for Blue Nodes
bluebox/.style={
rectangle,
draw=myblueborder,
fill=mybluefill,
line width=1.2pt,
align=center,
minimum height=1cm,
font=\sffamily
},
% Style for Arrows
myarrow/.style={
->,
>={Stealth[length=3mm, width=2mm]},
draw=black!80,
line width=1.2pt,
rounded corners=5pt
},
% Style for Background Dashed Circles
dashedloop/.style={
dashed,
draw=mygray,
line width=1pt
}
]
% --- Coordinate Layout ---
% Defining a grid relative to the center
% Left Loop (Green) Nodes
\node[greenbox, minimum width=3.5cm] (commerce) at (-3.5, 2) {Commerce Experiment};
\node[greenbox, minimum width=1.5cm] (raw) at (-6.5, 0) {Raw\\Logs};
\node[greenbox, minimum width=1.5cm] (features) at (-4, -2.5) {Features};
\node[greenbox, minimum width=2.5cm] (classification) at (-1, -0.5) {Classification\\Training A/H};
% Right Loop (Blue) Nodes
\node[bluebox, minimum width=2.5cm] (trainedpricing) at (2.5, 2) {Trained Pricing};
\node[bluebox, minimum width=2.5cm] (policy) at (5.5, 0) {Trained Pricing\\Policy};
\node[bluebox, minimum width=2.5cm] (rlgym) at (2.5, -2.2) {RL Gym\\Training};
% --- Background Dashed Loops ---
\begin{scope}[on background layer]
% Left Loop Circle
\draw[dashedloop] (-3.5, 0) ellipse (3.5cm and 2.8cm);
% Right Loop Circle
\draw[dashedloop] (3.5, 0) ellipse (3.5cm and 2.8cm);
\end{scope}
% --- Arrows: Loop One (Green) ---
% Commerce -> Raw Logs
\draw[myarrow] (commerce.west) to[out=180, in=90] (raw.north);
% Raw Logs -> Features
\draw[myarrow] (raw.south) to[out=270, in=180] (features.west);
% Features -> Classification
\draw[myarrow] (features.east) to[out=0, in=250] (classification.south);
% Classification -> Commerce (Closing the loop)
\draw[myarrow] (classification.north) to[out=110, in=0] (commerce.east);
% --- Arrows: Loop Two (Blue) ---
% Classification (Green) -> RL Gym (Blue) - Crossing over
\draw[myarrow] (classification.east) to[out=0, in=180] (rlgym.west);
% RL Gym -> Policy
\draw[myarrow] (rlgym.east) to[out=0, in=270] (policy.south);
% Policy -> Trained Pricing
\draw[myarrow] (policy.north) to[out=90, in=0] (trainedpricing.east);
% Trained Pricing -> Commerce (Crossing back)
\draw[myarrow] (trainedpricing.west) -- node[above, font=\sffamily\small, yshift=2pt] {New Pricing} (commerce.east);
% --- Text Labels ---
% Loop One Label
\node[font=\sffamily, align=center] at (-3.8, 0) {Loop One:\\Data \textit{(Online)}};
% Loop Two Label
\node[font=\sffamily, align=center] at (3.5, 0) {Loop Two:\\Defense Gym \textit{(Offline)}};
% Bottom Legend
\node[font=\sffamily\small] (taskA) at (-4, -4) {Dynamic Pricing Task A};
\node[font=\sffamily\small] (taskB) at (4, -4) {Dynamic Pricing Task B};
\node[font=\sffamily\small] (indep) at (0, -4) {Independent};
% Arrows for bottom legend
\draw[->, >=Stealth, thick, darkgray] (indep.west) -- (taskA.east);
\draw[->, >=Stealth, thick, darkgray] (indep.east) -- (taskB.west);
\end{tikzpicture}