<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article">
 <front>
  <journal-meta>
   <journal-id journal-id-type="publisher-id">
    eng
   </journal-id>
   <journal-title-group>
    <journal-title>
     Engineering
    </journal-title>
   </journal-title-group>
   <issn pub-type="epub">
    1947-3931
   </issn>
   <issn publication-format="print">
    1947-394X
   </issn>
   <publisher>
    <publisher-name>
     Scientific Research Publishing
    </publisher-name>
   </publisher>
  </journal-meta>
  <article-meta>
   <article-id pub-id-type="doi">
    10.4236/eng.2025.171010
   </article-id>
   <article-id pub-id-type="publisher-id">
    eng-140298
   </article-id>
   <article-categories>
    <subj-group subj-group-type="heading">
     <subject>
      Articles
     </subject>
    </subj-group>
    <subj-group subj-group-type="Discipline-v2">
     <subject>
      Engineering
     </subject>
    </subj-group>
   </article-categories>
   <title-group>
    Mixed Integer Program for e-Wallet Security Based on Suspicious Transaction Detection
   </title-group>
   <contrib-group>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Pacôme
      </surname>
      <given-names>
       Brou
      </given-names>
     </name>
    </contrib>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Kadokan
      </surname>
      <given-names>
       Coulibaly
      </given-names>
     </name>
    </contrib>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Siaho
      </surname>
      <given-names>
       Diomande
      </given-names>
     </name>
    </contrib>
   </contrib-group> 
   <aff id="affnull">
    <addr-line>
     aLaboratoire des Sciences Technologiques de l’Information et de la Communication, Ecole Supérieure Africaine des Technologies de l’Information et de la Communication (ESATIC), Abidjan, Côte d’Ivoire
    </addr-line> 
   </aff> 
   <pub-date pub-type="epub">
    <day>
     13
    </day> 
    <month>
     01
    </month>
    <year>
     2025
    </year>
   </pub-date> 
   <volume>
    17
   </volume> 
   <issue>
    01
   </issue>
   <fpage>
    155
   </fpage>
   <lpage>
    167
   </lpage>
   <history>
    <date date-type="received">
     <day>
      1,
     </day>
     <month>
      December
     </month>
     <year>
      2024
     </year>
    </date>
    <date date-type="published">
     <day>
      24,
     </day>
     <month>
      December
     </month>
     <year>
      2024
     </year> 
    </date> 
    <date date-type="accepted">
     <day>
      24,
     </day>
     <month>
      January
     </month>
     <year>
      2025
     </year> 
    </date>
   </history>
   <permissions>
    <copyright-statement>
     © Copyright 2014 by authors and Scientific Research Publishing Inc. 
    </copyright-statement>
    <copyright-year>
     2014
    </copyright-year>
    <license>
     <license-p>
      This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/
     </license-p>
    </license>
   </permissions>
   <abstract>
    With the rise of digital transactions, e-Wallets have become prime targets for fraudulent activity. Early detection of suspicious transactions is therefore crucial to protect users and maintain trust in these systems. This article proposes a mathematical model based on a Mixed Integer Program (MIP) to identify and block suspicious transactions. This mathematical approach is designed to analyze e-Wallet transactions in real time by combining integer and continuous decision variables, offering greater flexibility in modeling fraud detection constraints. It considers parameters such as transaction cost, geographical location, type of device used for the transaction, IP address and other potential fraud indicators. Assigning suspicion scores to each transaction enables the model to identify risks that become habitual behavior and mark them as suspicious. Tests carried out on 10,000 digital transactions show that using PMNE significantly improves the detection of fraudulent transactions by identifying the most critical anomalies in terms of accuracy, adaptability and operational efficiency. The model also offers greater accuracy, reducing the number of false positives and false negatives, enabling faster intervention to block truly suspicious transactions. 
   </abstract>
   <kwd-group> 
    <kwd>
     e-Wallet
    </kwd> 
    <kwd>
      PMNE
    </kwd> 
    <kwd>
      Digital Transaction
    </kwd> 
    <kwd>
      Suspicion Score
    </kwd> 
    <kwd>
      Suspicious Transaction
    </kwd>
   </kwd-group>
  </article-meta>
 </front>
 <body>
  <sec id="s1">
   <title>1. Introduction</title>
   <p>Electronic wallets (e-Wallets) have become a mainstay of modern financial transactions, due to their simplicity and accessibility. However, this massive adoption is accompanied by an exponential increase in the risk of fraud, particularly through unauthorized or suspicious transactions. According to recent reports, losses due to electronic fraud reach billions of dollars a year, underscoring the urgent need for effective solutions to strengthen e-Wallet’s security. Among existing approaches, suspicious transaction detection plays a key role in identifying anomalous behavior before it causes financial loss. However, heuristic models or those based solely on statistical techniques often lack precision in complex environments. In this context, Mixed Integer Programs (MIPs) have emerged as a robust and flexible alternative. These models make it possible to formulate detection problems in the form of mathematical optimization, integrating continuous and discrete variables to represent the diversity of transactional behaviors. In this paper, we propose a PMNI model for securing e-Wallets, specifically designed to detect and manage suspicious transactions. The model is based on a combination of constraints related to transaction amounts, geographical locations, device types and associated IP addresses. The results obtained demonstrate the effectiveness of PMNI in reducing false positives, while maintaining a high level of anomaly detection.</p>
  </sec><sec id="s2">
   <title>2. Literature Review</title>
   <p>Securing electronic wallets has become a major challenge in the context of increasing digital fraud. The integration of techniques for detecting suspicious transactions relies on mathematical models, notably Mixed Integer Programs (MIPS). These models enable decision problems to be formulated by combining continuous and discrete variables, offering an optimal solution for identifying and managing fraudulent behavior. The popularity of e-wallets rests on their convenience, but their vulnerability to attack remains a major challenge. Thus, in 2019, Jha et al. proposed a review of fraud detection techniques in digital payments, including both statistical and algorithmic approaches; the article highlights the importance of hybrid models to improve performance <xref ref-type="bibr" rid="scirp.140298-1">
     [1]
    </xref>. According to Gupta et al. in <xref ref-type="bibr" rid="scirp.140298-2">
     [2]
    </xref>, detection of suspicious behavior relies on intelligent algorithms to analyze transaction data in real time; electronic fraud includes abnormal transactions (unusually high amounts, unfamiliar locations, etc.). Nguyen et al. in 2020 show that the use of unsupervised methods such as clustering can identify suspicious transactions; they propose hybridization with combinatorial models to improve accuracy in detecting suspicious transactions <xref ref-type="bibr" rid="scirp.140298-3">
     [3]
    </xref>. As for Estevez et al, in 2018 they proposed an analysis of features important for detecting anomalies in digital transactions, with an emphasis on geographical and behavioral variables <xref ref-type="bibr" rid="scirp.140298-4">
     [4]
    </xref>. MIPs offer a rigorous representation of decision problems by integrating linear constraints and discrete variables; thus, Hansen and Jaumard in the 90s developed a mathematical program in financial contexts to model optimization decisions under uncertainties <xref ref-type="bibr" rid="scirp.140298-5">
     [5]
    </xref>; 3 decades later, Zhao and Hryniewicz advocated robust optimization approaches to secure transactions in high uncertainty environments <xref ref-type="bibr" rid="scirp.140298-6">
     [6]
    </xref>; Thus, Wang et al. in 2021 developed a PMNI to classify transactions as suspicious or not, based on dynamic thresholds linked to the user’s habits, this model proved more efficient thanks to its integration with real-time data <xref ref-type="bibr" rid="scirp.140298-7">
     [7]
    </xref>. Also in 2021, Kim and Lee analyze transactional behaviors to identify anomalies, with a focus on geographic locations and amounts <xref ref-type="bibr" rid="scirp.140298-8">
     [8]
    </xref>. A year later, in 2022, Li and Liu, develop a combination of PMNE with machine learning models (neural networks) to dynamically adjust constraints and improve accuracy while reducing computation times <xref ref-type="bibr" rid="scirp.140298-9">
     [9]
    </xref>. Other complementary methods for detecting fraud in mobile financial transactions have been developed, including ensemble approaches (bagging, boosting) to reinforce PMNI models <xref ref-type="bibr" rid="scirp.140298-10">
     [10]
    </xref>; and a technique combining combinatorial models and supervised learning to improve fraud detection <xref ref-type="bibr" rid="scirp.140298-11">
     [11]
    </xref>. Finally, Sadighian and Karimi recommend an analysis of security policies and their role in reducing fraud <xref ref-type="bibr" rid="scirp.140298-12">
     [12]
    </xref>. This review demonstrates the various contributions of Mixed Integer Programs to securing digital transactions, combining optimization techniques, behavioral analysis and machine learning. Although these models offer a solution for detecting and preventing suspicious transactions, they are based on a single-criteria parameter.</p>
   <p>In this context, this paper proposes a new mixed integer program combining both discrete and continuous variables under several constraints: transaction cost, geographical location, type of device used to perform the transaction and its IP address, with the aim of capturing the true complexity of transactional systems by reducing classification errors linked to false positives (normal transactions classified as suspicious) and false negatives (suspicious transactions classified as normal). Multiple constraints make it possible to exploit the relationships between variables to obtain a robust, optimized mathematical program that improves accuracy, reduces errors and adapts easily to different user behaviors and transactional environments. This approach significantly enhances the security of e-Wallets.</p>
  </sec><sec id="s3">
   <title>3. Materials and Method</title>
   <sec id="s3_1">
    <title>3.1. Model Formulation</title>
    <p>The mixed integer program developed is designed to detect suspicious transactions in an electronic wallet (e-Wallet). The Fitness function aims to maximize the detection of suspicious transactions while minimizing false positives. Variables and constraints are defined to capture transactional characteristics such as amount, geographical location, device type and IP address.</p>
    <p>The MIP is composed of two types of variables:</p>
    <p>Continuous variables, binary integer variables</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             if a transaction is classified as suspect 
           </mtext> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             otherwise 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mi>
           j 
         </mi> 
        </mrow> 
       </msub> 
       <mtext> 
       </mtext> 
       <mo>
         ∈ 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <mn>
           0 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           1 
         </mn> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math>: Binary variable representing an anomaly detected for characteristic 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        j 
      </mi> 
     </math> in the transaction 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math></p>
    <p>if 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         j 
       </mi> 
       <mo>
         = 
       </mo> 
       <mn>
         1 
       </mn> 
      </mrow> 
     </math>: characteristic relates to amount of the transaction</p>
    <p>if 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         j 
       </mi> 
       <mo>
         = 
       </mo> 
       <mn>
         2 
       </mn> 
      </mrow> 
     </math>: characteristic relates to geographical location</p>
    <p>if 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         j 
       </mi> 
       <mo>
         = 
       </mo> 
       <mn>
         3 
       </mn> 
      </mrow> 
     </math>: characteristic relates to type of Peripheral</p>
    <p>if 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         j 
       </mi> 
       <mo>
         = 
       </mo> 
       <mn>
         3 
       </mn> 
      </mrow> 
     </math>: feature relates to IP address</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          S 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         ≥ 
       </mo> 
       <mn>
         0 
       </mn> 
      </mrow> 
     </math>: Transaction suspicion score 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          C 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mo>
          + 
        </mo> 
       </msup> 
      </mrow> 
     </math>: Transaction cost 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math></p>
    <p>The MIP objective function is a linear combination of successful detections and penalties for errors, weighted by suspicion scores and adjusted by priority coefficients.</p>
    <p>These components are:</p>
    <p>Suspicion score ( 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          S 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>): score attribué à chaque transaction 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mi>
           w 
         </mi> 
         <mo>
           ⋅ 
         </mo> 
         <msub> 
          <mi>
            S 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <mo>
           ⋅ 
         </mo> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>: This term values suspicious transactions correctly detected by the model</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mi>
           ω 
         </mi> 
         <mo>
           ⋅ 
         </mo> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <mn>
             1 
           </mn> 
           <mo>
             − 
           </mo> 
           <msub> 
            <mi>
              x 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           ⋅ 
         </mo> 
         <msub> 
          <mi>
            F 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>: This term penalizes misclassified transactions</p>
    <p>with:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        w 
      </mi> 
     </math>: Weight that adjusts the importance of suspicious transactions in the objective function</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        ω 
      </mi> 
     </math>: weight adjusting penalty for false negatives</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          F 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>: False negatives: Suspicious transactions not detected ( 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mn>
         0 
       </mn> 
      </mrow> 
     </math>)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          S 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>: Transaction suspicion score 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>: Binary variable indicating transaction suspicion 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mtext>
         Maximize 
       </mtext> 
       <mtext>
           
       </mtext> 
       <mi>
         Z 
       </mi> 
       <mo>
         = 
       </mo> 
       <munderover> 
        <mstyle mathsize="140%" displaystyle="true"> 
         <mo>
           ∑ 
         </mo> 
        </mstyle> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mo>
           = 
         </mo> 
         <mn>
           1 
         </mn> 
        </mrow> 
        <mi>
          n 
        </mi> 
       </munderover> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mi>
           w 
         </mi> 
         <mo>
           ⋅ 
         </mo> 
         <msub> 
          <mi>
            S 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <mo>
           ⋅ 
         </mo> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <mo>
           − 
         </mo> 
         <mi>
           ω 
         </mi> 
         <mo>
           ⋅ 
         </mo> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <mn>
             1 
           </mn> 
           <mo>
             − 
           </mo> 
           <msub> 
            <mi>
              x 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           ⋅ 
         </mo> 
         <msub> 
          <mi>
            F 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math></p>
    <p>Note:</p>
    <p>The weights 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        w 
      </mi> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        ω 
      </mi> 
     </math> control the balance between maximizing the detection of suspicious transactions and minimizing classification errors.</p>
    <p>If 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        w 
      </mi> 
     </math> is high, the model will focus on anomaly detection.</p>
    <p>If 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        ω 
      </mi> 
     </math> is high, the model will minimize false negatives.</p>
    <p>This allows the objective function: ( 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        Z 
      </mi> 
     </math>) ensure efficient and optimized detection as part of e-wallet security.</p>
    <p>Constraints</p>
    <p>Transaction amount constraint (for 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         j 
       </mi> 
       <mo>
         = 
       </mo> 
       <mn>
         1 
       </mn> 
       <mo>
         ⇒ 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           1 
         </mn> 
        </mrow> 
       </msub> 
      </mrow> 
     </math>)</p>
    <p>A transaction is considered suspicious if its cost 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          C 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> deviates significantly from the historical average of transactions for a given user.</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           1 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             if 
           </mtext> 
           <mtext>
               
           </mtext> 
           <mrow> 
            <mo>
              | 
            </mo> 
            <mrow> 
             <msub> 
              <mi>
                C 
              </mi> 
              <mi>
                i 
              </mi> 
             </msub> 
             <mo>
               − 
             </mo> 
             <mi>
               μ 
             </mi> 
             <mi>
               C 
             </mi> 
            </mrow> 
            <mo>
              | 
            </mo> 
           </mrow> 
           <mo>
             &gt; 
           </mo> 
           <msub> 
            <mi>
              κ 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             ⋅ 
           </mo> 
           <mi>
             σ 
           </mi> 
           <mi>
             C 
           </mi> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             otherwise 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math></p>
    <p>With</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         μ 
       </mi> 
       <mi>
         C 
       </mi> 
      </mrow> 
     </math>: Average transaction cost per user</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         σ 
       </mi> 
       <mi>
         C 
       </mi> 
      </mrow> 
     </math>: Standard deviation of transaction values</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          κ 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
      </mrow> 
     </math>: Adjustable threshold factor.</p>
    <p>Constraints on geographical location (for 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         j 
       </mi> 
       <mo>
         = 
       </mo> 
       <mn>
         2 
       </mn> 
       <mo>
         ⇒ 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           2 
         </mn> 
        </mrow> 
       </msub> 
      </mrow> 
     </math>)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           2 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             if 
           </mtext> 
           <mtext>
               
           </mtext> 
           <mi>
             D 
           </mi> 
           <mrow> 
            <mo>
              ( 
            </mo> 
            <mrow> 
             <mrow> 
              <mo>
                ( 
              </mo> 
              <mrow> 
               <msub> 
                <mi>
                  L 
                </mi> 
                <mi>
                  i 
                </mi> 
               </msub> 
               <mo>
                 , 
               </mo> 
               <msub> 
                <mi>
                  l 
                </mi> 
                <mi>
                  i 
                </mi> 
               </msub> 
              </mrow> 
              <mo>
                ) 
              </mo> 
             </mrow> 
             <mo>
               , 
             </mo> 
             <mrow> 
              <mo>
                ( 
              </mo> 
              <mrow> 
               <msub> 
                <mi>
                  μ 
                </mi> 
                <mi>
                  L 
                </mi> 
               </msub> 
               <mo>
                 , 
               </mo> 
               <msub> 
                <mi>
                  μ 
                </mi> 
                <mi>
                  l 
                </mi> 
               </msub> 
              </mrow> 
              <mo>
                ) 
              </mo> 
             </mrow> 
            </mrow> 
            <mo>
              ) 
            </mo> 
           </mrow> 
           <mo>
             &gt; 
           </mo> 
           <mi>
             ξ 
           </mi> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             otherwise 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math></p>
    <p>with:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          L 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         , 
       </mo> 
       <msub> 
        <mi>
          l 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>: Transaction latitude and longitude 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          μ 
        </mi> 
        <mi>
          L 
        </mi> 
       </msub> 
       <mo>
         , 
       </mo> 
       <msub> 
        <mi>
          μ 
        </mi> 
        <mi>
          l 
        </mi> 
       </msub> 
      </mrow> 
     </math>: Average latitude and longitude of usual transactions</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         D 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mo>
          . 
        </mo> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>: Geographical distance.</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        ξ 
      </mi> 
     </math>: Distance threshold 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         D 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mo>
          . 
        </mo> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math></p>
    <p>Device type constraints (for 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         j 
       </mi> 
       <mo>
         = 
       </mo> 
       <mn>
         3 
       </mn> 
       <mo>
         ⇒ 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           3 
         </mn> 
        </mrow> 
       </msub> 
      </mrow> 
     </math>)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           3 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             si 
           </mtext> 
           <mtext>
               
           </mtext> 
           <msub> 
            <mi>
              p 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
           <mo>
             ∉ 
           </mo> 
           <msub> 
            <mi>
              P 
            </mi> 
            <mrow> 
             <mtext>
               approved 
             </mtext> 
            </mrow> 
           </msub> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             otherwise 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math></p>
    <p>with:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          p 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>: Peripheral</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          P 
        </mi> 
        <mrow> 
         <mtext>
           approved 
         </mtext> 
        </mrow> 
       </msub> 
      </mrow> 
     </math>: All devices authorized for the user.</p>
    <p>IP address constraints (for 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         j 
       </mi> 
       <mo>
         = 
       </mo> 
       <mn>
         4 
       </mn> 
       <mo>
         ⇒ 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           4 
         </mn> 
        </mrow> 
       </msub> 
      </mrow> 
     </math>)</p>
    <p>A transaction is considered suspicious if the 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          A 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> IP address does not correspond to an IP range authorized for the user</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           4 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             si 
           </mtext> 
           <mtext>
               
           </mtext> 
           <msub> 
            <mi>
              A 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
           <mo>
             ∉ 
           </mo> 
           <msub> 
            <mi>
              A 
            </mi> 
            <mrow> 
             <mtext>
               authorized 
             </mtext> 
            </mrow> 
           </msub> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             otherwise 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          A 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>: IP address used for the transaction</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          A 
        </mi> 
        <mrow> 
         <mtext>
           authorized 
         </mtext> 
        </mrow> 
       </msub> 
      </mrow> 
     </math>: All authorized IP ranges.</p>
    <p>Suspicion score</p>
    <p>The suspicion score for a transaction i is a weighted combination of the anomalies detected.</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          S 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <msub> 
        <mi>
          β 
        </mi> 
        <mi>
          j 
        </mi> 
       </msub> 
       <mo>
         ⋅ 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mi>
           j 
         </mi> 
        </mrow> 
       </msub> 
       <mo>
         ; 
       </mo> 
       <mtext>
           
       </mtext> 
       <mtext>
           
       </mtext> 
       <mtext>
         where 
       </mtext> 
       <mtext>
           
       </mtext> 
       <mi>
         j 
       </mi> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <mn>
           1 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           2 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           3 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           4 
         </mn> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math></p>
    <p>For a transaction 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math>, the suspicion score is:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          S 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <msub> 
        <mi>
          β 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mo>
         ⋅ 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           1 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         + 
       </mo> 
       <msub> 
        <mi>
          β 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
       <mo>
         ⋅ 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           2 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         + 
       </mo> 
       <msub> 
        <mi>
          β 
        </mi> 
        <mn>
          3 
        </mn> 
       </msub> 
       <mo>
         ⋅ 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           3 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         + 
       </mo> 
       <msub> 
        <mi>
          β 
        </mi> 
        <mn>
          4 
        </mn> 
       </msub> 
       <mo>
         ⋅ 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           4 
         </mn> 
        </mrow> 
       </msub> 
      </mrow> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          β 
        </mi> 
        <mi>
          j 
        </mi> 
       </msub> 
      </mrow> 
     </math>: Weight assigned to each 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        j 
      </mi> 
     </math> characteristic</p>
    <p>Suspicious transaction classification constraint</p>
    <p>Let 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        θ 
      </mi> 
     </math>: the predefined suspicion score threshold</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             if 
           </mtext> 
           <mtext>
               
           </mtext> 
           <msub> 
            <mi>
              S 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
           <mo>
             ≥ 
           </mo> 
           <mi>
             θ 
           </mi> 
           <mtext>
               
           </mtext> 
           <mtext>
             then the transaction is classified as suspicious 
           </mtext> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             si 
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             non 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
       <mtext> 
       </mtext> 
      </mrow> 
     </math></p>
    <p>Non-negativity constraints</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         ∈ 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <mn>
           0 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           1 
         </mn> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mi>
           j 
         </mi> 
        </mrow> 
       </msub> 
       <mo>
         ∈ 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <mn>
           0 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           1 
         </mn> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          C 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mo>
          + 
        </mo> 
       </msup> 
      </mrow> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          S 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mo>
          + 
        </mo> 
       </msup> 
      </mrow> 
     </math></p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         θ 
       </mi> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mo>
          + 
        </mo> 
       </msup> 
      </mrow> 
     </math></p>
    <p>The Mixed Integer Program is:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         max 
       </mi> 
       <mi>
         Z 
       </mi> 
       <mo>
         = 
       </mo> 
       <munderover> 
        <mstyle mathsize="140%" displaystyle="true"> 
         <mo>
           ∑ 
         </mo> 
        </mstyle> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mo>
           = 
         </mo> 
         <mn>
           1 
         </mn> 
        </mrow> 
        <mi>
          n 
        </mi> 
       </munderover> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mi>
           w 
         </mi> 
         <mo>
           ⋅ 
         </mo> 
         <msub> 
          <mi>
            S 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <mo>
           ⋅ 
         </mo> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <mo>
           − 
         </mo> 
         <mi>
           ϕ 
         </mi> 
         <mo>
           ⋅ 
         </mo> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <mn>
             1 
           </mn> 
           <mo>
             − 
           </mo> 
           <msub> 
            <mi>
              x 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           ⋅ 
         </mo> 
         <msub> 
          <mi>
            F 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> (1)</p>
    <p>s.c</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          S 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <msub> 
        <mi>
          β 
        </mi> 
        <mi>
          j 
        </mi> 
       </msub> 
       <mo>
         ⋅ 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mi>
           j 
         </mi> 
        </mrow> 
       </msub> 
       <mo>
         ; 
       </mo> 
       <mtext>
           
       </mtext> 
       <mtext>
           
       </mtext> 
       <mtext>
         with 
       </mtext> 
       <mtext>
           
       </mtext> 
       <mi>
         j 
       </mi> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <mn>
           1 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           2 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           3 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           4 
         </mn> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math> (2)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             if 
           </mtext> 
           <mtext>
               
           </mtext> 
           <msub> 
            <mi>
              S 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
           <mo>
             ≥ 
           </mo> 
           <mi>
             θ 
           </mi> 
           <mtext>
               
           </mtext> 
           <mtext>
             the transaction is classified as suspicious 
           </mtext> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             otherwise 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math> (3)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         ∈ 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <mn>
           0 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           1 
         </mn> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math> (4)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mi>
           j 
         </mi> 
        </mrow> 
       </msub> 
       <mo>
         ∈ 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <mn>
           0 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           1 
         </mn> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math> (5)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          C 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mo>
          + 
        </mo> 
       </msup> 
      </mrow> 
     </math> (6)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          S 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mo>
          + 
        </mo> 
       </msup> 
      </mrow> 
     </math> (7)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         θ 
       </mi> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mo>
          + 
        </mo> 
       </msup> 
      </mrow> 
     </math> (8)</p>
    <p>with</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           1 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             if 
           </mtext> 
           <mtext>
               
           </mtext> 
           <mrow> 
            <mo>
              | 
            </mo> 
            <mrow> 
             <msub> 
              <mi>
                C 
              </mi> 
              <mi>
                i 
              </mi> 
             </msub> 
             <mo>
               − 
             </mo> 
             <mi>
               μ 
             </mi> 
             <mi>
               C 
             </mi> 
            </mrow> 
            <mo>
              | 
            </mo> 
           </mrow> 
           <mo>
             &gt; 
           </mo> 
           <msub> 
            <mi>
              κ 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             ⋅ 
           </mo> 
           <mi>
             σ 
           </mi> 
           <mi>
             C 
           </mi> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             otherwise 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math> (9)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           2 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             if 
           </mtext> 
           <mtext>
               
           </mtext> 
           <mi>
             D 
           </mi> 
           <mrow> 
            <mo>
              ( 
            </mo> 
            <mrow> 
             <mrow> 
              <mo>
                ( 
              </mo> 
              <mrow> 
               <msub> 
                <mi>
                  L 
                </mi> 
                <mi>
                  i 
                </mi> 
               </msub> 
               <mo>
                 , 
               </mo> 
               <msub> 
                <mi>
                  l 
                </mi> 
                <mi>
                  i 
                </mi> 
               </msub> 
              </mrow> 
              <mo>
                ) 
              </mo> 
             </mrow> 
             <mo>
               , 
             </mo> 
             <mrow> 
              <mo>
                ( 
              </mo> 
              <mrow> 
               <msub> 
                <mi>
                  μ 
                </mi> 
                <mi>
                  L 
                </mi> 
               </msub> 
               <mo>
                 , 
               </mo> 
               <msub> 
                <mi>
                  μ 
                </mi> 
                <mi>
                  l 
                </mi> 
               </msub> 
              </mrow> 
              <mo>
                ) 
              </mo> 
             </mrow> 
            </mrow> 
            <mo>
              ) 
            </mo> 
           </mrow> 
           <mo>
             &gt; 
           </mo> 
           <mi>
             ξ 
           </mi> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             otherwise 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math> (10)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           3 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             if 
           </mtext> 
           <mtext>
               
           </mtext> 
           <msub> 
            <mi>
              p 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
           <mo>
             ∉ 
           </mo> 
           <msub> 
            <mi>
              P 
            </mi> 
            <mrow> 
             <mtext>
               otherwise 
             </mtext> 
            </mrow> 
           </msub> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             otherwise 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math> (11)</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mrow> 
         <mi>
           i 
         </mi> 
         <mn>
           4 
         </mn> 
        </mrow> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mtable columnalign="left"> 
         <mtr> 
          <mtd> 
           <mn>
             1 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             if 
           </mtext> 
           <mtext>
               
           </mtext> 
           <msub> 
            <mi>
              A 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
           <mo>
             ∉ 
           </mo> 
           <msub> 
            <mi>
              A 
            </mi> 
            <mrow> 
             <mtext>
               authorized 
             </mtext> 
            </mrow> 
           </msub> 
          </mtd> 
         </mtr> 
         <mtr> 
          <mtd> 
           <mn>
             0 
           </mn> 
           <mtext>
               
           </mtext> 
           <mtext>
               
           </mtext> 
           <mtext>
             otherwise 
           </mtext> 
          </mtd> 
         </mtr> 
        </mtable> 
       </mrow> 
      </mrow> 
     </math> (12)</p>
    <p>This mathematical program enables accurate classification of suspicious transactions, optimizing resources and reducing false positives, while maintaining high detection capacity.</p>
    <p>(1) is the fitness function whose main objective is to optimize anomaly detection by assigning a suspicion score 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          S 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> to each transaction i, while minimizing false positives and false negatives in the classification of transactions as suspicious ( 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mn>
         1 
       </mn> 
      </mrow> 
     </math>) or normal ( 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mn>
         0 
       </mn> 
      </mrow> 
     </math>). is the suspicion score assigned to each transaction 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math> obtained by a weighted combination of the various anomalies detected (amount, location, device, IP). (3) and (4) are binary variables respectively indicating whether a transaction is classified as suspicious or not. (5) Binary variable representing an anomaly detected for characteristic 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        j 
      </mi> 
     </math> in transaction 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math>. (6): continuous variable representing the cost of a transaction; (7): continuous variable representing the value of the suspicion score assigned to each transaction 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math>; continuous variable defining the threshold value of the predefined suspicion score used to define the type of transaction 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        i 
      </mi> 
     </math>. (9), (10), (11) et (12): are binary variables indicating anomalies detected for amount, location, device and IP address respectively.</p>
    <p>The mathematical program developed combines two main objectives:</p>
    <p>Efficient anomaly detection: By maximizing suspicion scores for suspicious transactions. Reduce classification errors: By minimizing false positives and false negatives through penalties integrated into the objective function.</p>
    <p>This combination of objectives is rarely seen in literature, where models often focus solely on detection. The aim is to provide a balanced solution, suitable for financial systems where minimizing disruption to legitimate users is essential.</p>
    <p>Study of the complexity of the Mixed Integer Program</p>
    <p>The mathematical model proposed in section 3.1 is based on a Mixed Integer Program (MIP) to detect suspicious transactions in an e-Wallet system. This type of program combines continuous variables (transaction amounts) and discrete variables (binary indicators of suspicion) in an objective function optimized under several constraints. To study its complexity is to analyze the computational difficulty of finding an optimal solution.</p>
    <p>MIP belongs to the NP-hard complexity class. This is due to the presence of continuous and discrete variables in the model, whereas in general cases, integer linear optimization problems require an exhaustive search in the space of discrete solutions. In addition, multiple non-trivial constraints such as transaction cost, location, type of device used for the transaction and IP addressing increase the dimensionality of the problem and make the solution space more complex.</p>
    <p>In addition, certain key variables influence complexity: considering 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        n 
      </mi> 
     </math>: Total number of transactions (variables to be optimized), 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        m 
      </mi> 
     </math>: Number of constraints in the model, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        k 
      </mi> 
     </math>: Number of discrete (binary) variables. The exhaustive search for possible solutions for 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        k 
      </mi> 
     </math> discrete variables in a MIP has an exponential complexity in 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        k 
      </mi> 
     </math>, i.e. 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         O 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msup> 
          <mn>
            2 
          </mn> 
          <mi>
            k 
          </mi> 
         </msup> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>.</p>
    <p>Solving sub-problems for continuous variables with linear relaxation is feasible in polynomial time with simplex algorithms or the interior point algorithm. Thus, its total complexity is combined is 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         O 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msup> 
          <mn>
            2 
          </mn> 
          <mi>
            k 
          </mi> 
         </msup> 
         <mo>
           ⋅ 
         </mo> 
         <mi>
           P 
         </mi> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <mi>
             n 
           </mi> 
           <mo>
             , 
           </mo> 
           <mi>
             m 
           </mi> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> where 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         P 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mi>
           n 
         </mi> 
         <mo>
           , 
         </mo> 
         <mi>
           m 
         </mi> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> represents the solving complexity of a relaxed linear program. An exact resolution is feasible for moderate-sized data sets, but quickly becomes impractical on a large scale without recourse to heuristics or relaxation.</p>
   </sec>
   <sec id="s3_2">
    <title>3.2. Experimentation</title>
    <p>Simulation data are presented in <xref ref-type="table" rid="table1">
      Table 1
     </xref>.</p>
    <p>Datasets: the dataset is a CSV file of 10,000 records with the following information: Transaction_ID, Value, Latitude, Longitude, Device_Type, adress_IP and suspicion score thresholds for the first 20 lines of the dataset are shown in <xref ref-type="table" rid="table2">
      Table 2
     </xref>.</p>
   </sec>
   <sec id="s3_3">
    <title>3.3. Result: Analysis and Discussion</title>
    <p>The results of the various experiments are presented below.</p>
    <p>The histogram of transaction amounts in <xref ref-type="fig" rid="fig1">
      Figure 1
     </xref> reveals a significant concentration around a mean of 513.99 monetary units, with a standard deviation of 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         σ 
       </mi> 
       <mo>
         = 
       </mo> 
       <mn>
         118.45 
       </mn> 
      </mrow> 
     </math> indicating that most transactions fall within a reasonable range around this average. The shape of the histogram seems close to a slightly asymmetric</p>
    <table-wrap id="table1">
     <label>
      <xref ref-type="table" rid="table1">
       Table 1
      </xref></label>
     <caption>
      <title>
       <xref ref-type="bibr" rid="scirp.140298-"></xref>Table 1. Simulation data.</title>
     </caption>
     <table class="MsoTableGrid custom-table" border="0" cellspacing="0" cellpadding="0"> 
      <tr> 
       <td class="custom-bottom-td aleft" width="65.58%" colspan="2"><p style="text-align:left">Labelle</p></td> 
       <td class="custom-bottom-td aleft" width="19.82%"><p style="text-align:left">Value</p></td> 
      </tr> 
      <tr> 
       <td rowspan="3" class="custom-top-td aleft" width="29.03%"><p style="text-align:left">Transaction costs</p></td> 
       <td class="custom-top-td aleft" width="36.55%"><p style="text-align:left">Average normal costs</p></td> 
       <td class="custom-top-td aleft" width="19.82%"><p style="text-align:left">500</p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="36.55%"><p style="text-align:left">Standard deviation of normal costs</p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">100</p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="36.55%"><p style="text-align:left">Suspicion threshold</p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">800</p></td> 
      </tr> 
      <tr> 
       <td rowspan="3" class="aleft" width="29.03%"><p style="text-align:left">Geographical location</p></td> 
       <td class="aleft" width="36.55%"><p style="text-align:left">Average latitude</p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">40.7128</p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="36.55%"><p style="text-align:left">Average longitude</p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">−740,060</p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="36.55%"><p style="text-align:left">Distance threshold</p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">0.15</p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="29.03%"><p style="text-align:left">Device type (P)</p></td> 
       <td class="aleft" width="56.37%" colspan="2"><p style="text-align:left">P = {mobile, Desktop} authorized</p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="29.03%"><p style="text-align:left">IP Adress (A)</p></td> 
       <td class="aleft" width="36.55%"><p style="text-align:left">Permitted ranges</p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">192.168.xxx.xxx</p></td> 
      </tr> 
      <tr> 
       <td rowspan="5" class="aleft" width="29.03%"><p style="text-align:left">Suspicion Scores</p></td> 
       <td class="aleft" width="56.37%" colspan="2"><p style="text-align:left"> 
         <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
           <msub> 
            <mi>
              S 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
           <mo>
             = 
           </mo> 
           <msub> 
            <mi>
              β 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             ⋅ 
           </mo> 
           <msub> 
            <mi>
              y 
            </mi> 
            <mrow> 
             <mi>
               i 
             </mi> 
             <mn>
               1 
             </mn> 
            </mrow> 
           </msub> 
           <mo>
             + 
           </mo> 
           <msub> 
            <mi>
              β 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
           <mo>
             ⋅ 
           </mo> 
           <msub> 
            <mi>
              y 
            </mi> 
            <mrow> 
             <mi>
               i 
             </mi> 
             <mn>
               2 
             </mn> 
            </mrow> 
           </msub> 
           <mo>
             + 
           </mo> 
           <msub> 
            <mi>
              β 
            </mi> 
            <mn>
              3 
            </mn> 
           </msub> 
           <mo>
             ⋅ 
           </mo> 
           <msub> 
            <mi>
              y 
            </mi> 
            <mrow> 
             <mi>
               i 
             </mi> 
             <mn>
               3 
             </mn> 
            </mrow> 
           </msub> 
           <mo>
             + 
           </mo> 
           <msub> 
            <mi>
              β 
            </mi> 
            <mn>
              4 
            </mn> 
           </msub> 
           <mo>
             ⋅ 
           </mo> 
           <msub> 
            <mi>
              y 
            </mi> 
            <mrow> 
             <mi>
               i 
             </mi> 
             <mn>
               4 
             </mn> 
            </mrow> 
           </msub> 
          </mrow> 
         </math> </p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="36.55%"><p style="text-align:left"> 
         <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
           <msub> 
            <mi>
              β 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
          </mrow> 
         </math> </p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">0.4</p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="36.55%"><p style="text-align:left"> 
         <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
           <msub> 
            <mi>
              β 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
          </mrow> 
         </math></p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">0.3</p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="36.55%"><p style="text-align:left"> 
         <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
           <msub> 
            <mi>
              β 
            </mi> 
            <mn>
              3 
            </mn> 
           </msub> 
          </mrow> 
         </math></p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">0.2</p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="36.55%"><p style="text-align:left"> 
         <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
           <msub> 
            <mi>
              β 
            </mi> 
            <mn>
              4 
            </mn> 
           </msub> 
          </mrow> 
         </math></p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">0.1</p></td> 
      </tr> 
      <tr> 
       <td rowspan="2" class="aleft" width="29.03%"><p style="text-align:left">Suspicion threshold</p></td> 
       <td class="aleft" width="56.37%" colspan="2"><p style="text-align:left">If 
         <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
           <msub> 
            <mi>
              S 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
           <mo>
             ≥ 
           </mo> 
           <mi>
             θ 
           </mi> 
          </mrow> 
         </math> then the transaction is suspicious</p></td> 
      </tr> 
      <tr> 
       <td class="aleft" width="36.55%"><p style="text-align:left"> 
         <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
            θ 
          </mi> 
         </math></p></td> 
       <td class="aleft" width="19.82%"><p style="text-align:left">0.5</p></td> 
      </tr> 
     </table>
    </table-wrap>
    <table-wrap id="table2">
     <label>
      <xref ref-type="table" rid="table2">
       Table 2
      </xref></label>
     <caption>
      <title>
       <xref ref-type="bibr" rid="scirp.140298-"></xref>Table 2. Data sets for the first twenty transaction records.</title>
     </caption>
     <table class="MsoTableGrid custom-table" border="0" cellspacing="0" cellpadding="0"> 
      <tr> 
       <td class="custom-bottom-td acenter" width="15.72%"><p style="text-align:center">Transaction</p><p style="text-align:center">ID</p></td> 
       <td class="custom-bottom-td acenter" width="14.56%"><p style="text-align:center">Costs</p></td> 
       <td class="custom-bottom-td acenter" width="14.56%"><p style="text-align:center">Latitude</p></td> 
       <td class="custom-bottom-td acenter" width="15.99%"><p style="text-align:center">Longitude</p></td> 
       <td class="custom-bottom-td acenter" width="14.41%"><p style="text-align:center">Device Type</p></td> 
       <td class="custom-bottom-td acenter" width="16.32%"><p style="text-align:center">IP Adress</p></td> 
       <td class="custom-bottom-td acenter" width="8.44%"><p style="text-align:center"> 
         <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
           <msub> 
            <mi>
              S 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
          </mrow> 
         </math></p></td> 
      </tr> 
      <tr> 
       <td class="custom-top-td acenter" width="15.72%"><p style="text-align:center">1</p></td> 
       <td class="custom-top-td acenter" width="14.56%"><p style="text-align:center">801.2969732</p></td> 
       <td class="custom-top-td acenter" width="14.56%"><p style="text-align:center">41.58753247</p></td> 
       <td class="custom-top-td acenter" width="15.99%"><p style="text-align:center">−72.86768319</p></td> 
       <td class="custom-top-td acenter" width="14.41%"><p style="text-align:center">unknown</p></td> 
       <td class="custom-top-td acenter" width="16.32%"><p style="text-align:center">203.0.113.0</p></td> 
       <td class="custom-top-td acenter" width="8.44%"><p style="text-align:center">0.6</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">2</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">801.2969732</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">41.93416157</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−73.42255664</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">unknown</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">203.0.113.1</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.51</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">3</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">558.2832761</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.72284343</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−74.01220233</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">desktop</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.0.231</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.2</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">4</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">467.3191242</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.65286289</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−74.10250859</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">mobile</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.1.93</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.3</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">5</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">597.8201395</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.58191348</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−74.02470116</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">unknown</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.0.145</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.57</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">6</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">453.1552046</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.6786535</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−74.14553311</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">desktop</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.1.12</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.19</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">7</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">390.1733403</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.77647638</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−74.00997866</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">mobile</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.0.160</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.26</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">8</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">438.3373814</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.81715879</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−73.95068322</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">mobile</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.0.72</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.31</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">9</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">491.4919424</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.71810215</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−74.07987681</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">mobile</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.1.35</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.2</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">10</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">451.3347954</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.92154411</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−73.88329695</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">mobile</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.1.109</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.0149</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">11</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">656.1670221</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.88291484</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−73.90632408</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">mobile</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.0.188</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.19</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">12</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">590.5311413</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.67007905</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−73.97584051</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">desktop</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.1.21</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.3</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">13</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">355.6560898</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.76929776</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−74.03274496</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">desktop</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.1.223</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.2</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">14</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">366.7920232</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.57240756</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−73.89867227</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">mobile</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.0.16</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.18</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">15</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">564.0750157</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.82213589</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−74.04541478</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">mobile</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.1.236</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.2</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">7</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">351.5469784</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.5878288</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−73.8353967</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">mobile</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.1.100</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.31</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">17</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">519.2390329</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.61876406</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−74.14057302</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">mobile</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.1.146</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.23</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">18</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">380.3300734</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.64415176</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−73.90763125</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">unknown</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.0.102</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.3</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">19</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">563.1424988</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.91199458</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−73.98919467</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">desktop</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.0.127</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.2</p></td> 
      </tr> 
      <tr> 
       <td class="acenter" width="15.72%"><p style="text-align:center">20</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">480.9881736</p></td> 
       <td class="acenter" width="14.56%"><p style="text-align:center">40.52645363</p></td> 
       <td class="acenter" width="15.99%"><p style="text-align:center">−74.02778645</p></td> 
       <td class="acenter" width="14.41%"><p style="text-align:center">desktop</p></td> 
       <td class="acenter" width="16.32%"><p style="text-align:center">192.168.0.5</p></td> 
       <td class="acenter" width="8.44%"><p style="text-align:center">0.2</p></td> 
      </tr> 
     </table>
    </table-wrap>
    <fig id="fig1" position="float">
     <label>Figure 1</label>
     <caption>
      <title>Figure 1. Transaction cost distribution.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/8104696-rId211.jpeg?20250127110726" />
    </fig>
    <fig id="fig2" position="float">
     <label>Figure 2</label>
     <caption>
      <title>Figure 2. Geographical distribution of normal and suspicious transactions.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/8104696-rId212.jpeg?20250127110726" />
    </fig>
    <p>normal distribution. The concentration around the means suggests stable and predictable transaction behavior for most users. On the other hand, analysis of the extreme minimum and maximum values: [165.28, 936.79] could signal activity in unexpected regions. Indeed, the presence of high amounts (close to the maximum) may signal atypical transactions or merit specific attention in a security context. This could indicate risks, such as unusual transfers or malicious activities like ceiling attacks. However, concentration around the mean suggests stable and predictable transactional behavior for most users.</p>
    <p>The visualization of geographical distribution in <xref ref-type="fig" rid="fig2">
      Figure 2
     </xref> shows two distinct categories: Normal transactions are distributed (blue color) over a well-defined set of geographical areas, probably corresponding to regions of regular activity for users, these geographical clusters could correspond to urban areas or densely populated regions. Suspicious transactions (red color) are located outside the normal clusters, indicating transactions initiated from unusual geographical locations in relation to the user’s historical behavior, or locations manipulated to mask the true origin of the transaction (use of proxies or VPNs). In addition, the concentration of transaction anomalies in a single region may indicate a coordinated fraud attempt.</p>
    <p>Normal transactions follow a logical, dense distribution, aligned with expected activity zones, while suspicious transactions appear more scattered or concentrated in isolated areas:</p>
    <p>
     <xref ref-type="fig" rid="fig3">
      Figure 3
     </xref>’s analysis of device types shows a dominance of transactions carried out via mobile devices among normal transactions, followed by desktop and a significant percentage of unidentified devices (Unknown). This reflects modern usage patterns where smartphones dominate digital payments. A notable proportion remain classified as “unknown” and are associated with transactions classified as suspicious in the majority; however, some may result from misconfiguration of legitimate devices due to missing metadata. Anomalies show no use of mobile devices, suggesting that attacks are targeting fewer common devices or exploiting less monitored environments from proxies or VPNs to mask their identity? The non-involvement of mobile devices in the anomalies suggests that mobile transaction security systems are more robust, or that attackers are avoiding these devices.</p>
    <p>
     <xref ref-type="fig" rid="fig4">
      Figure 4
     </xref> shows a uniform distribution of anomalies across multiple IP addresses, where each address appears only once in the suspect data. This raises interesting questions about the nature and scope of suspicious transactions:</p>
    <fig id="fig3" position="float">
     <label>Figure 3</label>
     <caption>
      <title>Figure 3. Distribution of device types.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/8104696-rId213.jpeg?20250127110726" />
    </fig>
    <fig id="fig4" position="float">
     <label>Figure 4</label>
     <caption>
      <title>Figure 4. Distribution of suspect IP addresses associated with detected anomalies.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/8104696-rId214.jpeg?20250127110726" />
    </fig>
    <p>The typology of suspect IP addresses appears to belong to local ranges (192.168.0.145), while others belong to public ranges (203.0.113.x). This may indicate either a false positive for the IP address (192.168.0.145) or an attempt to mask the origin of the type of device used to carry out the transaction via shared public IP addresses, hence the lack of knowledge of the devices used.</p>
    <p>A false positive refers to a transaction or activity that is wrongly considered suspicious or malicious, even though it is legitimate. When it comes to IP addresses, several factors can contribute to these errors, affecting both the user experience and the effectiveness of security systems among other things: if users connecting via VPNs or shared proxies may have IP addresses associated with fraudulent behavior in which case no legitimate transaction may be falsely reported if the IP address is listed as suspicious or if ISPs frequently reassign dynamic IP addresses, which can link suspicious past activities to innocent current users, this can lead to new transactions being classified as suspicious. The consequence of false positives is a degraded user experience: transactions are blocked or delayed, leading to a loss of confidence in the service. One solution to combat false positives will be to use reliable IP address databases and update them regularly to avoid errors due to obsolete information, or implement systems capable of detecting anomalies dynamically, considering changes in IP usage.</p>
    <p>The Mixed Integer Program (MIP) accurately identifies suspicious transactions by integrating multiple criteria. It offers better prioritization of resources by reducing unnecessary expenditure on false positives. In addition, the mathematical program can be adjusted to meet the specific needs of an e-Wallet system. However, in terms of computational complexity, MIP can be resource-intensive for large-scale systems, and the robustness of the model will depend on the quality and completeness of the data used, since attackers are constantly modifying their strategies, which will entail regular revision of MIP. By exploiting its modeling and optimization capabilities, it is possible to create an efficient and sustainable mathematical security program, while maintaining smooth and frictionless user experience.</p>
   </sec>
  </sec><sec id="s4">
   <title>4. Conclusion</title>
   <p>In this article, we propose an approach based on a Mixed Integer Program to enhance e-Wallets security by detecting suspicious transactions. This model is based on a rigorous mathematical formulation incorporating constraints linked to transaction amounts, geographical location, device type and IP address. The use of Mixed Integer Programs offers flexibility to model complex environments while guaranteeing an optimal solution. The results obtained in our simulations have shown that the proposed model significantly reduces the false positive rate while maintaining a high capacity to detect suspicious transactions. Compared with other heuristic or statistical approaches, the Mixed Integer Program proved particularly effective in environments with variable user behavior and heterogeneous data. This work represents an important contribution to the security of digital financial systems, responding to the growing need to protect users from digital fraud. Although the results are promising, several avenues of improvement can be envisaged to enrich the proposed model and increase its effectiveness in broader contexts. In this case, the integration of machine learning algorithms could enable the refinement of constraint thresholds in real time, and better adaptation to changes in transactional behavior.</p>
  </sec>
 </body><back>
  <ref-list>
   <title>References</title>
   <ref id="scirp.140298-ref1">
    <label>1</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Jha, S., Pathak, R. and Verma, K. (2019) Fraud Detection in Digital Payment Systems: A Review. Computers&amp;Security, 89, Article ID: 101675.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref2">
    <label>2</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Gupta, K., Singh, V. and Mishra, P. (2020) Secure Payment Systems: Challenges and Opportunities in e-Wallet Technology. Journal of Financial Technology, 45, 15-23.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref3">
    <label>3</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Nguyen, H.T., Dang, M.L. and Tran, P.Q. (2020) Unsupervised Learning for Anomaly Detection in Payment Systems. Expert Systems with Applications, 161, Article ID: 113731.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref4">
    <label>4</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Estevez, P.A., Tesmer, M. and Perez, C.A. (2018) Feature Selection for Anomaly Detection in e-Wallet Transactions. Pattern Recognition, 79, 237-249.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref5">
    <label>5</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Hansen, P. and Jaumard, B. (1990) Algorithms for the Constrained Assignment Problem. Journal of Optimization Theory and Applications, 64, 445-467.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref6">
    <label>6</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhao, Y. and Hryniewicz, O. (2019) Robust Optimization for Secure Payment Systems. Cybersecurity Journal, 10, 145-163.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref7">
    <label>7</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Wang, X., Zhao, Y. and Chen, L. (2021) Mixed-Integer Programming Models for Fraud Detection in Digital Wallets. Applied Mathematics and Computation, 398, Article ID: 125655.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref8">
    <label>8</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Kim, H.J. and Lee, J.S. (2021) Transaction Behavior Analysis for e-Wallet Security. Cybersecurity Journal, 10, 145-163.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref9">
    <label>9</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Li, Z. and Liu, T. (2022) Artificial Intelligence-Enhanced Optimization Models for Fraud Detection. IEEE Transactions on Neural Networks and Learning Systems, 33, 4567-4580.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref10">
    <label>10</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Ho, T.K. and Basu, M. (2019) Ensemble Learning for Fraud Detection. Machine Learning Applications, 3, 85-102.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref11">
    <label>11</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Meidan, Y. and Klein, R. (2020) Hybrid Models for Anomaly Detection in e-Wallet Transactions. Artificial Intelligence in Finance, 12, 287-305.
    </mixed-citation>
   </ref>
   <ref id="scirp.140298-ref12">
    <label>12</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Sadighian, P. and Karimi, M. (2021) Security Policies and Anomaly Detection for Digital Wallets. International Journal of Information Security, 20, 49-68.
    </mixed-citation>
   </ref>
  </ref-list>
 </back>
</article>