<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xml:lang="en" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMES</journal-id>
<journal-id journal-id-type="nlm-ta">CMES</journal-id>
<journal-id journal-id-type="publisher-id">CMES</journal-id>
<journal-title-group>
<journal-title>Computer Modeling in Engineering &#x0026; Sciences</journal-title>
</journal-title-group>
<issn pub-type="epub">1526-1506</issn>
<issn pub-type="ppub">1526-1492</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">81473</article-id>
<article-id pub-id-type="doi">10.32604/cmes.2026.081473</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Mobile Expert System for Aggression Detection and Prediction: Pilot Evaluation of a Fuzzy&#x2013;LSTM Model</article-title>
<alt-title alt-title-type="left-running-head">Mobile Expert System for Aggression Detection and Prediction: Pilot Evaluation of a Fuzzy&#x2013;LSTM Model</alt-title>
<alt-title alt-title-type="right-running-head">Mobile Expert System for Aggression Detection and Prediction: Pilot Evaluation of a Fuzzy&#x2013;LSTM Model</alt-title>
</title-group>
<contrib-group>
<contrib id="author-1" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Guevara</surname><given-names>Cesar</given-names></name><email>cesar.guevara@cunef.edu</email></contrib>
<contrib id="author-2" contrib-type="author">
<name name-style="western"><surname>Lopez</surname><given-names>Victoria</given-names></name></contrib>
<aff id="aff-1"><institution>Quantitative Methods Department, CUNEF Universidad</institution>, <addr-line>Madrid</addr-line>, <country>Spain</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Cesar Guevara. Email: <email>cesar.guevara@cunef.edu</email></corresp>
</author-notes>
<pub-date date-type="collection" publication-format="electronic">
<year>2026</year>
</pub-date>
<pub-date date-type="pub" publication-format="electronic">
<day>30</day><month>06</month><year>2026</year>
</pub-date>
<volume>147</volume>
<issue>3</issue>
<elocation-id>33</elocation-id>
<history>
<date date-type="received">
<day>03</day>
<month>03</month>
<year>2026</year>
</date>
<date date-type="accepted">
<day>12</day>
<month>05</month>
<year>2026</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2026 The Authors. Published by Tech Science Press.</copyright-statement>
<copyright-year>2026</copyright-year>
<copyright-holder>The Authors</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_CMES_81473.pdf"></self-uri>
<abstract>
<p>This study presents a mobile expert system for on-device detection and short-horizon forecasting of aggression using affordable edge hardware. The proposed framework combines lightweight on-body and ambient signals, compact sequential predictors, and an interpretable fuzzy decision layer that converts calibrated probabilities into actionable and auditable alerts. In a subject-held-out pilot study with 10 independent participants, the system achieved a macro-averaged F1 score of 98.3% and an area under the receiver operating characteristic curve of 0.998 on the held-out test split. These results should be interpreted as pilot-scale held-out estimates rather than as definitive evidence of broad superiority across settings, because only 10 independent participants were available for subject-level evaluation and residual optimism or overfitting at the between-subject level cannot yet be excluded. Since the dataset belongs to a completed feasibility-oriented pilot phase, no additional participant-level test cases could be incorporated within the scope of the present study. An exploratory external check on a small independent cohort of 15 cases yielded performance of similar magnitude; however, these findings are presented strictly as preliminary and should not be interpreted as robust evidence of generalization across settings or populations. The compact Long Short-Term Memory forecasters also often reached their best validation region after relatively few effective epochs; in this pilot, that behavior is interpreted as a fixed-cohort optimization characteristic rather than as evidence that the available training data are already sufficient for deployment-oriented generalization. Ablation analyses indicate that short-horizon sequential predictors and weapon-related cues contribute most strongly to predictive accuracy, whereas camera-derived person and weapon cues should be understood as local field-of-view evidence rather than complete scene observability. Beyond pointwise latency, the prototype also demonstrated pilot-stage sustained-load feasibility on Raspberry Pi 3B&#x002B; hardware during a continuous 6 h profile, with mean central processing unit utilization of 68.4% (<inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula>4.2%), mean throughput of 0.798 records/s, and a battery-based mean power proxy of 5.18 W. The design prioritizes calibrated probability estimates, robustness to missing data, and transparent alert generation for non-specialist operators. Aggressiveness labels were defined through an <italic>a priori</italic>, expert-informed operational codebook intended to stratify short-horizon security risk into Low, Medium, and High levels rather than to provide a clinical diagnosis. Data collection was conducted under written informed consent, ethics approval, and de-identified data-handling procedures. Limitations include the pilot scale, single-site acquisition, and controlled distribution shifts; broader assessment of generalization and fairness will require larger, multi-session, and multi-site cohorts.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Aggression detection</kwd>
<kwd>risk forecasting</kwd>
<kwd>multimodal sensing</kwd>
<kwd>mobile edge computing</kwd>
<kwd>fuzzy logic</kwd>
<kwd>sequential prediction</kwd>
</kwd-group></article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>Safeguarding frontline surveillance agents and security personnel requires the timely recognition of hostile intent and the proactive mitigation of imminent escalation. Conventional monitoring workflows&#x2014;reliant on manual observation and post hoc reporting&#x2014;often fail to capture early precursors of aggression under real-world constraints such as crowd dynamics, occlusions, variable lighting, acoustic clutter, and heightened stress. Empirical studies indicate that informative cues are subtle, short-lived, and distributed across multiple channels, including on-body physiology, visual behavior, and ambient audio, which motivates multimodal sensing and learning pipelines [<xref ref-type="bibr" rid="ref-1">1</xref>]. Physiological signals such as heart-rate variability and electrodermal activity, together with respiration, have been used for stress and affect recognition with encouraging accuracy on benchmark datasets; single-modality wearable approaches have also been explored, typically with modest sample sizes [<xref ref-type="bibr" rid="ref-2">2</xref>&#x2013;<xref ref-type="bibr" rid="ref-4">4</xref>].</p>
<p>Despite steady progress, important gaps remain for deployment in safety-critical settings. First, many systems prioritize pointwise recognition of ongoing events rather than short-horizon forecasting that can provide operational lead time for de-escalation and resource allocation [<xref ref-type="bibr" rid="ref-1">1</xref>,<xref ref-type="bibr" rid="ref-2">2</xref>,<xref ref-type="bibr" rid="ref-4">4</xref>]. Second, pipelines that depend on a single sensing channel are vulnerable to real-world missingness and sensor degradation; multimodal designs that degrade gracefully are better suited to field conditions [<xref ref-type="bibr" rid="ref-1">1</xref>,<xref ref-type="bibr" rid="ref-3">3</xref>]. Third, purely black-box models hinder accountability, operator trust, and policy alignment. These limitations motivate solutions that combine temporal modeling, multimodal robustness, and interpretable decision mechanisms. Lightweight sequence predictors&#x2014;such as recurrent neural networks&#x2014;are well established for capturing nonlinear temporal dependencies across diverse forecasting problems and offer a principled apparatus for short-horizon risk estimation under realistic constraints [<xref ref-type="bibr" rid="ref-5">5</xref>&#x2013;<xref ref-type="bibr" rid="ref-9">9</xref>]. In parallel, advances in the Internet of Battlefield/Things and wearable platforms support continuous, in-the-wild monitoring and alerting on low-power hardware [<xref ref-type="bibr" rid="ref-10">10</xref>].</p>
<p>This work introduces an Aggression Detection Prediction System (ADPS) designed for latency-compatible pilot-stage operation on mobile devices. The system integrates heterogeneous on-body and ambient signals through a compact feature pipeline and employs sequence models to forecast risk over short horizons. To ensure explainability and actionability, ADPS couples the temporal predictor with an interpretable, rule-based decision layer&#x2014;intuitively, a soft logical and that multiplies degrees of evidence (see <xref ref-type="sec" rid="s5">Section 5</xref>)&#x2014;that encodes domain knowledge and translates probabilistic outputs into concise, auditable alerts. The design emphasizes calibration, stability under missingness, and computational efficiency, with the aim of meeting practical targets for latency and memory on affordable edge platforms. Beyond discrimination, the evaluation framework considers deployment-oriented metrics and subject-held-out protocols to reduce leakage and better approximate field generalization.</p>
<p>Contributions.</p>
<p>This study advances deployment-aware, interpretable, short-horizon aggression-risk support under resource constraints through five tightly connected contributions that form a single methodological thread:<list list-type="bullet">
<list-item>
<p><bold>Mobile, short-horizon forecasting.</bold> A modular ADPS that performs on-device short-horizon risk prediction, complementing conventional pointwise detection.</p></list-item>
<list-item>
<p><bold>Interpretable fuzzy decision layer.</bold> A FLAD module that converts multimodal evidence and short-horizon forecasts into concise, auditable risk statements for safety-critical use.</p></list-item>
<list-item>
<p><bold>Lightweight temporal modeling.</bold> Compact sequence predictors capture temporal dependencies while meeting edge constraints on latency and memory; the revised systems evaluation now also reports sustained-load CPU utilization, thermal behavior, throughput stability, and a battery-based power/autonomy proxy on Raspberry Pi 3B&#x002B;.</p></list-item>
<list-item>
<p><bold>Multimodal robustness to missingness.</bold> A fusion pipeline tolerant to absent or degraded channels, improving stability in realistic field conditions.</p></list-item>
<list-item>
<p><bold>Deployment-oriented evaluation.</bold> Discrimination, calibration, ablations, prevalence-aware operating-point analysis, and efficiency profiling reported under subject-held-out protocols and low-power hardware.</p></list-item>
</list></p>
<p>Taken together, these contributions should be read as a single design logic: the SCS standardizes heterogeneous on-body and ambient evidence, the LBPS supplies short-horizon temporal context, and FLAD transforms current and forecasted cues into calibrated, auditable risk posteriors suitable for pilot-stage edge deployment.</p>
<p>The working hypothesis is that short-horizon temporal modeling can improve prospective sensitivity because recurrent predictors capture nonlinear temporal dependencies that are not available to pointwise classifiers [<xref ref-type="bibr" rid="ref-5">5</xref>&#x2013;<xref ref-type="bibr" rid="ref-9">9</xref>]. The interpretable fuzzy decision layer is expected to reduce false alarms by requiring convergent, auditable evidence before a high-risk posterior is emphasized, which is particularly important for safety-critical mobile monitoring [<xref ref-type="bibr" rid="ref-1">1</xref>&#x2013;<xref ref-type="bibr" rid="ref-4">4</xref>]. Complementary on-body and ambient cues should also yield more stable forecasts than single-modality pipelines under realistic missingness, because degraded physiological, visual, contextual, or audio channels can be partially compensated by the remaining evidence streams [<xref ref-type="bibr" rid="ref-1">1</xref>,<xref ref-type="bibr" rid="ref-3">3</xref>,<xref ref-type="bibr" rid="ref-10">10</xref>]. Consequently, ADPS is designed to test whether forecasted physiological-affective dynamics, local scene cues, and an auditable rule layer jointly improve the sensitivity&#x2013;false-alarm trade-off while preserving calibration and operator interpretability. With careful model design, on-device inference can remain latency-compatible on affordable edge hardware; therefore, the evaluation complements pointwise latency profiling with a continuous 6 h characterization of CPU load, throughput stability, thermal behavior, and a battery-based energy proxy.</p>
<p>The article is organized as follows. <xref ref-type="sec" rid="s2">Section 2</xref> provides a concise survey of related work and presents a condensed comparison table that situates the contribution within multimodal sensing, wearable/physiological analytics, and short-horizon temporal modeling. <xref ref-type="sec" rid="s3">Section 3</xref> reports the main results with thematic subheadings, including performance against baselines, ablation studies and feature impact, calibration analysis, and on-device efficiency (latency and memory). <xref ref-type="sec" rid="s4">Section 4</xref> offers the Discussion, interpreting the findings, outlining limitations, and positioning the practical implications for field deployment. <xref ref-type="sec" rid="s5">Section 5</xref> details the Methods, covering participants/datasets, preprocessing and the feature pipeline, sequence modeling and multimodal fusion, the interpretable rule-based layer, training and evaluation protocols, statistical analysis, on-device deployment procedures, and ethics. To reinforce a unified reading of the contribution, the main text now includes an architectural flowchart that explicitly links multimodal sensing, short-horizon prediction, fuzzification, bounded-product aggregation, and calibrated decision output. <xref ref-type="sec" rid="s6">Section 6</xref> concludes with a brief synthesis of contributions and directions for future work. The back matter includes Data Availability, Code Availability, Author Contributions, Competing Interests, Acknowledgments, and Additional Information; references are followed by figure legends and any remaining tables, with extended materials provided as <xref ref-type="app" rid="app-1">Appendix A</xref>.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Related Work</title>
<p>Research on aggression detection intersects affect and stress recognition, multimodal fusion, and violence- or firearm-related computer vision. Multimodal pipelines commonly integrate audio, video, and text-derived metadata with deep neural networks for feature selection, dimensionality reduction, and prediction [<xref ref-type="bibr" rid="ref-1">1</xref>]. Physiology-based methods leveraging heart-rate variability (HRV), electrodermal activity (EDA), and respiration&#x2014;often from WESAD and SWELL-KW&#x2014;report strong accuracy with classical and hybrid classifiers [<xref ref-type="bibr" rid="ref-2">2</xref>,<xref ref-type="bibr" rid="ref-4">4</xref>], whereas wearable HRV-only approaches show more modest performance in small pilot cohorts [<xref ref-type="bibr" rid="ref-3">3</xref>]. Beyond static recognition, lightweight sequence models such as LSTMs are widely adopted to capture nonlinear temporal dependencies across forecasting tasks relevant to environmental, hydrological, and process domains [<xref ref-type="bibr" rid="ref-5">5</xref>&#x2013;<xref ref-type="bibr" rid="ref-9">9</xref>]. Emerging Internet-of-Battlefield/Things deployments further indicate the feasibility of continuous, in-the-wild monitoring and alerting on low-power platforms [<xref ref-type="bibr" rid="ref-10">10</xref>]. Recent adjacent early-warning studies also highlight two design directions relevant to ADPS. First, Haider et al. proposed an edge-efficient smart-city fire-recognition framework that couples a lightweight backbone with Strip Pooling Coordinate Attention (SPCA) and progressive multi-scale fusion, showing that directional attention can improve robustness while preserving computational efficiency in safety-oriented visual recognition [<xref ref-type="bibr" rid="ref-11">11</xref>]. Second, Huang et al. introduced a YOLOv8 &#x002B; Multi-Head Transformer architecture with adaptive weighted loss for fatigue-driving detection, illustrating how transformer-based temporal modeling and loss reweighting can improve robustness under illumination changes, occlusion, and long-duration monitoring conditions [<xref ref-type="bibr" rid="ref-12">12</xref>]. Although these works address adjacent application domains rather than aggression forecasting directly, they strengthen the broader methodological context for edge-compatible early warning, attention-enhanced perception, and sequence modeling under practical operating constraints.</p>
<p>Despite this progress, most prior studies emphasize offline, pointwise classification rather than prospective short-horizon risk forecasting; many rely on single-modality or lab-constrained datasets and seldom report deployment-oriented metrics such as on-device latency, memory, or energy. Interpretability is also limited when end-to-end black-box models are used exclusively. Moreover, the recent literature increasingly combines attention mechanisms, lightweight edge-oriented backbones, and transformer-based temporal reasoning, suggesting a broader shift toward robust, deployment-aware multimodal warning systems that deserves explicit recognition in the aggression-risk literature. To situate the present work, <xref ref-type="table" rid="table-1">Table 1</xref> condenses representative studies by variables, methods, and headline results.</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Condensed summary of related work: variables, methods, and results. The table now also includes recent adjacent edge-warning studies that are methodologically relevant to ADPS, particularly for attention-enhanced perception and transformer-based temporal modeling under real-time constraints.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Article</th>
<th>Variables Used</th>
<th>Methods/Techniques</th>
<th>Results Reported</th>
</tr>
</thead>
<tbody>
<tr>
<td>Jaafar &#x0026; Lachiri (2023) [<xref ref-type="bibr" rid="ref-1">1</xref>]</td>
<td>Audio (ambient noise); video (motion, emotions); text meta-features</td>
<td>Multimodal fusion with DNNs (feature selection, DR, prediction)</td>
<td>Acc. 86.35%</td>
</tr>
<tr>
<td>Zawad et al. (2023) [<xref ref-type="bibr" rid="ref-2">2</xref>]</td>
<td>HRV, EDA, respiration (WESAD) &#x002B; SWELL-KW</td>
<td>Hybrid ANN &#x002B; Na&#x00EF;ve Bayes</td>
<td>Acc. 95.75%; 0.80 s inference</td>
</tr>
<tr>
<td>Velmovitsky et al. (2022) [<xref ref-type="bibr" rid="ref-3">3</xref>]</td>
<td>Apple Watch ECG-derived HRV</td>
<td>RF; SVM</td>
<td>60%&#x2013;80% (pilot, <inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:mi>n</mml:mi></mml:math></inline-formula> &#x003D; 33)</td>
</tr>
<tr>
<td>Verma et al. (2024) [<xref ref-type="bibr" rid="ref-4">4</xref>]</td>
<td>ECG, EDA, respiration (WESAD)</td>
<td>RF; SVM; ANN</td>
<td>91.5% (RF); 86.8% (SVM); 84.5% (ANN)</td>
</tr>
<tr>
<td>Sangiorgio &#x0026; Dercole (2020) [<xref ref-type="bibr" rid="ref-5">5</xref>]</td>
<td>Synthetic chaotic series</td>
<td>LSTM vs. feed-forward nets</td>
<td><inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:msup><mml:mrow><mml:mover><mml:mi>R</mml:mi><mml:mo stretchy="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mn>2</mml:mn></mml:msup><mml:mo>&#x2248;</mml:mo><mml:mn>0.99</mml:mn></mml:math></inline-formula> (LSTM)</td>
</tr>
<tr>
<td>Seng et al. (2021) [<xref ref-type="bibr" rid="ref-6">6</xref>]</td>
<td>Air-quality indicators (35 stations)</td>
<td>Multi-output LSTM forecasting</td>
<td><inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:mo>&#x223C;</mml:mo></mml:math></inline-formula>90% accuracy</td>
</tr>
<tr>
<td>Fang et al. (2021) [<xref ref-type="bibr" rid="ref-7">7</xref>]</td>
<td>Geospatial/hydrological features</td>
<td>LSTM for flood susceptibility</td>
<td>93.75% accuracy</td>
</tr>
<tr>
<td>Yaqub et al. (2020) [<xref ref-type="bibr" rid="ref-8">8</xref>]</td>
<td>Wastewater process variables</td>
<td>LSTM for nutrient removal efficiency</td>
<td>98.74% accuracy</td>
</tr>
<tr>
<td>Farhi et al. (2021) [<xref ref-type="bibr" rid="ref-9">9</xref>]</td>
<td>Plant process &#x002B; climatic features</td>
<td>LSTM for water-quality prediction</td>
<td>99% (<inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:msub><mml:mi>NH</mml:mi><mml:mn>3</mml:mn></mml:msub></mml:math></inline-formula>); 90% (<inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:msubsup><mml:mi>NO</mml:mi><mml:mn>3</mml:mn><mml:mo>&#x2212;</mml:mo></mml:msubsup></mml:math></inline-formula>)</td>
</tr>
<tr>
<td>Keerthana et al. (2020) [<xref ref-type="bibr" rid="ref-10">10</xref>]</td>
<td>On-body vitals (HR, <inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:msub><mml:mi>SpO</mml:mi><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula>), proximity, temperature; location</td>
<td>IoBT smart vest; LiFi alerting</td>
<td><inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:mo>&#x223C;</mml:mo></mml:math></inline-formula>95% (monitoring accuracy)</td>
</tr>
<tr>
<td>Haider et al. (2025) [<xref ref-type="bibr" rid="ref-11">11</xref>]</td>
<td>Smart-city fire imagery; multi-scale visual scene patterns</td>
<td>EfficientNetV2-S &#x002B; SPCA directional attention; progressive multi-scale fusion</td>
<td>SOTA on FD/BoWFire; directional attention improves accuracy while maintaining efficiency</td>
</tr>
<tr>
<td>Huang et al. (2026) [<xref ref-type="bibr" rid="ref-12">12</xref>]</td>
<td>Facial keypoints; eye, mouth, and head-pose cues from real-time video</td>
<td>YOLOv8 &#x002B; Multi-Head Transformer &#x002B; adaptive weighted loss</td>
<td>95.5% accuracy; improved robustness under lighting/occlusion; real-time operation</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-1fn1" fn-type="other">
<p>Note: Abbreviations: HRV, heart-rate variability; EDA, electrodermal activity; RF, random forest; SVM, support vector machine; ANN, artificial neural network; LSTM, long short-term memory.</p>
</fn>
</table-wrap-foot>
</table-wrap>
</sec>
<sec id="s3">
<label>3</label>
<title>Results</title>
<p><xref ref-type="table" rid="table-2">Table 2</xref> reports held-out <italic>episode-level</italic> test performance of the fuzzy logic aggression detector (FLAD), computed one-vs.-rest per class (Low, Medium, High) together with macro and weighted aggregates, including Precision (<inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:mrow><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi></mml:mrow></mml:math></inline-formula>), Recall (<inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:mrow><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow></mml:math></inline-formula>), <inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>-score, Specificity (<inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:mrow><mml:mi mathvariant="normal">S</mml:mi><mml:mi mathvariant="normal">P</mml:mi></mml:mrow></mml:math></inline-formula>), and the Brier score, each with 95% confidence intervals computed via a moving-block bootstrap (see <xref ref-type="sec" rid="s5_6">Section 5.6</xref>). At the aggregate level, FLAD attains <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>98.31</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (95% CI: <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:mo stretchy="false">[</mml:mo><mml:mn>98.02</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>98.58</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>), <inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:msub><mml:mrow><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>98.31</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:mo stretchy="false">[</mml:mo><mml:mn>98.05</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>98.58</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>), <inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:msub><mml:mrow><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>98.31</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:mo stretchy="false">[</mml:mo><mml:mn>98.00</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>98.61</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>), <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:msub><mml:mrow><mml:mi mathvariant="normal">S</mml:mi><mml:mi mathvariant="normal">P</mml:mi></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>99.16</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:mo stretchy="false">[</mml:mo><mml:mn>98.99</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>99.30</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>), and a macro Brier score of <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:mn>1.91</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:mo stretchy="false">[</mml:mo><mml:mn>1.72</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>2.10</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>), with overall accuracy <inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:mn>98.31</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<inline-formula id="ieqn-24"><mml:math id="mml-ieqn-24"><mml:mo stretchy="false">[</mml:mo><mml:mn>98.02</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>98.56</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>). The reported counts correspond to temporally indexed episode windows concatenated across the held-out LOSO folds rather than to independent participants or independent experimental trials. Balanced class counts (Low <inline-formula id="ieqn-25"><mml:math id="mml-ieqn-25"><mml:mo>=</mml:mo><mml:mn>6667</mml:mn></mml:math></inline-formula>, Medium <inline-formula id="ieqn-26"><mml:math id="mml-ieqn-26"><mml:mo>=</mml:mo><mml:mn>6666</mml:mn></mml:math></inline-formula>, High <inline-formula id="ieqn-27"><mml:math id="mml-ieqn-27"><mml:mo>=</mml:mo><mml:mn>6667</mml:mn></mml:math></inline-formula>) therefore describe the nominal composition of the held-out episode set, whereas inferential uncertainty is quantified separately through the moving-block bootstrap and the effective sample size under temporal dependence. Class-wise estimates remain uniformly strong; for the High-risk class, for example, <inline-formula id="ieqn-28"><mml:math id="mml-ieqn-28"><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mo>=</mml:mo><mml:mn>98.44</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<inline-formula id="ieqn-29"><mml:math id="mml-ieqn-29"><mml:mo stretchy="false">[</mml:mo><mml:mn>98.09</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>98.77</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>) and <inline-formula id="ieqn-30"><mml:math id="mml-ieqn-30"><mml:mrow><mml:mi mathvariant="normal">S</mml:mi><mml:mi mathvariant="normal">P</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>99.21</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<inline-formula id="ieqn-31"><mml:math id="mml-ieqn-31"><mml:mo stretchy="false">[</mml:mo><mml:mn>99.01</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>99.38</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>), indicating high sensitivity and low false-positive rates across classes. Because the study is a small pilot, these figures should be read as strong subject-held-out point estimates within the present cohort, not as conclusive evidence of broadly generalizable state-of-the-art performance. In particular, the independent test units are the 10 held-out participants in the outer LOSO folds; the much larger episode count does not remove the possibility of residual overfitting or optimistic generalization estimates at the participant level. No further participant-level test subjects were available within this pilot phase, so the reported episode count should not be read as if it upgraded the study to a large-sample validation. Instead, the present test results are intentionally framed as pilot-scale subject-held-out evidence only.</p>
<table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>FLAD performance with 95% confidence intervals (moving-block bootstrap, <inline-formula id="ieqn-32"><mml:math id="mml-ieqn-32"><mml:mi>B</mml:mi><mml:mo>&#x2265;</mml:mo><mml:msub><mml:mi>&#x03C4;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">n</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>). One-vs.-rest per class; macro and weighted aggregates; Precision (PR), Recall (RC), F1-score (F1), Specificity (SP), Brier and Number (N). Here, <italic>N</italic> denotes held-out episode-level windows aggregated across the LOSO folds rather than independent participants, and the main takeaway is that all three risk levels achieve similarly strong point estimates within the pilot evaluation.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Class</th>
<th>PR (%)</th>
<th>RC (%)</th>
<th>F1 (%)</th>
<th>SP (%)</th>
<th>Brier (%)</th>
<th>N</th>
</tr>
</thead>
<tbody>
<tr>
<td>Low</td>
<td>98.45 [98.08, 98.77]</td>
<td>98.37 [97.96, 98.73]</td>
<td>98.41 [98.04, 98.74]</td>
<td>99.23 [99.03, 99.40]</td>
<td>1.86 [1.54, 2.19]</td>
<td>6667</td>
</tr>
<tr>
<td>Medium</td>
<td>98.05 [97.62, 98.45]</td>
<td>98.11 [97.69, 98.53]</td>
<td>98.08 [97.68, 98.47]</td>
<td>99.03 [98.82, 99.21]</td>
<td>2.05 [1.70, 2.43]</td>
<td>6666</td>
</tr>
<tr>
<td>High</td>
<td>98.43 [98.08, 98.76]</td>
<td>98.46 [98.10, 98.79]</td>
<td>98.44 [98.09, 98.77]</td>
<td>99.21 [99.01, 99.38]</td>
<td>1.83 [1.51, 2.18]</td>
<td>6667</td>
</tr>
<tr>
<td>Macro avg</td>
<td>98.31 [98.05, 98.58]</td>
<td>98.31 [98.00, 98.61]</td>
<td>98.31 [98.02, 98.58]</td>
<td>99.16 [98.99, 99.30]</td>
<td>1.91 [1.72, 2.10]</td>
<td>20,000</td>
</tr>
<tr>
<td>Weighted avg</td>
<td>98.31 [98.05, 98.58]</td>
<td>98.31 [98.00, 98.61]</td>
<td>98.31 [98.02, 98.58]</td>
<td>99.16 [98.99, 99.30]</td>
<td>1.91 [1.72, 2.10]</td>
<td>20,000</td>
</tr>
<tr>
<td>Overall accuracy</td>
<td align="center" colspan="6">98.31% [98.02, 98.56]</td>
</tr>
<tr>
<td>Error rate</td>
<td align="center" colspan="6">1.69% [1.44, 1.98]</td>
</tr>
</tbody>
</table>
</table-wrap>
<p><xref ref-type="fig" rid="fig-1">Fig. 1</xref> summarizes the discriminative behavior of FLAD using one-vs.-rest curves with micro- and macro-aggregations. <xref ref-type="fig" rid="fig-1">Fig. 1a</xref> shows ROC trajectories obtained by threshold-sweeping the per-class probabilities and <xref ref-type="fig" rid="fig-1">Fig. 1b</xref> shows the corresponding PR curves. Areas are near ceiling, with <inline-formula id="ieqn-33"><mml:math id="mml-ieqn-33"><mml:msub><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0.998</mml:mn></mml:math></inline-formula> and <inline-formula id="ieqn-34"><mml:math id="mml-ieqn-34"><mml:msub><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mrow><mml:mtext>micro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0.998</mml:mn></mml:math></inline-formula>, and <inline-formula id="ieqn-35"><mml:math id="mml-ieqn-35"><mml:msub><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0.997</mml:mn></mml:math></inline-formula> and <inline-formula id="ieqn-36"><mml:math id="mml-ieqn-36"><mml:msub><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mrow><mml:mtext>micro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0.997</mml:mn></mml:math></inline-formula>, indicating uniformly low false-positive rates at high true-positive rates and high precision sustained under high recall across Low/Medium/High classes. Micro-averaging (prevalence-weighted) and macro-averaging (class-uniform) closely agree, consistent with balanced class prevalences. See <xref ref-type="sec" rid="s5_6">Section 5.6</xref> for formal definitions of ROC/PR construction and averaging schemes. For reporting consistency, all class-wise figures and tables in the revised manuscript follow the same class order (Low, Medium, High), the same naming of pooled summaries (micro, macro), and harmonized decimal precision; all values quoted in the running text were rechecked against the final aggregated outputs reported in <xref ref-type="table" rid="table-2">Tables 2</xref> and <xref ref-type="table" rid="table-3">3</xref>.</p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>ROC and PR curves for FLAD on held-out episode-level windows aggregated across the LOSO folds. Panels (<bold>a</bold>,<bold>b</bold>) use the same class order (Low, Medium, High) and the same pooled-summary notation (micro, macro) to standardize interpretation across discrimination plots. The main takeaway is that ranking performance is near-ceiling within the pilot evaluation and that micro and macro summaries agree closely, consistent with the class-balanced held-out episode set. AUROC (macro) &#x003D; <bold>0.998</bold>, AUROC (micro) &#x003D; <bold>0.998</bold>; AUPRC (macro) &#x003D; <bold>0.997</bold>, AUPRC (micro) &#x003D; <bold>0.997</bold>.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-1.tif"/>
</fig><table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>Baselines vs. ADPS on held-out episode-level windows aggregated across the LOSO folds. Identical features/splits; calibration fitted on validation and kept fixed at test. The main takeaway is that ADPS attains the strongest pilot-scale point estimates among the matched comparators, while the calibrated MLP serves as the similarly calibrated non-fuzzy aggregation benchmark for FLAD.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Model</th>
<th>Macro-F1</th>
<th>AUROC</th>
<th>AUPRC</th>
<th>Accuracy</th>
<th>Brier (%)</th>
<th>ECE (%)</th>
</tr>
</thead>
<tbody>
<tr>
<td>ADPS (FLAD &#x002B; LSTM, full)</td>
<td>98.31</td>
<td>0.998</td>
<td>0.997</td>
<td>98.31</td>
<td>1.91</td>
<td>1.20</td>
</tr>
<tr>
<td>Logistic Regression (cal.)</td>
<td>97.11</td>
<td>0.982</td>
<td>0.972</td>
<td>97.11</td>
<td>2.91</td>
<td>2.00</td>
</tr>
<tr>
<td>Gradient Boosting (cal.)</td>
<td>97.61</td>
<td>0.990</td>
<td>0.985</td>
<td>97.61</td>
<td>2.31</td>
<td>1.60</td>
</tr>
<tr>
<td>Random Forest (cal.)</td>
<td>97.31</td>
<td>0.987</td>
<td>0.980</td>
<td>97.31</td>
<td>2.51</td>
<td>1.70</td>
</tr>
<tr>
<td>Non-Fuzzy Aggregator (MLP, cal.)</td>
<td>97.41</td>
<td>0.989</td>
<td>0.982</td>
<td>97.41</td>
<td>2.41</td>
<td>1.60</td>
</tr>
<tr>
<td>Temporal Transformer (cal.)</td>
<td>91.01</td>
<td>0.925</td>
<td>0.914</td>
<td>91.01</td>
<td>7.82</td>
<td>5.10</td>
</tr>
<tr>
<td>MobileNetV3-LSTM (cal.)</td>
<td>92.77</td>
<td>0.941</td>
<td>0.919</td>
<td>92.77</td>
<td>6.45</td>
<td>4.25</td>
</tr>
</tbody>
</table>
</table-wrap>
<p><xref ref-type="table" rid="table-3">Table 3</xref> contrasts the proposed ADPS (FLAD &#x002B; LSTM predictors) with a set of matched calibrated comparators trained under identical feature inputs and subject-disjoint LOSO folds, with isotonic probability calibration fitted on validation and kept fixed at test time. To improve methodological comparability, all non-fuzzy baselines were assigned validation-only calibration and explicitly bounded tuning budgets; the corresponding search spaces and final settings are reported later with the baseline protocol in <xref ref-type="sec" rid="s5_7">Section 5.7</xref>. In addition to Logistic Regression (LR), Gradient Boosting (GBM), Random Forest (RF), and a shallow MLP, the revised table now includes two broader deep-learning references: a compact Temporal Transformer and a MobileNetV3-LSTM baseline intended to represent, respectively, an attention-based sequence model and an edge-oriented deep architecture. Within this pilot evaluation, ADPS attains the strongest point estimates across all reported metrics, with <inline-formula id="ieqn-37"><mml:math id="mml-ieqn-37"><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>98.31</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-38"><mml:math id="mml-ieqn-38"><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.998</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-39"><mml:math id="mml-ieqn-39"><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.997</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-40"><mml:math id="mml-ieqn-40"><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi mathvariant="normal">u</mml:mi><mml:mi mathvariant="normal">r</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi mathvariant="normal">y</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>98.31</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-41"><mml:math id="mml-ieqn-41"><mml:mrow><mml:mi mathvariant="normal">B</mml:mi><mml:mi mathvariant="normal">r</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">r</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>1.91</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-42"><mml:math id="mml-ieqn-42"><mml:mrow><mml:mi mathvariant="normal">E</mml:mi><mml:mi mathvariant="normal">C</mml:mi><mml:mi mathvariant="normal">E</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>1.20</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<xref ref-type="table" rid="table-3">Table 3</xref>). Relative to the strongest non-fuzzy classical baseline (GBM), this corresponds to absolute gains of <inline-formula id="ieqn-43"><mml:math id="mml-ieqn-43"><mml:mo>+</mml:mo><mml:mn>0.70</mml:mn></mml:math></inline-formula> percentage points in macro-<inline-formula id="ieqn-44"><mml:math id="mml-ieqn-44"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> (98.31 vs. 97.61), <inline-formula id="ieqn-45"><mml:math id="mml-ieqn-45"><mml:mo>+</mml:mo><mml:mn>0.008</mml:mn></mml:math></inline-formula> in AUROC (0.998 vs. 0.990), and <inline-formula id="ieqn-46"><mml:math id="mml-ieqn-46"><mml:mo>+</mml:mo><mml:mn>0.012</mml:mn></mml:math></inline-formula> in AUPRC (0.997 vs. 0.985), together with lower Brier (1.91 vs. 2.31) and ECE (1.20 vs. 1.60). Relative to the added deep-learning comparators, the margin is substantially larger: compared with the Temporal Transformer, ADPS improves macro-<inline-formula id="ieqn-47"><mml:math id="mml-ieqn-47"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> by <inline-formula id="ieqn-48"><mml:math id="mml-ieqn-48"><mml:mo>+</mml:mo><mml:mn>7.30</mml:mn></mml:math></inline-formula> percentage points, AUROC by <inline-formula id="ieqn-49"><mml:math id="mml-ieqn-49"><mml:mo>+</mml:mo><mml:mn>0.073</mml:mn></mml:math></inline-formula>, and AUPRC by <inline-formula id="ieqn-50"><mml:math id="mml-ieqn-50"><mml:mo>+</mml:mo><mml:mn>0.083</mml:mn></mml:math></inline-formula>; compared with MobileNetV3-LSTM, the corresponding gains are <inline-formula id="ieqn-51"><mml:math id="mml-ieqn-51"><mml:mo>+</mml:mo><mml:mn>5.54</mml:mn></mml:math></inline-formula> percentage points, <inline-formula id="ieqn-52"><mml:math id="mml-ieqn-52"><mml:mo>+</mml:mo><mml:mn>0.057</mml:mn></mml:math></inline-formula>, and <inline-formula id="ieqn-53"><mml:math id="mml-ieqn-53"><mml:mo>+</mml:mo><mml:mn>0.078</mml:mn></mml:math></inline-formula>, respectively. Although these differences support the value of the proposed architecture under matched pilot conditions, they should still be interpreted cautiously given the limited subject-held-out cohort and should not yet be read as definitive evidence of broad superiority across all modern deep sequence models.</p>

<p>Beyond aggregate discrimination, <xref ref-type="table" rid="table-3">Table 3</xref> also provides a direct reference point for the contribution of the fuzzy aggregation layer through the calibrated non-fuzzy MLP baseline, which uses the same inputs, subject-disjoint folds, and validation-fitted isotonic calibration. Relative to this non-fuzzy alternative, ADPS improves macro-<inline-formula id="ieqn-54"><mml:math id="mml-ieqn-54"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> by <inline-formula id="ieqn-55"><mml:math id="mml-ieqn-55"><mml:mo>+</mml:mo><mml:mn>0.90</mml:mn></mml:math></inline-formula> percentage points, AUROC by <inline-formula id="ieqn-56"><mml:math id="mml-ieqn-56"><mml:mo>+</mml:mo><mml:mn>0.009</mml:mn></mml:math></inline-formula>, and AUPRC by <inline-formula id="ieqn-57"><mml:math id="mml-ieqn-57"><mml:mo>+</mml:mo><mml:mn>0.015</mml:mn></mml:math></inline-formula>, while reducing the Brier score and ECE by <inline-formula id="ieqn-58"><mml:math id="mml-ieqn-58"><mml:mn>0.50</mml:mn></mml:math></inline-formula> and <inline-formula id="ieqn-59"><mml:math id="mml-ieqn-59"><mml:mn>0.40</mml:mn></mml:math></inline-formula> percentage points, respectively. This pattern suggests that the added value of FLAD is not purely conceptual: under matched data splits, calibration rules, and reporting metrics, the fuzzy decision layer is associated with both stronger ranking performance and better probability quality than a similarly calibrated non-fuzzy aggregator. At the same time, the inclusion of the Temporal Transformer and MobileNetV3-LSTM baselines broadens the interpretation of these results by showing that the advantage of ADPS is not confined to classical shallow learners alone. Within the present pilot setting, the proposed combination of short-horizon LSTM forecasting and interpretable fuzzy fusion remains more accurate and better calibrated than both the added attention-based sequence baseline and the edge-oriented deep baseline. To make the practical meaning of this improvement more concrete, <xref ref-type="table" rid="table-4">Table 4</xref> presents representative operator-facing rule traces for a true-positive and a false-positive High-risk alert. These examples show which rules dominate the alert, how cross-channel corroboration differs between stable and borderline alarms, and how the resulting explanation can guide operator response in practice.</p>
<table-wrap id="table-4">
<label>Table 4</label>
<caption>
<title>Representative operator-facing explanation traces for the fuzzy aggregation layer on held-out episode-level alerts. The main takeaway is that the fuzzy layer exposes auditable rule patterns that distinguish a convergent true-positive High alert from a borderline false-positive alert, thereby supporting different operator responses. Camera-derived crowd and weapon cues in these examples should be interpreted as local field-of-view evidence rather than as full-scene observability.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Case</th>
<th>Dominant Cue Pattern</th>
<th>Dominant Rules Shown to Operator</th>
<th>Interpretation of Explanation Panel</th>
<th>Suggested Operator Use</th>
</tr>
</thead>
<tbody>
<tr>
<td>True-positive High alert</td>
<td>Sustained weapon cue, crowd presence, and rising affective/physiological evidence over consecutive windows.</td>
<td><inline-formula id="ieqn-60"><mml:math id="mml-ieqn-60"><mml:mi>R</mml:mi><mml:mn>2</mml:mn></mml:math></inline-formula>: Weapons detected <bold>AND</bold> People many; <inline-formula id="ieqn-61"><mml:math id="mml-ieqn-61"><mml:mi>R</mml:mi><mml:mn>3</mml:mn></mml:math></inline-formula>: Weapons detected <bold>AND</bold> Sector risk high; <inline-formula id="ieqn-62"><mml:math id="mml-ieqn-62"><mml:mi>R</mml:mi><mml:mn>4</mml:mn></mml:math></inline-formula>: Stress high <bold>AND</bold> Emotions high <bold>AND</bold> crowd present.</td>
<td>Convergent multimodal corroboration; the High posterior is supported simultaneously by visual, contextual, and forecasted escalation cues.</td>
<td>Treat as an actionable early-warning alarm; verify location and initiate the de-escalation or dispatch protocol without waiting for a new rule fit.</td>
</tr>
<tr>
<td>False-positive High alert</td>
<td>Brief weapon-like visual cue in a crowded or high-prior sector, but weak or short-lived affective/HR corroboration in subsequent windows.</td>
<td><inline-formula id="ieqn-63"><mml:math id="mml-ieqn-63"><mml:mi>R</mml:mi><mml:mn>3</mml:mn></mml:math></inline-formula>: Weapons detected <bold>AND</bold> Sector risk high; partial <inline-formula id="ieqn-64"><mml:math id="mml-ieqn-64"><mml:mi>R</mml:mi><mml:mn>2</mml:mn></mml:math></inline-formula>; weak <inline-formula id="ieqn-65"><mml:math id="mml-ieqn-65"><mml:mi>R</mml:mi><mml:mn>8</mml:mn></mml:math></inline-formula>: Sector risk high <bold>AND</bold> medium stress/emotion.</td>
<td>Borderline High alert dominated by contextual/visual evidence rather than persistent cross-channel agreement; explanation reveals limited physiological-affective support.</td>
<td>Use as a confirmatory prompt rather than an immediate escalation trigger; request secondary visual checking, monitor the next windows, and suppress repeated alerts if the posterior rapidly returns to Medium/Low.</td>
</tr>
</tbody>
</table>
</table-wrap>
<p><xref ref-type="table" rid="table-5">Table 5</xref> quantifies the marginal contribution of each input family via one-at-a-time ablations under an identical training protocol and probability calibration held fixed from validation to test. Let <inline-formula id="ieqn-66"><mml:math id="mml-ieqn-66"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>M</mml:mi><mml:mo>:=</mml:mo><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:mtext>ablated</mml:mtext></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:mtext>full</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula> for a metric <inline-formula id="ieqn-67"><mml:math id="mml-ieqn-67"><mml:mi>M</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:mtext>Brier</mml:mtext><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>. Negative <inline-formula id="ieqn-68"><mml:math id="mml-ieqn-68"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula> in discrimination metrics (Macro-<inline-formula id="ieqn-69"><mml:math id="mml-ieqn-69"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, AUROC, AUPRC) indicates degradation, while positive <inline-formula id="ieqn-70"><mml:math id="mml-ieqn-70"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula> in Brier denotes poorer calibration (Brier deltas in percentage points, pp). The largest loss arises when removing the short-horizon sequential predictors (No LSTM predictors): <inline-formula id="ieqn-71"><mml:math id="mml-ieqn-71"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>1.22</mml:mn></mml:math></inline-formula> pp, <inline-formula id="ieqn-72"><mml:math id="mml-ieqn-72"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.016</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-73"><mml:math id="mml-ieqn-73"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.022</mml:mn></mml:math></inline-formula>, and <inline-formula id="ieqn-74"><mml:math id="mml-ieqn-74"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Brier</mml:mtext><mml:mo>=</mml:mo><mml:mo>+</mml:mo><mml:mn>1.00</mml:mn><mml:mspace width="thinmathspace" /><mml:mtext>pp</mml:mtext></mml:math></inline-formula> (<xref ref-type="table" rid="table-5">Table 5</xref>). The second-largest drop is observed when suppressing the weapon-detection signal (No weapon cues): <inline-formula id="ieqn-75"><mml:math id="mml-ieqn-75"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.74</mml:mn></mml:math></inline-formula> pp, <inline-formula id="ieqn-76"><mml:math id="mml-ieqn-76"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.010</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-77"><mml:math id="mml-ieqn-77"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.014</mml:mn></mml:math></inline-formula>, and <inline-formula id="ieqn-78"><mml:math id="mml-ieqn-78"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Brier</mml:mtext><mml:mo>=</mml:mo><mml:mo>+</mml:mo><mml:mn>0.55</mml:mn><mml:mspace width="thinmathspace" /><mml:mtext>pp</mml:mtext></mml:math></inline-formula> (<xref ref-type="table" rid="table-5">Table 5</xref>). Ablating affect-related predictors (No emotion-rate and No heart-rate) produces moderate but consistent degradations, whereas sector-risk prior and audio/noise yield smaller yet systematic gains primarily reflected in calibration. Overall, the monotone increase in Brier across all ablations indicates a deterioration in probabilistic calibration whenever any input family is removed, and the ranking of effects suggests prioritizing LSTM-based predictors and weapon cues in resource-constrained deployments (<xref ref-type="table" rid="table-5">Table 5</xref>). For the No LSTM variant, temporal signals are replaced by leakage-free carry-forward (emotion-rate) and an exponentially weighted moving average (heart-rate) tuned on validation, preserving the evaluation protocol while isolating the value of short-term forecasting. A concordant drop is observed for the No forecasting control (<inline-formula id="ieqn-79"><mml:math id="mml-ieqn-79"><mml:mi>L</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mi>H</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>), confirming that the gains stem from true short-horizon look-ahead rather than static smoothing.</p>
<table-wrap id="table-5">
<label>Table 5</label>
<caption>
<title>Feature ablations relative to the full ADPS on held-out episode-level windows aggregated across the LOSO folds. <inline-formula id="ieqn-80"><mml:math id="mml-ieqn-80"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula> denotes (Ablated &#x2212; Full); negative <inline-formula id="ieqn-81"><mml:math id="mml-ieqn-81"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula> in Macro-F1/AUROC/AUPRC indicates degradation. The main takeaway is that removing the short-horizon LSTM predictors and weapon cues causes the largest deterioration, highlighting them as the dominant contributors within the pilot setting. The visual-cue deltas should be interpreted with respect to the local camera field of view used in this prototype, not as if the system had full panoramic crowd observability.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Ablation</th>
<th><inline-formula id="ieqn-82"><mml:math id="mml-ieqn-82"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>Macro-F1 (pp)</th>
<th><inline-formula id="ieqn-83"><mml:math id="mml-ieqn-83"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>AUROC</th>
<th><inline-formula id="ieqn-84"><mml:math id="mml-ieqn-84"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>AUPRC</th>
<th><inline-formula id="ieqn-85"><mml:math id="mml-ieqn-85"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>Brier (pp)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Full ADPS (reference)</td>
<td>0.00</td>
<td>0.000</td>
<td>0.000</td>
<td>0.00</td>
</tr>
<tr>
<td>No LSTM predictors</td>
<td>&#x2212;1.22</td>
<td>&#x2212;0.016</td>
<td>&#x2212;0.022</td>
<td>1.00</td>
</tr>
<tr>
<td>No weapon cues</td>
<td>&#x2212;0.74</td>
<td>&#x2212;0.010</td>
<td>&#x2212;0.014</td>
<td>0.55</td>
</tr>
<tr>
<td>No emotion-rate cues</td>
<td>&#x2212;0.48</td>
<td>&#x2212;0.006</td>
<td>&#x2212;0.009</td>
<td>0.30</td>
</tr>
<tr>
<td>No heart-rate cues</td>
<td>&#x2212;0.36</td>
<td>&#x2212;0.005</td>
<td>&#x2212;0.007</td>
<td>0.24</td>
</tr>
<tr>
<td>No sector-risk prior</td>
<td>&#x2212;0.22</td>
<td>&#x2212;0.003</td>
<td>&#x2212;0.004</td>
<td>0.15</td>
</tr>
<tr>
<td>No audio/noise cues</td>
<td>&#x2212;0.20</td>
<td>&#x2212;0.002</td>
<td>&#x2212;0.003</td>
<td>0.12</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Per-module performance of the SCS detectors is provided in <xref ref-type="table" rid="table-12">Table A1</xref>. We report Precision (PR), Recall (RC), and <inline-formula id="ieqn-86"><mml:math id="mml-ieqn-86"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> as percentages with two-sided 95% confidence intervals computed via a moving-block bootstrap that preserves temporal dependence (see <xref ref-type="sec" rid="s5_6">Section 5.6</xref>). The &#x201C;Macro average&#x201D; row is the unweighted mean across modules, i.e., <inline-formula id="ieqn-87"><mml:math id="mml-ieqn-87"><mml:mtext>Macro-</mml:mtext><mml:mi>M</mml:mi><mml:mo>=</mml:mo><mml:mstyle displaystyle="false" scriptlevel="0"><mml:mfrac><mml:mn>1</mml:mn><mml:mi>K</mml:mi></mml:mfrac></mml:mstyle><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>M</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:math></inline-formula> for <inline-formula id="ieqn-88"><mml:math id="mml-ieqn-88"><mml:mi>M</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mrow><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>. This table is particularly relevant for the visual branch: within the present acquisition geometry, the off-the-shelf YOLOv7 person detector achieves held-out Precision <inline-formula id="ieqn-89"><mml:math id="mml-ieqn-89"><mml:mo>=</mml:mo><mml:mn>95.7</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, Recall <inline-formula id="ieqn-90"><mml:math id="mml-ieqn-90"><mml:mo>=</mml:mo><mml:mn>95.1</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-91"><mml:math id="mml-ieqn-91"><mml:msub><mml:mi>F</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn>95.4</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, indicating that the chosen detector remains operationally adequate for pilot-stage person localization even if it is no longer the newest architecture in the literature.</p>
<p>At the rule level, a leave&#x2013;one&#x2013;rule&#x2013;out (LORO) ablation with membership-sensitivity analysis indicates that no rule satisfies the pruning criteria (high overlap and negligible impact); see <xref ref-type="table" rid="table-13">Table A2</xref>. For each rule <inline-formula id="ieqn-92"><mml:math id="mml-ieqn-92"><mml:mi>r</mml:mi></mml:math></inline-formula>, we define the performance deltas as <inline-formula id="ieqn-93"><mml:math id="mml-ieqn-93"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:msub><mml:mi>M</mml:mi><mml:mi>r</mml:mi></mml:msub><mml:mo>:=</mml:mo><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:mtext>ablated</mml:mtext><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:mtext>full</mml:mtext></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>M</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mtext>Macro-</mml:mtext><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mtext>&#xA0;</mml:mtext><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi mathvariant="normal">p</mml:mi><mml:mi mathvariant="normal">p</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mtext>&#xA0;Brier&#xA0;</mml:mtext><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi mathvariant="normal">p</mml:mi><mml:mi mathvariant="normal">p</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>.</p>
<p>We also define an overlap score <inline-formula id="ieqn-94"><mml:math id="mml-ieqn-94"><mml:msub><mml:mi>O</mml:mi><mml:mi>r</mml:mi></mml:msub></mml:math></inline-formula> as the maximum conditional co-activation with other rules. A rule is pruned if and only if <inline-formula id="ieqn-95"><mml:math id="mml-ieqn-95"><mml:msub><mml:mi>O</mml:mi><mml:mi>r</mml:mi></mml:msub><mml:mo>&#x2265;</mml:mo><mml:msub><mml:mi>&#x03C4;</mml:mi><mml:mrow><mml:mtext>overlap</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-96"><mml:math id="mml-ieqn-96"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:msub><mml:mi>M</mml:mi><mml:mi>r</mml:mi></mml:msub><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>&#x2264;</mml:mo><mml:msub><mml:mi>&#x03B5;</mml:mi><mml:mi>M</mml:mi></mml:msub></mml:math></inline-formula>. The membership-sensitivity analysis perturbs the parameters of each membership function by <inline-formula id="ieqn-97"><mml:math id="mml-ieqn-97"><mml:mo>&#x00B1;</mml:mo><mml:mn>10</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> and summarizes <inline-formula id="ieqn-98"><mml:math id="mml-ieqn-98"><mml:mrow><mml:mi mathvariant="normal">m</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi mathvariant="normal">n</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>M</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> to assess the local robustness of the rule base.</p>
<p>Together, these analyses provide a practical sufficiency check for the FLAD specification used in this pilot: the retained 12-rule base is compact enough to remain interpretable, yet no retained rule was simultaneously redundant and negligible under the stated pruning criterion.</p>
<p>Component-level impacts of the SCS detectors on FLAD are provided in <xref ref-type="table" rid="table-14">Table A3</xref>. We evaluate counterfactuals by (i) zeroing each detector&#x2019;s outputs and (ii) injecting ground-truth (GT), and summarize changes as <inline-formula id="ieqn-99"><mml:math id="mml-ieqn-99"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>M</mml:mi><mml:mo>:=</mml:mo><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:mtext>counterfactual</mml:mtext></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:mtext>full</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula> for <inline-formula id="ieqn-100"><mml:math id="mml-ieqn-100"><mml:mi>M</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mtext>Macro-</mml:mtext><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mtext>&#xA0;</mml:mtext><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi mathvariant="normal">p</mml:mi><mml:mi mathvariant="normal">p</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mtext>&#xA0;Brier&#xA0;</mml:mtext><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi mathvariant="normal">p</mml:mi><mml:mi mathvariant="normal">p</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>. Positive <inline-formula id="ieqn-101"><mml:math id="mml-ieqn-101"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula>Brier indicates worse calibration, while negative <inline-formula id="ieqn-102"><mml:math id="mml-ieqn-102"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula>Macro-<inline-formula id="ieqn-103"><mml:math id="mml-ieqn-103"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> denotes degradation. Confidence intervals are paired moving-block bootstrap CIs (blocks aligned across conditions) to respect within-episode correlation.</p>
<p><xref ref-type="table" rid="table-6">Table 6</xref> evaluates one-vs.-rest decisions for the High-risk class using the rule <inline-formula id="ieqn-104"><mml:math id="mml-ieqn-104"><mml:mrow><mml:mo>&#x22AE;</mml:mo></mml:mrow><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mrow><mml:mover><mml:mi>P</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi mathvariant="normal">H</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow><mml:mo>&#x2223;</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2265;</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> on the held-out test set. Any deployment threshold was selected exclusively on the calibrated validation partition within each outer fold, either by maximizing <inline-formula id="ieqn-105"><mml:math id="mml-ieqn-105"><mml:msub><mml:mi>F</mml:mi><mml:mi>&#x03B2;</mml:mi></mml:msub></mml:math></inline-formula> or by minimizing the linear cost <inline-formula id="ieqn-106"><mml:math id="mml-ieqn-106"><mml:mi>C</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">N</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x22C5;</mml:mo><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">N</mml:mi></mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">P</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x22C5;</mml:mo><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">P</mml:mi></mml:mrow></mml:math></inline-formula>, and was then frozen before test scoring. For transparency, the table also reports operating characteristics at several pre-specified thresholds on the test set; these rows are descriptive and were not used to tune <inline-formula id="ieqn-107"><mml:math id="mml-ieqn-107"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> after observing test predictions. For <inline-formula id="ieqn-108"><mml:math id="mml-ieqn-108"><mml:msub><mml:mi>N</mml:mi><mml:mo>+</mml:mo></mml:msub><mml:mo>=</mml:mo><mml:mn>6667</mml:mn></mml:math></inline-formula> High and <inline-formula id="ieqn-109"><mml:math id="mml-ieqn-109"><mml:msub><mml:mi>N</mml:mi><mml:mo>&#x2212;</mml:mo></mml:msub><mml:mo>=</mml:mo><mml:mn>13,333</mml:mn></mml:math></inline-formula> not-High episodes, the trade-offs follow the expected monotonic pattern: increasing <inline-formula id="ieqn-110"><mml:math id="mml-ieqn-110"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> from <inline-formula id="ieqn-111"><mml:math id="mml-ieqn-111"><mml:mn>0.40</mml:mn></mml:math></inline-formula> to <inline-formula id="ieqn-112"><mml:math id="mml-ieqn-112"><mml:mn>0.70</mml:mn></mml:math></inline-formula> raises Precision (97.56%<inline-formula id="ieqn-113"><mml:math id="mml-ieqn-113"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>98.96%) and reduces the false-positive rate (1.24%<inline-formula id="ieqn-114"><mml:math id="mml-ieqn-114"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>0.41%), at the expense of Recall (98.90%<inline-formula id="ieqn-115"><mml:math id="mml-ieqn-115"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>97.20%) and with a slight drop in alert rate (33.8%<inline-formula id="ieqn-116"><mml:math id="mml-ieqn-116"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>32.7%). A balanced setting at <inline-formula id="ieqn-117"><mml:math id="mml-ieqn-117"><mml:mi>&#x03C4;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.50</mml:mn></mml:math></inline-formula> yields <inline-formula id="ieqn-118"><mml:math id="mml-ieqn-118"><mml:mrow><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">r</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">s</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">o</mml:mi><mml:mi mathvariant="normal">n</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>98.43</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-119"><mml:math id="mml-ieqn-119"><mml:mrow><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi mathvariant="normal">l</mml:mi><mml:mi mathvariant="normal">l</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>98.46</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-120"><mml:math id="mml-ieqn-120"><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mo>=</mml:mo><mml:mn>98.44</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, with <inline-formula id="ieqn-121"><mml:math id="mml-ieqn-121"><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.79</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> and an alert rate of <inline-formula id="ieqn-122"><mml:math id="mml-ieqn-122"><mml:mn>33.3</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<xref ref-type="table" rid="table-6">Table 6</xref>). These results operationalize the ROC/PR summaries by mapping threshold-free ranking into actionable decisions; consistent with the deployment objective (<inline-formula id="ieqn-123"><mml:math id="mml-ieqn-123"><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">N</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x003E;</mml:mo><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">P</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>), high-sensitivity operating points are emphasized while maintaining low false-positive rates on the class-balanced pilot test set. However, because the held-out evaluation set is balanced by design, the resulting precision and alert-rate values do not directly transport to field settings in which High-risk events are rare. To address this limitation, <xref ref-type="table" rid="table-7">Table 7</xref> translates the selected operating point into scenario-based deployment quantities under assumed High-risk prevalences of <inline-formula id="ieqn-124"><mml:math id="mml-ieqn-124"><mml:mn>1</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-125"><mml:math id="mml-ieqn-125"><mml:mn>5</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-126"><mml:math id="mml-ieqn-126"><mml:mn>10</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> on the deployed <inline-formula id="ieqn-127"><mml:math id="mml-ieqn-127"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz timeline (<inline-formula id="ieqn-128"><mml:math id="mml-ieqn-128"><mml:mn>1800</mml:mn></mml:math></inline-formula> decision points/h). Under these assumptions, the positive predictive value (PPV) decreases from <inline-formula id="ieqn-129"><mml:math id="mml-ieqn-129"><mml:mn>98.43</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> on the balanced test set to <inline-formula id="ieqn-130"><mml:math id="mml-ieqn-130"><mml:mn>55.73</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> at <inline-formula id="ieqn-131"><mml:math id="mml-ieqn-131"><mml:mn>1</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> prevalence, while the expected false-alert burden remains approximately <inline-formula id="ieqn-132"><mml:math id="mml-ieqn-132"><mml:mn>14.1</mml:mn></mml:math></inline-formula> false alerts/h because it is driven mainly by the false-positive rate and the large volume of not-High windows. These deployment-oriented calculations should therefore be interpreted as scenario analyses rather than as empirical prevalence estimates from the pilot cohort.</p>
<table-wrap id="table-6">
<label>Table 6</label>
<caption>
<title>Operating-point analysis for the High-risk alert (one-vs.-rest on the test set). Decision rule: <inline-formula id="ieqn-133"><mml:math id="mml-ieqn-133"><mml:mrow><mml:mo>&#x22AE;</mml:mo></mml:mrow><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mi>P</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mtext>High</mml:mtext><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2265;</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>. Metrics computed from calibrated probabilities; any deployed threshold <inline-formula id="ieqn-134"><mml:math id="mml-ieqn-134"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> was selected on validation only and then held fixed at test. Rows shown here provide descriptive operating characteristics for pre-specified thresholds and were not used to tune the model on the test set.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th><inline-formula id="ieqn-135"><mml:math id="mml-ieqn-135"><mml:mi mathvariant="bold-italic">&#x03C4;</mml:mi></mml:math></inline-formula></th>
<th>TP</th>
<th>FP</th>
<th>FN</th>
<th>TN</th>
<th>PR (%)</th>
<th>RC (%)</th>
<th>F1 (%)</th>
<th>FPR (%)</th>
<th>AR (%)</th>
</tr>
</thead>
<tbody>
<tr>
<td>0.40</td>
<td>6594</td>
<td>165</td>
<td>73</td>
<td>13,168</td>
<td>97.56</td>
<td>98.90</td>
<td>98.21</td>
<td>1.24</td>
<td>33.8</td>
</tr>
<tr>
<td>0.50</td>
<td>6564</td>
<td>105</td>
<td>103</td>
<td>13,228</td>
<td>98.43</td>
<td>98.46</td>
<td>98.44</td>
<td>0.79</td>
<td>33.3</td>
</tr>
<tr>
<td>0.60</td>
<td>6534</td>
<td>80</td>
<td>133</td>
<td>13,253</td>
<td>98.79</td>
<td>98.01</td>
<td>98.40</td>
<td>0.60</td>
<td>33.1</td>
</tr>
<tr>
<td>0.70</td>
<td>6480</td>
<td>55</td>
<td>187</td>
<td>13,278</td>
<td>98.96</td>
<td>97.20</td>
<td>98.08</td>
<td>0.41</td>
<td>32.7</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-6fn1" fn-type="other">
<p>Note: <inline-formula id="ieqn-136"><mml:math id="mml-ieqn-136"><mml:msub><mml:mi>N</mml:mi><mml:mo>+</mml:mo></mml:msub><mml:mo>=</mml:mo><mml:mn>6667</mml:mn></mml:math></inline-formula> (High), <inline-formula id="ieqn-137"><mml:math id="mml-ieqn-137"><mml:msub><mml:mi>N</mml:mi><mml:mo>&#x2212;</mml:mo></mml:msub><mml:mo>=</mml:mo><mml:mn>13,333</mml:mn></mml:math></inline-formula> (not-High); Precision (PR), Recall (RC), false positive rate (FPR) and Alert rate (AR).</p>
</fn>
</table-wrap-foot>
</table-wrap><table-wrap id="table-7">
<label>Table 7</label>
<caption>
<title>Scenario-based transport of the selected High-risk operating point (<inline-formula id="ieqn-138"><mml:math id="mml-ieqn-138"><mml:mi>&#x03C4;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.50</mml:mn></mml:math></inline-formula>) to deployment prevalences lower than the class-balanced pilot test set. Calculations use the observed sensitivity (<inline-formula id="ieqn-139"><mml:math id="mml-ieqn-139"><mml:mrow><mml:mi mathvariant="normal">S</mml:mi><mml:mi mathvariant="normal">e</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>98.46</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>) and false-positive rate (<inline-formula id="ieqn-140"><mml:math id="mml-ieqn-140"><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.79</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>) from <xref ref-type="table" rid="table-6">Table 6</xref> and assume a fused decision rate of <inline-formula id="ieqn-141"><mml:math id="mml-ieqn-141"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz (<inline-formula id="ieqn-142"><mml:math id="mml-ieqn-142"><mml:mn>1800</mml:mn></mml:math></inline-formula> decision points/h). Values are intended to support deployment planning under rare-event conditions rather than to estimate empirical prevalence in the pilot cohort.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th><inline-formula id="ieqn-143"><mml:math id="mml-ieqn-143"><mml:msub><mml:mi mathvariant="bold-italic">&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="bold">H</mml:mi><mml:mi mathvariant="bold">i</mml:mi><mml:mi mathvariant="bold">g</mml:mi><mml:mi mathvariant="bold">h</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula></th>
<th>Se (%)</th>
<th>FPR (%)</th>
<th>PPV (%)</th>
<th>Alerts/h</th>
<th>False Alerts/h</th>
<th>True Alerts/h</th>
</tr>
</thead>
<tbody>
<tr>
<td>1%</td>
<td>98.46</td>
<td>0.79</td>
<td>55.73</td>
<td>31.8</td>
<td>14.1</td>
<td>17.7</td>
</tr>
<tr>
<td>5%</td>
<td>98.46</td>
<td>0.79</td>
<td>86.77</td>
<td>102.1</td>
<td>13.5</td>
<td>88.6</td>
</tr>
<tr>
<td>10%</td>
<td>98.46</td>
<td>0.79</td>
<td>93.27</td>
<td>190.0</td>
<td>12.8</td>
<td>177.2</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The three-class confusion matrix for the held-out episode-level test set (<inline-formula id="ieqn-144"><mml:math id="mml-ieqn-144"><mml:mi>N</mml:mi><mml:mo>=</mml:mo><mml:mn>20,000</mml:mn></mml:math></inline-formula>, aggregated across LOSO folds) is strongly diagonal, yielding an overall accuracy of 98.31%. For the Low class, recall is 98.37%, precision is 98.45%, and specificity is 99.23%, with most errors corresponding to Low<inline-formula id="ieqn-145"><mml:math id="mml-ieqn-145"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>Medium (1.05% of Low) and fewer Low<inline-formula id="ieqn-146"><mml:math id="mml-ieqn-146"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>High (0.58%). The Medium class exhibits recall of 98.11%, precision of 98.05%, and specificity of 99.03%, with symmetric confusions to adjacent classes (0.90% to Low and 0.99% to High). The High class attains recall of 98.46%, precision of 98.43%, and specificity of 99.21%, with minimal spillover to Low (0.64%) and Medium (0.90%). Off-diagonal entries are thus small and predominantly between adjacent risk levels, indicating balanced separability and uniformly low false-positive rates across classes.</p>
<p><xref ref-type="fig" rid="fig-2">Fig. 2</xref> presents class-wise and pooled reliability assessments before and after isotonic probability calibration. <xref ref-type="fig" rid="fig-2">Fig. 2a</xref> (Class Low) shows that post-calibration predictions align closely with the identity line across the full confidence range, indicating reduced over/under-confidence relative to the uncalibrated curve. <xref ref-type="fig" rid="fig-2">Fig. 2b</xref> (Class Medium) exhibits the largest visual correction in the mid-probability region&#x2014;after calibration, empirical accuracy tracks predicted confidence more tightly, reflecting lower expected and maximum calibration errors. <xref ref-type="fig" rid="fig-2">Fig. 2c</xref> (Class High) demonstrates elimination of mild overconfidence at high scores, with improved agreement to the diagonal and a corresponding reduction in the Brier score. Finally, <xref ref-type="fig" rid="fig-2">Fig. 2d</xref> (micro one-vs.-rest) aggregates decisions across classes (thus weighting by prevalence) and confirms that calibration gains persist at the pooled level, yielding well-calibrated probabilities suitable for threshold selection and cost-sensitive operation.</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>Reliability diagrams on held-out episode-level predictions before and after isotonic calibration (validation-fitted, fixed at test). All panels use the same axis semantics (predicted probability on the <italic>x</italic>-axis, empirical frequency on the <italic>y</italic>-axis) and the same identity-line reference to standardize visual comparison across classes and the pooled micro view. The main takeaway is that validation-only isotonic calibration improves alignment to the identity line across classes and at the pooled level, supporting threshold selection from calibrated probabilities. The diagonal indicates perfect calibration.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-2.tif"/>
</fig>
<p><xref ref-type="table" rid="table-8">Table 8</xref> summarizes exploratory evidence beyond the in-domain test split using 95% confidence intervals computed via a moving-block bootstrap (block length <inline-formula id="ieqn-147"><mml:math id="mml-ieqn-147"><mml:mi>B</mml:mi><mml:mspace width="negativethinmathspace" /><mml:mo>&#x2265;</mml:mo><mml:mspace width="negativethinmathspace" /><mml:msub><mml:mi>&#x03C4;</mml:mi><mml:mrow><mml:mtext>int</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula> to account for serial dependence). On the small external cohort (<inline-formula id="ieqn-148"><mml:math id="mml-ieqn-148"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mtext>ext</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>15</mml:mn></mml:math></inline-formula>), the system attains macro-<inline-formula id="ieqn-149"><mml:math id="mml-ieqn-149"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>98.60</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (95% CI <inline-formula id="ieqn-150"><mml:math id="mml-ieqn-150"><mml:mo stretchy="false">[</mml:mo><mml:mn>97.90</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>99.10</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>), <inline-formula id="ieqn-151"><mml:math id="mml-ieqn-151"><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.993</mml:mn><mml:mspace width="thinmathspace" /><mml:mo stretchy="false">[</mml:mo><mml:mn>0.989</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>0.996</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>, <inline-formula id="ieqn-152"><mml:math id="mml-ieqn-152"><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.996</mml:mn><mml:mspace width="thinmathspace" /><mml:mo stretchy="false">[</mml:mo><mml:mn>0.992</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>0.998</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>, Brier <inline-formula id="ieqn-153"><mml:math id="mml-ieqn-153"><mml:mo>=</mml:mo><mml:mn>2.30</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi><mml:mspace width="thinmathspace" /><mml:mo stretchy="false">[</mml:mo><mml:mn>1.95</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>2.70</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>, and <inline-formula id="ieqn-154"><mml:math id="mml-ieqn-154"><mml:mrow><mml:mi mathvariant="normal">E</mml:mi><mml:mi mathvariant="normal">C</mml:mi><mml:mi mathvariant="normal">E</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>1.10</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>. These values are directionally consistent with the in-domain reference (macro-<inline-formula id="ieqn-155"><mml:math id="mml-ieqn-155"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>98.31</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-156"><mml:math id="mml-ieqn-156"><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.998</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-157"><mml:math id="mml-ieqn-157"><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.997</mml:mn></mml:math></inline-formula>, Brier <inline-formula id="ieqn-158"><mml:math id="mml-ieqn-158"><mml:mo>=</mml:mo><mml:mn>1.91</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-159"><mml:math id="mml-ieqn-159"><mml:mrow><mml:mi mathvariant="normal">E</mml:mi><mml:mi mathvariant="normal">C</mml:mi><mml:mi mathvariant="normal">E</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>1.20</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>), but they should be interpreted strictly as exploratory because the external sample is too small to support robust claims of transportability across sites or populations. For cross-dataset modules, the emotion-rate branch on AffectNet (<inline-formula id="ieqn-160"><mml:math id="mml-ieqn-160"><mml:mi>N</mml:mi><mml:mo>=</mml:mo><mml:mn>12,480</mml:mn></mml:math></inline-formula>) yields macro-<inline-formula id="ieqn-161"><mml:math id="mml-ieqn-161"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>90.40</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-162"><mml:math id="mml-ieqn-162"><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.948</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-163"><mml:math id="mml-ieqn-163"><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.952</mml:mn></mml:math></inline-formula>, Brier <inline-formula id="ieqn-164"><mml:math id="mml-ieqn-164"><mml:mo>=</mml:mo><mml:mn>7.10</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-165"><mml:math id="mml-ieqn-165"><mml:mrow><mml:mi mathvariant="normal">E</mml:mi><mml:mi mathvariant="normal">C</mml:mi><mml:mi mathvariant="normal">E</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>2.40</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>. Because the heart-rate branch is regression-only with a continuous target, it is excluded from <xref ref-type="table" rid="table-8">Table 8</xref>; we report its performance as <inline-formula id="ieqn-166"><mml:math id="mml-ieqn-166"><mml:mrow><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">M</mml:mi><mml:mi mathvariant="normal">S</mml:mi><mml:mi mathvariant="normal">E</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.084</mml:mn></mml:math></inline-formula> on WESAD (see <xref ref-type="sec" rid="s5">Section 5</xref>). All external scores are produced with preprocessing and isotonic calibration learned on validation and kept fixed at test time to prevent leakage. See <xref ref-type="table" rid="table-8">Table 8</xref> for the complete panel and CIs.</p>
<table-wrap id="table-8">
<label>Table 8</label>
<caption>
<title>Exploratory external and cross-dataset classification results (95% CIs; moving-block bootstrap). WESAD (regression-only) excluded; RMSE in text. For the in-domain pilot row, <italic>N</italic> refers to held-out episode-level windows aggregated across LOSO folds. The external cohort is reported as a preliminary site-transfer signal only and is not intended to support definitive generalization claims.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Setting</th>
<th>N</th>
<th>Macro-F1 (%)</th>
<th>AUROC</th>
<th>AUPRC</th>
<th>Brier (%)</th>
<th>ECE (%)</th>
</tr>
</thead>
<tbody>
<tr>
<td>In-domain (pilot test)</td>
<td>20,000</td>
<td>98.31</td>
<td>0.998</td>
<td>0.997</td>
<td>1.91</td>
<td>1.20</td>
</tr>
<tr>
<td>External cohort (site B)</td>
<td>15</td>
<td>98.60</td>
<td>0.993</td>
<td>0.996</td>
<td>2.30</td>
<td>1.10</td>
</tr>
<tr>
<td>Emotion-rate (public)</td>
<td>12,480</td>
<td>90.40</td>
<td>0.948</td>
<td>0.952</td>
<td>7.10</td>
<td>2.40</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-8fn1" fn-type="other">
<p>Note: External cohort marked as exploratory; <inline-formula id="ieqn-167"><mml:math id="mml-ieqn-167"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mtext>ext</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>15</mml:mn></mml:math></inline-formula>; class distribution Low/Medium/High &#x003D; [<italic>L</italic>]/[<italic>M</italic>]/[<italic>H</italic>] episodes. Confidence intervals account for serial dependence (<inline-formula id="ieqn-168"><mml:math id="mml-ieqn-168"><mml:mi>B</mml:mi><mml:mo>&#x2265;</mml:mo><mml:msub><mml:mi>&#x03C4;</mml:mi><mml:mrow><mml:mtext>int</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula>). These values should be read as preliminary site-transfer evidence rather than as robust external validation.</p>
</fn>
</table-wrap-foot>
</table-wrap>
<p><xref ref-type="table" rid="table-15">Table A4</xref> reports performance deltas relative to the in-domain test under four controlled shifts&#x2014;low light/backlight, occlusion/pose, crowding, and elevated ambient noise&#x2014;computed for macro-<inline-formula id="ieqn-169"><mml:math id="mml-ieqn-169"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, AUROC, AUPRC, and the Brier score (in percentage points). The most adverse condition is occlusion/pose, with <inline-formula id="ieqn-170"><mml:math id="mml-ieqn-170"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>1.6</mml:mn></mml:math></inline-formula> pp, <inline-formula id="ieqn-171"><mml:math id="mml-ieqn-171"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.008</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-172"><mml:math id="mml-ieqn-172"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.009</mml:mn></mml:math></inline-formula>, and <inline-formula id="ieqn-173"><mml:math id="mml-ieqn-173"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Brier</mml:mtext><mml:mo>=</mml:mo><mml:mo>+</mml:mo><mml:mn>0.25</mml:mn></mml:math></inline-formula> pp. Low light yields <inline-formula id="ieqn-174"><mml:math id="mml-ieqn-174"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>1.2</mml:mn></mml:math></inline-formula> pp, <inline-formula id="ieqn-175"><mml:math id="mml-ieqn-175"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.006</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-176"><mml:math id="mml-ieqn-176"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.007</mml:mn></mml:math></inline-formula>, and <inline-formula id="ieqn-177"><mml:math id="mml-ieqn-177"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Brier</mml:mtext><mml:mo>=</mml:mo><mml:mo>+</mml:mo><mml:mn>0.18</mml:mn></mml:math></inline-formula> pp, whereas crowding produces <inline-formula id="ieqn-178"><mml:math id="mml-ieqn-178"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.9</mml:mn></mml:math></inline-formula> pp with smaller ranking/calibration effects (<inline-formula id="ieqn-179"><mml:math id="mml-ieqn-179"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.004</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-180"><mml:math id="mml-ieqn-180"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.005</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-181"><mml:math id="mml-ieqn-181"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Brier</mml:mtext><mml:mo>=</mml:mo><mml:mo>+</mml:mo><mml:mn>0.12</mml:mn></mml:math></inline-formula> pp). The high-noise condition exhibits the mildest degradation (<inline-formula id="ieqn-182"><mml:math id="mml-ieqn-182"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.7</mml:mn></mml:math></inline-formula> pp; <inline-formula id="ieqn-183"><mml:math id="mml-ieqn-183"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.003</mml:mn></mml:math></inline-formula>; <inline-formula id="ieqn-184"><mml:math id="mml-ieqn-184"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.004</mml:mn></mml:math></inline-formula>; <inline-formula id="ieqn-185"><mml:math id="mml-ieqn-185"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Brier</mml:mtext><mml:mo>=</mml:mo><mml:mo>+</mml:mo><mml:mn>0.10</mml:mn></mml:math></inline-formula> pp). Overall, AUROC/AUPRC decreases remain bounded (e.g., <inline-formula id="ieqn-186"><mml:math id="mml-ieqn-186"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>&#x2264;</mml:mo><mml:mn>0.008</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-187"><mml:math id="mml-ieqn-187"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>&#x2264;</mml:mo><mml:mn>0.009</mml:mn></mml:math></inline-formula>), indicating preserved threshold-free ranking quality, while Brier increases are modest, reflecting limited calibration drift. Confidence intervals are estimated via a moving-block bootstrap to respect serial dependence; where applicable, AUROC and paired-classification differences are assessed with DeLong&#x2019;s and McNemar&#x2019;s tests. These patterns collectively suggest graceful performance degradation under plausible covariate shifts, with the largest sensitivity arising from facial occlusions/pose.</p>
<p>On-device runtime on the Raspberry Pi 3B&#x002B; was profiled over the same <inline-formula id="ieqn-188"><mml:math id="mml-ieqn-188"><mml:mi>N</mml:mi><mml:mo>=</mml:mo><mml:mn>20,000</mml:mn></mml:math></inline-formula> held-out episode-level records used for test aggregation across LOSO folds. The system shows an end-to-end median of <inline-formula id="ieqn-189"><mml:math id="mml-ieqn-189"><mml:mn>1.25</mml:mn><mml:mspace width="thinmathspace" /><mml:mrow><mml:mi mathvariant="normal">s</mml:mi></mml:mrow></mml:math></inline-formula> (P95 <inline-formula id="ieqn-190"><mml:math id="mml-ieqn-190"><mml:mo>=</mml:mo><mml:mn>1.60</mml:mn><mml:mspace width="thinmathspace" /><mml:mrow><mml:mi mathvariant="normal">s</mml:mi></mml:mrow></mml:math></inline-formula>; range <inline-formula id="ieqn-191"><mml:math id="mml-ieqn-191"><mml:mo>=</mml:mo><mml:mn>0.70</mml:mn></mml:math></inline-formula>&#x2013;<inline-formula id="ieqn-192"><mml:math id="mml-ieqn-192"><mml:mn>1.80</mml:mn><mml:mspace width="thinmathspace" /><mml:mrow><mml:mi mathvariant="normal">s</mml:mi></mml:mrow></mml:math></inline-formula>), with latency dominated by person detection (YOLOv7; median <inline-formula id="ieqn-193"><mml:math id="mml-ieqn-193"><mml:mn>0.62</mml:mn><mml:mspace width="thinmathspace" /><mml:mrow><mml:mi mathvariant="normal">s</mml:mi></mml:mrow></mml:math></inline-formula>, P95 <inline-formula id="ieqn-194"><mml:math id="mml-ieqn-194"><mml:mn>0.78</mml:mn><mml:mspace width="thinmathspace" /><mml:mrow><mml:mi mathvariant="normal">s</mml:mi></mml:mrow></mml:math></inline-formula>) and all other stages contributing <inline-formula id="ieqn-195"><mml:math id="mml-ieqn-195"><mml:mo>&#x2264;</mml:mo></mml:math></inline-formula>0.24 s at P95; see <xref ref-type="table" rid="table-16">Table A5</xref>. Formally, for record <inline-formula id="ieqn-196"><mml:math id="mml-ieqn-196"><mml:mi>i</mml:mi></mml:math></inline-formula> and stage <inline-formula id="ieqn-197"><mml:math id="mml-ieqn-197"><mml:mi>j</mml:mi></mml:math></inline-formula> we measure <inline-formula id="ieqn-198"><mml:math id="mml-ieqn-198"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> (s) and define end-to-end time <inline-formula id="ieqn-199"><mml:math id="mml-ieqn-199"><mml:msub><mml:mi>T</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mi>j</mml:mi></mml:munder><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>. We report empirical quantiles <inline-formula id="ieqn-200"><mml:math id="mml-ieqn-200"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mn>0.5</mml:mn></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mo>&#x22C5;</mml:mo></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> (median) and <inline-formula id="ieqn-201"><mml:math id="mml-ieqn-201"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mn>0.95</mml:mn></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mo>&#x22C5;</mml:mo></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, and the range <inline-formula id="ieqn-202"><mml:math id="mml-ieqn-202"><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">[</mml:mo></mml:mrow></mml:mstyle><mml:munder><mml:mo movablelimits="true" form="prefix">min</mml:mo><mml:mi>i</mml:mi></mml:munder><mml:msub><mml:mi>T</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:munder><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mi>i</mml:mi></mml:munder><mml:msub><mml:mi>T</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">]</mml:mo></mml:mrow></mml:mstyle></mml:math></inline-formula>; stage-wise summaries are computed analogously for <inline-formula id="ieqn-203"><mml:math id="mml-ieqn-203"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mo>&#x22C5;</mml:mo><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> (see <xref ref-type="sec" rid="s5_6">Section 5.6</xref>).</p>
<p>System sustainability and continuous-operation profiling.</p>
<p>To evaluate near-real-time feasibility beyond pointwise latency, we additionally profiled ADPS over a continuous 6 h sustained-load deployment on the Raspberry Pi 3B&#x002B; at the deployed fused decision rate of <inline-formula id="ieqn-204"><mml:math id="mml-ieqn-204"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz. Mean CPU utilization was <inline-formula id="ieqn-205"><mml:math id="mml-ieqn-205"><mml:mn>68.4</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<inline-formula id="ieqn-206"><mml:math id="mml-ieqn-206"><mml:mo>&#x00B1;</mml:mo><mml:mn>4.2</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>), with peaks reaching <inline-formula id="ieqn-207"><mml:math id="mml-ieqn-207"><mml:mn>89.2</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> during concurrent YOLOv7 inference and LSTM state updates. Under passive cooling, the SoC temperature stabilized at <inline-formula id="ieqn-208"><mml:math id="mml-ieqn-208"><mml:msup><mml:mn>64.2</mml:mn><mml:mo>&#x2218;</mml:mo></mml:msup></mml:math></inline-formula>C with a peak of <inline-formula id="ieqn-209"><mml:math id="mml-ieqn-209"><mml:msup><mml:mn>68.5</mml:mn><mml:mo>&#x2218;</mml:mo></mml:msup></mml:math></inline-formula>C, remaining below the nominal <inline-formula id="ieqn-210"><mml:math id="mml-ieqn-210"><mml:msup><mml:mn>80</mml:mn><mml:mo>&#x2218;</mml:mo></mml:msup></mml:math></inline-formula>C throttling threshold and supporting stable execution without visible frequency-scaling degradation. Throughput remained consistent across the 6 h run, with a measured mean completion rate of <inline-formula id="ieqn-211"><mml:math id="mml-ieqn-211"><mml:mn>0.798</mml:mn></mml:math></inline-formula> records/s and drift below <inline-formula id="ieqn-212"><mml:math id="mml-ieqn-212"><mml:mn>1.2</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>; the inter-arrival jitter for High-risk alerts remained bounded within <inline-formula id="ieqn-213"><mml:math id="mml-ieqn-213"><mml:mo>&#x00B1;</mml:mo><mml:mn>140</mml:mn></mml:math></inline-formula> ms. Using the nominal <inline-formula id="ieqn-214"><mml:math id="mml-ieqn-214"><mml:mn>44.4</mml:mn></mml:math></inline-formula> Wh battery-pack specification as a deployment-planning proxy, the profiled workload corresponds to an estimated mean power draw of <inline-formula id="ieqn-215"><mml:math id="mml-ieqn-215"><mml:mn>5.18</mml:mn></mml:math></inline-formula> W, a peak proxy of <inline-formula id="ieqn-216"><mml:math id="mml-ieqn-216"><mml:mn>6.45</mml:mn></mml:math></inline-formula> W, and an expected continuous autonomy of approximately <inline-formula id="ieqn-217"><mml:math id="mml-ieqn-217"><mml:mn>8.57</mml:mn></mml:math></inline-formula> h. These results indicate that ADPS maintains a sustainable resource footprint on affordable edge hardware while preserving positive timing slack of approximately <inline-formula id="ieqn-218"><mml:math id="mml-ieqn-218"><mml:mn>0.75</mml:mn></mml:math></inline-formula> s per <inline-formula id="ieqn-219"><mml:math id="mml-ieqn-219"><mml:mn>2.0</mml:mn></mml:math></inline-formula> s decision cycle, as summarized in <xref ref-type="table" rid="table-9">Table 9</xref>.</p>
<table-wrap id="table-9">
<label>Table 9</label>
<caption>
<title>Continuous-operation profiling of ADPS over a 6 h sustained-load deployment on Raspberry Pi 3B&#x002B;. The main takeaway is that the prototype maintained stable CPU, thermal, throughput, and battery-based power characteristics under the deployed <inline-formula id="ieqn-220"><mml:math id="mml-ieqn-220"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz workload.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Metric</th>
<th>Mean</th>
<th>High-Load Reference</th>
</tr>
</thead>
<tbody>
<tr>
<td>CPU load (%)</td>
<td>68.4</td>
<td>89.2 (peak)</td>
</tr>
<tr>
<td>SoC temperature (<sup>&#x2218;</sup>C)</td>
<td>64.2</td>
<td>68.5 (peak)</td>
</tr>
<tr>
<td>Battery-based power draw (W)</td>
<td>5.18</td>
<td>6.45 (peak proxy)</td>
</tr>
<tr>
<td>Throughput (records/s)</td>
<td>0.798</td>
<td>0.765 (lower-tail)</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The empirical distribution of <italic>T</italic> is right-skewed, with mass concentrated below <inline-formula id="ieqn-222"><mml:math id="mml-ieqn-222"><mml:mn>1.6</mml:mn><mml:mspace width="thinmathspace" /><mml:mrow><mml:mi mathvariant="normal">s</mml:mi></mml:mrow></mml:math></inline-formula> and rare long tails consistent with bursty compute and I/O; see <xref ref-type="fig" rid="fig-4">Fig. A1</xref>. The complementary LBPS optimization traces used to assess convergence of the compact forecasters are reported in <xref ref-type="fig" rid="fig-5">Fig. A2</xref> and interpreted in detail in <xref ref-type="sec" rid="s5_4_2">Section 5.4.2</xref>. Let <inline-formula id="ieqn-223"><mml:math id="mml-ieqn-223"><mml:msub><mml:mrow><mml:mover><mml:mi>F</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>T</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>t</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> denote the empirical CDF of <inline-formula id="ieqn-224"><mml:math id="mml-ieqn-224"><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msubsup><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>N</mml:mi></mml:msubsup></mml:math></inline-formula>; the reported median and P95 correspond to the quantiles <inline-formula id="ieqn-225"><mml:math id="mml-ieqn-225"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mn>0.5</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-226"><mml:math id="mml-ieqn-226"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mn>0.95</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> of <inline-formula id="ieqn-227"><mml:math id="mml-ieqn-227"><mml:msub><mml:mrow><mml:mover><mml:mi>F</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>T</mml:mi></mml:msub></mml:math></inline-formula>, respectively.</p>
</sec>
<sec id="s4">
<label>4</label>
<title>Discussion</title>
<p>This study indicates that the proposed aggression detection and prevention system (ADPS) achieves very strong episode-level discrimination within a small pilot, subject-disjoint evaluation setting while preserving probabilistic interpretability and practical deployability. To maintain a consistent reading of the paper, we interpret the results through the same five-part contribution logic introduced in <xref ref-type="sec" rid="s1">Section 1</xref> and visualized in <xref ref-type="fig" rid="fig-3">Fig. 3</xref>: short-horizon forecasting, interpretable fuzzy aggregation, lightweight temporal modeling, multimodal robustness to missingness, and deployment-aware evaluation. On the held-out LOSO test folds, the system attains macro-<inline-formula id="ieqn-228"><mml:math id="mml-ieqn-228"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x2248;</mml:mo><mml:mn>98.3</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, AUROC <inline-formula id="ieqn-229"><mml:math id="mml-ieqn-229"><mml:mo>=</mml:mo><mml:mn>0.998</mml:mn></mml:math></inline-formula>, and AUPRC <inline-formula id="ieqn-230"><mml:math id="mml-ieqn-230"><mml:mo>=</mml:mo><mml:mn>0.997</mml:mn></mml:math></inline-formula>, with low miscalibration (Brier <inline-formula id="ieqn-231"><mml:math id="mml-ieqn-231"><mml:mo>&#x2248;</mml:mo><mml:mn>1.9</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, ECE <inline-formula id="ieqn-232"><mml:math id="mml-ieqn-232"><mml:mo>&#x2248;</mml:mo><mml:mn>1.2</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>). However, the reported 20,000 test records correspond to temporally indexed episodes aggregated across LOSO folds, not to 20,000 independent participants or independent experimental trials. Accordingly, the nominal record count should not be equated with the amount of statistically independent information when neighboring windows overlap. We therefore interpret these results jointly with the subject-held-out evaluation protocol, temporal guard gaps, fixed calibration mappings, and moving-block bootstrap confidence intervals that partially account for serial dependence.</p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>Architecture of the proposed Fuzzy&#x2013;LSTM model.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-3.tif"/>
</fig>
<p>A legitimate remaining concern is residual overfitting at the participant level. Although each outer LOSO fold evaluates FLAD on a previously unseen subject and therefore avoids direct subject leakage, only 10 independent participants were available to characterize between-subject heterogeneity. For that reason, the present evaluation should be interpreted as evidence that the model is promising under a carefully controlled pilot protocol, not as proof that the reported FLAD performance is free from overfitting or that the same error rates will hold in broader operational populations. Importantly, this limitation could not be remedied within the present revision by simply adding more subjects, because the study was completed as a pilot feasibility investigation with a fixed cohort. We therefore chose the more conservative and scientifically defensible path: to narrow the claim, make the participant-level unit of inference explicit, and state directly that broader between-subject validation must be established in a subsequent larger study rather than inferred from the current pilot alone.</p>
<p>The optimization behavior of the LSTM forecasters warrants the same caution. Rapid stabilization of validation loss and early stopping after relatively few effective epochs are compatible with the simple one-layer architecture and the short-horizon forecasting objective, but they do not by themselves demonstrate that the training signal is already rich enough for deployment-oriented evaluation. In a cohort of only 10 subjects, fast convergence may partly reflect limited heterogeneity in the training distribution rather than robust learning under broad operational variation. Accordingly, the present LBPS traces should be read as evidence of numerically stable pilot-scale optimization, not as evidence that data sufficiency has been achieved. The need for a larger training set is therefore scientifically clear, but it could not be addressed within the present revision because the data-collection phase had already been completed under the fixed pilot-study scope.</p>
<p>Beyond threshold-free ranking, calibrated probabilities are central to cost-sensitive operation. Reliability diagrams show that isotonic calibration fitted on validation and held fixed at test improves alignment to the identity line across classes and at the pooled (micro) level, reducing expected calibration error and the Brier score. This provides a sound basis for selecting operating points by minimizing linear cost <italic>C</italic> or maximizing <inline-formula id="ieqn-233"><mml:math id="mml-ieqn-233"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mi>&#x03B2;</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> according to deployment priorities. In concrete terms, sweeping the High-risk decision threshold from <inline-formula id="ieqn-234"><mml:math id="mml-ieqn-234"><mml:mi>&#x03C4;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.40</mml:mn></mml:math></inline-formula> to <inline-formula id="ieqn-235"><mml:math id="mml-ieqn-235"><mml:mi>&#x03C4;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.70</mml:mn></mml:math></inline-formula> tightens precision (97.56%<inline-formula id="ieqn-236"><mml:math id="mml-ieqn-236"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>98.96%) and reduces false-positive rate (1.24%<inline-formula id="ieqn-237"><mml:math id="mml-ieqn-237"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>0.41%) at a controlled expense in recall (98.90%<inline-formula id="ieqn-238"><mml:math id="mml-ieqn-238"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>97.20%), with a balanced operating point at <inline-formula id="ieqn-239"><mml:math id="mml-ieqn-239"><mml:mi>&#x03C4;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.50</mml:mn></mml:math></inline-formula> (Precision <inline-formula id="ieqn-240"><mml:math id="mml-ieqn-240"><mml:mo>=</mml:mo><mml:mn>98.43</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, Recall <inline-formula id="ieqn-241"><mml:math id="mml-ieqn-241"><mml:mo>=</mml:mo><mml:mn>98.46</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-242"><mml:math id="mml-ieqn-242"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>98.44</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-243"><mml:math id="mml-ieqn-243"><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.79</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>). These patterns align with applications that prioritize missed-high events (<inline-formula id="ieqn-244"><mml:math id="mml-ieqn-244"><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">N</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x003E;</mml:mo><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">P</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>), such as early-warning settings. At the same time, the balanced pilot design is optimistic with respect to deployment precision when High-risk events are rare. Using the selected operating point (<inline-formula id="ieqn-245"><mml:math id="mml-ieqn-245"><mml:mi>&#x03C4;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.50</mml:mn></mml:math></inline-formula>) and transporting its sensitivity and false-positive rate to assumed High-risk prevalences of <inline-formula id="ieqn-246"><mml:math id="mml-ieqn-246"><mml:mn>1</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-247"><mml:math id="mml-ieqn-247"><mml:mn>5</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-248"><mml:math id="mml-ieqn-248"><mml:mn>10</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, the corresponding PPV becomes <inline-formula id="ieqn-249"><mml:math id="mml-ieqn-249"><mml:mn>55.73</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-250"><mml:math id="mml-ieqn-250"><mml:mn>86.77</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-251"><mml:math id="mml-ieqn-251"><mml:mn>93.27</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, respectively, while the expected false-alert burden remains approximately <inline-formula id="ieqn-252"><mml:math id="mml-ieqn-252"><mml:mn>14.1</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-253"><mml:math id="mml-ieqn-253"><mml:mn>13.5</mml:mn></mml:math></inline-formula>, and <inline-formula id="ieqn-254"><mml:math id="mml-ieqn-254"><mml:mn>12.8</mml:mn></mml:math></inline-formula> false alerts/h on the deployed <inline-formula id="ieqn-255"><mml:math id="mml-ieqn-255"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz timeline. Thus, the near-perfect discrimination observed under balanced held-out classes should not be interpreted as implying equally favorable alert precision in low-prevalence field environments. In practice, sustained deployment would likely require site-specific threshold selection, temporal alarm suppression or aggregation, and human-in-the-loop triage to keep operational burden acceptable.</p>
<p>Ablation analyses clarify the sources of performance. Under identical training, splits, and probability calibration, removing short-horizon sequential predictors (No LSTM) yields the largest degradation (<inline-formula id="ieqn-256"><mml:math id="mml-ieqn-256"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>F</mml:mi><mml:msub><mml:mn>1</mml:mn><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>1.22</mml:mn></mml:math></inline-formula> pp, <inline-formula id="ieqn-257"><mml:math id="mml-ieqn-257"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>AUROC</mml:mtext><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.016</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-258"><mml:math id="mml-ieqn-258"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>AUPRC</mml:mtext><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.022</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-259"><mml:math id="mml-ieqn-259"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Brier</mml:mtext><mml:mo>=</mml:mo><mml:mo>+</mml:mo><mml:mn>1.00</mml:mn></mml:math></inline-formula> pp), indicating that look-ahead temporal structure captures predictive micro-dynamics that are not recoverable via leakage-free carry-forward or exponential smoothing. A concordant drop is observed for the No forecasting control (<inline-formula id="ieqn-260"><mml:math id="mml-ieqn-260"><mml:mi>L</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mi>H</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>), confirming that the gains stem from true short-horizon look-ahead rather than static smoothing. Suppressing weapon cues is the second most detrimental intervention (<inline-formula id="ieqn-261"><mml:math id="mml-ieqn-261"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>F</mml:mi><mml:msub><mml:mn>1</mml:mn><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.74</mml:mn></mml:math></inline-formula> pp, <inline-formula id="ieqn-262"><mml:math id="mml-ieqn-262"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>AUROC</mml:mtext><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.010</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-263"><mml:math id="mml-ieqn-263"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>AUPRC</mml:mtext><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.014</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-264"><mml:math id="mml-ieqn-264"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Brier</mml:mtext><mml:mo>=</mml:mo><mml:mo>+</mml:mo><mml:mn>0.55</mml:mn></mml:math></inline-formula> pp), plausibly because these signals are directly tied to high-risk episodes. At the same time, this ablation should be interpreted with care: the visual branch measures only what is observable in the device&#x2019;s forward field of view. Consequently, the estimated contribution of person- and weapon-related cues reflects the value of local camera-visible evidence within the present acquisition geometry, not guaranteed observability of the full crowd or threat configuration in unrestricted field settings. Emotion-rate and heart-rate branches add moderate but consistent gains, while priors and audio/noise features contribute smaller, calibration-skewed improvements. The monotone increase in Brier across all ablations indicates that each family not only improves ranking but also contributes to probability quality.</p>
<p>Component analyzes further support these conclusions. First, per-module performance within the sensing/computing stack (SCS) indicates high-quality detectors and estimators (module-wise PR/RC/F1 <inline-formula id="ieqn-265"><mml:math id="mml-ieqn-265"><mml:mo>&#x2248;</mml:mo><mml:mn>95</mml:mn></mml:math></inline-formula>%&#x2013;96%), which helps explain the separability observed at the fusion layer. Second, counterfactual tests that (i) zero out each detector or (ii) inject ground-truth (GT) into the pipeline quantify the directionality of influence: zeroing a component reduces macro-<inline-formula id="ieqn-266"><mml:math id="mml-ieqn-266"><mml:msub><mml:mi>F</mml:mi><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula> and increases Brier, whereas injecting GT produces the opposite shifts, with the largest gains arising from the person detector and firearm cues. Taken together, these results provide the main empirical justification for retaining YOLOv7 in the present study despite its age: the person-detection task is comparatively mature, the detector performs strongly under the current forward-view pilot geometry, and its downstream contribution remains measurable when propagated through FLAD. Our claim is therefore not that YOLOv7 is the newest or universally best detector, but that it is sufficiently effective, reproducible, and edge-compatible for the specific proof-of-concept problem studied here. These findings are consistent with widely used, high-capacity person-detection backbones (e.g., YOLOv7) and classical, fast firearm detectors (Haar-like features) [<xref ref-type="bibr" rid="ref-13">13</xref>,<xref ref-type="bibr" rid="ref-14">14</xref>], and they motivate prioritizing these components in resource-constrained deployments. Nevertheless, the person detector should not be read as providing a panoramic or omnidirectional estimate of crowd size. In the current prototype, it summarizes only the locally visible sector covered by the camera, so its downstream influence on FLAD is best understood as view-conditioned scene evidence rather than a full situational census. Future work should benchmark newer detector families against YOLOv7 under the same field-of-view constraints, calibration protocol, and embedded-computing budget to determine whether the added architectural novelty produces a material application-level gain rather than only a nominal update in detector generation.</p>
<p>The interpretability contribution of FLAD should therefore be read at two complementary levels. Quantitatively, <xref ref-type="table" rid="table-3">Table 3</xref> shows that the fuzzy layer outperforms a similarly calibrated non-fuzzy MLP aggregator under matched inputs, folds, and validation-only calibration. Operationally, <xref ref-type="table" rid="table-4">Table 4</xref> shows how the same layer exposes auditable rule traces that can help an operator distinguish convergent multi-cue alarms from borderline alerts that primarily reflect transient or weakly corroborated evidence. This is important in safety-critical monitoring, where the practical value of an alert depends not only on its score but also on whether the rationale can be inspected, communicated, and triaged in real time.</p>

<p>An additional practical implication is that the camera-derived antecedents in FLAD are inherently view-limited. Because the forward-facing device does not observe the full surrounding crowd, rules involving <italic>People many/few</italic> or <italic>Weapons detected</italic> should be interpreted as operating on the currently visible sector only. In consequence, alerts dominated by camera evidence are best treated as decision-support prompts that should be cross-checked with temporal evolution, sector context, and, when feasible, secondary human verification, rather than as exhaustive summaries of the wider scene.</p>
<p>Evidence beyond the in-domain split remains preliminary. The exploratory external cohort provides only a limited signal that discrimination and calibration may transfer beyond the development setting, but with <inline-formula id="ieqn-267"><mml:math id="mml-ieqn-267"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mtext>ext</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>15</mml:mn></mml:math></inline-formula> it is not sufficient to support robust claims of generalization across sites or populations. Accordingly, the external results should be interpreted as feasibility-oriented rather than confirmatory. By contrast, the controlled distribution-shift analyses (low light/backlight, occlusion/pose, crowding, elevated ambient noise) are useful stress tests of internal robustness under predefined perturbations, but they do not substitute for large-scale external validation under organically occurring field heterogeneity. Within this limited scope, the observed OOD degradations remain modest and bounded, with occlusion/pose being the most adverse condition (e.g., <inline-formula id="ieqn-268"><mml:math id="mml-ieqn-268"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>1.6</mml:mn></mml:math></inline-formula> pp, <inline-formula id="ieqn-269"><mml:math id="mml-ieqn-269"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.008</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-270"><mml:math id="mml-ieqn-270"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.009</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-271"><mml:math id="mml-ieqn-271"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Brier</mml:mtext><mml:mo>=</mml:mo><mml:mo>+</mml:mo><mml:mn>0.25</mml:mn></mml:math></inline-formula> pp). These patterns highlight priorities for subsequent data collection and model refinement, including occlusion-aware training, broader site coverage, and prospectively acquired multi-session cohorts.</p>
<p>From a systems perspective, the Raspberry Pi 3B&#x002B; evaluation now supports a materially stronger pilot-stage deployment claim because it combines pointwise latency with a continuous 6 h sustained-load profile. In addition to median/P95 end-to-end latencies of approximately <inline-formula id="ieqn-272"><mml:math id="mml-ieqn-272"><mml:mn>1.25</mml:mn></mml:math></inline-formula>/<inline-formula id="ieqn-273"><mml:math id="mml-ieqn-273"><mml:mn>1.60</mml:mn></mml:math></inline-formula> s, the platform sustained mean CPU utilization of <inline-formula id="ieqn-274"><mml:math id="mml-ieqn-274"><mml:mn>68.4</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<inline-formula id="ieqn-275"><mml:math id="mml-ieqn-275"><mml:mo>&#x00B1;</mml:mo><mml:mn>4.2</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>) with peaks of <inline-formula id="ieqn-276"><mml:math id="mml-ieqn-276"><mml:mn>89.2</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, mean SoC temperature of <inline-formula id="ieqn-277"><mml:math id="mml-ieqn-277"><mml:msup><mml:mn>64.2</mml:mn><mml:mo>&#x2218;</mml:mo></mml:msup></mml:math></inline-formula>C (peak <inline-formula id="ieqn-278"><mml:math id="mml-ieqn-278"><mml:msup><mml:mn>68.5</mml:mn><mml:mo>&#x2218;</mml:mo></mml:msup></mml:math></inline-formula>C), mean throughput of <inline-formula id="ieqn-279"><mml:math id="mml-ieqn-279"><mml:mn>0.798</mml:mn></mml:math></inline-formula> records/s with drift below <inline-formula id="ieqn-280"><mml:math id="mml-ieqn-280"><mml:mn>1.2</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, and bounded High-risk alert jitter within <inline-formula id="ieqn-281"><mml:math id="mml-ieqn-281"><mml:mo>&#x00B1;</mml:mo><mml:mn>140</mml:mn></mml:math></inline-formula> ms. Interpreted on the deployed <inline-formula id="ieqn-282"><mml:math id="mml-ieqn-282"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz schedule, these measurements indicate that the system remained below timing saturation and preserved positive slack throughout the sustained-load run. The nominal <inline-formula id="ieqn-283"><mml:math id="mml-ieqn-283"><mml:mn>44.4</mml:mn></mml:math></inline-formula> Wh battery pack further implies a battery-based mean-power proxy of <inline-formula id="ieqn-284"><mml:math id="mml-ieqn-284"><mml:mn>5.18</mml:mn></mml:math></inline-formula> W, a peak proxy of <inline-formula id="ieqn-285"><mml:math id="mml-ieqn-285"><mml:mn>6.45</mml:mn></mml:math></inline-formula> W, and an autonomy window of approximately <inline-formula id="ieqn-286"><mml:math id="mml-ieqn-286"><mml:mn>8.57</mml:mn></mml:math></inline-formula> h under the profiled workload. Taken together, these results substantially strengthen the near-real-time feasibility claim for pilot operation on Raspberry Pi hardware. At the same time, because the power estimate is derived from the nominal battery budget rather than from inline electrical telemetry, future systems work should still examine direct power measurement under broader ambient-temperature, duty-cycle, and multi-stream operating conditions. This connection between statistical performance and runtime feasibility is critical for embedded deployments where energy, thermal limits, and response times must be balanced.</p>
<p>Methodologically, we emphasize three choices that enhance internal validity and interpretability. First, the participant&#x2014;not the episode window&#x2014;was treated as the unit of independence for generalization assessment: each outer LOSO fold withheld one entire subject, while preprocessing, model selection, calibration, and threshold selection were all completed within the remaining subjects and then frozen before test scoring. Second, uncertainty is quantified via a moving-block bootstrap that respects temporal dependence, with block length tied to the estimated correlation time; this yields conservative, two-sided 95% confidence intervals. Third, between-model AUROC differences and paired classification outcomes were assessed with DeLong&#x2019;s and McNemar&#x2019;s tests, respectively; inference is reported via effect sizes and two-sided 95% confidence intervals, which were consistent with the observed ranking advantages of the proposed system over non-fuzzy baselines.</p>
<p>The present study is a pilot evaluation emphasizing careful protocol control and transparent reporting. External validation remains strictly exploratory (<inline-formula id="ieqn-287"><mml:math id="mml-ieqn-287"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mtext>ext</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>15</mml:mn></mml:math></inline-formula>), and the OOD scenarios, though informative, are controlled perturbations rather than organically occurring shifts. Consequently, neither the small site-B cohort nor the synthetic stressors should be taken as sufficient evidence of robustness across institutions, populations, or operational contexts. The same caution applies to the target formulation itself: although the Low/Medium/High scale was defined <italic>a priori</italic> through an expert-informed operational codebook, it should presently be interpreted as a study-specific risk stratification for short-horizon security monitoring rather than as a universally standardized aggressiveness taxonomy. Broader scientific validity would benefit from future multi-expert consensus exercises and, where appropriate, alignment with formal security-escalation guidance used in comparable operational environments. Scaling to substantially larger, demographically diverse, multi-session, and multi-site cohorts would be necessary to estimate between-site variability, tighten uncertainty, and enable subgroup fairness analysis. Hardware-wise, the Raspberry Pi experiments provide a useful lower bound on embedded feasibility under the tested workload, but they should not be interpreted as a complete sustained-operation assessment. Continuous-operation stability, CPU load, and energy draw were not formally profiled and remain future work, together with additional platforms and dynamic scheduling policies (e.g., adaptive frame rates, detector gating) to optimize the latency&#x2013;accuracy&#x2013;power trade-off.</p>
<p>Prior efforts in surveillance and safety analytics typically report strong discriminative performance but rarely quantify calibration or cost-sensitive decision behavior. For instance, multimodal fusion for aggression/safety monitoring has reported accuracies in the <inline-formula id="ieqn-288"><mml:math id="mml-ieqn-288"><mml:mn>80</mml:mn></mml:math></inline-formula>%&#x2013;<inline-formula id="ieqn-289"><mml:math id="mml-ieqn-289"><mml:mn>90</mml:mn></mml:math></inline-formula>% range with limited treatment of probability calibration and thresholding [<xref ref-type="bibr" rid="ref-1">1</xref>]; violence detection via global motion and trajectory cues has achieved high accuracies on benchmark corpora without explicit ECE/Brier analysis [<xref ref-type="bibr" rid="ref-15">15</xref>]; and recent hybrid pipelines for physiological stress/risk modeling emphasize task-specific accuracy and throughput but only implicitly address decision costs [<xref ref-type="bibr" rid="ref-2">2</xref>]. In contrast, our system pairs near-ceiling AUROC/AUPRC with explicit calibration (Brier/ECE), threshold-sweep operating points, ablation-based attribution, and paired uncertainty quantification (moving-block bootstrap), while retaining interpretability through a fuzzy rule layer. At the component level, our SCS choices (YOLOv7 person detection and Haar-based firearm detection) align with widely adopted detectors [<xref ref-type="bibr" rid="ref-13">13</xref>,<xref ref-type="bibr" rid="ref-14">14</xref>], facilitating reproducibility and system-level transfer. Here it is important to distinguish detector recency from detector adequacy: YOLOv7 is not presented as the most current architecture, but as a mature and reproducible backbone whose held-out module performance and downstream impact are sufficient for the present proof-of-concept study. While protocol differences preclude head-to-head claims, the combination of discriminative performance, calibrated probabilities, uncertainty bands, and latency-compatible pilot-stage embedded profiling supports ADPS as a proof-of-concept early-warning prototype where both ranking and probability quality matter. Broader deployment claims should remain provisional until validated on larger, multi-session, and multi-site cohorts and complemented by formal sustained-load systems profiling.</p>
<p>Because this application domain is sensitive, the key ethical issue is not only how data were collected, but also how system outputs could be interpreted and potentially misused in practice. The formal approval, consent, and de-identification procedures are described in <xref ref-type="sec" rid="s5_1">Section 5.1</xref>; here, we emphasize their implications. Even with ethics oversight, anonymized processing, and restricted data access, a pilot system such as ADPS should not be framed as an autonomous basis for punitive, disciplinary, or liberty-restricting decisions. Rather, its appropriate role is that of a human-in-the-loop early-warning aid whose outputs require contextual interpretation, proportionality, and professional oversight. This caution is particularly important because the present cohort is narrow in demographic and situational scope, and therefore does not support broad claims of contextual, demographic, or institutional generalizability. In high-stakes settings, the main ethical safeguard is not only privacy protection, but also explicit limitation of use: the system should assist human judgment under governance controls, not replace it</p>
<p>The limits of demographic and contextual generalizability are equally important. Our pilot cohort comprised adult male police officers from a single institutional setting; therefore, findings should not be generalized to female officers, civilians, other age groups, or different operational and cultural contexts. We make no subgroup fairness claims, and the controlled OOD scenarios do not substitute for naturally occurring heterogeneity in real deployments. A larger, prospectively governed, multi-site, mixed-sex study would be required to assess fairness, calibration stability, and policy robustness across sex, age, site, and context.</p>
</sec>
<sec id="s5">
<label>5</label>
<title>Methods and Materials</title>
<sec id="s5_1">
<label>5.1</label>
<title>Data Acquisition and Cohort</title>
<p>All participants were active-duty male police officers (<inline-formula id="ieqn-290"><mml:math id="mml-ieqn-290"><mml:mi>N</mml:mi><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula>). Findings should not be generalized to female officers or civilians; subgroup fairness analyses are out of scope for this pilot. The cohort size was fixed by the approved pilot-study scope and the available operational access during the data-collection window; no additional participant-level testing was undertaken beyond this feasibility phase. Consequently, the present article addresses sample-size limitations through explicit caution in interpretation rather than through post hoc expansion of the test cohort.</p>
<p>Ethics, consent, and privacy safeguards.</p>
<p>The pilot protocol, participant information sheet, consent procedure, and data-handling plan were reviewed and approved by the Ethics Committee of CUNEF Universidad. Participation was voluntary. Before recording, each participant provided written informed consent covering sensor acquisition, annotation, analysis, and publication of aggregate de-identified results. To reduce privacy exposure, acquisition and annotation were managed under anonymous participant codes; direct identifiers were stored separately from the research files; raw audiovisual and physiological recordings were accessible only to authorized research personnel; and the modeling tables used for development did not contain names or other direct personal identifiers.</p>
<p>Cardiac rhythm dataset (heart rate).</p>
<p>Instantaneous heart rate (HR, beats per minute) was recorded from <inline-formula id="ieqn-291"><mml:math id="mml-ieqn-291"><mml:mn>10</mml:mn></mml:math></inline-formula> participants across <inline-formula id="ieqn-292"><mml:math id="mml-ieqn-292"><mml:mn>10</mml:mn></mml:math></inline-formula> sessions of <inline-formula id="ieqn-293"><mml:math id="mml-ieqn-293"><mml:mn>15</mml:mn></mml:math></inline-formula> min each. Offline, HR traces were uniformly resampled at <inline-formula id="ieqn-294"><mml:math id="mml-ieqn-294"><mml:msub><mml:mi>f</mml:mi><mml:mi>s</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn>4</mml:mn></mml:math></inline-formula> Hz (<inline-formula id="ieqn-295"><mml:math id="mml-ieqn-295"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mn>0.25</mml:mn></mml:math></inline-formula> s), yielding <inline-formula id="ieqn-296"><mml:math id="mml-ieqn-296"><mml:mn>3600</mml:mn></mml:math></inline-formula> samples per session and <inline-formula id="ieqn-297"><mml:math id="mml-ieqn-297"><mml:mo>&#x2248;</mml:mo></mml:math></inline-formula>360,000 samples overall; the deployed system ingests HR at <inline-formula id="ieqn-298"><mml:math id="mml-ieqn-298"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz for computational efficiency. Quality control enforced a physiological admissible range of <inline-formula id="ieqn-299"><mml:math id="mml-ieqn-299"><mml:mo stretchy="false">[</mml:mo><mml:mn>40</mml:mn><mml:mo>,</mml:mo><mml:mn>180</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> bpm, with out-of-range samples flagged but not imputed to avoid bias.</p>
<p><xref ref-type="fig" rid="fig-6">Fig. A3</xref> summarizes signal quality and temporal structure. <xref ref-type="fig" rid="fig-6">Fig. A3a</xref> displays, for each subject&#x2013;session, the proportion of flagged (out-of-range) samples; rates are uniformly low across the grid, indicating minimal clipping or sensor loss and supporting subsequent modeling without aggressive filtering. <xref ref-type="fig" rid="fig-6">Fig. A3b</xref> reports the aggregate HR power spectral density (median across sessions with a pointwise 95% envelope) at 4 Hz. Spectral mass concentrates at very low frequencies and decays smoothly without narrow-band peaks, consistent with slowly varying dynamics and with the absence of acquisition-induced periodic artifacts; this structure justifies the use of short-horizon sequential predictors. <xref ref-type="fig" rid="fig-6">Fig. A3c</xref> depicts session-wise mean vs. standard deviation. The compact cloud&#x2014;with moderate dispersion and limited between-session heterogeneity&#x2014;suggests stable within-session statistics and supports subject-wise evaluation protocols (e.g., leave-one-subject-out) with temporally blocked validation.</p>
<p>Emotions dataset (probabilistic class rates).</p>
<p>At each time step <inline-formula id="ieqn-300"><mml:math id="mml-ieqn-300"><mml:mi>t</mml:mi></mml:math></inline-formula>, the emotion detector outputs a vector <inline-formula id="ieqn-301"><mml:math id="mml-ieqn-301"><mml:msub><mml:mrow><mml:mi mathvariant="bold">e</mml:mi></mml:mrow><mml:mi>t</mml:mi></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:msup><mml:mo stretchy="false">]</mml:mo><mml:mn>7</mml:mn></mml:msup></mml:math></inline-formula> of normalized class rates (anger, disgust, fear, happy, sad, surprise, neutral) that approximately sum to one. Data were collected from the same <inline-formula id="ieqn-302"><mml:math id="mml-ieqn-302"><mml:mn>10</mml:mn></mml:math></inline-formula> participants in <inline-formula id="ieqn-303"><mml:math id="mml-ieqn-303"><mml:mn>10</mml:mn></mml:math></inline-formula> sessions of <inline-formula id="ieqn-304"><mml:math id="mml-ieqn-304"><mml:mn>15</mml:mn></mml:math></inline-formula> min, sampled every <inline-formula id="ieqn-305"><mml:math id="mml-ieqn-305"><mml:mo>&#x2248;</mml:mo></mml:math></inline-formula>1.16 s (<inline-formula id="ieqn-306"><mml:math id="mml-ieqn-306"><mml:mo>&#x223C;</mml:mo><mml:mspace width="negativethinmathspace" /></mml:math></inline-formula>1050 timestamps per session; <inline-formula id="ieqn-307"><mml:math id="mml-ieqn-307"><mml:mo>&#x223C;</mml:mo><mml:mspace width="negativethinmathspace" /></mml:math></inline-formula>105,000 samples overall).</p>
<p><xref ref-type="fig" rid="fig-7">Fig. A4</xref> characterizes distribution, dependence, and short-term dynamics.<xref ref-type="fig" rid="fig-7"> Fig. A4a</xref> shows subject-wise median prevalences with interquartile ranges (IQR). On average, neutral and negative-affect classes dominate (e.g., neutral <inline-formula id="ieqn-308"><mml:math id="mml-ieqn-308"><mml:mo>&#x223C;</mml:mo></mml:math></inline-formula> 0.25, anger <inline-formula id="ieqn-309"><mml:math id="mml-ieqn-309"><mml:mo>&#x223C;</mml:mo></mml:math></inline-formula> 0.19, fear <inline-formula id="ieqn-310"><mml:math id="mml-ieqn-310"><mml:mo>&#x223C;</mml:mo></mml:math></inline-formula> 0.15, disgust <inline-formula id="ieqn-311"><mml:math id="mml-ieqn-311"><mml:mo>&#x223C;</mml:mo></mml:math></inline-formula> 0.12, sad <inline-formula id="ieqn-312"><mml:math id="mml-ieqn-312"><mml:mo>&#x223C;</mml:mo></mml:math></inline-formula> 0.11), whereas happy and surprise are less frequent (<inline-formula id="ieqn-313"><mml:math id="mml-ieqn-313"><mml:mo>&#x223C;</mml:mo></mml:math></inline-formula>0.10 and <inline-formula id="ieqn-314"><mml:math id="mml-ieqn-314"><mml:mo>&#x223C;</mml:mo></mml:math></inline-formula>0.08), consistent with low-to-moderate base rates and transient bursts in negative classes. <xref ref-type="fig" rid="fig-7">Fig. A4b</xref> reports pairwise Pearson correlations among class-rate channels; associations are uniformly small in magnitude and exhibit clear negative correlations against neutral (down to <inline-formula id="ieqn-315"><mml:math id="mml-ieqn-315"><mml:mi>r</mml:mi><mml:mo>&#x2248;</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.28</mml:mn></mml:math></inline-formula>), indicating largely distinct, weakly redundant signals across classes. <xref ref-type="fig" rid="fig-7">Fig. A4c</xref> depicts the first-order transition matrix of the dominant emotion <inline-formula id="ieqn-316"><mml:math id="mml-ieqn-316"><mml:mi>arg</mml:mi><mml:mo>&#x2061;</mml:mo><mml:munder><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mi>c</mml:mi></mml:munder><mml:msub><mml:mi>e</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>. The average self-transition probability is low (<inline-formula id="ieqn-317"><mml:math id="mml-ieqn-317"><mml:mo>&#x2248;</mml:mo></mml:math></inline-formula>0.14), and the most frequent transitions return to neutral (e.g., fear<inline-formula id="ieqn-318"><mml:math id="mml-ieqn-318"><mml:mspace width="negativethinmathspace" /><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>neutral, surprise<inline-formula id="ieqn-319"><mml:math id="mml-ieqn-319"><mml:mspace width="negativethinmathspace" /><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>neutral, anger<inline-formula id="ieqn-320"><mml:math id="mml-ieqn-320"><mml:mspace width="negativethinmathspace" /><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>neutral, each <inline-formula id="ieqn-321"><mml:math id="mml-ieqn-321"><mml:mo>&#x2248;</mml:mo></mml:math></inline-formula>0.29), evidencing short episodes that revert quickly to baseline. Such dynamics motivate short-horizon forecasting and support temporally local fusion at the decision layer.</p>
<p>Evaluation protocol.</p>
<p>The unit of independence for generalization assessment was the <italic>participant</italic> (subject), not the individual episode window. Accordingly, each outer evaluation fold held out one entire participant, and no windows from that participant were used in model fitting, validation, calibration, threshold selection, or hyperparameter tuning. Within the remaining participants, validation was formed by temporally blocked segments separated from training by guard gaps, as detailed in <xref ref-type="sec" rid="s5_5">Section 5.5</xref>. All preprocessing statistics, calibration mappings, and operating thresholds were determined without access to the held-out subject and then applied unchanged at test time.</p>
</sec>
<sec id="s5_2">
<label>5.2</label>
<title>Sensing Hardware and on-Device Platform</title>
<p>To conserve space, the assembled layout and full bill-of-materials/operating points are provided in <xref ref-type="fig" rid="fig-8">Fig. A5</xref> and <xref ref-type="table" rid="table-17">Table A6</xref>.</p>
</sec>
<sec id="s5_3">
<label>5.3</label>
<title>Pre-Processing and Annotation</title>
<p><bold>Episode construction and annotation.</bold> The main design parameters used to construct episode-level samples, together with a worked summary of nominal vs. effective sample size under the pilot protocol, are reported in <xref ref-type="table" rid="table-10">Table 10</xref>. Video, audio, and heart-rate (HR) streams were time-stamped, synchronized to a common clock, and projected onto the fused ADPS decision timeline. Each supervised sample corresponded to an <italic>episode-level decision point</italic> at time <inline-formula id="ieqn-322"><mml:math id="mml-ieqn-322"><mml:mi>t</mml:mi></mml:math></inline-formula>, formed from a causal look-back of <inline-formula id="ieqn-323"><mml:math id="mml-ieqn-323"><mml:mi>L</mml:mi><mml:mo>=</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula> contiguous windows (approximately <inline-formula id="ieqn-324"><mml:math id="mml-ieqn-324"><mml:mn>6</mml:mn></mml:math></inline-formula> s of history on the deployed <inline-formula id="ieqn-325"><mml:math id="mml-ieqn-325"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz timeline) and linked to the target at forecast horizon <inline-formula id="ieqn-326"><mml:math id="mml-ieqn-326"><mml:mi>H</mml:mi><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula> steps (approximately <inline-formula id="ieqn-327"><mml:math id="mml-ieqn-327"><mml:mn>20</mml:mn></mml:math></inline-formula> s ahead). Consecutive episodes were generated with a sliding stride of <inline-formula id="ieqn-328"><mml:math id="mml-ieqn-328"><mml:mi>s</mml:mi><mml:mo>=</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula> steps, which implies partial temporal overlap between adjacent contexts when <inline-formula id="ieqn-329"><mml:math id="mml-ieqn-329"><mml:mi>s</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mi>L</mml:mi></mml:math></inline-formula>. Under this configuration, the overlap ratio was <inline-formula id="ieqn-330"><mml:math id="mml-ieqn-330"><mml:mn>33.3</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, as summarized in <xref ref-type="table" rid="table-10">Table 10</xref>. Any candidate episode whose look-back or look-ahead interval crossed a subject boundary, session boundary, or train/validation/test partition boundary was excluded before model training or evaluation.</p>
<table-wrap id="table-10">
<label>Table 10</label>
<caption>
<title>Worked summary of episode construction and the distinction between nominal and effective sample size under the pilot LOSO protocol. The values shown here provide a transparent example consistent with the present experimental configuration and make explicit how the reported 20,000 held-out records arise from episode-level windowing rather than from independent participants or trials.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Item</th>
<th>Definition</th>
<th>Reported Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>Fused decision rate</td>
<td>Sampling rate of the fused ADPS decision timeline.</td>
<td><inline-formula id="ieqn-331"><mml:math id="mml-ieqn-331"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz</td>
</tr>
<tr>
<td>Look-back length <italic>L</italic></td>
<td>Number of contiguous causal windows used as model input.</td>
<td><inline-formula id="ieqn-332"><mml:math id="mml-ieqn-332"><mml:mn>3</mml:mn></mml:math></inline-formula> windows (<inline-formula id="ieqn-333"><mml:math id="mml-ieqn-333"><mml:mo>&#x2248;</mml:mo></mml:math></inline-formula>6 s)</td>
</tr>
<tr>
<td>Forecast horizon <italic>H</italic></td>
<td>Prediction lead time on the fused timeline.</td>
<td><inline-formula id="ieqn-334"><mml:math id="mml-ieqn-334"><mml:mn>10</mml:mn></mml:math></inline-formula> steps (<inline-formula id="ieqn-335"><mml:math id="mml-ieqn-335"><mml:mo>&#x2248;</mml:mo></mml:math></inline-formula>20 s)</td>
</tr>
<tr>
<td>Stride <inline-formula id="ieqn-336"><mml:math id="mml-ieqn-336"><mml:mi>s</mml:mi></mml:math></inline-formula></td>
<td>Sliding step used to generate consecutive episodes on the fused decision timeline.</td>
<td><inline-formula id="ieqn-337"><mml:math id="mml-ieqn-337"><mml:mn>2</mml:mn></mml:math></inline-formula> steps (<inline-formula id="ieqn-338"><mml:math id="mml-ieqn-338"><mml:mo>&#x2248;</mml:mo></mml:math></inline-formula>4 s)</td>
</tr>
<tr>
<td>Overlap ratio</td>
<td>Temporal overlap between neighboring episode contexts, computed as <inline-formula id="ieqn-339"><mml:math id="mml-ieqn-339"><mml:mo stretchy="false">(</mml:mo><mml:mi>L</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>s</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:mi>L</mml:mi></mml:math></inline-formula> when <inline-formula id="ieqn-340"><mml:math id="mml-ieqn-340"><mml:mi>s</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mi>L</mml:mi></mml:math></inline-formula>.</td>
<td><inline-formula id="ieqn-341"><mml:math id="mml-ieqn-341"><mml:mn>33.3</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula></td>
</tr>
<tr>
<td>Candidate episodes <inline-formula id="ieqn-342"><mml:math id="mml-ieqn-342"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">c</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi mathvariant="normal">n</mml:mi><mml:mi mathvariant="normal">d</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>All generated episodes before quality-control filtering and boundary exclusions.</td>
<td><inline-formula id="ieqn-343"><mml:math id="mml-ieqn-343"><mml:mn>21,900</mml:mn></mml:math></inline-formula></td>
</tr>
<tr>
<td>Usable episodes <inline-formula id="ieqn-344"><mml:math id="mml-ieqn-344"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">u</mml:mi><mml:mi mathvariant="normal">s</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi mathvariant="normal">b</mml:mi><mml:mi mathvariant="normal">l</mml:mi><mml:mi mathvariant="normal">e</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>Episodes retained after exclusion of windows crossing subject/session/partition boundaries and other QC filters.</td>
<td><inline-formula id="ieqn-345"><mml:math id="mml-ieqn-345"><mml:mn>20,384</mml:mn></mml:math></inline-formula></td>
</tr>
<tr>
<td>Held-out episodes <inline-formula id="ieqn-346"><mml:math id="mml-ieqn-346"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">t</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">s</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>Sum of test episodes concatenated across the 10 LOSO outer folds.</td>
<td><inline-formula id="ieqn-347"><mml:math id="mml-ieqn-347"><mml:mn>20,000</mml:mn></mml:math></inline-formula></td>
</tr>
<tr>
<td>Effective sample size <inline-formula id="ieqn-348"><mml:math id="mml-ieqn-348"><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">f</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula></td>
<td>Interpretive sample size under temporal dependence, approximately <italic>N</italic>/<italic>B</italic> in the moving-block bootstrap.</td>
<td><inline-formula id="ieqn-349"><mml:math id="mml-ieqn-349"><mml:mo>&#x2248;</mml:mo></mml:math></inline-formula>2500 (with <inline-formula id="ieqn-350"><mml:math id="mml-ieqn-350"><mml:mi>B</mml:mi><mml:mo>&#x2248;</mml:mo><mml:mn>8</mml:mn></mml:math></inline-formula>)</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>We now explicitly distinguish between the <italic>nominal</italic> number of held-out records and the amount of statistically independent information. In particular, the reported test set of <inline-formula id="ieqn-351"><mml:math id="mml-ieqn-351"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">t</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">s</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>20,000</mml:mn></mml:math></inline-formula> corresponds to the concatenation of held-out episode windows across the 10 LOSO outer folds, rather than to 20,000 independent participants or independent trials. As further detailed in <xref ref-type="table" rid="table-10">Table 10</xref>, the episode-generation pipeline yielded <inline-formula id="ieqn-352"><mml:math id="mml-ieqn-352"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">c</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi mathvariant="normal">n</mml:mi><mml:mi mathvariant="normal">d</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>21,900</mml:mn></mml:math></inline-formula> candidate episodes, of which <inline-formula id="ieqn-353"><mml:math id="mml-ieqn-353"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">u</mml:mi><mml:mi mathvariant="normal">s</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi mathvariant="normal">b</mml:mi><mml:mi mathvariant="normal">l</mml:mi><mml:mi mathvariant="normal">e</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>20,384</mml:mn></mml:math></inline-formula> remained after boundary-exclusion and quality-control rules, while inferential uncertainty was interpreted through an effective sample size of approximately <inline-formula id="ieqn-354"><mml:math id="mml-ieqn-354"><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">f</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x2248;</mml:mo><mml:mn>2500</mml:mn></mml:math></inline-formula> under temporal dependence. Because overlapping temporal windows can inflate the nominal record count, inferential uncertainty was quantified using a moving-block bootstrap and interpreted jointly with <inline-formula id="ieqn-355"><mml:math id="mml-ieqn-355"><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">f</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x2248;</mml:mo><mml:mi>N</mml:mi><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:mi>B</mml:mi></mml:math></inline-formula> rather than with the nominal episode count alone.</p>

<p>Ground truth followed a three-level ordinal scale (Low/Medium/High) defined <italic>a priori</italic> in a written operational codebook. Because the present task concerns short-horizon security-risk forecasting rather than psychiatric diagnosis, the target was operationalized as an expert-informed escalation scale rather than anchored to a single clinical thresholding standard. The codebook was drafted before model development and structured around three observable dimensions available in the synchronized recordings: (i) explicit threat-related scene evidence (e.g., weapon-like cue, hostile crowding, or visibly escalating confrontation in the active field of view), (ii) short-horizon physiological/affective activation (heart-rate/stress and emotion-rate elevation relative to the local baseline), and (iii) contextual immediacy (sector risk, ambient agitation, and temporal persistence across adjacent windows). Operationally, <italic>Low</italic> denoted baseline or de-escalated behavior with no explicit threat cue, no sustained escalation pattern, and low or stable physiological-affective activation; <italic>Medium</italic> denoted emerging or ambiguous escalation in which one or more channels departed from baseline but the evidence remained incomplete, weakly corroborated, or short-lived; and <italic>High</italic> denoted either an explicit severe cue in context or convergent escalation across at least two of the three dimensions above, consistent with an immediate preventive or de-escalation response. Labels were assigned by human annotators using synchronized raw recordings through a two-pass adjudication procedure, consisting of majority vote followed, when necessary, by expert tie-break. Importantly, annotators did <italic>not</italic> use detector outputs, engineered features, LSTM forecasts, fuzzy-rule activations, calibrated probabilities, or any other model-derived score during labeling. In addition, no single observable cue available to the model inputs (e.g., a weapon-related visual cue, person count, or short affective burst) was treated as individually sufficient to assign a Low/Medium/High label; instead, labels were determined from the joint operational criteria specified in the codebook and the broader synchronized behavioral context. This formulation was intended to approximate a practical security-monitoring consensus for imminent escalation under the present patrol-like scenarios, while making explicit that the three levels are ordinal operational risk strata rather than universal clinical categories. Therefore, the target was not generated by thresholding model outputs or by collapsing a single input cue into the outcome definition, although the raw multimodal streams naturally contained the behavioral evidence later exploited by the predictive system.</p>
<p>On a stratified 10% subset, inter-rater reliability satisfied the <italic>a priori</italic> quality targets, with weighted Cohen&#x2019;s <inline-formula id="ieqn-356"><mml:math id="mml-ieqn-356"><mml:msub><mml:mi>&#x03BA;</mml:mi><mml:mi>w</mml:mi></mml:msub><mml:mo>&#x2248;</mml:mo><mml:mn>0.82</mml:mn></mml:math></inline-formula> (using quadratic weights; see <xref ref-type="sec" rid="s9_1">Appendix A.3.1</xref>, <xref ref-type="disp-formula" rid="eqn-A2">Eqs. (A2)</xref>&#x2013;<xref ref-type="disp-formula" rid="eqn-A5">(A5)</xref>) and Krippendorff&#x2019;s <inline-formula id="ieqn-357"><mml:math id="mml-ieqn-357"><mml:mi>&#x03B1;</mml:mi><mml:mo>&#x2248;</mml:mo><mml:mn>0.80</mml:mn></mml:math></inline-formula> (<xref ref-type="disp-formula" rid="eqn-A6">Eqs. (A6)</xref>&#x2013;<xref ref-type="disp-formula" rid="eqn-A9">(A9)</xref>). Two-sided 95% confidence intervals were estimated with a moving-block bootstrap using overlapping blocks <inline-formula id="ieqn-358"><mml:math id="mml-ieqn-358"><mml:msub><mml:mrow><mml:mi>&#x0212C;</mml:mi></mml:mrow><mml:mi>s</mml:mi></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-359"><mml:math id="mml-ieqn-359"><mml:mi>m</mml:mi></mml:math></inline-formula> blocks per replicate (<xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref>, <xref ref-type="disp-formula" rid="eqn-A15">Eqs. (A15)</xref> and <xref ref-type="disp-formula" rid="eqn-A16">(A16)</xref>). Formal definitions, including Fleiss&#x2019; <inline-formula id="ieqn-360"><mml:math id="mml-ieqn-360"><mml:mi>&#x03BA;</mml:mi></mml:math></inline-formula> (<xref ref-type="disp-formula" rid="eqn-A12">Eq. (A12)</xref>), together with label-noise diagnostics, are provided in <xref ref-type="sec" rid="s9_1">Appendix A.3.1</xref>, whereas temporal-dependence handling and uncertainty quantification are detailed in <xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref>. Dataset-level quality summaries are reported in <xref ref-type="fig" rid="fig-6">Figs. A3</xref> and <xref ref-type="fig" rid="fig-7">A4</xref>.</p>

</sec>
<sec id="s5_4">
<label>5.4</label>
<title>Model Architecture</title>
<p>The Aggression Detection&#x2013;Prediction System (ADPS) integrates three modules: a Sensor Control System (SCS) that standardizes per-frame/per-second evidence, an LSTM-Based Prediction System (LBPS) that forecasts short-horizon physiological and affective trajectories, and an interpretable fuzzy aggregation layer (FLAD) that produces calibrated class posteriors. <xref ref-type="fig" rid="fig-3">Fig. 3</xref> presents the main-text architecture of the proposed Fuzzy&#x2013;LSTM model, making explicit how causal temporal sequences are processed by the LSTM forecasters before being combined with current multimodal cues in the fuzzy decision layer. <xref ref-type="fig" rid="fig-9">Fig. A6</xref> retains the extended interface-oriented overview.</p>
<p><xref ref-type="fig" rid="fig-3">Fig. 3</xref> summarizes the proposed Fuzzy&#x2013;LSTM architecture by separating the current-cue bypass from the causal LSTM forecasting branch. This distinction clarifies that current multimodal cues enter the fuzzy decision layer directly, whereas past emotion-rate and heart-rate sequences are first processed by compact LSTM forecasters before being combined with the fuzzy inputs to produce calibrated Low/Medium/High risk posteriors and an operator-facing rule rationale.</p>

<sec id="s5_4_1">
<label>5.4.1</label>
<title>Sensor Control System (SCS)</title>
<p>The SCS ingests RGB frames, ambient audio, and heart-rate (HR) telemetry and exposes standardized feature channels to downstream modules. Vision channels comprise person localization and weapon-cue evidence; audio channels summarize ambient energy and noise proxies; physiological channels provide instantaneous HR and short-window statistics.</p>
<p>Person detection used a pre-trained single-shot model [<xref ref-type="bibr" rid="ref-13">13</xref>] configured for the COCO label set and restricted to the person class (id 0). Each frame was resized and normalized to the detector&#x2019;s native input resolution (<inline-formula id="ieqn-361"><mml:math id="mml-ieqn-361"><mml:mn>416</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>416</mml:mn></mml:math></inline-formula>). Detections were retained at a confidence threshold <inline-formula id="ieqn-362"><mml:math id="mml-ieqn-362"><mml:mo>&#x2265;</mml:mo></mml:math></inline-formula>0.5 and filtered per frame with non-maximum suppression using a score threshold of <inline-formula id="ieqn-363"><mml:math id="mml-ieqn-363"><mml:mn>0.5</mml:mn></mml:math></inline-formula> and an intersection-over-union (IoU) threshold of <inline-formula id="ieqn-364"><mml:math id="mml-ieqn-364"><mml:mn>0.4</mml:mn></mml:math></inline-formula>. The system exported per-frame person counts and bounding boxes; no temporal smoothing beyond per-frame NMS was applied. These operating thresholds prioritize precision in surveillance-like conditions.</p>
<p>Although YOLOv7 is no longer the newest detector family, it was selected deliberately for this pilot for three practical reasons. First, the target class here is <italic>person</italic>, which is among the most mature and best represented categories in large-scale pre-training corpora such as COCO; thus, the design question in the present work was not to introduce a new detector, but to use a stable off-the-shelf person-localization backbone within a multimodal forecasting pipeline. Second, YOLOv7 remains widely reproduced, well documented, and straightforward to deploy in compact embedded environments, which supports methodological transparency and reproducibility. Third, its adequacy in the present sensing geometry is supported empirically by the module-level held-out results in <xref ref-type="table" rid="table-12">Table A1</xref> (Precision <inline-formula id="ieqn-365"><mml:math id="mml-ieqn-365"><mml:mo>=</mml:mo><mml:mn>95.7</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, Recall <inline-formula id="ieqn-366"><mml:math id="mml-ieqn-366"><mml:mo>=</mml:mo><mml:mn>95.1</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-367"><mml:math id="mml-ieqn-367"><mml:msub><mml:mi>F</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn>95.4</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>), together with the counterfactual detector-impact analysis in <xref ref-type="table" rid="table-14">Table A3</xref>. We therefore use YOLOv7 here as a reproducible and edge-compatible person-detection backbone for pilot evaluation, while recognizing that newer detector families should be benchmarked in future revisions aimed at optimized deployment performance.</p>

<p>Because the device camera is forward-facing and body-/platform-mounted, the exported person count is interpreted throughout the manuscript as a <italic>local field-of-view occupancy cue</italic> rather than as a census of the surrounding crowd. In practice, it only reflects the visible region in one direction and within a limited angular span, and is therefore sensitive to viewpoint, distance, partial occlusion, and scene framing. Accordingly, ADPS does not treat the person-count variable as a globally valid estimate of crowd size; instead, the linguistic terms <italic>People few/moderate/many</italic> are intended to encode relative scene density within the currently observed camera sector.</p>
<p>Ambient sound was summarized as wideband root&#x2013;mean&#x2013;square (RMS) amplitude from 16-bit, single-channel PCM audio sampled at 44.1 kHz. Signals were partitioned into non-overlapping 2.0 s windows (approximately 88,200 samples), internally buffered in frames of 1024 samples with an equal hop [<xref ref-type="bibr" rid="ref-16">16</xref>]. For each window, a single scalar RMS level was computed and exported as the ambient-noise cue. No pre-emphasis, spectral weighting (e.g., A-weighting), denoising, voice-activity detection, or temporal smoothing was applied. Per-window values were time-stamped at window midpoints and aligned with video and heart-rate descriptors for downstream fusion; unless stated otherwise, they were standardized using training-set statistics before modeling.</p>
<p>All visual detectors were used off-the-shelf as pre-trained models without task-specific fine-tuning, bootstrapping, or domain adaptation; operating points are exactly those reported above.</p>
<p>Let <inline-formula id="ieqn-368"><mml:math id="mml-ieqn-368"><mml:mi>s</mml:mi></mml:math></inline-formula> index spatial sectors and <inline-formula id="ieqn-369"><mml:math id="mml-ieqn-369"><mml:mi>b</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mn>168</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> denote hour-of-week bins. From incident logs archived in our public data repository (see Data Availability), computed over a rolling <italic>W</italic>-week window, let <inline-formula id="ieqn-370"><mml:math id="mml-ieqn-370"><mml:msub><mml:mi>c</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> be the number of relevant incidents and <inline-formula id="ieqn-371"><mml:math id="mml-ieqn-371"><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> the corresponding exposures. We compute a Laplace-smoothed rate <inline-formula id="ieqn-372"><mml:math id="mml-ieqn-372"><mml:msub><mml:mi>r</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:msub><mml:mi>c</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mn>2</mml:mn><mml:mi>&#x03BB;</mml:mi></mml:mrow></mml:mfrac><mml:mo>,</mml:mo><mml:mi>&#x03BB;</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo></mml:math></inline-formula> then min&#x2013;max normalize across sectors to obtain <inline-formula id="ieqn-373"><mml:math id="mml-ieqn-373"><mml:msub><mml:mrow><mml:mover><mml:mi>r</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>. A monotone calibration <inline-formula id="ieqn-374"><mml:math id="mml-ieqn-374"><mml:mi>&#x03D5;</mml:mi></mml:math></inline-formula> (fitted on the validation split via isotonic regression and held fixed at test) yields the prior membership used by FLAD, <inline-formula id="ieqn-375"><mml:math id="mml-ieqn-375"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mtext>prior</mml:mtext></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>&#x03D5;</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>r</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. The SRP is refreshed every <inline-formula id="ieqn-376"><mml:math id="mml-ieqn-376"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>T</mml:mi></mml:math></inline-formula> (e.g., weekly) by exponentially weighted updating with half-life <italic>H</italic> days; for all reported results the SRP snapshot is frozen from the training window. Its incremental value is assessed in the &#x201C;No SRP&#x201D; ablation (<xref ref-type="table" rid="table-5">Table 5</xref>).</p>

<p>All raw detections and scores are quality-controlled and temporally aligned (<xref ref-type="sec" rid="s5_3">Section 5.3</xref>); outputs are rate-limited to per-second descriptors to bound latency and memory. This design follows evidence that combining scene dynamics with human-centric cues improves violence/aggression analytics in surveillance settings [<xref ref-type="bibr" rid="ref-1">1</xref>,<xref ref-type="bibr" rid="ref-15">15</xref>,<xref ref-type="bibr" rid="ref-17">17</xref>].</p>
<p>We employed a pre-trained Haar cascade classifier to flag weapon-like patterns [<xref ref-type="bibr" rid="ref-14">14</xref>]. Each RGB frame was deterministically resized to a width of 500 px (aspect ratio preserved) and converted to grayscale before detection. The detector operated at a fixed configuration with scale factor set to 1.3, minimum neighbors to 20, and minimum detection window to <inline-formula id="ieqn-377"><mml:math id="mml-ieqn-377"><mml:mn>100</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>100</mml:mn></mml:math></inline-formula> px; the minNeighbors parameter functioned as the effective acceptance threshold, with higher values prioritizing precision over recall. The Sensor Control System then exported a binary weapon cue per frame, defined as 1 when at least one bounding box was returned and 0 otherwise; no additional non-maximum suppression or temporal smoothing was applied. This operating point was chosen to reduce false positives under surveillance-like conditions.</p>
<p>The same visibility constraint applies to the weapon-like cue: it represents visual evidence available within the active camera view only, not complete observability of the full environment. For this reason, camera-derived person and weapon cues are treated as <italic>partial scene evidence</italic> in the downstream decision layer and should be interpreted jointly with sector risk, ambient audio, and physiological/affective forecasts rather than as a complete description of the surrounding scene.</p>
</sec>
<sec id="s5_4_2">
<label>5.4.2</label>
<title>LSTM-Based Prediction System (LBPS)</title>
<p>LBPS comprises two uni-variate sequence models that forecast near-future emotion-rate and heart-rate trajectories from recent histories. We use compact LSTMs (few layers/hidden units) to control overfitting at the pilot scale; hyperparameters were tuned by a population-based genetic search constrained by validation loss (details in <xref ref-type="sec" rid="s5">Section 5</xref>). Training traces show monotone decrease and stabilization of the objective across generations for both tasks; see <xref ref-type="fig" rid="fig-5">Fig. A2</xref>, where <xref ref-type="fig" rid="fig-5">Fig. A2a</xref> depicts the GA-optimized LSTM for emotion-rate (per-generation minimum/average loss) and (<xref ref-type="fig" rid="fig-5">Fig. A2b</xref>) the homologous curve for HR. The final forecasting-model settings associated with these traces are summarized in <xref ref-type="table" rid="table-18">Table A7</xref>. In several folds, the best validation region was reached after relatively few effective epochs before early stopping. In the context of this pilot, such rapid convergence should not be interpreted as evidence that the forecasting problem is saturated or already validated for deployment-oriented use. Rather, it is compatible with the combination of short-horizon targets, compact one-layer forecasters, and limited between-subject diversity, and it reinforces the need to interpret the present LBPS results as pilot-scale. Larger and more heterogeneous training cohorts will be required to determine whether the same optimization behavior and predictive gains persist under broader operational variability. Because the present article reports a completed pilot dataset acquired under a fixed approved cohort, no additional subject-level sequences could be added within the scope of this revision to test that issue directly. These forecasters are motivated by the empirically demonstrated robustness of LSTMs for short-horizon time-series prediction across domains [<xref ref-type="bibr" rid="ref-5">5</xref>&#x2013;<xref ref-type="bibr" rid="ref-9">9</xref>]; their outputs enter FLAD as temporally informative risk features (Formal training/selection criteria and calibration are described in <xref ref-type="sec" rid="s5">Section 5</xref>; exact loss definitions are deferred to <xref ref-type="sec" rid="s9">Appendix A.3</xref> when needed).</p>

<p>In our implementation, the forecasters use <inline-formula id="ieqn-378"><mml:math id="mml-ieqn-378"><mml:mi>L</mml:mi><mml:mo>=</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula> context windows and predict <inline-formula id="ieqn-379"><mml:math id="mml-ieqn-379"><mml:mi>H</mml:mi><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula> steps (<inline-formula id="ieqn-380"><mml:math id="mml-ieqn-380"><mml:mo>&#x2248;</mml:mo></mml:math></inline-formula>20 s ahead) on the fused <inline-formula id="ieqn-381"><mml:math id="mml-ieqn-381"><mml:mn>0.5</mml:mn><mml:mspace width="thinmathspace" /><mml:mrow><mml:mi mathvariant="normal">H</mml:mi><mml:mi mathvariant="normal">z</mml:mi></mml:mrow></mml:math></inline-formula> timeline, operationalizing the short-horizon objective that motivates LBPS.</p>
</sec>
<sec id="s5_4_3">
<label>5.4.3</label>
<title>Fuzzy Logic Aggression Detection (FLAD)</title>
<p>FLAD implements an interpretable rule-base that aggregates SCS signals (e.g., person/weapon cues, audio proxies) and LBPS forecasts (emotion-rate/HR trends) into class posteriors over {Low, Medium, High}. The FLAD rules were not data-mined from the held-out labels; rather, they were constructed from the same operational logic used to organize the pilot monitoring problem. Specifically, the candidate antecedents were first defined from variables that are directly available at inference time (sector risk, person occupancy in the visible camera sector, weapon-like cue, ambient noise, heart-rate/stress level, and emotion-rate level). These variables were then mapped into linguistic states (e.g., low/medium/high or detected/undetected) and combined into a compact rule set intended to capture clinically and operationally plausible escalation patterns, such as &#x201C;weapons plus crowding&#x201D;, &#x201C;high stress plus high affective activation&#x201D;, or &#x201C;low stress plus no weapon and low sector risk&#x201D;. The initial candidate set was reviewed for redundancy and interpretability, after which the final 12-rule base in <xref ref-type="table" rid="table-19">Table A8</xref> was retained as the smallest rule inventory that still covered the intended high-, medium-, and low-risk situations.</p>
<p>Fuzzification is performed on the normalized input channels before rule evaluation. Continuous inputs are mapped into monotone bounded membership functions with overlapping support, while binary cues such as weapon detection use crisp memberships. For a normalized scalar input <inline-formula id="ieqn-382"><mml:math id="mml-ieqn-382"><mml:mi>z</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>, a typical three-term partition is represented as <inline-formula id="ieqn-383"><mml:math id="mml-ieqn-383"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">l</mml:mi><mml:mi mathvariant="normal">o</mml:mi><mml:mi mathvariant="normal">w</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>z</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, <inline-formula id="ieqn-384"><mml:math id="mml-ieqn-384"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">m</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">u</mml:mi><mml:mi mathvariant="normal">m</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>z</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, and <inline-formula id="ieqn-385"><mml:math id="mml-ieqn-385"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>z</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, with adjacent overlap to avoid discontinuous decision jumps near thresholds. Let <inline-formula id="ieqn-386"><mml:math id="mml-ieqn-386"><mml:msub><mml:mi>a</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mi>m</mml:mi></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> denote the antecedent memberships entering a rule. FLAD combines conjunctive antecedents with the bounded-product <inline-formula id="ieqn-387"><mml:math id="mml-ieqn-387"><mml:mi>t</mml:mi></mml:math></inline-formula>-norm,
<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mrow><mml:mtext>bp</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>a</mml:mi><mml:mo>,</mml:mo><mml:mi>b</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mi>a</mml:mi><mml:mo>+</mml:mo><mml:mi>b</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mo>,</mml:mo></mml:math></disp-formula>applied recursively for <inline-formula id="ieqn-388"><mml:math id="mml-ieqn-388"><mml:mi>m</mml:mi><mml:mo>&#x003E;</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula>, while disjunctive links use the standard maximum operator. If rule <inline-formula id="ieqn-389"><mml:math id="mml-ieqn-389"><mml:mi>r</mml:mi></mml:math></inline-formula> has consequent class <inline-formula id="ieqn-390"><mml:math id="mml-ieqn-390"><mml:mi>c</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mrow><mml:mi mathvariant="normal">L</mml:mi><mml:mi mathvariant="normal">o</mml:mi><mml:mi mathvariant="normal">w</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">M</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">u</mml:mi><mml:mi mathvariant="normal">m</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">H</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> and antecedent activation <inline-formula id="ieqn-391"><mml:math id="mml-ieqn-391"><mml:msub><mml:mi>&#x03B1;</mml:mi><mml:mi>r</mml:mi></mml:msub></mml:math></inline-formula>, its contribution is weighted as <inline-formula id="ieqn-392"><mml:math id="mml-ieqn-392"><mml:msub><mml:mi>&#x03B2;</mml:mi><mml:mi>r</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>w</mml:mi><mml:mi>r</mml:mi></mml:msub><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>&#x03B1;</mml:mi><mml:mi>r</mml:mi></mml:msub></mml:math></inline-formula>, where <inline-formula id="ieqn-393"><mml:math id="mml-ieqn-393"><mml:msub><mml:mi>w</mml:mi><mml:mi>r</mml:mi></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> is the rule weight reported in <xref ref-type="table" rid="table-19">Table A8</xref>. Class-wise supports are then aggregated over rules with the same consequent and normalized to obtain the posterior triplet,
<disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:msub><mml:mi>s</mml:mi><mml:mi>c</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mrow><mml:mi>r</mml:mi><mml:mo>:</mml:mo><mml:mi>c</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:munder><mml:msub><mml:mi>&#x03B2;</mml:mi><mml:mi>r</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mspace width="2em" /><mml:msub><mml:mrow><mml:mover><mml:mi>P</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>c</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:msub><mml:mi>s</mml:mi><mml:mi>c</mml:mi></mml:msub><mml:mrow><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:msup><mml:mi>c</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mi>L</mml:mi><mml:mo>,</mml:mo><mml:mi>M</mml:mi><mml:mo>,</mml:mo><mml:mi>H</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo></mml:mrow></mml:munder><mml:msub><mml:mi>s</mml:mi><mml:mrow><mml:msup><mml:mi>c</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo>,</mml:mo></mml:math></disp-formula>which is the quantity subsequently calibrated as described in <xref ref-type="sec" rid="s5_5">Section 5.5</xref>. This formulation makes the fuzzy logic explicit: fuzzification defines graded evidence, the bounded-product <inline-formula id="ieqn-394"><mml:math id="mml-ieqn-394"><mml:mi>t</mml:mi></mml:math></inline-formula>-norm encodes a soft logical AND that penalizes weak joint support, and the normalized class supports provide an auditable bridge between rule firing and final probabilistic output.</p>

<p>The complete rule inventory with linguistic terms and weights is provided in <xref ref-type="table" rid="table-19">Table A8</xref>; design choices are consistent with contemporary fuzzy-system practice and optimization for decision support [<xref ref-type="bibr" rid="ref-18">18</xref>&#x2013;<xref ref-type="bibr" rid="ref-20">20</xref>]. Importantly, the people-related antecedents in <xref ref-type="table" rid="table-19">Table A8</xref> refer to the number of individuals observable within the camera field of view at the current decision point, not to the total size of the surrounding crowd. Likewise, weapon-related antecedents reflect visible weapon-like patterns in that same restricted view. The rule base was therefore designed to treat camera-derived cues as local, incomplete evidence: several rules require corroboration from nonvisual inputs such as sector risk, stress, emotion-rate, or ambient noise, and even when a strong visual cue contributes prominently, the resulting alert is still interpreted through the full posterior bundle and adjacent temporal context. The sufficiency of this compact rule base was assessed, rather than assumed, through the leave&#x2013;one&#x2013;rule&#x2013;out and membership-sensitivity analyses reported in <xref ref-type="table" rid="table-13">Table A2</xref>: no rule met the joint pruning criterion of high overlap and negligible impact, and moderate perturbations of the membership functions produced only limited changes in Macro-<inline-formula id="ieqn-395"><mml:math id="mml-ieqn-395"><mml:msub><mml:mi>F</mml:mi><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula> and Brier, which supports the local robustness of the final 12-rule specification (Probability calibration and operating-point selection are handled as described in <xref ref-type="sec" rid="s5">Section 5</xref>).</p>

<p>At inference time, FLAD produces not only normalized class posteriors but also a compact explanation bundle for operator review. Specifically, the system logs the dominant rule activations, the corresponding antecedent memberships, and the posterior triplet <inline-formula id="ieqn-396"><mml:math id="mml-ieqn-396"><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>P</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mi mathvariant="normal">L</mml:mi><mml:mi mathvariant="normal">o</mml:mi><mml:mi mathvariant="normal">w</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>P</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mi mathvariant="normal">M</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">u</mml:mi><mml:mi mathvariant="normal">m</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>P</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mi mathvariant="normal">H</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. The operator-facing display is intentionally concise: it reports the winning risk level, the most influential two or three rules, and a short text rationale synthesized from those rules (e.g., &#x201C;weapon cue &#x002B; crowding &#x002B; rising stress&#x201D;). This design allows the user to distinguish alerts supported by convergent multimodal evidence from borderline alarms driven mainly by one cue family. Representative explanation traces are shown in <xref ref-type="table" rid="table-4">Table 4</xref>.</p>

</sec>
</sec>
<sec id="s5_5">
<label>5.5</label>
<title>Training, Splits, and Probability Calibration</title>
<p><bold>Train/test construction and leakage control.</bold> <xref ref-type="table" rid="table-11">Table 11</xref> summarizes the fold-level LOSO workflow and the corresponding leakage-control safeguards. We trained two univariate LSTM regressors, one for heart rate (HR) and one for the scalar emotion-rate signal, under an identical subject-disjoint protocol. Feature standardization was fitted using training-set statistics only, and regression targets were standardized with fold-specific <inline-formula id="ieqn-397"><mml:math id="mml-ieqn-397"><mml:mi>z</mml:mi></mml:math></inline-formula>-score scalers estimated exclusively from the training partition of each outer fold. Inputs were organized as fixed-length causal sequences of <inline-formula id="ieqn-398"><mml:math id="mml-ieqn-398"><mml:mi>L</mml:mi><mml:mo>&#x003E;</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula> time steps (input shape <inline-formula id="ieqn-399"><mml:math id="mml-ieqn-399"><mml:mo stretchy="false">[</mml:mo><mml:mi>T</mml:mi><mml:mo>=</mml:mo><mml:mi>L</mml:mi><mml:mo>,</mml:mo><mml:mi>d</mml:mi><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>) extracted from the temporally aligned feature stream by a sliding-window procedure. Unless otherwise stated, we used <inline-formula id="ieqn-400"><mml:math id="mml-ieqn-400"><mml:mi>L</mml:mi><mml:mo>=</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula> contiguous windows of the fused timeline (approximately <inline-formula id="ieqn-401"><mml:math id="mml-ieqn-401"><mml:mn>6</mml:mn></mml:math></inline-formula> s of context at the deployed <inline-formula id="ieqn-402"><mml:math id="mml-ieqn-402"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz rate) and a prediction horizon of <inline-formula id="ieqn-403"><mml:math id="mml-ieqn-403"><mml:mi>H</mml:mi><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula> steps (approximately <inline-formula id="ieqn-404"><mml:math id="mml-ieqn-404"><mml:mn>20</mml:mn></mml:math></inline-formula> s ahead), so that each supervised instance had the form <inline-formula id="ieqn-405"><mml:math id="mml-ieqn-405"><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="bold">x</mml:mi></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>L</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn><mml:mo>:</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mi>H</mml:mi></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. The sliding-window stride was fixed at <inline-formula id="ieqn-406"><mml:math id="mml-ieqn-406"><mml:mi>s</mml:mi></mml:math></inline-formula> steps (reported explicitly in <xref ref-type="table" rid="table-10">Table 10</xref>); thus, adjacent examples could be temporally correlated and, when <inline-formula id="ieqn-407"><mml:math id="mml-ieqn-407"><mml:mi>s</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mi>L</mml:mi></mml:math></inline-formula>, partially overlapping in their causal context. Any window whose look-back or look-ahead crossed a subject boundary, session boundary, or train/validation/test boundary was discarded to prevent temporal bleed-through. Each network consisted of a single LSTM layer with <inline-formula id="ieqn-408"><mml:math id="mml-ieqn-408"><mml:mi>u</mml:mi></mml:math></inline-formula> hidden units followed by a linear Dense (1) output layer. Hyperparameters were optimized separately for each forecasting task through a population-based genetic search over <inline-formula id="ieqn-409"><mml:math id="mml-ieqn-409"><mml:mi>u</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:mn>50</mml:mn><mml:mo>,</mml:mo><mml:mn>200</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> and learning rate <inline-formula id="ieqn-410"><mml:math id="mml-ieqn-410"><mml:mi>&#x03B1;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> (population <inline-formula id="ieqn-411"><mml:math id="mml-ieqn-411"><mml:mo>=</mml:mo><mml:mn>20</mml:mn></mml:math></inline-formula>, generations <inline-formula id="ieqn-412"><mml:math id="mml-ieqn-412"><mml:mo>=</mml:mo><mml:mn>100</mml:mn></mml:math></inline-formula>, tournament size <inline-formula id="ieqn-413"><mml:math id="mml-ieqn-413"><mml:mo>=</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula>, blend crossover <inline-formula id="ieqn-414"><mml:math id="mml-ieqn-414"><mml:mi>&#x03B1;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.5</mml:mn></mml:math></inline-formula>, Gaussian mutation <inline-formula id="ieqn-415"><mml:math id="mml-ieqn-415"><mml:mi>&#x03C3;</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-416"><mml:math id="mml-ieqn-416"><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mi>d</mml:mi><mml:mi>p</mml:mi><mml:mi>b</mml:mi><mml:mo>=</mml:mo><mml:mn>0.2</mml:mn></mml:math></inline-formula>), using validation MSE as the selection criterion. Optimization employed Adam (batch size <inline-formula id="ieqn-417"><mml:math id="mml-ieqn-417"><mml:mi>B</mml:mi><mml:mo>=</mml:mo><mml:mn>16</mml:mn></mml:math></inline-formula>), with a maximum of <inline-formula id="ieqn-418"><mml:math id="mml-ieqn-418"><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">max</mml:mo></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>100</mml:mn></mml:math></inline-formula> epochs and early stopping on val_loss (patience &#x003D; 10, restore_best_weights &#x003D; True). Because the forecasters are deliberately compact and the prediction horizon is short, the selected models often entered their best validation region after relatively few effective epochs before early stopping. We therefore interpret fast convergence as a pilot-scale optimization characteristic under the present data regime, not as proof that the training set is already sufficient for deployment-oriented generalization. Accordingly, the deployment-oriented results reported in this manuscript should be read as conditional on the current fixed pilot training regime rather than as evidence that further training data would leave the forecasters unchanged. Experiments were repeated across random seeds affecting initialization and within-fold data order, and performance metrics were aggregated only after completion of all outer LOSO folds. A complete list of hyperparameters and training settings is provided in <xref ref-type="table" rid="table-18">Table A7</xref>.</p>
<table-wrap id="table-11">
<label>Table 11</label>
<caption>
<title>Fold-level LOSO evaluation workflow and leakage controls. The held-out subject is the unit of independence for generalization assessment; episode-level windows are nested within that subject and are aggregated across outer folds only after all fold-specific decisions have been frozen.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Step</th>
<th>Data Used in Outer Fold <inline-formula id="ieqn-419"><mml:math id="mml-ieqn-419"><mml:mi mathvariant="bold-italic">j</mml:mi></mml:math></inline-formula></th>
<th>Operation and Leakage Control</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Held-out subject <inline-formula id="ieqn-420"><mml:math id="mml-ieqn-420"><mml:mi>j</mml:mi></mml:math></inline-formula></td>
<td>Reserve one entire participant as the test unit, which defines the unit of independence for fold-level generalization assessment. No windows from this participant are accessed during training, validation, model selection, calibration, or threshold selection.</td>
</tr>
<tr>
<td>2</td>
<td>Remaining 9 subjects</td>
<td>Construct the training and temporally blocked validation partitions from the non-test subjects, using guard gaps of at least <italic>L</italic> samples. Discard any candidate window whose look-back or look-ahead crosses a subject boundary, session boundary, or train/validation/test boundary.</td>
</tr>
<tr>
<td>3</td>
<td>Training subset only</td>
<td>Fit preprocessing transforms (e.g., feature standardization) and train the candidate forecasting models using the training subset only. No information from validation or test is used to estimate model parameters.</td>
</tr>
<tr>
<td>4</td>
<td>Validation subset only</td>
<td>Compare candidate models on validation performance, select the final model/hyperparameter setting, fit isotonic calibration mappings using validation predictions and labels only, and determine any operating threshold <inline-formula id="ieqn-421"><mml:math id="mml-ieqn-421"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> from calibrated validation outputs only (e.g., by maximizing <inline-formula id="ieqn-422"><mml:math id="mml-ieqn-422"><mml:msub><mml:mi>F</mml:mi><mml:mi>&#x03B2;</mml:mi></mml:msub></mml:math></inline-formula> or minimizing a pre-specified linear cost).</td>
</tr>
<tr>
<td>5</td>
<td>Held-out subject <inline-formula id="ieqn-423"><mml:math id="mml-ieqn-423"><mml:mi>j</mml:mi></mml:math></inline-formula></td>
<td>Freeze preprocessing transforms, selected model parameters, isotonic mappings, and any threshold <inline-formula id="ieqn-424"><mml:math id="mml-ieqn-424"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula>, and then perform a single-pass evaluation on the held-out participant. No re-fitting, recalibration, or threshold adjustment is allowed after observing test predictions.</td>
</tr>
<tr>
<td>6</td>
<td>All 10 outer folds</td>
<td>Concatenate the held-out predictions from the 10 test subjects to obtain the nominal held-out test set (<inline-formula id="ieqn-425"><mml:math id="mml-ieqn-425"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">t</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">s</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>20,000</mml:mn></mml:math></inline-formula> episode windows). After all fold-specific decisions have been frozen, report confidence intervals from a moving-block bootstrap applied to held-out predictions only, and interpret uncertainty jointly with <inline-formula id="ieqn-426"><mml:math id="mml-ieqn-426"><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">f</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> rather than the nominal record count alone.</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The unit of independence for evaluation was the <italic>held-out participant</italic>. In outer fold <inline-formula id="ieqn-427"><mml:math id="mml-ieqn-427"><mml:mi>j</mml:mi></mml:math></inline-formula>, one participant was reserved exclusively for testing, thereby defining the fold-level generalization unit. No episode from that participant was used during training, validation, model selection, calibration, or threshold selection. The remaining nine participants were used to construct the training and temporally blocked validation partitions, with guard gaps of at least <italic>L</italic> samples inserted around every train/validation boundary. As summarized in <xref ref-type="table" rid="table-11">Table 11</xref>, the fold-wise procedure was: (1) generate candidate episode windows from the nine non-test participants; (2) discard any window whose look-back or look-ahead crossed a subject, session, or partition boundary; (3) fit preprocessing transforms and train candidate models using the training subset only; (4) compare candidate models on the validation subset, select the final hyperparameter setting, and fit isotonic calibration mappings using validation predictions and labels only; (5) determine any alerting threshold <inline-formula id="ieqn-428"><mml:math id="mml-ieqn-428"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> for the optional High-risk operating point from calibrated validation outputs only; and (6) freeze the complete pipeline and apply it in a single pass to the held-out participant. After all fold-specific decisions had been frozen, the held-out predictions from the 10 outer LOSO folds were concatenated to form the reported nominal test set of <inline-formula id="ieqn-429"><mml:math id="mml-ieqn-429"><mml:mn>20,000</mml:mn></mml:math></inline-formula> held-out <italic>episode-level windows</italic>. These <inline-formula id="ieqn-430"><mml:math id="mml-ieqn-430"><mml:mn>20,000</mml:mn></mml:math></inline-formula> records therefore do not correspond to <inline-formula id="ieqn-431"><mml:math id="mml-ieqn-431"><mml:mn>20,000</mml:mn></mml:math></inline-formula> independent participants or independent trials; the independent generalization units are the 10 held-out participants defining the outer folds. Accordingly, inferential uncertainty was quantified with a moving-block bootstrap and interpreted jointly with the effective sample size under temporal dependence, rather than with the nominal record count alone.</p>

<p>To preserve probabilistic interpretability under a strictly leakage-free protocol, per-class posterior probabilities were calibrated by isotonic regression using the validation partition of each outer fold only, and the resulting monotone mappings were subsequently applied unchanged to the held-out subject. No calibration model was re-estimated, updated, or refined on the test fold at any stage. Calibration performance was quantified with the percentage-scaled Brier score and the Expected Calibration Error (ECE), and further examined visually through reliability diagrams. When an operating threshold was required for the optional High-risk alert, a scalar threshold <inline-formula id="ieqn-432"><mml:math id="mml-ieqn-432"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> was selected exclusively from calibrated validation predictions, either by maximizing recall-weighted <inline-formula id="ieqn-433"><mml:math id="mml-ieqn-433"><mml:msub><mml:mi>F</mml:mi><mml:mi>&#x03B2;</mml:mi></mml:msub></mml:math></inline-formula> or by minimizing a pre-specified linear decision cost, <inline-formula id="ieqn-434"><mml:math id="mml-ieqn-434"><mml:mi>C</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">N</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x22C5;</mml:mo><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">N</mml:mi></mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">P</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x22C5;</mml:mo><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">P</mml:mi></mml:mrow></mml:math></inline-formula>. The chosen threshold was then frozen before test-time inference and evaluated without modification on the held-out participant. For transparency, <xref ref-type="table" rid="table-6">Table 6</xref> reports the operating characteristics observed on the test set at several pre-specified thresholds; however, these values are provided for descriptive comparison only, and no threshold listed in that table was tuned, selected, or adjusted on the test data.</p>

<p>Two-sided 95% confidence intervals (CIs) were computed on the held-out test set using a moving-block bootstrap (MBB) to account for residual temporal dependence. The block length <italic>B</italic> was set to satisfy <inline-formula id="ieqn-435"><mml:math id="mml-ieqn-435"><mml:mi>B</mml:mi><mml:mo>&#x2265;</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>&#x03C4;</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">n</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> (estimated integrated autocorrelation time), and we report the effective sample size <inline-formula id="ieqn-436"><mml:math id="mml-ieqn-436"><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">f</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mspace width="negativethinmathspace" /><mml:mo>&#x2248;</mml:mo><mml:mspace width="negativethinmathspace" /><mml:mi>N</mml:mi><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:mi>B</mml:mi></mml:math></inline-formula> for interpretability; see <xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref>, <xref ref-type="disp-formula" rid="eqn-A13">Eqs. (A13)</xref>&#x2013;<xref ref-type="disp-formula" rid="eqn-A16">(A16)</xref>. The same calibration mappings and preprocessing statistics were used throughout the resampling procedure to preserve the evaluation protocol. Baselines and ablations were trained on identical features/splits and calibrated in the same way to enable fair, like-for-like comparisons.</p>
<p>For the SRP feature, the validation-fitted monotone mapping <inline-formula id="ieqn-437"><mml:math id="mml-ieqn-437"><mml:mi>&#x03D5;</mml:mi></mml:math></inline-formula> was kept fixed at test time (no re-fitting), mirroring the protocol used for probability calibration elsewhere in the pipeline.</p>
</sec>
<sec id="s5_6">
<label>5.6</label>
<title>Statistical Analysis</title>
<p>We evaluate multiclass performance in a one-vs.-rest setting, deriving per-class scores from the model posteriors <inline-formula id="ieqn-438"><mml:math id="mml-ieqn-438"><mml:msub><mml:mrow><mml:mover><mml:mi>p</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>c</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> and tracing Receiver Operating Characteristic (ROC) and Precision&#x2013;Recall (PR) curves by sweeping a threshold <inline-formula id="ieqn-439"><mml:math id="mml-ieqn-439"><mml:mi>t</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> over <inline-formula id="ieqn-440"><mml:math id="mml-ieqn-440"><mml:msub><mml:mrow><mml:mover><mml:mi>p</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>c</mml:mi></mml:msub></mml:math></inline-formula>. Discrimination is summarized with micro- and macro-aggregated metrics: micro-averages pool confusion-counts across classes (prevalence-weighted), whereas macro-averages take the unweighted mean of per-class metrics. Formal definitions of the calibration metrics used (percentage-scaled Brier and ECE) appear in <xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref>, <xref ref-type="disp-formula" rid="eqn-A17">Eqs. (A17)</xref> and <xref ref-type="disp-formula" rid="eqn-A18">(A18)</xref>; standard one-vs.-rest discrimination conventions are followed throughout.</p>
<p>Uncertainty is quantified with two-sided 95% confidence intervals computed via a moving-block bootstrap (MBB) that respects serial dependence in the temporally ordered test set. The bootstrap block length <italic>B</italic> is anchored to the estimated integrated autocorrelation time <inline-formula id="ieqn-441"><mml:math id="mml-ieqn-441"><mml:msub><mml:mrow><mml:mover><mml:mi>&#x03C4;</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">n</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> in <xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref>, <xref ref-type="disp-formula" rid="eqn-A13">Eq. (A13)</xref>, yielding an interpretable effective sample size <inline-formula id="ieqn-442"><mml:math id="mml-ieqn-442"><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">f</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mspace width="negativethinmathspace" /><mml:mo>&#x2248;</mml:mo><mml:mspace width="negativethinmathspace" /><mml:mi>N</mml:mi><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:mi>B</mml:mi></mml:math></inline-formula> in <xref ref-type="disp-formula" rid="eqn-A14">Eq. (A14)</xref>. Overlapping blocks <inline-formula id="ieqn-443"><mml:math id="mml-ieqn-443"><mml:msub><mml:mrow><mml:mi>&#x0212C;</mml:mi></mml:mrow><mml:mi>s</mml:mi></mml:msub></mml:math></inline-formula> and the number of blocks per replicate <inline-formula id="ieqn-444"><mml:math id="mml-ieqn-444"><mml:mi>m</mml:mi></mml:math></inline-formula> follow <xref ref-type="disp-formula" rid="eqn-A15">Eqs. (A15)</xref> and <xref ref-type="disp-formula" rid="eqn-A16">(A16)</xref>; unless stated otherwise, percentile intervals are reported.</p>
<p>Probabilistic outputs are calibrated on the validation split using isotonic regression and the learned mappings are held fixed at test (no re-fitting). Calibration quality is summarized numerically by Brier (%) and ECE (%) in <xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref>, <xref ref-type="disp-formula" rid="eqn-A17">Eqs. (A17)</xref> and <xref ref-type="disp-formula" rid="eqn-A18">(A18)</xref> and visually with reliability diagrams. When decision operating points are required (e.g., High-risk alert), the threshold <inline-formula id="ieqn-445"><mml:math id="mml-ieqn-445"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> is fixed on validation either by maximizing <inline-formula id="ieqn-446"><mml:math id="mml-ieqn-446"><mml:msub><mml:mi>F</mml:mi><mml:mi>&#x03B2;</mml:mi></mml:msub></mml:math></inline-formula> (recall-emphasis) or by minimizing a linear deployment cost <italic>C</italic>; the selected <inline-formula id="ieqn-447"><mml:math id="mml-ieqn-447"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> is then evaluated unchanged on the held-out test set. Because the held-out pilot set is class-balanced by design, deployment-oriented alert statistics were additionally transported to assumed real-world High-risk prevalences <inline-formula id="ieqn-448"><mml:math id="mml-ieqn-448"><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">H</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0.01</mml:mn><mml:mo>,</mml:mo><mml:mn>0.05</mml:mn><mml:mo>,</mml:mo><mml:mn>0.10</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>. For a fixed threshold <inline-formula id="ieqn-449"><mml:math id="mml-ieqn-449"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> with sensitivity <inline-formula id="ieqn-450"><mml:math id="mml-ieqn-450"><mml:mrow><mml:mi mathvariant="normal">S</mml:mi><mml:mi mathvariant="normal">e</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mo movablelimits="true" form="prefix">Pr</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover><mml:mi>Y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>=</mml:mo></mml:mrow><mml:mn>1</mml:mn><mml:mo>&#x2223;</mml:mo><mml:mi>Y</mml:mi><mml:mrow><mml:mo>=</mml:mo></mml:mrow><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> and false-positive rate <inline-formula id="ieqn-451"><mml:math id="mml-ieqn-451"><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mo movablelimits="true" form="prefix">Pr</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover><mml:mi>Y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>=</mml:mo></mml:mrow><mml:mn>1</mml:mn><mml:mo>&#x2223;</mml:mo><mml:mi>Y</mml:mi><mml:mrow><mml:mo>=</mml:mo></mml:mrow><mml:mn>0</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, the prevalence-adjusted positive predictive value was computed as <xref ref-type="disp-formula" rid="eqn-3">Eq. (3)</xref>.
<disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mrow><mml:mtext>PPV</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mtext>High</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mrow><mml:mtext>Se</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mtext>High</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mrow><mml:mtext>Se</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mtext>High</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mrow><mml:mtext>FPR</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mspace width="thinmathspace" /><mml:mo stretchy="false">[</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mtext>High</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">]</mml:mo></mml:mrow></mml:mfrac><mml:mspace width="thinmathspace" /></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>For the deployed decision rate <inline-formula id="ieqn-452"><mml:math id="mml-ieqn-452"><mml:mi>r</mml:mi><mml:mo>=</mml:mo><mml:mn>1800</mml:mn></mml:math></inline-formula> windows/h on the fused <inline-formula id="ieqn-453"><mml:math id="mml-ieqn-453"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz timeline, the expected total alert burden and false-alert burden were computed as <xref ref-type="disp-formula" rid="eqn-4">Eqs. (4)</xref> and <xref ref-type="disp-formula" rid="eqn-5">(5)</xref>.
<disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>A</mml:mi><mml:mi>h</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mtext>High</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mi>r</mml:mi><mml:mspace width="thinmathspace" /><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">[</mml:mo></mml:mrow></mml:mstyle><mml:mrow><mml:mtext>Se</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mtext>High</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mrow><mml:mtext>FPR</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mspace width="thinmathspace" /><mml:mo stretchy="false">[</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mtext>High</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">]</mml:mo><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">]</mml:mo></mml:mrow></mml:mstyle></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mi>F</mml:mi><mml:msub><mml:mi>A</mml:mi><mml:mi>h</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mtext>High</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mi>r</mml:mi><mml:mspace width="thinmathspace" /><mml:mrow><mml:mtext>FPR</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>&#x03C4;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mspace width="thinmathspace" /><mml:mo stretchy="false">[</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mrow><mml:mrow><mml:mtext>High</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">]</mml:mo><mml:mspace width="thinmathspace" /></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>These prevalence-transport calculations do not alter threshold-free discrimination metrics such as AUROC or AUPRC; rather, they translate a fixed operating point into deployment-oriented quantities under rare-event assumptions. Operational utility was assessed via decision-curve analysis (DCA)&#x2014;reporting net benefit as a function of the threshold probability&#x2014;and by estimating the expected alert burden (alerts per hour) at the selected operating points. Inter-rater agreement for the three-level ordinal ground truth was assessed on a stratified subset (quadratic-weighted Cohen&#x2019;s <inline-formula id="ieqn-454"><mml:math id="mml-ieqn-454"><mml:msub><mml:mi>&#x03BA;</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:math></inline-formula>, Krippendorff&#x2019;s <inline-formula id="ieqn-455"><mml:math id="mml-ieqn-455"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula>, Fleiss&#x2019; <inline-formula id="ieqn-456"><mml:math id="mml-ieqn-456"><mml:mi>&#x03BA;</mml:mi></mml:math></inline-formula>), with details and exact formulas in <xref ref-type="sec" rid="s9_1">Appendix A.3.1</xref>, <xref ref-type="disp-formula" rid="eqn-A2">Eqs. (A2)</xref>&#x2013;<xref ref-type="disp-formula" rid="eqn-A12">(A12)</xref>.</p>
<p>Unless otherwise noted, all baselines and ablations share identical features, splits, calibration protocol, and MBB settings to enable like-for-like comparisons. Given approximately balanced class counts in the held-out set, macro and weighted aggregates coincide to first order; we therefore report macro values in the main text and provide weighted values in tables for completeness. To reduce ambiguity across displays, all figures and tables were prepared under a common reporting template: captions state the evaluation unit explicitly, class labels appear in the fixed order Low/Medium/High, pooled summaries are named consistently as micro and macro, and metric values quoted in the running text were proofread against the final table outputs after formatting revision.</p>
<p>Between-model differences in threshold-free discrimination were assessed with DeLong&#x2019;s paired test for AUROC contrasts (two-sided, <inline-formula id="ieqn-457"><mml:math id="mml-ieqn-457"><mml:mi>&#x03B1;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.05</mml:mn></mml:math></inline-formula>). For paired classification outcomes at a fixed operating threshold (chosen on validation and kept fixed at test), we used McNemar&#x2019;s test with continuity correction on discordant counts <inline-formula id="ieqn-458"><mml:math id="mml-ieqn-458"><mml:mo stretchy="false">(</mml:mo><mml:mi>b</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. When multiple hypotheses were assessed, <inline-formula id="ieqn-459"><mml:math id="mml-ieqn-459"><mml:mi>p</mml:mi></mml:math></inline-formula>-values were adjusted using the Holm&#x2013;Bonferroni step-down procedure. We report absolute effect sizes (<inline-formula id="ieqn-460"><mml:math id="mml-ieqn-460"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula>) with two-sided 95% confidence intervals alongside <inline-formula id="ieqn-461"><mml:math id="mml-ieqn-461"><mml:mi>p</mml:mi></mml:math></inline-formula>-values.</p>
</sec>
<sec id="s5_7">
<label>5.7</label>
<title>Baselines and Ablation Protocols</title>
<p>We benchmark ADPS against non-fuzzy classifiers trained on the same features and data splits: Logistic Regression (LR), Gradient Boosting (GBM), Random Forest (RF), and a shallow Multilayer Perceptron (MLP). All baselines are probability-calibrated on the validation split (isotonic regression) and evaluated on the held-out test set without further tuning; we report Macro-F1, AUROC, AUPRC, Accuracy, Brier (%), and ECE (%). To keep the comparator study transparent and like-for-like, every baseline received the same subject-disjoint folds, the same validation-only isotonic calibration procedure, and an explicitly bounded tuning budget within the non-test data of each outer fold. Full baseline search budgets, candidate hyperparameter sets, and the final settings used for reporting are summarized in <xref ref-type="table" rid="table-20">Table A9</xref>, which documents the matched comparator budgets used in the pilot analysis.</p>
<p>To quantify the marginal contribution of each input family, we run one-at-a-time feature ablations under an identical training and calibration protocol. For each metric <inline-formula id="ieqn-462"><mml:math id="mml-ieqn-462"><mml:mi>M</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">B</mml:mi><mml:mi mathvariant="normal">r</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">r</mml:mi></mml:mrow><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> we define <inline-formula id="ieqn-463"><mml:math id="mml-ieqn-463"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>M</mml:mi><mml:mo>:=</mml:mo><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:mtext>ablated</mml:mtext></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:mtext>full</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula>, where negative <inline-formula id="ieqn-464"><mml:math id="mml-ieqn-464"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula> in discrimination metrics indicates degradation and positive <inline-formula id="ieqn-465"><mml:math id="mml-ieqn-465"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi mathvariant="normal">B</mml:mi><mml:mi mathvariant="normal">r</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">r</mml:mi></mml:mrow></mml:math></inline-formula> denotes worse calibration (Brier deltas expressed in percentage points when scaled).</p>
<p>For the No LSTM variant, short-horizon predictors are replaced with leakage-free surrogates&#x2014;last-observation-carried-forward for emotion-rate and an exponentially weighted moving average for heart-rate with decay selected on validation&#x2014;to isolate the value of forecasting while preserving the evaluation protocol. In addition to the No LSTM surrogate variant, we include a No forecasting control in which the LBPS architecture is evaluated with <inline-formula id="ieqn-466"><mml:math id="mml-ieqn-466"><mml:mi>L</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula> and <inline-formula id="ieqn-467"><mml:math id="mml-ieqn-467"><mml:mi>H</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> (same-step regression) under identical features, splits, and calibration. This isolates the incremental value of explicit look-ahead (<inline-formula id="ieqn-468"><mml:math id="mml-ieqn-468"><mml:mi>H</mml:mi><mml:mo>&#x2265;</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>) beyond any smoothing or carry-forward effects.</p>
<p>Uncertainty for point estimates and ablation deltas is summarized with two-sided 95% confidence intervals computed via a moving-block bootstrap that respects temporal dependence (block length <inline-formula id="ieqn-469"><mml:math id="mml-ieqn-469"><mml:mi>B</mml:mi><mml:mspace width="negativethinmathspace" /><mml:mo>&#x2265;</mml:mo><mml:mspace width="negativethinmathspace" /><mml:msub><mml:mi>&#x03C4;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">n</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>; effective sample size <inline-formula id="ieqn-470"><mml:math id="mml-ieqn-470"><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">f</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mspace width="negativethinmathspace" /><mml:mo>&#x2248;</mml:mo><mml:mspace width="negativethinmathspace" /><mml:mi>N</mml:mi><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:mi>B</mml:mi></mml:math></inline-formula>); unless noted otherwise, intervals are percentile-based. To enable reproducible operating-point analyzes and cost-sensitive comparisons, all preprocessing and calibration mappings are fitted on training/validation and kept fixed at test for both baselines and ablations.</p>
</sec>
<sec id="s5_8">
<label>5.8</label>
<title>Exploratory External Validation and OOD Robustness</title>
<p>External evaluation was conducted on a small independently acquired cohort (site B) and is presented strictly as exploratory. The purpose of this analysis was to probe whether the internally developed pipeline could be applied without re-fitting outside the development cohort, not to establish robust external generalization across settings or populations. The same preprocessing pipeline, one-vs.-rest evaluation protocol, probability calibration (isotonic, fitted on the internal validation split), and decision thresholds selected on validation were applied unchanged. No retraining, re-tuning, or re-calibration was performed on external data. Discrimination (macro/micro <inline-formula id="ieqn-471"><mml:math id="mml-ieqn-471"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, AUROC, AUPRC) and calibration (Brier%, ECE%) metrics follow the conventions in <xref ref-type="sec" rid="s5_6">Section 5.6</xref> and <xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref> (<xref ref-type="disp-formula" rid="eqn-A17">Eqs. (A17)</xref> and <xref ref-type="disp-formula" rid="eqn-A18">(A18)</xref>). Given the limited external sample size, these estimates should be interpreted as preliminary transportability signals rather than as definitive evidence of robustness.</p>
<p>To respect temporal dependence, two-sided 95% confidence intervals (CIs) were computed via a moving-block bootstrap (MBB) on temporally ordered episodes. The block length <italic>B</italic> was anchored to the estimated integrated autocorrelation time <inline-formula id="ieqn-472"><mml:math id="mml-ieqn-472"><mml:msub><mml:mrow><mml:mover><mml:mi>&#x03C4;</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">n</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> (<xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref>, <xref ref-type="disp-formula" rid="eqn-A13">Eq. (A13)</xref>); overlapping blocks and the number of blocks per replicate follow <xref ref-type="disp-formula" rid="eqn-A15">Eqs. (A15)</xref> and <xref ref-type="disp-formula" rid="eqn-A16">(A16)</xref>. Within each bootstrap replicate, the validation-fitted isotonic mapping and all preprocessing statistics were held fixed to preserve a leakage-free protocol.</p>
<p>Module-level transfer was assessed without distribution alignment by applying the emotion-rate branch to a public affect dataset under the same featurization/normalization used in-domain. Because the heart-rate branch is regression-only, it is evaluated with RMSE (defined in <xref ref-type="sec" rid="s9">Appendix A.3</xref>) and excluded from classification tables to avoid mixing heterogeneous targets and loss functions. These cross-dataset module results provide supporting evidence at the component level, but they do not replace full-system external validation on a substantially larger independent cohort. Consistent with the external pilot analysis, all module evaluations inherit frozen thresholds and calibration mappings chosen on validation.</p>
<p>Robustness to covariate shift was evaluated under four controlled stressors&#x2014;low light/backlight, occlusion/pose, crowding, and elevated ambient noise&#x2014;implemented during acquisition. Let <inline-formula id="ieqn-473"><mml:math id="mml-ieqn-473"><mml:mi>M</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="normal">F</mml:mi><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mtext>macro</mml:mtext></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">O</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">A</mml:mi><mml:mi mathvariant="normal">U</mml:mi><mml:mi mathvariant="normal">P</mml:mi><mml:mi mathvariant="normal">R</mml:mi><mml:mi mathvariant="normal">C</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">B</mml:mi><mml:mi mathvariant="normal">r</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">r</mml:mi></mml:mrow><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> denote a scalar metric; the shift-induced change is defined by the performance delta
<disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>M</mml:mi><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:mrow><mml:mtext>shift</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>&#x2212;</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:mrow><mml:mtext>in-domain</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mspace width="thinmathspace" /><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>As per <xref ref-type="disp-formula" rid="eqn-6">Eq. (6)</xref>, negative <inline-formula id="ieqn-474"><mml:math id="mml-ieqn-474"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>M</mml:mi></mml:math></inline-formula> indicates degradation for discrimination metrics, whereas positive <inline-formula id="ieqn-475"><mml:math id="mml-ieqn-475"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>M</mml:mi></mml:math></inline-formula> indicates worse calibration for Brier (reported in percentage points when scaled). Thresholds <inline-formula id="ieqn-476"><mml:math id="mml-ieqn-476"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> and isotonic mappings were fixed a priori from validation and kept constant across all OOD evaluations. CIs for <inline-formula id="ieqn-477"><mml:math id="mml-ieqn-477"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>M</mml:mi></mml:math></inline-formula> were obtained via MBB using the same <italic>B</italic> as the in-domain reference; to preserve class balance and dependence, resampling used stratified, contiguous blocks per condition (<xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref>).</p>
<p>Where inferential comparisons were required, paired outcome differences were assessed with McNemar&#x2019;s test and AUROC contrasts with DeLong&#x2019;s test (two-sided, <inline-formula id="ieqn-478"><mml:math id="mml-ieqn-478"><mml:mi>&#x03B1;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.05</mml:mn></mml:math></inline-formula>); multiplicity, when relevant, was controlled via Holm adjustment. All procedures (calibration locking, blocked resampling, fixed operating points) were applied identically to the proposed model, baselines, and ablations to enable like-for-like comparisons.</p>
</sec>
<sec id="s5_9">
<label>5.9</label>
<title>Computational Efficiency Profiling</title>
<p>End-to-end latency was defined as the interval from sensor acquisition to the risk output, <inline-formula id="ieqn-479"><mml:math id="mml-ieqn-479"><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">e</mml:mi><mml:mn>2</mml:mn><mml:mi mathvariant="normal">e</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mtext>out</mml:mtext></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mtext>in</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula> (<xref ref-type="sec" rid="s9_3">Appendix A.3.3</xref>, <xref ref-type="disp-formula" rid="eqn-A19">Eq. (A19)</xref>). For each record <inline-formula id="ieqn-480"><mml:math id="mml-ieqn-480"><mml:mi>i</mml:mi></mml:math></inline-formula>, the total processing time <inline-formula id="ieqn-481"><mml:math id="mml-ieqn-481"><mml:msub><mml:mi>T</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula> was decomposed as the sum of latencies across instrumented pipeline stages <inline-formula id="ieqn-482"><mml:math id="mml-ieqn-482"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> (<xref ref-type="sec" rid="s9_3">Appendix A.3.3</xref>, <xref ref-type="disp-formula" rid="eqn-A20">Eq. (A20)</xref>). We profiled all pipeline stages on-device (Raspberry Pi 3 Model B&#x002B;) with high-resolution timers and summarize the distribution of <inline-formula id="ieqn-483"><mml:math id="mml-ieqn-483"><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> in <xref ref-type="fig" rid="fig-4">Fig. A1</xref> (histogram); per-component medians, 95th percentiles, and ranges are reported in <xref ref-type="table" rid="table-16">Table A5</xref>, and the bill of materials plus operating points in <xref ref-type="table" rid="table-17">Table A6</xref>. In addition to pointwise latency instrumentation, we conducted a continuous 6 h sustained-load deployment on Raspberry Pi 3 Model B&#x002B; at the deployed fused decision period <inline-formula id="ieqn-484"><mml:math id="mml-ieqn-484"><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mo>=</mml:mo><mml:mn>2.0</mml:mn></mml:math></inline-formula> s (<inline-formula id="ieqn-485"><mml:math id="mml-ieqn-485"><mml:mn>0.5</mml:mn></mml:math></inline-formula> Hz). CPU utilization and SoC temperature were sampled throughout the run to assess computational density and thermal stability under passive cooling; we summarize them by empirical mean, standard deviation (for CPU load), and peak. Realized throughput was computed as the number of completed fused decisions per unit time, throughput drift as the relative deviation of the late-run throughput from the early-run reference throughput, and temporal regularity for operator-facing High-risk alerts as the absolute inter-arrival jitter around the deployed schedule. Under this protocol, the system sustained mean CPU utilization of <inline-formula id="ieqn-486"><mml:math id="mml-ieqn-486"><mml:mn>68.4</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> (<inline-formula id="ieqn-487"><mml:math id="mml-ieqn-487"><mml:mo>&#x00B1;</mml:mo><mml:mn>4.2</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>) with a peak of <inline-formula id="ieqn-488"><mml:math id="mml-ieqn-488"><mml:mn>89.2</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, mean SoC temperature of <inline-formula id="ieqn-489"><mml:math id="mml-ieqn-489"><mml:msup><mml:mn>64.2</mml:mn><mml:mo>&#x2218;</mml:mo></mml:msup></mml:math></inline-formula>C with a peak of <inline-formula id="ieqn-490"><mml:math id="mml-ieqn-490"><mml:msup><mml:mn>68.5</mml:mn><mml:mo>&#x2218;</mml:mo></mml:msup></mml:math></inline-formula>C, and mean throughput of <inline-formula id="ieqn-491"><mml:math id="mml-ieqn-491"><mml:mn>0.798</mml:mn></mml:math></inline-formula> records/s with drift below <inline-formula id="ieqn-492"><mml:math id="mml-ieqn-492"><mml:mn>1.2</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>; High-risk alert jitter remained within <inline-formula id="ieqn-493"><mml:math id="mml-ieqn-493"><mml:mo>&#x00B1;</mml:mo><mml:mn>140</mml:mn></mml:math></inline-formula> ms. For deployment planning, the nominal cell-based battery specification in <xref ref-type="table" rid="table-17">Table A6</xref> (<inline-formula id="ieqn-494"><mml:math id="mml-ieqn-494"><mml:msubsup><mml:mi>E</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">b</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mi mathvariant="normal">n</mml:mi><mml:mi mathvariant="normal">o</mml:mi><mml:mi mathvariant="normal">m</mml:mi></mml:mrow></mml:mrow></mml:msubsup><mml:mo>&#x2248;</mml:mo><mml:mn>44.4</mml:mn></mml:math></inline-formula> Wh) was used to derive a battery-based power/autonomy proxy, corresponding to an estimated mean power draw of <inline-formula id="ieqn-495"><mml:math id="mml-ieqn-495"><mml:mn>5.18</mml:mn></mml:math></inline-formula> W, a peak proxy of <inline-formula id="ieqn-496"><mml:math id="mml-ieqn-496"><mml:mn>6.45</mml:mn></mml:math></inline-formula> W, and expected autonomy of approximately <inline-formula id="ieqn-497"><mml:math id="mml-ieqn-497"><mml:mn>8.57</mml:mn></mml:math></inline-formula> h under the profiled workload. Direct inline electrical telemetry was not instrumented; accordingly, the power figures should be interpreted as battery-based proxies rather than as direct wattmeter measurements.</p>

<p>Unless otherwise noted, 95% intervals for quantiles (e.g., the 95th percentile <inline-formula id="ieqn-498"><mml:math id="mml-ieqn-498"><mml:msub><mml:mrow><mml:mover><mml:mi>Q</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>0.95</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>) are computed from the empirical distribution of <inline-formula id="ieqn-499"><mml:math id="mml-ieqn-499"><mml:msub><mml:mi>T</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula> (definition in <xref ref-type="sec" rid="s9_3">Appendix A.3.3</xref>, <xref ref-type="disp-formula" rid="eqn-A21">Eq. (A21)</xref>), keeping the measurement protocol fixed across replicates.</p>
</sec>
<sec id="s5_10">
<label>5.10</label>
<title>Statistical Testing</title>
<p>Between-model differences in threshold-free discrimination were assessed with DeLong&#x2019;s paired test for AUROC contrasts (two-sided, <inline-formula id="ieqn-500"><mml:math id="mml-ieqn-500"><mml:mi>&#x03B1;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.05</mml:mn></mml:math></inline-formula>). Let <inline-formula id="ieqn-501"><mml:math id="mml-ieqn-501"><mml:msub><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>A</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula> denote the AUROC difference; the standardized <inline-formula id="ieqn-502"><mml:math id="mml-ieqn-502"><mml:mi>z</mml:mi></mml:math></inline-formula>-statistic is defined in <xref ref-type="sec" rid="s9_4">Appendix A.3.4</xref>, <xref ref-type="disp-formula" rid="eqn-A22">Eq. (A22)</xref>. We report effect sizes and two-sided 95% confidence intervals.</p>
<p>For paired classification outcomes at a fixed operating threshold (chosen on validation and kept fixed at test), we used McNemar&#x2019;s test with continuity correction on the discordant cell counts <inline-formula id="ieqn-503"><mml:math id="mml-ieqn-503"><mml:mo stretchy="false">(</mml:mo><mml:mi>b</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> of the <inline-formula id="ieqn-504"><mml:math id="mml-ieqn-504"><mml:mn>2</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula> table; the test statistic is shown in <xref ref-type="sec" rid="s9_4">Appendix A.3.4</xref>, <xref ref-type="disp-formula" rid="eqn-A23">Eq. (A23)</xref>.</p>
<p>When multiple pairwise comparisons were performed, familywise error was controlled with Holm&#x2019;s step-down procedure; the sequential critical levels are given in <xref ref-type="sec" rid="s9_4">Appendix A.3.4</xref>, <xref ref-type="disp-formula" rid="eqn-A24">Eq. (A24)</xref>. We report effect sizes and two-sided 95% confidence intervals; formal test definitions are provided in <xref ref-type="sec" rid="s9_4">Appendix A.3.4</xref>.</p>
<p>Uncertainty for scalar metrics and deltas (Macro-F1, AUROC, AUPRC, Brier, ECE) was summarized with two-sided 95% moving-block bootstrap intervals that respect temporal dependence; block construction and the effective sample-size rationale follow <xref ref-type="sec" rid="s5_6">Section 5.6</xref> and <xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref>.</p>
</sec>
</sec>
<sec id="s6">
<label>6</label>
<title>Conclusions and Future Work</title>
<p>This study developed and pilot-tested the Aggression Detection&#x2013;Prediction System (ADPS), a mobile expert system that integrates lightweight on-body and ambient signals through a hybrid architecture of Long Short-Term Memory (LSTM) networks and an interpretable fuzzy logic decision layer. Within subject-disjoint in-domain evaluation, the proposed model achieved macro-<inline-formula id="ieqn-505"><mml:math id="mml-ieqn-505"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>98.3</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> and AUROC <inline-formula id="ieqn-506"><mml:math id="mml-ieqn-506"><mml:mo>=</mml:mo><mml:mn>0.998</mml:mn></mml:math></inline-formula>, showing higher pilot-scale point estimates than the calibrated non-fuzzy baselines while maintaining low miscalibration (ECE <inline-formula id="ieqn-507"><mml:math id="mml-ieqn-507"><mml:mo>=</mml:mo><mml:mn>1.20</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>). The primary contribution of this work lies in a unified five-part design logic: short-horizon temporal modeling, transparent fuzzy aggregation, lightweight sequence modeling, multimodal robustness to missingness, and deployment-oriented pilot evaluation. These points are intended to be read consistently across the manuscript as one coherent contribution thread rather than as isolated claims. Together, they provide auditable and computationally feasible pilot-stage aggression forecasting. In particular, the revised analysis now makes the contribution of the fuzzy layer more concrete by pairing the matched comparison against a calibrated non-fuzzy MLP with operator-facing rule traces that show how true-positive and false-positive High-risk alerts can be interpreted in practice. In addition, the revised Methods now make the FLAD construction itself more explicit by clarifying how the 12-rule base was built from inference-time variables and operational escalation patterns, how continuous cues were fuzzified into overlapping linguistic memberships, how the bounded-product <inline-formula id="ieqn-508"><mml:math id="mml-ieqn-508"><mml:mi>t</mml:mi></mml:math></inline-formula>-norm was applied during antecedent aggregation, and how the final compact rule set was checked for sufficiency through leave&#x2013;one&#x2013;rule&#x2013;out and membership-sensitivity analyses. At the same time, the present prototype should not be understood as observing the full crowd environment: the person-count and weapon cues are extracted from a forward-facing camera and therefore summarize only the locally visible sector. Their contribution to FLAD is useful, but inherently partial, and broader scene understanding would require wider-angle, multi-camera, or otherwise complementary sensing. Likewise, the choice of YOLOv7 for person detection should be interpreted as a pragmatic pilot-stage engineering decision rather than as a claim that this detector is the newest available architecture. In the present study, its role is that of a reproducible, off-the-shelf, edge-compatible backbone whose adequacy is supported by the held-out module-level results and by the downstream counterfactual analyses. Furthermore, deployment on a Raspberry Pi 3B&#x002B; now indicates latency-compatible and sustained-load pilot-stage feasibility under the tested workload, supported by a continuous 6 h profile with mean CPU utilization of <inline-formula id="ieqn-509"><mml:math id="mml-ieqn-509"><mml:mn>68.4</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>, mean throughput of <inline-formula id="ieqn-510"><mml:math id="mml-ieqn-510"><mml:mn>0.798</mml:mn></mml:math></inline-formula> records/s, bounded thermal load, and a battery-based mean-power proxy of <inline-formula id="ieqn-511"><mml:math id="mml-ieqn-511"><mml:mn>5.18</mml:mn></mml:math></inline-formula> W. At the same time, the external cohort remains small and strictly exploratory; therefore, those findings should be viewed only as a preliminary signal rather than as sufficient evidence of robustness across sites or populations. The class-balanced pilot design is also more favorable than realistic field prevalence for High-risk events; accordingly, deployment interpretation should rely not only on balanced-set discrimination but also on prevalence-adjusted alert precision and false-alert burden. Overall, the present results support proof-of-concept feasibility, but the performance estimates should still be interpreted cautiously given the pilot scale, and broader claims of external generalization or deployment robustness should remain provisional until confirmed in substantially larger, multi-session, and multi-site cohorts, ideally under naturally imbalanced event rates and prospectively specified alarm-management policies. Because only 10 independent participants contributed the subject-held-out test folds, residual overfitting at the participant level cannot yet be excluded and should be treated as an explicit limitation of the present FLAD evaluation. Because this article reports the completed pilot dataset, that limitation could not be eliminated within the current revision by adding new subject-level tests. The appropriate corrective action is therefore transparent claim-bounding and explicit acknowledgment of uncertainty, with confirmation deferred to a later, larger validation campaign. In addition, the revised systems section now reports a continuous-operation profile that includes CPU load, thermal behavior, throughput stability, alert jitter, and a battery-based power/autonomy proxy. These measurements substantially strengthen the deployment argument beyond latency alone, although direct inline electrical telemetry and testing under harsher ambient or multi-stream conditions remain important targets for future systems evaluation. Given the sensitivity of the application domain, future deployment-oriented studies should pair technical validation with explicit governance, privacy-preserving data handling, and subgroup fairness audits. Future revisions should also strengthen the external validity of the target definition itself by testing whether the present Low/Medium/High codebook remains stable under broader multi-expert review and across institutions, scenarios, and security cultures. In that sense, the current aggressiveness scale should be viewed as an explicit pilot operationalization of short-horizon escalation risk, not as a final universal standard. Rapid LBPS convergence in this pilot should likewise be interpreted cautiously: because the compact forecasters often stabilized after relatively few effective epochs, substantially larger and more heterogeneous training datasets will be needed to verify that this behavior reflects learnable short-horizon structure rather than limited pilot-scale variability. Because no further subject-level sequences were available within this completed pilot, the appropriate present remedy is explicit claim-bounding rather than retrospective expansion of the training set within the current revision. Future research will focus on multi-site validation and the exploration of long-term human-system interaction to further enhance the generalizability and ethical deployment of the ADPS framework.</p>
</sec>
</body>
<back>
<ack>
<p>The authors would like to express their sincere gratitude to CUNEF Universidad for its invaluable support and for providing access to the facilities and resources that made this research possible.</p>
</ack>
<sec>
<title>Funding Statement</title>
<p>The authors received no specific funding for this study.</p>
</sec>
<sec>
<title>Author Contributions</title>
<p>Conceptualization: Cesar Guevara and Victoria Lopez; Methodology: Cesar Guevara and Victoria Lopez; Software: Cesar Guevara; Validation: Cesar Guevara; Formal analysis: Cesar Guevara; Investigation: Cesar Guevara; Resources: Victoria Lopez; Data curation: Cesar Guevara; Writing&#x2014;original draft: Cesar Guevara; Writing&#x2014;review &#x0026; editing: Cesar Guevara and Victoria Lopez; Visualization: Cesar Guevara; Supervision: Victoria Lopez; Project administration: Victoria Lopez. All authors reviewed and approved the final version of the manuscript.</p>
</sec>
<sec sec-type="data-availability">
<title>Availability of Data and Materials</title>
<p>Aggregate source data underlying all figures and tables are available at Mendeley Data (<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.17632/syxf6yzzc2.2">https://doi.org/10.17632/syxf6yzzc2.2</ext-link>, version 2.2), accessible to referees via a private, view-only link: <ext-link ext-link-type="uri" xlink:href="https://data.mendeley.com/datasets/syxf6yzzc2/2">https://data.mendeley.com/datasets/syxf6yzzc2/2</ext-link>. Raw audiovisual and physiological recordings are not shared publicly because the source material belongs to a sensitive high-stakes domain and could enable re-identification. Only aggregate outputs are reported in the manuscript, and any subset shared beyond the current article is de-identified and subject to an appropriate data-use agreement and ethics-compatible access conditions.</p>
</sec>
<sec>
<title>Ethics Approval</title>
<p>The study protocol, participant information sheet, consent procedure, and data-handling plan were reviewed and approved by the Ethics Committee of CUNEF Universidad and were conducted in accordance with the Declaration of Helsinki. Data collection and annotation were managed under anonymous participant codes; direct identifiers were stored separately from the research files; the analytical datasets used for model development were processed in de-identified form; and access to raw recordings was restricted to authorized research personnel. All participants provided written informed consent for participation, sensor recording, annotation, analysis, and the publication of aggregate de-identified results.</p>
</sec>
<sec sec-type="COI-statement">
<title>Conflicts of Interest</title>
<p>The authors declare no conflicts of interest.</p>
</sec>
<app-group id="appg-1">
<app id="app-1">
<title>Appendix A</title>
<sec id="s7">
<title>Appendix A.1</title>
<table-wrap id="table-12">
<label>Table A1</label>
<caption>
<title>Per-module performance of the SCS on the final test split with 95% CIs (moving-block bootstrap). Precision (PR), Recall (RC) and <inline-formula id="ieqn-512"><mml:math id="mml-ieqn-512"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> are reported as percentages. The main takeaway is that the off-the-shelf YOLOv7 person detector remains strong enough for the present pilot geometry (<inline-formula id="ieqn-513"><mml:math id="mml-ieqn-513"><mml:msub><mml:mi>F</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mn>95.4</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>), so its role in ADPS is empirically supported even though it is no longer the newest detector family.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Module</th>
<th>PR (%)</th>
<th>RC (%)</th>
<th>F1 (%)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Person detector (YOLOv7)</td>
<td>95.7 [95.3, 96.1]</td>
<td>95.1 [94.7, 95.5]</td>
<td>95.4 [95.0, 95.8]</td>
</tr>
<tr>
<td>Firearm detector (Haar)</td>
<td>95.4 [95.0, 95.8]</td>
<td>95.9 [95.5, 96.3]</td>
<td>95.7 [95.3, 96.1]</td>
</tr>
<tr>
<td>Emotion analysis (facial)</td>
<td>95.2 [94.8, 95.6]</td>
<td>95.0 [94.6, 95.4]</td>
<td>95.1 [94.7, 95.5]</td>
</tr>
<tr>
<td>Macro average</td>
<td>95.43 [95.1, 95.7]</td>
<td>95.33 [95.0, 95.6]</td>
<td>95.38 [95.1, 95.7]</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-13">
<label>Table A2</label>
<caption>
<title>Rule ablation (leave-one-rule-out, LORO) and membership sensitivity. The main takeaway is that the compact FLAD rule base passes a practical sufficiency check: pruning would require both high overlap and negligible impact, and none of the candidate removals satisfies those conditions. Absolute deltas (pp) are relative to the full model; <inline-formula id="ieqn-514"><mml:math id="mml-ieqn-514"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula>Brier is reported in percentage points for consistency with Brier (%).</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Rule</th>
<th>Coverage (%)</th>
<th>Max Overlap</th>
<th><inline-formula id="ieqn-515"><mml:math id="mml-ieqn-515"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula>Macro-F1 (pp)</th>
<th><inline-formula id="ieqn-516"><mml:math id="mml-ieqn-516"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula>Brier (pp)</th>
<th>Decision</th>
</tr>
</thead>
<tbody>
<tr>
<td>R1</td>
<td>18.2</td>
<td>0.41</td>
<td><inline-formula id="ieqn-517"><mml:math id="mml-ieqn-517"><mml:mo>&#x2212;</mml:mo><mml:mn>0.03</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-518"><mml:math id="mml-ieqn-518"><mml:mo>+</mml:mo><mml:mn>0.01</mml:mn></mml:math></inline-formula></td>
<td>keep</td>
</tr>
<tr>
<td>R7</td>
<td>12.4</td>
<td>0.86</td>
<td><inline-formula id="ieqn-519"><mml:math id="mml-ieqn-519"><mml:mo>&#x2212;</mml:mo><mml:mn>0.05</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-520"><mml:math id="mml-ieqn-520"><mml:mo>+</mml:mo><mml:mn>0.02</mml:mn></mml:math></inline-formula></td>
<td>keep</td>
</tr>
<tr>
<td>R12</td>
<td>9.7</td>
<td>0.81</td>
<td><inline-formula id="ieqn-521"><mml:math id="mml-ieqn-521"><mml:mo>&#x2212;</mml:mo><mml:mn>0.02</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-522"><mml:math id="mml-ieqn-522"><mml:mo>+</mml:mo><mml:mn>0.01</mml:mn></mml:math></inline-formula></td>
<td>keep</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-13fn1" fn-type="other">
<p>Note: <bold>Sensitivity (median over all trimf): </bold><inline-formula id="ieqn-523"><mml:math id="mml-ieqn-523"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Macro-F1</mml:mtext><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.18</mml:mn></mml:math></inline-formula> pp; <inline-formula id="ieqn-524"><mml:math id="mml-ieqn-524"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mtext>Brier</mml:mtext><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>0.08</mml:mn></mml:math></inline-formula> pp (for <inline-formula id="ieqn-525"><mml:math id="mml-ieqn-525"><mml:mo>&#x00B1;</mml:mo><mml:mn>10</mml:mn><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>). <bold>After pruning (test):</bold> Macro-F1 &#x003D; <bold>98.31%</bold>, Brier &#x003D; <bold>1.91%</bold>.</p>
</fn>
</table-wrap-foot>
</table-wrap>
<table-wrap id="table-14">
<label>Table A3</label>
<caption>
<title>Impact of each SCS detector on FLAD (test set). <inline-formula id="ieqn-526"><mml:math id="mml-ieqn-526"><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula> denotes change vs. full system; 95% CIs via moving-block bootstrap. The main takeaway is that the person-detection branch materially affects downstream FLAD performance, which provides application-specific support for retaining YOLOv7 as the person-localization backbone in this pilot configuration.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Ablation</th>
<th><inline-formula id="ieqn-527"><mml:math id="mml-ieqn-527"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>Macro-F1 (pp)</th>
<th><inline-formula id="ieqn-528"><mml:math id="mml-ieqn-528"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>Brier (pp)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Zeroing YOLOv7 detections</td>
<td><inline-formula id="ieqn-529"><mml:math id="mml-ieqn-529"><mml:mo>&#x2212;</mml:mo><mml:mn>0.42</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.66</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>&#x2212;</mml:mo><mml:mn>0.21</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-530"><mml:math id="mml-ieqn-530"><mml:mo>+</mml:mo><mml:mn>0.06</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>+</mml:mo><mml:mn>0.03</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>+</mml:mo><mml:mn>0.09</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>Zeroing Haar detections</td>
<td><inline-formula id="ieqn-531"><mml:math id="mml-ieqn-531"><mml:mo>&#x2212;</mml:mo><mml:mn>0.31</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.55</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>&#x2212;</mml:mo><mml:mn>0.12</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-532"><mml:math id="mml-ieqn-532"><mml:mo>+</mml:mo><mml:mn>0.05</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>+</mml:mo><mml:mn>0.02</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>+</mml:mo><mml:mn>0.08</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>Zeroing facial emotion module</td>
<td><inline-formula id="ieqn-533"><mml:math id="mml-ieqn-533"><mml:mo>&#x2212;</mml:mo><mml:mn>0.27</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.49</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>&#x2212;</mml:mo><mml:mn>0.10</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-534"><mml:math id="mml-ieqn-534"><mml:mo>+</mml:mo><mml:mn>0.04</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>+</mml:mo><mml:mn>0.02</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>+</mml:mo><mml:mn>0.07</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>Injecting GT for YOLOv7</td>
<td><inline-formula id="ieqn-535"><mml:math id="mml-ieqn-535"><mml:mo>+</mml:mo><mml:mn>0.18</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>+</mml:mo><mml:mn>0.07</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>+</mml:mo><mml:mn>0.30</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-536"><mml:math id="mml-ieqn-536"><mml:mo>&#x2212;</mml:mo><mml:mn>0.02</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.03</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>&#x2212;</mml:mo><mml:mn>0.01</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>Injecting GT for Haar</td>
<td><inline-formula id="ieqn-537"><mml:math id="mml-ieqn-537"><mml:mo>+</mml:mo><mml:mn>0.12</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>+</mml:mo><mml:mn>0.04</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>+</mml:mo><mml:mn>0.23</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-538"><mml:math id="mml-ieqn-538"><mml:mo>&#x2212;</mml:mo><mml:mn>0.02</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.03</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>&#x2212;</mml:mo><mml:mn>0.01</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>Injecting GT for facial</td>
<td><inline-formula id="ieqn-539"><mml:math id="mml-ieqn-539"><mml:mo>+</mml:mo><mml:mn>0.09</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>+</mml:mo><mml:mn>0.02</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>+</mml:mo><mml:mn>0.20</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-540"><mml:math id="mml-ieqn-540"><mml:mo>&#x2212;</mml:mo><mml:mn>0.01</mml:mn><mml:mtext>&#x00A0;</mml:mtext><mml:mo stretchy="false">[</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>0.02</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>&#x2212;</mml:mo><mml:mn>0.00</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula></td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-15">
<label>Table A4</label>
<caption>
<title>OOD stress-test: performance deltas vs. the in-domain test. Negative values in Macro-F1 indicate degradation.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Shift</th>
<th><inline-formula id="ieqn-541"><mml:math id="mml-ieqn-541"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>Macro-F1 (pp)</th>
<th><inline-formula id="ieqn-542"><mml:math id="mml-ieqn-542"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>AUROC</th>
<th><inline-formula id="ieqn-543"><mml:math id="mml-ieqn-543"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>AUPRC</th>
<th><inline-formula id="ieqn-544"><mml:math id="mml-ieqn-544"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>Brier (pp)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Low light</td>
<td><inline-formula id="ieqn-545"><mml:math id="mml-ieqn-545"><mml:mo>&#x2212;</mml:mo><mml:mn>1.2</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-546"><mml:math id="mml-ieqn-546"><mml:mo>&#x2212;</mml:mo><mml:mn>0.006</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-547"><mml:math id="mml-ieqn-547"><mml:mo>&#x2212;</mml:mo><mml:mn>0.007</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-548"><mml:math id="mml-ieqn-548"><mml:mo>+</mml:mo><mml:mn>0.18</mml:mn></mml:math></inline-formula></td>
</tr>
<tr>
<td>Occlusion/pose</td>
<td><inline-formula id="ieqn-549"><mml:math id="mml-ieqn-549"><mml:mo>&#x2212;</mml:mo><mml:mn>1.6</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-550"><mml:math id="mml-ieqn-550"><mml:mo>&#x2212;</mml:mo><mml:mn>0.008</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-551"><mml:math id="mml-ieqn-551"><mml:mo>&#x2212;</mml:mo><mml:mn>0.009</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-552"><mml:math id="mml-ieqn-552"><mml:mo>+</mml:mo><mml:mn>0.25</mml:mn></mml:math></inline-formula></td>
</tr>
<tr>
<td>Crowding</td>
<td><inline-formula id="ieqn-553"><mml:math id="mml-ieqn-553"><mml:mo>&#x2212;</mml:mo><mml:mn>0.9</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-554"><mml:math id="mml-ieqn-554"><mml:mo>&#x2212;</mml:mo><mml:mn>0.004</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-555"><mml:math id="mml-ieqn-555"><mml:mo>&#x2212;</mml:mo><mml:mn>0.005</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-556"><mml:math id="mml-ieqn-556"><mml:mo>+</mml:mo><mml:mn>0.12</mml:mn></mml:math></inline-formula></td>
</tr>
<tr>
<td>High noise (audio)</td>
<td><inline-formula id="ieqn-557"><mml:math id="mml-ieqn-557"><mml:mo>&#x2212;</mml:mo><mml:mn>0.7</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-558"><mml:math id="mml-ieqn-558"><mml:mo>&#x2212;</mml:mo><mml:mn>0.003</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-559"><mml:math id="mml-ieqn-559"><mml:mo>&#x2212;</mml:mo><mml:mn>0.004</mml:mn></mml:math></inline-formula></td>
<td><inline-formula id="ieqn-560"><mml:math id="mml-ieqn-560"><mml:mo>+</mml:mo><mml:mn>0.10</mml:mn></mml:math></inline-formula></td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-16">
<label>Table A5</label>
<caption>
<title>Raspberry Pi 3 Model B&#x002B; per-component processing time measured on-device over 20,000 records; median, 95th percentile (P95), and range (seconds). End-to-end is measured per record as the sum of stage times.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Pipeline Stage</th>
<th>Median (s)</th>
<th>P95 (s)</th>
<th>Range (s)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Capture &#x0026; pre-processing</td>
<td>0.10</td>
<td>0.14</td>
<td>0.06&#x2013;0.18</td>
</tr>
<tr>
<td>Person detection (YOLOv7)</td>
<td>0.62</td>
<td>0.78</td>
<td>0.45&#x2013;1.00</td>
</tr>
<tr>
<td>Weapon detection (Haar)</td>
<td>0.12</td>
<td>0.18</td>
<td>0.08&#x2013;0.24</td>
</tr>
<tr>
<td>Face/emotion analysis</td>
<td>0.17</td>
<td>0.24</td>
<td>0.10&#x2013;0.30</td>
</tr>
<tr>
<td>LSTM (emotion-rate)</td>
<td>0.05</td>
<td>0.07</td>
<td>0.03&#x2013;0.09</td>
</tr>
<tr>
<td>LSTM (heart-rate)</td>
<td>0.04</td>
<td>0.06</td>
<td>0.03&#x2013;0.08</td>
</tr>
<tr>
<td>FLAD inference</td>
<td>0.097</td>
<td>0.13</td>
<td>0.06&#x2013;0.15</td>
</tr>
<tr>
<td>I/O (audio/GPS/logging)</td>
<td>0.05</td>
<td>0.10</td>
<td>0.03&#x2013;0.14</td>
</tr>
<tr>
<td>End-to-end (aggregated)</td>
<td>1.25</td>
<td>1.60</td>
<td>0.70&#x2013;1.80</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-17">
<label>Table A6</label>
<caption>
<title>Hardware bill of materials and nominal operating conditions. Sustained-load CPU, thermal, and throughput profiling is summarized in the main text; the power entry below provides the nominal battery specification used for the battery-based energy proxy rather than direct electrical telemetry.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Component</th>
<th>Model/spec</th>
<th>Notes (Operating Point)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Camera</td>
<td>Raspberry Pi HQ (Sony IMX477, 12.3 MP, <inline-formula id="ieqn-561"><mml:math id="mml-ieqn-561"><mml:mn>1</mml:mn><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:msup><mml:mn>3</mml:mn><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula>)</td>
<td>Fixed exposure/gain per session; focus set to patrol distances; forward-view HD RGB acquisition.</td>
</tr>
<tr>
<td>Microphone</td>
<td>USB mini microphone</td>
<td>Monaural; nominal 16 kHz bandwidth; standardized input gain at session start; synchronized timestamps.</td>
</tr>
<tr>
<td>Heart rate</td>
<td>Moofit HR8 chest strap</td>
<td>Instantaneous HR (bpm); admissible physiological range <inline-formula id="ieqn-562"><mml:math id="mml-ieqn-562"><mml:mo stretchy="false">[</mml:mo><mml:mn>40</mml:mn><mml:mo>,</mml:mo><mml:mn>180</mml:mn><mml:mo stretchy="false">]</mml:mo><mml:mspace width="thinmathspace" /><mml:mtext>bpm</mml:mtext></mml:math></inline-formula>; uniform resampling for modeling.</td>
</tr>
<tr>
<td>Compute</td>
<td>Raspberry Pi 3 Model B&#x002B;</td>
<td>1.4 GHz 64-bit quad-core; dual-band Wi-Fi; Bluetooth 4.2/BLE; PoE-capable Ethernet; Linux OS; on-device inference/logging.</td>
</tr>
<tr>
<td>Power</td>
<td>4<inline-formula id="ieqn-563"><mml:math id="mml-ieqn-563"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula> Li-ion polymer 3.7 V, 3000 mAh (103665)</td>
<td>Nominal battery pack specification used during pilot deployment (cell-based energy budget <inline-formula id="ieqn-564"><mml:math id="mml-ieqn-564"><mml:mo>&#x2248;</mml:mo><mml:mspace width="negativethinmathspace" /><mml:mn>44.4</mml:mn></mml:math></inline-formula> Wh). For deployment planning, this corresponds to allowable mean-power budgets of approximately <inline-formula id="ieqn-565"><mml:math id="mml-ieqn-565"><mml:mn>7.4</mml:mn></mml:math></inline-formula> W for 6 h autonomy,<break/> <inline-formula id="ieqn-566"><mml:math id="mml-ieqn-566"><mml:mn>5.55</mml:mn></mml:math></inline-formula> W for 8 h, and <inline-formula id="ieqn-567"><mml:math id="mml-ieqn-567"><mml:mn>4.44</mml:mn></mml:math></inline-formula> W for 10 h. This specification was used to derive the battery-based mean-power/autonomy proxy reported in <xref ref-type="table" rid="table-9">Table 9</xref>; direct inline electrical telemetry was not instrumented.</td>
</tr>
<tr>
<td>I/O</td>
<td>Earphones</td>
<td>Operator audio feedback from the ADPS.</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-18">
<label>Table A7</label>
<caption>
<title>LSTM hyperparameters and training settings for the heart-rate and emotion-rate models. This table reports the exact forecasting-model settings used in the pilot evaluation.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Component</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>Architecture</td>
<td>LSTM <inline-formula id="ieqn-568"><mml:math id="mml-ieqn-568"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula> Dense (1, linear)</td>
</tr>
<tr>
<td>Hidden units</td>
<td>Integer in <inline-formula id="ieqn-569"><mml:math id="mml-ieqn-569"><mml:mo stretchy="false">[</mml:mo><mml:mn>50</mml:mn><mml:mo>,</mml:mo><mml:mn>200</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> (optimized)</td>
</tr>
<tr>
<td>Look-back window (timesteps)</td>
<td>3</td>
</tr>
<tr>
<td>Look-ahead horizon</td>
<td>10 steps (<inline-formula id="ieqn-570"><mml:math id="mml-ieqn-570"><mml:mo>&#x2248;</mml:mo></mml:math></inline-formula>20 s ahead at <inline-formula id="ieqn-571"><mml:math id="mml-ieqn-571"><mml:mn>0.5</mml:mn><mml:mspace width="thinmathspace" /><mml:mrow><mml:mi mathvariant="normal">H</mml:mi><mml:mi mathvariant="normal">z</mml:mi></mml:mrow></mml:math></inline-formula>)</td>
</tr>
<tr>
<td>Batch size</td>
<td>16</td>
</tr>
<tr>
<td>Max epochs</td>
<td>100</td>
</tr>
<tr>
<td>Early stopping</td>
<td>Monitor <monospace>val_loss</monospace>; patience <inline-formula id="ieqn-572"><mml:math id="mml-ieqn-572"><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula>; restore best weights</td>
</tr>
<tr>
<td>Optimizer</td>
<td>Adam</td>
</tr>
<tr>
<td>Learning rate</td>
<td><inline-formula id="ieqn-573"><mml:math id="mml-ieqn-573"><mml:mo stretchy="false">[</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> (optimized)</td>
</tr>
<tr>
<td>Loss</td>
<td>Mean squared error (MSE)</td>
</tr>
<tr>
<td>Train/validation split</td>
<td>Inner validation within training fold (temporally blocked) per outer LOSO fold; calibration fitted on validation only</td>
</tr>
<tr>
<td>Train/test split</td>
<td>Subject-disjoint Leave-One-Subject-Out (LOSO), 10 outer folds; no fixed random split</td>
</tr>
<tr>
<td>Random seeds</td>
<td>Seeds fixed for initialization and data order during training; metrics aggregated across outer folds</td>
</tr>
<tr>
<td>Input scaling</td>
<td>Standardization (fit on training only)</td>
</tr>
<tr>
<td>Input resolution</td>
<td>n/a (tabular sequence features)</td>
</tr>
<tr>
<td>Hyperparameter search</td>
<td>GA (DEAP): pop <inline-formula id="ieqn-574"><mml:math id="mml-ieqn-574"><mml:mo>=</mml:mo><mml:mn>20</mml:mn></mml:math></inline-formula>, gen <inline-formula id="ieqn-575"><mml:math id="mml-ieqn-575"><mml:mo>=</mml:mo><mml:mn>100</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-576"><mml:math id="mml-ieqn-576"><mml:mi>c</mml:mi><mml:mi>x</mml:mi><mml:mi>p</mml:mi><mml:mi>b</mml:mi><mml:mo>=</mml:mo><mml:mn>0.5</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-577"><mml:math id="mml-ieqn-577"><mml:mi>m</mml:mi><mml:mi>u</mml:mi><mml:mi>t</mml:mi><mml:mi>p</mml:mi><mml:mi>b</mml:mi><mml:mo>=</mml:mo><mml:mn>0.2</mml:mn></mml:math></inline-formula>, tournament <inline-formula id="ieqn-578"><mml:math id="mml-ieqn-578"><mml:mo>=</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula></td>
</tr>
<tr>
<td>Model selection</td>
<td>Best validation loss (MSE) within each outer fold</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-19">
<label>Table A8</label>
<caption>
<title>FLAD rule base (12 rules) with linguistic antecedents and consequents. The rule inventory shown here is the final compact specification retained after expert-guided construction, redundancy review, and the sufficiency checks summarized in <xref ref-type="table" rid="table-13">Table A2</xref>. People-related antecedents refer to relative occupancy within the active camera field of view at the decision point, and weapon-related antecedents refer to visible weapon-like patterns in that same restricted view rather than to complete scene observability.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Rule</th>
<th>Linguistic Antecedent (Min/Max Logic)</th>
<th>Consequent</th>
<th>Output Set</th>
</tr>
</thead>
<tbody>
<tr>
<td>R1</td>
<td>Weapons are detected.</td>
<td>High</td>
<td><inline-formula id="ieqn-579"><mml:math id="mml-ieqn-579"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R2</td>
<td>Weapons are detected <bold>AND</bold> People are many.</td>
<td>High</td>
<td><inline-formula id="ieqn-580"><mml:math id="mml-ieqn-580"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R3</td>
<td>Weapons are detected <bold>AND</bold> Sector risk is high.</td>
<td>High</td>
<td><inline-formula id="ieqn-581"><mml:math id="mml-ieqn-581"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R4</td>
<td>Stress is high <bold>AND</bold> Emotions are high <bold>AND</bold> (People are moderate <bold>OR</bold> People are many).</td>
<td>High</td>
<td><inline-formula id="ieqn-582"><mml:math id="mml-ieqn-582"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R5</td>
<td>Stress is high <bold>AND</bold> Emotions are medium <bold>AND</bold> Sector risk is high.</td>
<td>High</td>
<td><inline-formula id="ieqn-583"><mml:math id="mml-ieqn-583"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R6</td>
<td>Emotions are high <bold>AND</bold> People are many.</td>
<td>High</td>
<td><inline-formula id="ieqn-584"><mml:math id="mml-ieqn-584"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">g</mml:mi><mml:mi mathvariant="normal">h</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R7</td>
<td>Stress is medium <bold>AND</bold> Emotions are medium <bold>AND</bold> People are moderate.</td>
<td>Medium</td>
<td><inline-formula id="ieqn-585"><mml:math id="mml-ieqn-585"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">m</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">u</mml:mi><mml:mi mathvariant="normal">m</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R8</td>
<td>Sector risk is high <bold>AND</bold> (Emotions are medium <bold>OR</bold> Stress is medium).</td>
<td>Medium</td>
<td><inline-formula id="ieqn-586"><mml:math id="mml-ieqn-586"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">m</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">u</mml:mi><mml:mi mathvariant="normal">m</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R9</td>
<td>Ambient noise is high <bold>AND</bold> People are many.</td>
<td>Medium</td>
<td><inline-formula id="ieqn-587"><mml:math id="mml-ieqn-587"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">m</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">u</mml:mi><mml:mi mathvariant="normal">m</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R10</td>
<td>Emotions are low <bold>AND</bold> Stress is low <bold>AND</bold> Weapons are undetected <bold>AND</bold> Sector risk is low.</td>
<td>Low</td>
<td><inline-formula id="ieqn-588"><mml:math id="mml-ieqn-588"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">l</mml:mi><mml:mi mathvariant="normal">o</mml:mi><mml:mi mathvariant="normal">w</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R11</td>
<td>People are few <bold>AND</bold> Weapons are undetected <bold>AND</bold> (Emotions are low <bold>OR</bold> Stress is low).</td>
<td>Low</td>
<td><inline-formula id="ieqn-589"><mml:math id="mml-ieqn-589"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">l</mml:mi><mml:mi mathvariant="normal">o</mml:mi><mml:mi mathvariant="normal">w</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
<tr>
<td>R12</td>
<td>Sector risk is medium <bold>AND</bold> Weapons are undetected <bold>AND</bold> People are moderate <bold>AND</bold> Emotions are medium.</td>
<td>Medium</td>
<td><inline-formula id="ieqn-590"><mml:math id="mml-ieqn-590"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">m</mml:mi><mml:mi mathvariant="normal">e</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">u</mml:mi><mml:mi mathvariant="normal">m</mml:mi></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>y</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-19fn1" fn-type="other">
<p>Note: &#x201C;People few/moderate/many&#x201D; denotes the relative number of individuals observable in the forward camera sector at the current decision point, not the total size of the surrounding crowd. Likewise, &#x201C;Weapons detected&#x201D; denotes camera-visible weapon-like evidence within that same sector only. Continuous antecedents are fuzzified into overlapping low/medium/high memberships, conjunctive links are evaluated with the bounded-product <inline-formula id="ieqn-591"><mml:math id="mml-ieqn-591"><mml:mi>t</mml:mi></mml:math></inline-formula>-norm, disjunctive links use the maximum operator, and class supports are normalized to obtain the posterior triplet reported by FLAD.</p>
</fn>
</table-wrap-foot>
</table-wrap>
<table-wrap id="table-20">
<label>Table A9</label>
<caption>
<title>Baseline tuning budgets, candidate hyperparameter sets, and final configurations. This table reports the comparator settings used in the pilot analysis and is intended to show that all non-fuzzy baselines were tuned and calibrated under matched, validation-only procedures, with like-for-like search budgets across models.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Baseline</th>
<th>Tuning Budget</th>
<th>Candidate Hyperparameter Set to Report</th>
<th>Final Setting Used in the Manuscript</th>
</tr>
</thead>
<tbody>
<tr>
<td>Logistic Regression (cal.)</td>
<td>Validation-only grid search within each outer LOSO fold; post-hoc isotonic calibration fitted on validation only.</td>
<td>Solver <inline-formula id="ieqn-592"><mml:math id="mml-ieqn-592"><mml:mo>&#x2208;</mml:mo></mml:math></inline-formula>{<monospace>lbfgs</monospace>, <monospace>liblinear</monospace>}; regularization strength <inline-formula id="ieqn-593"><mml:math id="mml-ieqn-593"><mml:mi>C</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0.01</mml:mn><mml:mo>,</mml:mo><mml:mn>0.1</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>10</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>; penalty <inline-formula id="ieqn-594"><mml:math id="mml-ieqn-594"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mi>&#x2113;</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>; max_iter <inline-formula id="ieqn-595"><mml:math id="mml-ieqn-595"><mml:mo>=</mml:mo><mml:mn>1000</mml:mn></mml:math></inline-formula>.</td>
<td><monospace>lbfgs</monospace>, <inline-formula id="ieqn-596"><mml:math id="mml-ieqn-596"><mml:mi>C</mml:mi><mml:mo>=</mml:mo><mml:mn>1.0</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-597"><mml:math id="mml-ieqn-597"><mml:msub><mml:mi>&#x2113;</mml:mi><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula> penalty, max_iter <inline-formula id="ieqn-598"><mml:math id="mml-ieqn-598"><mml:mo>=</mml:mo><mml:mn>1000</mml:mn></mml:math></inline-formula>.</td>
</tr>
<tr>
<td>Gradient Boosting (cal.)</td>
<td>Validation-only grid search within each outer LOSO fold; post-hoc isotonic calibration fitted on validation only.</td>
<td><inline-formula id="ieqn-599"><mml:math id="mml-ieqn-599"><mml:mi>n</mml:mi></mml:math></inline-formula>_estimators <inline-formula id="ieqn-600"><mml:math id="mml-ieqn-600"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>100</mml:mn><mml:mo>,</mml:mo><mml:mn>200</mml:mn><mml:mo>,</mml:mo><mml:mn>300</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>; learning_rate <inline-formula id="ieqn-601"><mml:math id="mml-ieqn-601"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0.01</mml:mn><mml:mo>,</mml:mo><mml:mn>0.05</mml:mn><mml:mo>,</mml:mo><mml:mn>0.10</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>; max_depth <inline-formula id="ieqn-602"><mml:math id="mml-ieqn-602"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mn>3</mml:mn><mml:mo>,</mml:mo><mml:mn>4</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>; subsample <inline-formula id="ieqn-603"><mml:math id="mml-ieqn-603"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0.8</mml:mn><mml:mo>,</mml:mo><mml:mn>1.0</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>.</td>
<td><inline-formula id="ieqn-604"><mml:math id="mml-ieqn-604"><mml:mi>n</mml:mi></mml:math></inline-formula>_estimators <inline-formula id="ieqn-605"><mml:math id="mml-ieqn-605"><mml:mo>=</mml:mo><mml:mn>200</mml:mn></mml:math></inline-formula>, learning_rate <inline-formula id="ieqn-606"><mml:math id="mml-ieqn-606"><mml:mo>=</mml:mo><mml:mn>0.05</mml:mn></mml:math></inline-formula>, max_depth <inline-formula id="ieqn-607"><mml:math id="mml-ieqn-607"><mml:mo>=</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula>, subsample <inline-formula id="ieqn-608"><mml:math id="mml-ieqn-608"><mml:mo>=</mml:mo><mml:mn>0.8</mml:mn></mml:math></inline-formula>.</td>
</tr>
<tr>
<td>Random Forest (cal.)</td>
<td>Validation-only grid search within each outer LOSO fold; post-hoc isotonic calibration fitted on validation only.</td>
<td><inline-formula id="ieqn-609"><mml:math id="mml-ieqn-609"><mml:mi>n</mml:mi></mml:math></inline-formula>_estimators <inline-formula id="ieqn-610"><mml:math id="mml-ieqn-610"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>200</mml:mn><mml:mo>,</mml:mo><mml:mn>400</mml:mn><mml:mo>,</mml:mo><mml:mn>600</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>; max_depth <inline-formula id="ieqn-611"><mml:math id="mml-ieqn-611"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>10</mml:mn><mml:mo>,</mml:mo><mml:mn>20</mml:mn><mml:mo>,</mml:mo></mml:math></inline-formula><monospace>None</monospace>}; max_features <inline-formula id="ieqn-612"><mml:math id="mml-ieqn-612"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo></mml:math></inline-formula><monospace>sqrt</monospace>,<inline-formula id="ieqn-613"><mml:math id="mml-ieqn-613"><mml:mn>0.5</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>; min_samples_leaf <inline-formula id="ieqn-614"><mml:math id="mml-ieqn-614"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mn>4</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>.</td>
<td><inline-formula id="ieqn-615"><mml:math id="mml-ieqn-615"><mml:mi>n</mml:mi></mml:math></inline-formula>_estimators <inline-formula id="ieqn-616"><mml:math id="mml-ieqn-616"><mml:mo>=</mml:mo><mml:mn>400</mml:mn></mml:math></inline-formula>, max_depth <inline-formula id="ieqn-617"><mml:math id="mml-ieqn-617"><mml:mo>=</mml:mo><mml:mn>20</mml:mn></mml:math></inline-formula>, max_features &#x003D; <monospace>sqrt</monospace>, min_samples_leaf <inline-formula id="ieqn-618"><mml:math id="mml-ieqn-618"><mml:mo>=</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula>.</td>
</tr>
<tr>
<td>Non-Fuzzy Aggregator (MLP, cal.)</td>
<td>Validation-only search within each outer LOSO fold; post-hoc isotonic calibration fitted on validation only.</td>
<td>Hidden layer size(s) <inline-formula id="ieqn-619"><mml:math id="mml-ieqn-619"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mn>32</mml:mn><mml:mo>,</mml:mo><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mn>64</mml:mn><mml:mo>,</mml:mo><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mn>64</mml:mn><mml:mo>,</mml:mo><mml:mn>32</mml:mn><mml:mo stretchy="false">)</mml:mo><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>; weight decay/regularization <inline-formula id="ieqn-620"><mml:math id="mml-ieqn-620"><mml:mi>&#x03B1;</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>5</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>3</mml:mn></mml:mrow></mml:msup><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>; learning_rate_init <inline-formula id="ieqn-621"><mml:math id="mml-ieqn-621"><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>3</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>; early stopping &#x003D; <monospace>True</monospace> with patience <inline-formula id="ieqn-622"><mml:math id="mml-ieqn-622"><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula>.</td>
<td>Hidden layers <inline-formula id="ieqn-623"><mml:math id="mml-ieqn-623"><mml:mo>=</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mn>64</mml:mn><mml:mo>,</mml:mo><mml:mn>32</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, <inline-formula id="ieqn-624"><mml:math id="mml-ieqn-624"><mml:mi>&#x03B1;</mml:mi><mml:mo>=</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, learning_rate_init <inline-formula id="ieqn-625"><mml:math id="mml-ieqn-625"><mml:mo>=</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>3</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, early stopping &#x003D; <monospace>True</monospace> with patience <inline-formula id="ieqn-626"><mml:math id="mml-ieqn-626"><mml:mo>=</mml:mo><mml:mn>10</mml:mn></mml:math></inline-formula>.</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn id="table-20fn1" fn-type="other">
<p>Note: All baselines use the same subject-disjoint outer LOSO folds as ADPS; no baseline accesses the held-out participant during tuning, calibration, or threshold selection. Candidate grids are shown to document matched tuning budgets across comparators.</p>
</fn>
</table-wrap-foot>
</table-wrap>
</sec>
<sec id="s8">
<title>Appendix A.2</title>
<fig id="fig-4">
<label>Figure A1</label>
<caption>
<title>End-to-end processing-time distribution on Raspberry Pi 3 Model B&#x002B; for the held-out episode-level records aggregated across the 10 LOSO folds (<inline-formula id="ieqn-627"><mml:math id="mml-ieqn-627"><mml:mi>N</mml:mi><mml:mo>=</mml:mo><mml:mn>20,000</mml:mn></mml:math></inline-formula>). The main takeaway is that most records fall within a relatively narrow latency band around the reported median, with only a modest right tail toward the P95 summarized in <xref ref-type="table" rid="table-16">Table A5</xref>.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-4.tif"/>
</fig><fig id="fig-5">
<label>Figure A2</label>
<caption>
<title>LBPS optimization traces under GA hyperparameter search for the two forecasting tasks. (<bold>a</bold>) Shows the emotion-rate LSTM training-loss trajectory across generations, and (<bold>b</bold>) shows the corresponding heart-rate LSTM training-loss trajectory. The evaluation unit in this display is the candidate model state across the GA search rather than held-out episode windows. The main takeaway is that both optimization traces stabilize under the selected search budget, but this rapid stabilization should be interpreted as numerically stable pilot-scale convergence of compact forecasters under limited data, not as evidence that training-data sufficiency for deployment has already been established; the final forecasting settings are reported in <xref ref-type="table" rid="table-18">Table A7</xref>.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-5.tif"/>
</fig>
<fig id="fig-6">
<label>Figure A3</label>
<caption>
<title>Cardiac signal quality and spectral characterization across subject&#x2013;session summaries from the pilot heart-rate dataset. (<bold>a</bold>) Reports the proportion of HR samples outside the physiological range <inline-formula id="ieqn-628"><mml:math id="mml-ieqn-628"><mml:mo stretchy="false">[</mml:mo><mml:mn>40</mml:mn><mml:mo>,</mml:mo><mml:mn>180</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> bpm for each subject&#x2013;session pair; (<bold>b</bold>) shows the median heart-rate power spectral density across sessions with a shaded 95% envelope at 4 Hz sampling; and (<bold>c</bold>) plots the session-wise mean vs. standard deviation of HR. The main takeaway is that out-of-range values are uniformly infrequent, spectral mass is concentrated at low frequencies without evident acquisition-induced periodic artifacts, and session-level dispersion remains compact, supporting the use of short-horizon sequential predictors and subject-wise evaluation.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-6a.tif"/>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-6b.tif"/>
</fig>
<fig id="fig-7">
<label>Figure A4</label>
<caption>
<title>Emotion-rate dataset summary based on subject/session-aggregated statistics from the pilot cohort. (<bold>a</bold>) Shows per-class prevalence summarized by subject-wise medians with interquartile ranges (IQR); (<bold>b</bold>) reports pairwise correlations among the emotion-rate channels; and (<bold>c</bold>) displays the first-order transition probabilities between dominant emotions (argmax per time step). The main takeaway is that neutral and negative-affect states dominate the marginal distribution, cross-channel correlations are generally weak, and dominant-emotion states revert quickly, which is consistent with short-lived affective episodes and motivates short-horizon temporal forecasting.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-7a.tif"/>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-7b.tif"/>
</fig>
<fig id="fig-8">
<label>Figure A5</label>
<caption>
<title>Embedded tactical device hardware configuration of the pilot ADPS prototype. The evaluation unit in this display is the physical system layout rather than held-out episode windows. The figure identifies the sensing and support components integrated in the portable setup: (1) camera, (2) heart-rate sensor, (3) microphone, (4) headphones, (5) battery, and (6) Raspberry Pi 3 Model B&#x002B;. The main takeaway is that the prototype combines visual, physiological, and audio sensing with compact on-device computing in a single field-deployable configuration.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-8.tif"/>
</fig>
<fig id="fig-9">
<label>Figure A6</label>
<caption>
<title>High-level architecture of the aggression detection&#x2013;prediction system (ADPS). The evaluation unit in this display is the module/interface structure of the system rather than held-out episode windows. The schematic shows the information flow across the three main subsystems: (1) the sensor control system (SCS), which standardizes multimodal inputs; (2) the LSTM-based prediction system (LBPS), which forecasts short-horizon affective and physiological trajectories; and (3) the fuzzy logic aggression detection layer (FLAD), which aggregates current and forecasted cues into class-posterior risk outputs. The main takeaway is that ADPS is a modular pipeline in which standardized sensing, temporal forecasting, and interpretable fuzzy fusion are explicitly separated and auditable.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMES_81473-fig-9.tif"/>
</fig>
</sec>
<sec id="s9">
<title>Appendix A.3 Hypothesis Tests and Multiplicity Control</title>
<sec id="s9_1">
<title>Appendix A.3.1 Inter-Rater Reliability and Label-Noise Diagnostics</title>
<p>Setup and notation.</p>
<p>Let <italic>N</italic> denote annotated items (episodes), <inline-formula id="ieqn-629"><mml:math id="mml-ieqn-629"><mml:mi>K</mml:mi><mml:mo>=</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula> the ordered categories (Low, Medium, High), and <italic>R</italic> the number of raters. For item <inline-formula id="ieqn-630"><mml:math id="mml-ieqn-630"><mml:mi>i</mml:mi></mml:math></inline-formula>, <inline-formula id="ieqn-631"><mml:math id="mml-ieqn-631"><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the count of ratings in category <inline-formula id="ieqn-632"><mml:math id="mml-ieqn-632"><mml:mi>c</mml:mi></mml:math></inline-formula> and the per-item category proportion is
<disp-formula id="eqn-A1"><label>(A1)</label><mml:math id="mml-eqn-A1" display="block"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mi>R</mml:mi></mml:mfrac><mml:mo>,</mml:mo><mml:mspace width="2em" /><mml:msub><mml:mrow><mml:mover><mml:mi>p</mml:mi><mml:mo stretchy="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mn>1</mml:mn><mml:mi>N</mml:mi></mml:mfrac><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula>is the marginal prevalence of category <inline-formula id="ieqn-633"><mml:math id="mml-ieqn-633"><mml:mi>c</mml:mi></mml:math></inline-formula>.</p>
<p>Quadratic weighted Cohen&#x2019;s <inline-formula id="ieqn-634"><mml:math id="mml-ieqn-634"><mml:msub><mml:mi mathvariant="bold-italic">&#x03BA;</mml:mi><mml:mi mathvariant="bold-italic">w</mml:mi></mml:msub></mml:math></inline-formula> (pairwise).</p>
<p>For two raters, define the quadratic weights
<disp-formula id="eqn-A2"><label>(A2)</label><mml:math id="mml-eqn-A2" display="block"><mml:msub><mml:mi>w</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>a</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>b</mml:mi><mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>K</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:mfrac><mml:mo>,</mml:mo><mml:mspace width="2em" /><mml:mi>a</mml:mi><mml:mo>,</mml:mo><mml:mi>b</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mi>K</mml:mi><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mo>,</mml:mo></mml:math></disp-formula>and the observed and expected weighted disagreements
<disp-formula id="eqn-A3"><label>(A3)</label><mml:math id="mml-eqn-A3" display="block"><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mrow><mml:mtext>obs</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>a</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi></mml:mrow></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>b</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>w</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:math></disp-formula>
<disp-formula id="eqn-A4"><label>(A4)</label><mml:math id="mml-eqn-A4" display="block"><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mrow><mml:mtext>exp</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>a</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi></mml:mrow></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>b</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>w</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mo>&#x22C5;</mml:mo></mml:mrow></mml:msub><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mo>&#x22C5;</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:math></disp-formula>where <inline-formula id="ieqn-635"><mml:math id="mml-ieqn-635"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the empirical joint proportion and <inline-formula id="ieqn-636"><mml:math id="mml-ieqn-636"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mo>&#x22C5;</mml:mo></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mo>&#x22C5;</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> the marginals. The weighted Cohen&#x2019;s kappa is then
<disp-formula id="eqn-A5"><label>(A5)</label><mml:math id="mml-eqn-A5" display="block"><mml:msub><mml:mi>&#x03BA;</mml:mi><mml:mrow><mml:mi>w</mml:mi></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:mfrac><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mrow><mml:mtext>obs</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mrow><mml:mtext>exp</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:mfrac><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>For <inline-formula id="ieqn-637"><mml:math id="mml-ieqn-637"><mml:mi>R</mml:mi><mml:mo>&#x003E;</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula>, we report the mean of all pairwise <inline-formula id="ieqn-638"><mml:math id="mml-ieqn-638"><mml:msub><mml:mi>&#x03BA;</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:math></inline-formula> values (with bootstrap CIs).</p>
<p>Krippendorff&#x2019;s <inline-formula id="ieqn-639"><mml:math id="mml-ieqn-639"><mml:mi mathvariant="bold-italic">&#x03B1;</mml:mi></mml:math></inline-formula> (ordinal, <inline-formula id="ieqn-640"><mml:math id="mml-ieqn-640"><mml:mi>R</mml:mi><mml:mo>&#x2265;</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula>).</p>
<p>Let the ordinal distance be
<disp-formula id="eqn-A6"><label>(A6)</label><mml:math id="mml-eqn-A6" display="block"><mml:msub><mml:mi>&#x03B4;</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>a</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>b</mml:mi><mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mn>2</mml:mn></mml:msup></mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>K</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:mfrac><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>The observed and expected disagreements are
<disp-formula id="eqn-A7"><label>(A7)</label><mml:math id="mml-eqn-A7" display="block"><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mi>o</mml:mi></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>a</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:munder><mml:mn>2</mml:mn><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>&#x03B4;</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:math></disp-formula>
<disp-formula id="eqn-A8"><label>(A8)</label><mml:math id="mml-eqn-A8" display="block"><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mrow><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>a</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mi>b</mml:mi></mml:mrow></mml:munder><mml:mn>2</mml:mn><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>&#x03B4;</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>b</mml:mi></mml:mrow></mml:msub><mml:mspace width="thinmathspace" /><mml:msub><mml:mrow><mml:mover><mml:mi>n</mml:mi><mml:mo stretchy="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>a</mml:mi></mml:mrow></mml:msub><mml:mspace width="thinmathspace" /><mml:msub><mml:mrow><mml:mover><mml:mi>n</mml:mi><mml:mo stretchy="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>b</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.623em" minsize="1.623em">(</mml:mo></mml:mrow></mml:mstyle><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>c</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mrow><mml:mover><mml:mi>n</mml:mi><mml:mo stretchy="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mi>c</mml:mi></mml:msub><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.623em" minsize="1.623em">)</mml:mo></mml:mrow></mml:mstyle><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.623em" minsize="1.623em">(</mml:mo></mml:mrow></mml:mstyle><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>c</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mrow><mml:mover><mml:mi>n</mml:mi><mml:mo stretchy="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mi>c</mml:mi></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.623em" minsize="1.623em">)</mml:mo></mml:mrow></mml:mstyle></mml:mrow></mml:mfrac><mml:mo>,</mml:mo><mml:mspace width="2em" /><mml:msub><mml:mrow><mml:mover><mml:mi>n</mml:mi><mml:mo stretchy="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mi>c</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:math></disp-formula>and Krippendorff&#x2019;s alpha is
<disp-formula id="eqn-A9"><label>(A9)</label><mml:math id="mml-eqn-A9" display="block"><mml:mi>&#x03B1;</mml:mi><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:mfrac><mml:msub><mml:mi>D</mml:mi><mml:mi>o</mml:mi></mml:msub><mml:msub><mml:mi>D</mml:mi><mml:mi>e</mml:mi></mml:msub></mml:mfrac><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>Fleiss&#x2019; <inline-formula id="ieqn-641"><mml:math id="mml-ieqn-641"><mml:mi mathvariant="bold-italic">&#x03BA;</mml:mi></mml:math></inline-formula> (multi-rater, nominal/ordinal).</p>
<p>Define per-item agreement and its averages as
<disp-formula id="eqn-A10"><label>(A10)</label><mml:math id="mml-eqn-A10" display="block"><mml:msub><mml:mi>P</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mi>R</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>R</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>c</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">(</mml:mo></mml:mrow></mml:mstyle><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">)</mml:mo></mml:mrow></mml:mstyle><mml:mo>,</mml:mo></mml:math></disp-formula>
<disp-formula id="eqn-A11"><label>(A11)</label><mml:math id="mml-eqn-A11" display="block"><mml:mrow><mml:mover><mml:mi>P</mml:mi><mml:mo stretchy="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mi>N</mml:mi></mml:mfrac><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>P</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mspace width="2em" /><mml:msub><mml:mi>P</mml:mi><mml:mi>e</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>c</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi></mml:mrow></mml:munderover><mml:msubsup><mml:mrow><mml:mover><mml:mi>p</mml:mi><mml:mo stretchy="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mi>c</mml:mi><mml:mrow><mml:mspace width="thinmathspace" /><mml:mn>2</mml:mn></mml:mrow></mml:msubsup><mml:mo>,</mml:mo></mml:math></disp-formula>so that
<disp-formula id="eqn-A12"><label>(A12)</label><mml:math id="mml-eqn-A12" display="block"><mml:msub><mml:mi>&#x03BA;</mml:mi><mml:mrow><mml:mrow><mml:mtext>Fleiss</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mrow><mml:mrow><mml:mover><mml:mi>P</mml:mi><mml:mo stretchy="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mi>e</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mi>e</mml:mi></mml:msub></mml:mrow></mml:mfrac><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>Confidence intervals and diagnostics.</p>
<p>Two-sided 95% CIs for <inline-formula id="ieqn-642"><mml:math id="mml-ieqn-642"><mml:msub><mml:mi>&#x03BA;</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:math></inline-formula>, <inline-formula id="ieqn-643"><mml:math id="mml-ieqn-643"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-644"><mml:math id="mml-ieqn-644"><mml:msub><mml:mi>&#x03BA;</mml:mi><mml:mrow><mml:mtext>Fleiss</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula> are obtained via the moving-block bootstrap (MBB) over temporally ordered items (see <xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref>). We also report per-class disagreement and adjudication rates, and rater-pair swap diagnostics.</p>
</sec>
<sec id="s9_2">
<title>Appendix A.3.2 Temporal Dependence and Uncertainty Quantification</title>
<p>Integrated autocorrelation time and effective sample size.</p>
<p>For a temporally indexed series <inline-formula id="ieqn-645"><mml:math id="mml-ieqn-645"><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mi>Z</mml:mi><mml:mi>t</mml:mi></mml:msub><mml:msubsup><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> with autocorrelation <inline-formula id="ieqn-646"><mml:math id="mml-ieqn-646"><mml:mi>&#x03C1;</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>h</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> at lag <inline-formula id="ieqn-647"><mml:math id="mml-ieqn-647"><mml:mi>h</mml:mi></mml:math></inline-formula>, the integrated autocorrelation time is estimated as
<disp-formula id="eqn-A13"><label>(A13)</label><mml:math id="mml-eqn-A13" display="block"><mml:msub><mml:mrow><mml:mover><mml:mi>&#x03C4;</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mtext>int</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mn>1</mml:mn><mml:mo>+</mml:mo><mml:mn>2</mml:mn><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>h</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:msup><mml:mi>H</mml:mi><mml:mo>&#x22C6;</mml:mo></mml:msup></mml:mrow></mml:munderover><mml:mi>&#x03C1;</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>h</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo></mml:math></disp-formula>where <inline-formula id="ieqn-648"><mml:math id="mml-ieqn-648"><mml:msup><mml:mi>H</mml:mi><mml:mo>&#x22C6;</mml:mo></mml:msup></mml:math></inline-formula> is the first index beyond which the truncated sum is non-increasing (initial monotone sequence rule). We set the bootstrap block length and effective sample size as
<disp-formula id="eqn-A14"><label>(A14)</label><mml:math id="mml-eqn-A14" display="block"><mml:mi>B</mml:mi><mml:mo>=</mml:mo><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">&#x2308;</mml:mo></mml:mrow></mml:mstyle><mml:msub><mml:mrow><mml:mover><mml:mi>&#x03C4;</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mtext>int</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">&#x2309;</mml:mo></mml:mrow></mml:mstyle><mml:mo>,</mml:mo><mml:mspace width="2em" /><mml:msub><mml:mi>n</mml:mi><mml:mrow><mml:mrow><mml:mtext>eff</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>&#x2248;</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mi>N</mml:mi><mml:mi>B</mml:mi></mml:mfrac><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>Moving-block bootstrap (MBB) for confidence intervals.</p>
<p>Given <italic>N</italic> ordered units (episodes), construct overlapping blocks of length <italic>B</italic>,
<disp-formula id="eqn-A15"><label>(A15)</label><mml:math id="mml-eqn-A15" display="block"><mml:msub><mml:mrow><mml:mi>&#x0212C;</mml:mi></mml:mrow><mml:mi>s</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mi>s</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mi>s</mml:mi><mml:mo>+</mml:mo><mml:mi>B</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mspace width="2em" /><mml:mi>s</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mi>N</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>B</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo></mml:math></disp-formula>and draw
<disp-formula id="eqn-A16"><label>(A16)</label><mml:math id="mml-eqn-A16" display="block"><mml:mi>m</mml:mi><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mrow><mml:mo>&#x2308;</mml:mo><mml:mfrac><mml:mi>N</mml:mi><mml:mi>B</mml:mi></mml:mfrac><mml:mo>&#x2309;</mml:mo></mml:mrow></mml:math></disp-formula>blocks independently with replacement to form one bootstrap resample of length <italic>N</italic>. Recompute the target statistic <inline-formula id="ieqn-649"><mml:math id="mml-ieqn-649"><mml:msup><mml:mi>T</mml:mi><mml:mo>&#x2217;</mml:mo></mml:msup></mml:math></inline-formula> (e.g., Macro-<inline-formula id="ieqn-650"><mml:math id="mml-ieqn-650"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, AUROC, AUPRC, Brier, ECE, <inline-formula id="ieqn-651"><mml:math id="mml-ieqn-651"><mml:mi>&#x03BA;</mml:mi></mml:math></inline-formula>) on each resample; the 2.5/97.5 percentiles across <italic>R</italic> replicates (e.g., <inline-formula id="ieqn-652"><mml:math id="mml-ieqn-652"><mml:mi>R</mml:mi><mml:mo>=</mml:mo><mml:mn>1000</mml:mn></mml:math></inline-formula>) define the 95% CI.</p>
<p>Calibration metrics (multiclass; percentage scaling).</p>
<p>For class probabilities <inline-formula id="ieqn-653"><mml:math id="mml-ieqn-653"><mml:msub><mml:mrow><mml:mover><mml:mi>p</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and one-hot labels <inline-formula id="ieqn-654"><mml:math id="mml-ieqn-654"><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>, the (percentage-scaled) Brier score is
<disp-formula id="eqn-A17"><label>(A17)</label><mml:math id="mml-eqn-A17" display="block"><mml:mrow><mml:mtext>Brier</mml:mtext></mml:mrow><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mn>100</mml:mn><mml:mrow><mml:mi>N</mml:mi><mml:mi>C</mml:mi></mml:mrow></mml:mfrac><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>c</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>C</mml:mi></mml:mrow></mml:munderover><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">(</mml:mo></mml:mrow></mml:mstyle><mml:msub><mml:mrow><mml:mover><mml:mi>p</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>c</mml:mi></mml:mrow></mml:msub><mml:msup><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">)</mml:mo></mml:mrow></mml:mstyle><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mtext>&#x00A0;&#x00A0;</mml:mtext><mml:mo stretchy="false">(</mml:mo><mml:mi mathvariant="normal">&#x0025;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo></mml:math></disp-formula>and the Expected Calibration Error (ECE) with confidence bins <inline-formula id="ieqn-655"><mml:math id="mml-ieqn-655"><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mi>B</mml:mi><mml:mi>m</mml:mi></mml:msub><mml:msubsup><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mrow><mml:mi>m</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> is
<disp-formula id="eqn-A18"><label>(A18)</label><mml:math id="mml-eqn-A18" display="block"><mml:mrow><mml:mtext>ECE</mml:mtext></mml:mrow><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mn>100</mml:mn><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>m</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:munderover><mml:mfrac><mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:msub><mml:mi>B</mml:mi><mml:mi>m</mml:mi></mml:msub><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow><mml:mi>N</mml:mi></mml:mfrac><mml:mspace width="thinmathspace" /><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.623em" minsize="1.623em">|</mml:mo></mml:mrow></mml:mstyle><mml:mrow><mml:mtext>acc</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>B</mml:mi><mml:mi>m</mml:mi></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mtext>conf</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>B</mml:mi><mml:mi>m</mml:mi></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.623em" minsize="1.623em">|</mml:mo></mml:mrow></mml:mstyle><mml:mtext>&#x00A0;&#x00A0;</mml:mtext><mml:mo stretchy="false">(</mml:mo><mml:mi mathvariant="normal">&#x0025;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo></mml:math></disp-formula>where <inline-formula id="ieqn-656"><mml:math id="mml-ieqn-656"><mml:mrow><mml:mi mathvariant="normal">a</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>B</mml:mi><mml:mi>m</mml:mi></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> is empirical accuracy and <inline-formula id="ieqn-657"><mml:math id="mml-ieqn-657"><mml:mrow><mml:mi mathvariant="normal">c</mml:mi><mml:mi mathvariant="normal">o</mml:mi><mml:mi mathvariant="normal">n</mml:mi><mml:mi mathvariant="normal">f</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>B</mml:mi><mml:mi>m</mml:mi></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> is mean predicted probability within bin <inline-formula id="ieqn-658"><mml:math id="mml-ieqn-658"><mml:mi>m</mml:mi></mml:math></inline-formula> (Micro/macro averaging and the one-vs.-rest convention are defined in <xref ref-type="sec" rid="s5">Section 5</xref>).</p>
</sec>
<sec id="s9_3">
<title>Appendix A.3.3 Runtime Instrumentation and Summary Functionals</title>
<p>Definition of end-to-end latency.</p>
<p>End-to-end latency is the elapsed time from the first sensor timestamp entering the pipeline to the emission of the calibrated risk output:<disp-formula id="eqn-A19"><label>(A19)</label><mml:math id="mml-eqn-A19" display="block"><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mrow><mml:mtext>e2e</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mrow><mml:mtext>out</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>&#x2212;</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mrow><mml:mtext>in</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>Stage-wise decomposition.</p>
<p>For record <inline-formula id="ieqn-659"><mml:math id="mml-ieqn-659"><mml:mi>i</mml:mi></mml:math></inline-formula>, let <inline-formula id="ieqn-660"><mml:math id="mml-ieqn-660"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> denote the measured latency of stage <inline-formula id="ieqn-661"><mml:math id="mml-ieqn-661"><mml:mi>j</mml:mi></mml:math></inline-formula> in the pipeline (capture/pre-proc, person detection, weapon cues, facial emotion, LSTM modules, FLAD, I/O). The per-record total processing time is
<disp-formula id="eqn-A20"><label>(A20)</label><mml:math id="mml-eqn-A20" display="block"><mml:msub><mml:mi>T</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>J</mml:mi></mml:mrow></mml:munderover><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>Percentile summary.</p>
<p>Let <inline-formula id="ieqn-662"><mml:math id="mml-ieqn-662"><mml:msub><mml:mrow><mml:mover><mml:mi>F</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>T</mml:mi></mml:msub></mml:math></inline-formula> be the empirical CDF of <inline-formula id="ieqn-663"><mml:math id="mml-ieqn-663"><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msubsup><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>N</mml:mi></mml:msubsup></mml:math></inline-formula>. The empirical <inline-formula id="ieqn-664"><mml:math id="mml-ieqn-664"><mml:mi>p</mml:mi></mml:math></inline-formula>-quantile is defined as
<disp-formula id="eqn-A21"><label>(A21)</label><mml:math id="mml-eqn-A21" display="block"><mml:msub><mml:mrow><mml:mover><mml:mi>Q</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>p</mml:mi></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mo movablelimits="true" form="prefix">inf</mml:mo><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">{</mml:mo></mml:mrow></mml:mstyle><mml:mspace width="thinmathspace" /><mml:mi>t</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mo>:</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:msub><mml:mrow><mml:mover><mml:mi>F</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>T</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>t</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2265;</mml:mo><mml:mi>p</mml:mi><mml:mspace width="thinmathspace" /><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">}</mml:mo></mml:mrow></mml:mstyle><mml:mo>,</mml:mo><mml:mspace width="2em" /><mml:mi>p</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo></mml:math></disp-formula>so that the reported 95th percentile is <inline-formula id="ieqn-665"><mml:math id="mml-ieqn-665"><mml:msub><mml:mrow><mml:mover><mml:mi>Q</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>0.95</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>. Numerical summaries (median, <inline-formula id="ieqn-666"><mml:math id="mml-ieqn-666"><mml:msub><mml:mrow><mml:mover><mml:mi>Q</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mn>0.95</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, range) are tabulated per stage in <xref ref-type="table" rid="table-16">Table A5</xref>, while the distribution of <inline-formula id="ieqn-667"><mml:math id="mml-ieqn-667"><mml:msub><mml:mi>T</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula> appears in <xref ref-type="fig" rid="fig-4">Fig. A1</xref>. For consistency with the rest of the study, resampling-based uncertainty&#x2014;when reported&#x2014;follows the moving-block bootstrap conventions in <xref ref-type="sec" rid="s9_2">Appendix A.3.2</xref> (<xref ref-type="disp-formula" rid="eqn-A14">Eqs. (A14)</xref>&#x2013;<xref ref-type="disp-formula" rid="eqn-A16">(A16)</xref>), with preprocessing and calibration mappings held fixed within replicates.</p>

</sec>
<sec id="s9_4">
<title>Appendix A.3.4 Hypothesis Tests and Multiplicity Control</title>
<p>DeLong&#x2019;s paired AUROC test.</p>
<p>Let <inline-formula id="ieqn-668"><mml:math id="mml-ieqn-668"><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-669"><mml:math id="mml-ieqn-669"><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula> be the correlated AUROC estimates on the same cases. Using DeLong&#x2019;s covariance estimate <inline-formula id="ieqn-670"><mml:math id="mml-ieqn-670"><mml:mrow><mml:mover><mml:mrow><mml:mi mathvariant="normal">V</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi mathvariant="normal">r</mml:mi></mml:mrow><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>k</mml:mi></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> and <inline-formula id="ieqn-671"><mml:math id="mml-ieqn-671"><mml:mrow><mml:mover><mml:mrow><mml:mi mathvariant="normal">C</mml:mi><mml:mi mathvariant="normal">o</mml:mi><mml:mi mathvariant="normal">v</mml:mi></mml:mrow><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mn>1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, the standardized statistic is
<disp-formula id="eqn-A22"><label>(A22)</label><mml:math id="mml-eqn-A22" display="block"><mml:mi>z</mml:mi><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mrow><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mn>1</mml:mn></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mn>2</mml:mn></mml:msub></mml:mrow><mml:msqrt><mml:mrow><mml:mover><mml:mrow><mml:mtext>Var</mml:mtext></mml:mrow><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mn>1</mml:mn></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>+</mml:mo><mml:mrow><mml:mover><mml:mrow><mml:mtext>Var</mml:mtext></mml:mrow><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>2</mml:mn><mml:mspace width="thinmathspace" /><mml:mrow><mml:mover><mml:mrow><mml:mtext>Cov</mml:mtext></mml:mrow><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mn>1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>A</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:msqrt></mml:mfrac><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>McNemar&#x2019;s test with continuity correction.</p>
<p>For paired binary decisions at a fixed threshold, let <inline-formula id="ieqn-672"><mml:math id="mml-ieqn-672"><mml:mi>b</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-673"><mml:math id="mml-ieqn-673"><mml:mi>c</mml:mi></mml:math></inline-formula> be the discordant counts. The continuity-corrected statistic is</p>
<p><disp-formula id="eqn-A23"><label>(A23)</label><mml:math id="mml-eqn-A23" display="block"><mml:msubsup><mml:mi>&#x03C7;</mml:mi><mml:mrow><mml:mrow><mml:mtext>cc</mml:mtext></mml:mrow></mml:mrow><mml:mn>2</mml:mn></mml:msubsup><mml:mtext>&#x00A0;</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mrow><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">(</mml:mo></mml:mrow></mml:mstyle><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi>b</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>c</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn><mml:msup><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">)</mml:mo></mml:mrow></mml:mstyle><mml:mn>2</mml:mn></mml:msup></mml:mrow><mml:mrow><mml:mspace width="thinmathspace" /><mml:mi>b</mml:mi><mml:mo>+</mml:mo><mml:mi>c</mml:mi><mml:mspace width="thinmathspace" /></mml:mrow></mml:mfrac><mml:mo>,</mml:mo></mml:math></disp-formula>and significance is assessed against the <inline-formula id="ieqn-674"><mml:math id="mml-ieqn-674"><mml:msubsup><mml:mi>&#x03C7;</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mn>2</mml:mn></mml:msubsup></mml:math></inline-formula> reference using the critical-value rule <inline-formula id="ieqn-675"><mml:math id="mml-ieqn-675"><mml:msubsup><mml:mi>&#x03C7;</mml:mi><mml:mrow><mml:mrow><mml:mi mathvariant="normal">c</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:mrow></mml:mrow><mml:mn>2</mml:mn></mml:msubsup><mml:mo>&#x2265;</mml:mo><mml:msubsup><mml:mi>&#x03C7;</mml:mi><mml:mrow><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:mi>&#x03B1;</mml:mi></mml:mrow><mml:mn>2</mml:mn></mml:msubsup></mml:math></inline-formula>. We report the test statistic and two-sided 95% confidence intervals for paired outcome differences.</p>
<p>Holm step-down adjustment.</p>
<p>For <inline-formula id="ieqn-676"><mml:math id="mml-ieqn-676"><mml:mi>m</mml:mi></mml:math></inline-formula> hypotheses with individual marginal tests ordered by increasing evidence against the null (index <inline-formula id="ieqn-677"><mml:math id="mml-ieqn-677"><mml:mo stretchy="false">(</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> most extreme), familywise error control at level <inline-formula id="ieqn-678"><mml:math id="mml-ieqn-678"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula> proceeds stepwise: reject <inline-formula id="ieqn-679"><mml:math id="mml-ieqn-679"><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>k</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula> whenever</p>
<p><disp-formula id="eqn-A24"><label>(A24)</label><mml:math id="mml-eqn-A24" display="block"><mml:msub><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>k</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msub><mml:mtext>&#x00A0;</mml:mtext><mml:mo>&#x2264;</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mfrac><mml:mi>&#x03B1;</mml:mi><mml:mrow><mml:mspace width="thinmathspace" /><mml:mi>m</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>k</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn><mml:mspace width="thinmathspace" /></mml:mrow></mml:mfrac><mml:mo>,</mml:mo></mml:math></disp-formula>and continue sequentially to the next index until the first non-rejection, after which all remaining hypotheses are retained.</p>
</sec>
</sec>
</app>
</app-group>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>[1]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Jaafar</surname> <given-names>N</given-names></string-name>, <string-name><surname>Lachiri</surname> <given-names>Z</given-names></string-name></person-group>. <article-title>Multimodal fusion methods with deep neural networks and meta-information for aggression detection in surveillance</article-title>. <source>Expert Syst Appl</source>. <year>2023</year>;<volume>211</volume>(<issue>4</issue>):<fpage>118523</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.eswa.2022.118523</pub-id>.</mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Zawad</surname> <given-names>MRS</given-names></string-name>, <string-name><surname>Rony</surname> <given-names>CSA</given-names></string-name>, <string-name><surname>Haque</surname> <given-names>MY</given-names></string-name>, <string-name><surname>Al Banna</surname> <given-names>MH</given-names></string-name>, <string-name><surname>Mahmud</surname> <given-names>M</given-names></string-name>, <string-name><surname>Kaiser</surname> <given-names>MS</given-names></string-name></person-group>. <chapter-title>A hybrid approach for Stress prediction from Heart rate variability</chapter-title>. In: <source>Frontiers of ICT in healthcare</source>. <publisher-loc>Singapore</publisher-loc>: <publisher-name>Springer</publisher-name>; <year>2023</year>. p. <fpage>111</fpage>&#x2013;<lpage>21</lpage>. doi:<pub-id pub-id-type="doi">10.1007/978-981-19-5191-6_10</pub-id>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Velmovitsky</surname> <given-names>PE</given-names></string-name>, <string-name><surname>Alencar</surname> <given-names>P</given-names></string-name>, <string-name><surname>Leatherdale</surname> <given-names>ST</given-names></string-name>, <string-name><surname>Cowan</surname> <given-names>D</given-names></string-name>, <string-name><surname>Morita</surname> <given-names>PP</given-names></string-name></person-group>. <article-title>Using apple watch ECG data for heart rate variability monitoring and stress prediction: a pilot study</article-title>. <source>Front Digit Health</source>. <year>2022</year>;<volume>4</volume>:<fpage>1058826</fpage>. doi:<pub-id pub-id-type="doi">10.3389/fdgth.2022.1058826</pub-id>; <pub-id pub-id-type="pmid">36569803</pub-id></mixed-citation></ref>
<ref id="ref-4"><label>[4]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Verma</surname> <given-names>H</given-names></string-name>, <string-name><surname>Kumar</surname> <given-names>N</given-names></string-name>, <string-name><surname>Sharma</surname> <given-names>YK</given-names></string-name>, <string-name><surname>Vyas</surname> <given-names>P</given-names></string-name></person-group>. <chapter-title>Stress detect</chapter-title>. In: <source>Optimized predictive models in healthcare using machine learning</source>. <publisher-loc>Hoboken, NJ, USA</publisher-loc>: <publisher-name>John Wiley &#x0026; Sons, Inc</publisher-name>; <year>2024</year>. doi:<pub-id pub-id-type="doi">10.1002/9781394175376.ch20</pub-id>.</mixed-citation></ref>
<ref id="ref-5"><label>[5]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Sangiorgio</surname> <given-names>M</given-names></string-name>, <string-name><surname>Dercole</surname> <given-names>F</given-names></string-name></person-group>. <article-title>Robustness of LSTM neural networks for multi-step forecasting of chaotic time series</article-title>. <source>Chaos Solitons Fractals</source>. <year>2020</year>;<volume>139</volume>(<issue>8</issue>):<fpage>110045</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.chaos.2020.110045</pub-id>.</mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Seng</surname> <given-names>D</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>X</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>G</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>X</given-names></string-name></person-group>. <article-title>Spatiotemporal prediction of air quality based on LSTM neural network</article-title>. <source>Alex Eng J</source>. <year>2021</year>;<volume>60</volume>(<issue>2</issue>):<fpage>2021</fpage>&#x2013;<lpage>32</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.aej.2020.12.009</pub-id>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Fang</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Peng</surname> <given-names>L</given-names></string-name>, <string-name><surname>Hong</surname> <given-names>H</given-names></string-name></person-group>. <article-title>Predicting flood susceptibility using LSTM neural networks</article-title>. <source>J Hydrol</source>. <year>2021</year>;<volume>594</volume>:<fpage>125734</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.jhydrol.2020.125734</pub-id>.</mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Yaqub</surname> <given-names>M</given-names></string-name>, <string-name><surname>Asif</surname> <given-names>H</given-names></string-name>, <string-name><surname>Kim</surname> <given-names>S</given-names></string-name>, <string-name><surname>Lee</surname> <given-names>W</given-names></string-name></person-group>. <article-title>Modeling of a full-scale sewage treatment plant to predict the nutrient removal efficiency using a long short-term memory (LSTM) neural network</article-title>. <source>J Water Process Eng</source>. <year>2020</year>;<volume>37</volume>:<fpage>101388</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.jwpe.2020.101388</pub-id>.</mixed-citation></ref>
<ref id="ref-9"><label>[9]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Farhi</surname> <given-names>N</given-names></string-name>, <string-name><surname>Kohen</surname> <given-names>E</given-names></string-name>, <string-name><surname>Mamane</surname> <given-names>H</given-names></string-name>, <string-name><surname>Shavitt</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>Prediction of wastewater treatment quality using LSTM neural network</article-title>. <source>Environ Technol Innov</source>. <year>2021</year>;<volume>23</volume>(<issue>2</issue>):<fpage>101632</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.eti.2021.101632</pub-id>.</mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Keerthana</surname> <given-names>K</given-names></string-name>, <string-name><surname>Yamini</surname> <given-names>R</given-names></string-name>, <string-name><surname>Dhesigan</surname> <given-names>N</given-names></string-name>, <string-name><surname>Gangadharan</surname> <given-names>NB</given-names></string-name>, <string-name><surname>Kirubha</surname> <given-names>SA</given-names></string-name></person-group>. <article-title>Smart lifeguarding vest for military purpose</article-title>. In: <conf-name>Proceedings of the 2020 International Conference on Communication and Signal Processing (ICCSP); 2020 Jul 28&#x2013;30</conf-name>; <publisher-loc>Chennai, India</publisher-loc>. p. <fpage>637</fpage>&#x2013;<lpage>9</lpage>. doi:<pub-id pub-id-type="doi">10.1109/iccsp48568.2020.9182321</pub-id>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Haider</surname> <given-names>AU</given-names></string-name>, <string-name><surname>Khan</surname> <given-names>S</given-names></string-name>, <string-name><surname>Ahmed</surname> <given-names>MJ</given-names></string-name>, <string-name><surname>Ali Khan</surname> <given-names>T</given-names></string-name></person-group>. <article-title>Strip pooling coordinate attention with directional learning for intelligent fire recognition in smart cities</article-title>. <source>ICCK Trans Sens Commun Control</source>. <year>2025</year>;<volume>2</volume>(<issue>4</issue>):<fpage>263</fpage>&#x2013;<lpage>75</lpage>. doi:<pub-id pub-id-type="doi">10.62762/tscc.2025.675097</pub-id>.</mixed-citation></ref>
<ref id="ref-12"><label>[12]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Huang</surname> <given-names>L</given-names></string-name>, <string-name><surname>Li</surname> <given-names>S</given-names></string-name>, <string-name><surname>Man</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>X</given-names></string-name>, <string-name><surname>Tang</surname> <given-names>X</given-names></string-name>, <string-name><surname>Ji</surname> <given-names>R</given-names></string-name></person-group>. <article-title>Fatigue driving detection via multi-head transformer with adaptive weighted loss</article-title>. <source>ICCK Trans Intell Syst</source>. <year>2026</year>;<volume>3</volume>(<issue>1</issue>):<fpage>55</fpage>&#x2013;<lpage>69</lpage>. doi:<pub-id pub-id-type="doi">10.62762/tis.2025.633754</pub-id>.</mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>CY</given-names></string-name>, <string-name><surname>Bochkovskiy</surname> <given-names>A</given-names></string-name>, <string-name><surname>Liao</surname> <given-names>HM</given-names></string-name></person-group>. <article-title>YOLOv7: trainable bag-of-freebies sets new state-of-the-art for real-time object detectors</article-title>. In: <conf-name>Proceedings of the 2023 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR); 2023 Jun 17&#x2013;24</conf-name>; <publisher-loc>Vancouver, BC, Canada</publisher-loc>. doi:<pub-id pub-id-type="doi">10.1109/cvpr52729.2023.00721</pub-id>.</mixed-citation></ref>
<ref id="ref-14"><label>[14]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Jain</surname> <given-names>A</given-names></string-name>, <collab>Aishwarya</collab>, <string-name><surname>Garg</surname> <given-names>G</given-names></string-name></person-group>. <article-title>Gun detection with model and type recognition using HaaR cascade classifier</article-title>. In: <conf-name>Proceedings of the 2020 Third International Conference on Smart Systems and Inventive Technology (ICSSIT); 2020 Aug 20&#x2013;22</conf-name>; <publisher-loc>Tirunelveli, India</publisher-loc>. doi:<pub-id pub-id-type="doi">10.1109/icssit48917.2020.9214211</pub-id>.</mixed-citation></ref>
<ref id="ref-15"><label>[15]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Senst</surname> <given-names>T</given-names></string-name>, <string-name><surname>Eiselein</surname> <given-names>V</given-names></string-name>, <string-name><surname>Kuhn</surname> <given-names>A</given-names></string-name>, <string-name><surname>Sikora</surname> <given-names>T</given-names></string-name></person-group>. <article-title>Crowd violence detection using global motion-compensated Lagrangian features and scale-sensitive video-level representation</article-title>. <source>IEEE Trans Inf Forensics Secur</source>. <year>2017</year>;<volume>12</volume>(<issue>12</issue>):<fpage>2945</fpage>&#x2013;<lpage>56</lpage>. doi:<pub-id pub-id-type="doi">10.1109/tifs.2017.2725820</pub-id>.</mixed-citation></ref>
<ref id="ref-16"><label>[16]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Wickert</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Real-time digital signal processing using pyaudio_helper and ipywidgets</article-title>. In: <conf-name>Proceedings of the 17th Python in Science Conference; 2018 Jul 9&#x2013;15</conf-name>; <publisher-loc>Austin, TX, USA</publisher-loc>. doi:<pub-id pub-id-type="doi">10.25080/majora-4af1f417-00e</pub-id>.</mixed-citation></ref>
<ref id="ref-17"><label>[17]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ribeiro</surname> <given-names>PC</given-names></string-name>, <string-name><surname>Audigier</surname> <given-names>R</given-names></string-name>, <string-name><surname>Pham</surname> <given-names>QC</given-names></string-name></person-group>. <article-title>RIMOC, a feature to discriminate unstructured motions: application to violence detection for video-surveillance</article-title>. <source>Comput Vis Image Underst</source>. <year>2016</year>;<volume>144</volume>(<issue>15</issue>):<fpage>121</fpage>&#x2013;<lpage>43</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.cviu.2015.11.001</pub-id>.</mixed-citation></ref>
<ref id="ref-18"><label>[18]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Bernal</surname> <given-names>E</given-names></string-name>, <string-name><surname>Lagunes</surname> <given-names>ML</given-names></string-name>, <string-name><surname>Castillo</surname> <given-names>O</given-names></string-name>, <string-name><surname>Soria</surname> <given-names>J</given-names></string-name>, <string-name><surname>Valdez</surname> <given-names>F</given-names></string-name></person-group>. <article-title>Optimization of type-2 fuzzy logic controller design using the GSO and FA algorithms</article-title>. <source>Int J Fuzzy Syst</source>. <year>2021</year>;<volume>23</volume>(<issue>1</issue>):<fpage>42</fpage>&#x2013;<lpage>57</lpage>. doi:<pub-id pub-id-type="doi">10.1007/s40815-020-00976-w</pub-id>.</mixed-citation></ref>
<ref id="ref-19"><label>[19]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wo&#x017A;niak</surname> <given-names>M</given-names></string-name>, <string-name><surname>Zielonka</surname> <given-names>A</given-names></string-name>, <string-name><surname>Sikora</surname> <given-names>A</given-names></string-name></person-group>. <article-title>Driving support by type-2 fuzzy logic control model</article-title>. <source>Expert Syst Appl</source>. <year>2022</year>;<volume>207</volume>(<issue>3</issue>):<fpage>117798</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.eswa.2022.117798</pub-id>.</mixed-citation></ref>
<ref id="ref-20"><label>[20]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Malik</surname> <given-names>S</given-names></string-name>, <string-name><surname>Mohan</surname> <given-names>BM</given-names></string-name></person-group>. <article-title>Development and experimental validation of analytical structures of some simplest fuzzy PI/PD controllers using bounded sum aggregation</article-title>. <source>J Frankl Inst</source>. <year>2024</year>;<volume>361</volume>(<issue>15</issue>):<fpage>107098</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.jfranklin.2024.107098</pub-id>.</mixed-citation></ref>
</ref-list>
</back></article>