TWI775258B - 偵測異常裝置操作的方法及電子裝置 - Google Patents

偵測異常裝置操作的方法及電子裝置 Download PDF

Info

Publication number
TWI775258B
TWI775258B TW109146618A TW109146618A TWI775258B TW I775258 B TWI775258 B TW I775258B TW 109146618 A TW109146618 A TW 109146618A TW 109146618 A TW109146618 A TW 109146618A TW I775258 B TWI775258 B TW I775258B
Authority
TW
Taiwan
Prior art keywords
motion
action
velocity
events
event
Prior art date
Application number
TW109146618A
Other languages
English (en)
Other versions
TW202224744A (zh
Inventor
亓天毅
陳威傑
黃士誠
莊子龍
Original Assignee
宏碁股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 宏碁股份有限公司 filed Critical 宏碁股份有限公司
Priority to TW109146618A priority Critical patent/TWI775258B/zh
Priority to CN202110250540.5A priority patent/CN114681923A/zh
Priority to US17/202,365 priority patent/US11541316B2/en
Publication of TW202224744A publication Critical patent/TW202224744A/zh
Application granted granted Critical
Publication of TWI775258B publication Critical patent/TWI775258B/zh
Priority to US17/983,365 priority patent/US11938405B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03543Mice or pucks
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/44Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment involving timing of operations, e.g. performing an action within a time slot
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/75Enforcing rules, e.g. detecting foul play or generating lists of cheating players
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/535Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for monitoring, e.g. of user parameters, terminal parameters, application parameters, network parameters
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5586Details of game data or player data management for enforcing rights or rules, e.g. to prevent foul play
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/63Methods for processing data by generating or executing the game program for controlling the execution of the game in time
    • A63F2300/638Methods for processing data by generating or executing the game program for controlling the execution of the game in time according to the timing of operation or a time limit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Position Input By Displaying (AREA)
  • Debugging And Monitoring (AREA)
  • Testing Electric Properties And Detecting Electric Faults (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本發明提供一種偵測異常裝置操作的方法及電子裝置。所述方法包括:取得可移動輸入裝置的多個動作事件,且各動作事件包括可移動輸入裝置的相對座標及時間戳記;基於各動作事件的相對座標產生多個絕對座標;基於所述多個絕對座標及各動作事件的時間戳記估計多個速度向量;基於所述多個速度向量及各動作事件的時間戳記估計多個加速度向量;以及基於所述多個速度向量及所述多個加速度向量估計異常操作的機率。

Description

偵測異常裝置操作的方法及電子裝置
本發明是有關於一種偵測裝置操作的機制,且特別是有關於一種偵測異常裝置操作的方法及電子裝置。
在現今的線上遊戲產業中,讓玩家組隊互相競賽為常見的遊戲進行方式。然而,在競賽型遊戲中,考驗的通常是玩家經由練習而學得的技巧。在此情況下,借助額外的軟硬體輔助來獲得不正當優勢常常是摧毀遊戲中良性競爭環境的重要因素之一。因此,若能適時地偵測並找出使用上述方式進行遊戲的玩家,應可較佳地保證遊戲的公平性。
一般而言,採用上述方式進行遊戲的玩家多半是在輔助操作腳本工具(以下簡稱腳本)的幫助下進行。以系統層級面來看,腳本大致可分為軟體層級及韌體層級等兩類。
在軟體層級的作法中,腳本係以程式的形式運作於遊戲裝置(例如電腦)的作業系統上。另一方面,在韌體層級的作法中,玩家或其他相關人員可將腳本設置於硬體設備(例如滑鼠裝置)內部之韌體,以直接輸出訊號給遊戲裝置。
現有的反作弊軟體系統如VAC(Valve Anti-Cheat) 、BattleEye可主動偵測與遊戲主程式平行執行之工具軟體,而其所採用的方法例如包括掃瞄系統執行緒、檢查系統檔案竄改、不正常網路封包等。然而,由於韌體層級的腳本不使用任何以上方法,故需要透過其他方式方能進行偵測。
有鑑於此,本發明提供一種偵測異常裝置操作的方法及電子裝置,其可用於解決上述技術問題。
本發明提供一種偵測異常裝置操作的方法,適於連接於可移動輸入裝置的電子裝置,所述方法包括:取得可移動輸入裝置的一動作資料,其中動作資料包括多個動作事件,且各動作事件包括可移動輸入裝置的一相對座標及一時間戳記;基於各動作事件的相對座標產生對應於動作資料的多個絕對座標;基於所述多個絕對座標及各動作事件的時間戳記估計對應於動作資料的多個速度向量;基於所述多個速度向量及各動作事件的時間戳記估計對應於動作資料的多個加速度向量;以及基於所述多個速度向量及所述多個加速度向量估計動作資料對應於一異常操作的一機率。
本發明提供一種電子裝置,其包括儲存電路及處理器。儲存電路儲存一程式碼。處理器耦接於儲存電路,並載入程式碼以執行下列步驟:取得可移動輸入裝置的一動作資料,其中動作資料包括多個動作事件,且各動作事件包括可移動輸入裝置的一相對座標及一時間戳記;基於各動作事件的相對座標產生對應於動作資料的多個絕對座標;基於所述多個絕對座標及各動作事件的時間戳記估計對應於動作資料的多個速度向量;基於所述多個速度向量及各動作事件的時間戳記估計對應於動作資料的多個加速度向量;以及基於所述多個速度向量及所述多個加速度向量估計動作資料對應於一異常操作的一機率。
請參照圖1,其是依據本發明之一實施例繪示的電子裝置與可移動輸入裝置的示意圖。在不同的實施例中,電子裝置100例如是可用於運行遊戲的各式裝置,例如電腦裝置及各式智慧型裝置,但可不限於此。如圖1所示,電子裝置100可連接於可移動輸入裝置199,其中可移動輸入裝置199例如是任何可讓使用者以移動的方式控制/操作上述遊戲的輸入裝置,例如滑鼠裝置或其他類似的手持裝置等,但不限於此。為便於說明,以下將以滑鼠裝置作為可移動輸入裝置199的實例,但其並非用以限定本發明可能的實施方式。在其他實施例中,設計者可選用任何能夠回報座標的輸入裝置來實現可移動輸入裝置199。
在圖1中,電子裝置100可包括儲存電路101、顯示器102及處理器104。儲存電路101例如是任意型式的固定式或可移動式隨機存取記憶體(Random Access Memory,RAM)、唯讀記憶體(Read-Only Memory,ROM)、快閃記憶體(Flash memory)、硬碟或其他類似裝置或這些裝置的組合,而可用以記錄多個程式碼或模組。顯示器102例如是可用於顯示/呈現上述遊戲畫面/內容的螢幕。
處理器104耦接於儲存電路101及顯示器102,並可為一般用途處理器、特殊用途處理器、傳統的處理器、數位訊號處理器、多個微處理器(microprocessor)、一個或多個結合數位訊號處理器核心的微處理器、控制器、微控制器、特殊應用積體電路(Application Specific Integrated Circuit,ASIC)、現場可程式閘陣列電路(Field Programmable Gate Array,FPGA)、任何其他種類的積體電路、狀態機、基於進階精簡指令集機器(Advanced RISC Machine,ARM)的處理器以及類似品。
在本發明的實施例中,處理器104可存取儲存電路101中記錄的模組、程式碼來實現本發明提出的偵測異常裝置操作的方法,其細節詳述如下。
請參照圖2,其是依據本發明之一實施例繪示的偵測異常裝置操作的方法流程圖。本實施例的方法可由圖1的電子裝置100執行,以下即搭配圖1所示的元件說明圖2各步驟的細節。
首先,在步驟S210中,處理器104可取得可移動輸入裝置199的動作資料MD,其中動作資料MD可包括多個動作事件
Figure 02_image001
~
Figure 02_image003
(N為其數量),且各動作事件
Figure 02_image001
~
Figure 02_image003
可包括可移動輸入裝置199的相對座標、時間戳記及事件類型。
在本發明的實施例中,在可移動輸入裝置199經假設為滑鼠裝置的情況下,動作資料MD例如是此滑鼠裝置的會話資料(session data),而其所包括的動作事件
Figure 02_image001
~
Figure 02_image003
例如是此滑鼠裝置的多個滑鼠事件(mouse event)。
在本發明的實施例中,處理器104例如可從電子裝置100的作業系統取得連續的預設數量(即,N)個動作事件來組成可移動輸入裝置199的動作資料MD,但可不限於此。在一實施例中,處理器104亦可在偵測到此滑鼠裝置出現對應於一按鍵按壓操作(例如按壓左鍵)的一動作事件時,取得包括此動作事件的連續N個動作事件來組成可移動輸入裝置199的動作資料MD。
在其他實施例中,處理器104亦可在偵測到此滑鼠裝置出現對應於按鍵按壓操作的動作事件,將此動作事件與其後連續發生的(N-1)個動作事件組成可移動輸入裝置199的動作資料MD,但可不限於此。在此情況下,對應於按鍵按壓操作的動作事件可理解為動作資料中的第1個動作事件,但可不限於此。
為便於說明,以下假設N為7,而處理器104所取得的連續N個動作事件可具有下表1所例示的內容。
動作事件 相對座標 事件類型 時間戳記(ms)
1 (342, 897) 按壓左鍵 74015
2 (339, 897) 移動 74016
3 (334, 897) 移動 74018
4 (333, 899) 移動 74019
5 (326, 899) 移動 74021
6 (324, 900) 移動 74022
7 (319, 900) 其他 74023
表1
在表1情境中,各動作事件的相對座標例如是可移動輸入裝置199的滑鼠游標當下在電子裝置100的顯示器102中的游標位置。舉例而言,假設顯示器102的解析度為1920x1080且顯示器102左上角的座標為(0, 0)。在此情況下,對應於動作事件1(即,第1個動作事件)的游標位置在顯示器102中的座標例如是(342, 897);對應於動作事件2(即,第2個動作事件)的游標位置在顯示器102中的座標例如是(339, 897);對應於動作事件3(即,第3個動作事件)的游標位置在顯示器102中的座標例如是(334, 897)。其餘動作事件的游標位置在顯示器102中的座標應可基於上述教示而推得,於此不另贅述。
之後,在步驟S220中,處理器104可基於各動作事件的相對座標產生對應於動作資料MD的多個絕對座標。在一實施例中,處理器104例如可將所述多個絕對座標中的第1個絕對座標設定為(0, 0)或其他所需的座標數值,但可不限於此。
在一實施例中,在取得所述多個絕對座標中的第i+1個絕對座標(
Figure 02_image005
)的過程中,處理器104例如可以第i+1個動作事件的相對座標減去所述第i個動作事件的相對座標再加上上述絕對座標中的第i個絕對座標以產生第i+1個絕對座標。
舉例而言,當i為1時,處理器104例如可以第2個(即,第i+1個)動作事件的相對座標減去第1個(即第i個)動作事件的相對座標再加上上述絕對座標中的第1個(即第i個)絕對座標以產生第2個(即第i+1個)絕對座標。以表1為例,處理器104例如可以動作事件2的相對座標(即,(339, 897))減去動作事件1的相對座標(即,(342, 897))再加上第1個絕對座標(即,(0, 0)),以得到(-3, 0)作為第2個絕對座標。
舉另一例而言,當i為2時,處理器104例如可以第3個(即,第i+1個)動作事件的相對座標減去第2個(即第i個)動作事件的相對座標再加上上述絕對座標中的第2個(即第i個)絕對座標以產生第3個(即第i+1個)絕對座標。以表1為例,處理器104例如可以動作事件3的相對座標(即,(334, 897))減去動作事件2的相對座標(即,(349, 897))再加上第2個絕對座標(即,(-3, 0)),以得到(-8, 0)作為第3個絕對座標。
此外,當i為3時,處理器104例如可以第4個(即,第i+1個)動作事件的相對座標減去第3個(即第i個)動作事件的相對座標再加上上述絕對座標中的第3個(即第i個)絕對座標以產生第4個(即第i+1個)絕對座標。以表1為例,處理器104例如可以動作事件4的相對座標(即,(333, 899))減去動作事件3的相對座標(即,(334, 897))再加上第4個絕對座標(即,(-8, 0)),以得到(-9, 2)作為第3個絕對座標。
對於其他的i值,處理器104可基於上述教示而求得對應的絕對座標,如下表2所示。
絕對座標索引值 絕對座標
1 (0, 0)
2 (-3, 0)
3 (-8, 0)
4 (-9, 2)
5 (-16, 2)
6 (-18, 3)
7 (-23, 3)
表2
之後,在步驟S230中,處理器104可基於所述多個絕對座標及各動作事件的時間戳記估計對應於動作資料MD的多個速度向量。
在一實施例中,處理器104可將所述多個速度向量的第1個速度向量設定為(0, 0)或所需的其他向量,但可不限於此。
在其他實施例中,當
Figure 02_image005
時,處理器104可以所述第i+1個動作事件的時間戳記減去所述第i個動作事件的時間戳記以產生多個時間差值中的第i個時間差值。之後,處理器104可以所述第i+1個絕對座標減去所述第i個絕對座標以產生多個座標差值中的第i個座標差值,並以所述第i個座標差值除以所述第i個時間差以產生所述多個速度向量中的第i+1個速度向量。
舉例而言,當i為1時,處理器104可以第2個動作事件的時間戳記(即,74016ms)減去第1個動作事件的時間戳記(即,74015ms)以產生多個時間差值中的第1個時間差值(即,1ms)。之後,處理器104可以所述第2個絕對座標(即,(-3, 0))減去第1個絕對座標(即,(0, 0))以產生多個座標差值中的第1個座標差值(即,(-3, 0)),並以所述第1個座標差值除以所述第1個時間差以產生所述多個速度向量中的第2個速度向量(即,(-3, 0))。
當i為2時,處理器104可以第3個動作事件的時間戳記(即,74018ms)減去第2個動作事件的時間戳記(即,74016ms)以產生所述多個時間差值中的第2個時間差值(即,2ms)。之後,處理器104可以所述第3個絕對座標(即,(-8, 0))減去第2個絕對座標(即,(-3, 0))以產生多個座標差值中的第2個座標差值(即,(-5, 0)),並以所述第2個座標差值除以所述第2個時間差以產生所述多個速度向量中的第3個速度向量(即,(-2.5, 0))。
當i為3時,處理器104可以第4個動作事件的時間戳記(即,74019ms)減去第3個動作事件的時間戳記(即,74018ms)以產生所述多個時間差值中的第3個時間差值(即,1ms)。之後,處理器104可以所述第4個絕對座標(即,(-9, 2))減去第3個絕對座標(即,(-8, 0))以產生多個座標差值中的第3個座標差值(即,(-1, 2)),並以所述第3個座標差值除以所述第3個時間差以產生所述多個速度向量中的第4個速度向量(即,(-1, 2))。
對於其他的i值,處理器104可基於上述教示而求得對應的速度向量,如下表3所示。
絕對座標索引值 絕對座標 速度向量
1 (0, 0) (0, 0)
2 (-3, 0) (-3.0, 0)
3 (-8, 0) (-2.5, 0)
4 (-9, 2) (-1.0, 2.0)
5 (-16, 2) (-3.5, 0)
6 (-18, 3) (-2.0, 1)
7 (-23, 3) (-5.0, 0)
表3
之後,在步驟S240中,處理器104可基於所述多個速度值及各動作事件的時間戳記估計對應於動作資料MD的多個加速度值。
在一實施例中,處理器104可將所述多個加速度向量的第1個加速度向量設定為(0, 0)或所需的其他向量,但可不限於此。
在其他實施例中,當
Figure 02_image005
時,處理器104可以所述第i+1個速度向量減去所述第i個速度向量以產生所述多個速度差值中的第i個速度差值。之後,處理器104可以所述第i個速度差值除以所述第i個時間差值以產生所述多個加速度向量中的第i+1個加速度向量。
舉例而言,當i為1時,處理器104可以所述第2個速度向量(即,(-3.0, 0))減去所述第1個速度向量(即,(0, 0))以產生所述多個速度差值中的第1個速度差值(即,(-3.0, 0))。之後,處理器104可以所述第1個速度差值除以所述第1個時間差值(即,1ms)以產生所述多個加速度向量中的第2個加速度向量(即,(-3.0, 0))。
舉另一例而言,當i為2時,處理器104可以第3個速度向量(即,(-2.5, 0))減去第2個速度向量(即,(-3.0, 0))以產生所述多個速度差值中的第2個速度差值(即,(0.5, 0))。之後,處理器104可以所述第2個速度差值除以所述第2個時間差值(即,2ms)以產生所述多個加速度向量中的第3個加速度向量(即,(0.25, 0))。
當i為3時,處理器104可以第4個速度向量(即,(-1.0, 2.0))減去第3個速度向量(即,(-2.5, 0))以產生所述多個速度差值中的第3個速度差值(即,(1.5, 2.0))。之後,處理器104可以所述第3個速度差值除以所述第3個時間差值(即,1ms)以產生所述多個加速度向量中的第4個加速度向量(即,(1.5, 2.0))。
對於其他的i值,處理器104可基於上述教示而求得對應的加速度向量,如下表4所示。
絕對座標索引值 絕對座標 速度向量 加速度向量
1 (0, 0) (0, 0) (0, 0)
2 (-3, 0) (-3.0, 0) (-3.0, 0)
3 (-8, 0) (-2.5, 0) (0.25, 0)
4 (-9, 2) (-1.0, 2.0) (1.5, 2.0)
5 (-16, 2) (-3.5, 0) (-1.25, -1.0)
6 (-18, 3) (-2.0, 1) (1.5, 1.0)
7 (-23, 3) (-5.0, 0) (-3.0, -1.0)
表4
接著,在步驟S250中,處理器104可基於所述多個速度值及所述多個加速度值估計動作資料MD對應於異常操作的機率。
在一實施例中,處理器104可將所述多個速度值及所述多個加速度值輸入至經預訓練的機器學習模型,其中此機器學習模型可因應於所述多個速度值及所述多個加速度值而輸出動作資料MD對應於異常操作的機率。在不同的實施例中,所述機器學習模型可採用長短期記憶(long short term memory,LSTM)模型、隱藏式馬可夫模型(Hidden Markov Model,HMM)、遞歸神經網路(Recurrent Neural Network,RNN)、基於注意力的神經網路(attention-based neural network)等模型實現,但可不限於此。
在所述機器學習模型的預訓練過程中,處理器104例如可取得對應於可移動輸入裝置199的異常操作的歷史動作資料(其可包括連續的N個歷史動作事件),並經由步驟S220~S240所教示的操作而轉換為對應的多個歷史速度向量及多個歷史加速度向量。之後,處理器104可將所述多個歷史速度向量及所述多個歷史加速度向量作為訓練資料而輸入至所述機器學習模型,以由此機器學習模型相應地預測上述歷史動作資料對應於異常操作的機率。之後,處理器104可基於此預測的機率決定此機器學習模型的預測準確度,進而據以更新所述機器學習模型的各種參數。
在重複上述過程之後,此機器學習模型所預測的異常操作的機率應可漸趨準確。
因此,當處理器104在步驟S250中將表4的所述多個速度值及所述多個加速度值輸入至上述機器學習模型時,此機器學習模型所預測的動作資料MD對應於異常操作的機率可供遊戲管理人員或其他相關人員作為參考。藉此,可讓遊戲管理人員有效地掌握哪些玩家所使用的可移動裝置可能具有設置於韌體中的腳本,進而維護遊戲的公平性。
綜上所述,本發明的實施例可在收集包括多個動作事件的動作資料後,相應地取得此動作資料對應的多個速度向量及加速度向量,進而透過神經網路來據以預測可移動輸入裝置上出現異常操作的機率。藉此,可讓遊戲管理人員有效地掌握哪些玩家所使用的可移動裝置可能具有設置於韌體中的腳本,進而較佳地維護遊戲的公平性。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
100:電子裝置 101:儲存電路 102:顯示器 104:處理器 199:可移動輸入裝置 S210~S250:步驟
圖1是依據本發明之一實施例繪示的電子裝置與可移動輸入裝置的示意圖。 圖2是依據本發明之一實施例繪示的偵測異常裝置操作的方法流程圖。
S210~S250:步驟

Claims (14)

  1. 一種偵測異常裝置操作的方法,適於連接於一可移動輸入裝置的一電子裝置,所述方法包括:取得該可移動輸入裝置的一動作資料,其中該動作資料包括多個動作事件,且各該動作事件包括該可移動輸入裝置的一相對座標及一時間戳記;基於各該動作事件的該相對座標產生對應於該動作資料的多個絕對座標;基於該些絕對座標及各該動作事件的該時間戳記估計對應於該動作資料的多個速度向量;基於該些速度向量及各該動作事件的該時間戳記估計對應於該動作資料的多個加速度向量;以及基於該些速度向量及該些加速度向量估計該動作資料對應於一異常操作的一機率,包括:將該些速度向量及該些加速度向量輸入至經預訓練的一機器學習模型,其中該機器學習模型因應於該些速度向量及該些加速度向量而輸出該動作資料對應於該異常操作的該機率。
  2. 如請求項1所述的方法,其中該可移動輸入裝置包括一滑鼠裝置,各該動作事件更包括一事件類型,且該些動作事件中的第i個動作事件對應的該事件類型包括該滑鼠裝置的一按鍵按壓操作。
  3. 如請求項2所述的方法,其中i為1。
  4. 如請求項2所述的方法,其中該電子裝置包括一顯示器,而各該動作事件的該相對座標對應於一滑鼠游標在該顯示器上的一游標位置。
  5. 如請求項1所述的方法,其中該些動作事件包括第i個動作事件及第i+1個動作事件,1
    Figure 109146618-A0305-02-0018-1
    i
    Figure 109146618-A0305-02-0018-2
    N-1,N為該些動作事件的數量,且基於各該動作事件的該相對座標產生對應於該動作資料的該些絕對座標的步驟包括:以所述第i+1個動作事件的該相對座標減去所述第i個動作事件的該相對座標再加上該些絕對座標中的第i個絕對座標以產生該些絕對座標中的第i+1個絕對座標。
  6. 如請求項5所述的方法,其中該些動作事件的第1個動作事件的絕對座標為(0,0)。
  7. 如請求項1所述的方法,其中該些動作事件包括第i個動作事件及第i+1個動作事件,該些絕對座標包括第i個絕對座標及第i+1個絕對座標,1
    Figure 109146618-A0305-02-0018-3
    i
    Figure 109146618-A0305-02-0018-4
    N-1,N為該些動作事件的數量,且基於該些絕對座標及各該動作事件的該時間戳記估計對應於該動作資料的多個速度向量的步驟包括:以所述第i+1個動作事件的該時間戳記減去所述第i個動作事件的該時間戳記以產生多個時間差值中的第i個時間差值;以所述第i+1個絕對座標減去所述第i個絕對座標以產生多個座標差值中的第i個座標差值;以及 以所述第i+1個座標差值除以所述第i個時間差值以產生該些速度向量中的第i+1個速度向量。
  8. 如請求項6所述的方法,其中該些速度向量的第1個速度向量為(0,0)。
  9. 如請求項1所述的方法,其中該些動作事件包括第i個動作事件及第i+1個動作事件,該些速度向量包括第i個速度向量及第i+1個速度向量,1
    Figure 109146618-A0305-02-0019-5
    i
    Figure 109146618-A0305-02-0019-6
    N-1,N為該些動作事件的數量,且基於該些速度向量及各該動作事件的該時間戳記估計對應於該動作資料的該些加速度向量的步驟包括:以所述第i+1個動作事件的該時間戳記減去所述第i個動作事件的該時間戳記以產生多個時間差值中的第i個時間差值;以所述第i+1個速度向量減去所述第i個速度向量以產生多個速度差值中的第i個速度差值;以及以所述第i個速度差值除以所述第i個時間差以產生該些加速度向量中的第i+1個加速度向量。
  10. 如請求項9所述的方法,其中該些加速度向量的第1個加速度向量為(0,0)。
  11. 如請求項1所述的方法,其中取得該可移動輸入裝置的該動作資料的步驟包括:從該電子裝置的一作業系統取得該可移動輸入裝置的該動作資料。
  12. 一種電子裝置,包括: 一儲存電路,儲存一程式碼;以及一處理器,耦接於該儲存電路,並載入該程式碼以執行下列步驟:取得該可移動輸入裝置的一動作資料,其中該動作資料包括多個動作事件,且各該動作事件包括該可移動輸入裝置的一相對座標及一時間戳記;基於各該動作事件的該相對座標產生對應於該動作資料的多個絕對座標;基於該些絕對座標及各該動作事件的該時間戳記估計對應於該動作資料的多個速度向量;基於該些速度向量及各該動作事件的該時間戳記估計對應於該動作資料的多個加速度向量;以及基於該些速度向量及該些加速度向量估計該動作資料對應於一異常操作的一機率,包括:將該些速度向量及該些加速度向量輸入至經預訓練的一機器學習模型,其中該機器學習模型因應於該些速度向量及該些加速度向量而輸出該動作資料對應於該異常操作的該機率。
  13. 一種偵測異常裝置操作的方法,適於連接於一可移動輸入裝置的一電子裝置,所述方法包括:取得該可移動輸入裝置的一動作資料,其中該動作資料包括多個動作事件,且各該動作事件包括該可移動輸入裝置的一相對座標及一時間戳記; 基於各該動作事件的該相對座標產生對應於該動作資料的多個絕對座標;基於該些絕對座標及各該動作事件的該時間戳記估計對應於該動作資料的多個速度向量;基於該些速度向量及各該動作事件的該時間戳記估計對應於該動作資料的多個加速度向量;以及基於該些速度向量及該些加速度向量估計該動作資料對應於一異常操作的一機率,其中該些動作事件包括第i個動作事件及第i+1個動作事件,該些絕對座標包括第i個絕對座標及第i+1個絕對座標,1
    Figure 109146618-A0305-02-0021-7
    i
    Figure 109146618-A0305-02-0021-8
    N-1,N為該些動作事件的數量,且基於該些絕對座標及各該動作事件的該時間戳記估計對應於該動作資料的多個速度向量的步驟包括:以所述第i+1個動作事件的該時間戳記減去所述第i個動作事件的該時間戳記以產生多個時間差值中的第i個時間差值;以所述第i+1個絕對座標減去所述第i個絕對座標以產生多個座標差值中的第i個座標差值;以及以所述第i+1個座標差值除以所述第i個時間差值以產生該些速度向量中的第i+1個速度向量。
  14. 一種偵測異常裝置操作的方法,適於連接於一可移動輸入裝置的一電子裝置,所述方法包括:取得該可移動輸入裝置的一動作資料,其中該動作資料包括 多個動作事件,且各該動作事件包括該可移動輸入裝置的一相對座標及一時間戳記;基於各該動作事件的該相對座標產生對應於該動作資料的多個絕對座標;基於該些絕對座標及各該動作事件的該時間戳記估計對應於該動作資料的多個速度向量;基於該些速度向量及各該動作事件的該時間戳記估計對應於該動作資料的多個加速度向量;以及基於該些速度向量及該些加速度向量估計該動作資料對應於一異常操作的一機率,其中該些動作事件包括第i個動作事件及第i+1個動作事件,該些速度向量包括第i個速度向量及第i+1個速度向量,1
    Figure 109146618-A0305-02-0022-9
    i
    Figure 109146618-A0305-02-0022-10
    N-1,N為該些動作事件的數量,且基於該些速度向量及各該動作事件的該時間戳記估計對應於該動作資料的該些加速度向量的步驟包括:以所述第i+1個動作事件的該時間戳記減去所述第i個動作事件的該時間戳記以產生多個時間差值中的第i個時間差值;以所述第i+1個速度向量減去所述第i個速度向量以產生多個速度差值中的第i個速度差值;以及以所述第i個速度差值除以所述第i個時間差以產生該些加速度向量中的第i+1個加速度向量。
TW109146618A 2020-12-29 2020-12-29 偵測異常裝置操作的方法及電子裝置 TWI775258B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
TW109146618A TWI775258B (zh) 2020-12-29 2020-12-29 偵測異常裝置操作的方法及電子裝置
CN202110250540.5A CN114681923A (zh) 2020-12-29 2021-03-08 检测异常装置操作的方法及电子装置
US17/202,365 US11541316B2 (en) 2020-12-29 2021-03-16 Electronic device and method for detecting abnormal device operation
US17/983,365 US11938405B2 (en) 2020-12-29 2022-11-08 Electronic device and method for detecting abnormal device operation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW109146618A TWI775258B (zh) 2020-12-29 2020-12-29 偵測異常裝置操作的方法及電子裝置

Publications (2)

Publication Number Publication Date
TW202224744A TW202224744A (zh) 2022-07-01
TWI775258B true TWI775258B (zh) 2022-08-21

Family

ID=82119311

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109146618A TWI775258B (zh) 2020-12-29 2020-12-29 偵測異常裝置操作的方法及電子裝置

Country Status (3)

Country Link
US (2) US11541316B2 (zh)
CN (1) CN114681923A (zh)
TW (1) TWI775258B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040001044A1 (en) * 2002-06-28 2004-01-01 Compaq Information Technologies Group, L.P. A Delaware Corporation System and method for cursor calibration
TW201203028A (en) * 2010-07-15 2012-01-16 Avermedia Information Inc A pen-like indicator and a method for providing movemnet information
CN102362251A (zh) * 2008-12-30 2012-02-22 法国电信公司 用于提供对应用程序的增强控制的用户界面
CN102591493A (zh) * 2011-12-30 2012-07-18 浙江海康科技有限公司 一种用于ipkvm系统的鼠标光标同步方法
TW201816544A (zh) * 2016-10-25 2018-05-01 華碩電腦股份有限公司 操作系統、操作方法以及指示裝置
WO2019144680A1 (zh) * 2018-01-23 2019-08-01 网易(杭州)网络有限公司 自动化测试方法及装置、存储介质、电子设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9594907B2 (en) * 2013-03-14 2017-03-14 Sas Institute Inc. Unauthorized activity detection and classification
US20190311114A1 (en) 2018-04-09 2019-10-10 Zhongan Information Technology Service Co., Ltd. Man-machine identification method and device for captcha
CN110152306B (zh) 2019-07-22 2019-11-15 成都卓杭网络科技股份有限公司 脚本用户识别方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040001044A1 (en) * 2002-06-28 2004-01-01 Compaq Information Technologies Group, L.P. A Delaware Corporation System and method for cursor calibration
CN102362251A (zh) * 2008-12-30 2012-02-22 法国电信公司 用于提供对应用程序的增强控制的用户界面
TW201203028A (en) * 2010-07-15 2012-01-16 Avermedia Information Inc A pen-like indicator and a method for providing movemnet information
CN102591493A (zh) * 2011-12-30 2012-07-18 浙江海康科技有限公司 一种用于ipkvm系统的鼠标光标同步方法
TW201816544A (zh) * 2016-10-25 2018-05-01 華碩電腦股份有限公司 操作系統、操作方法以及指示裝置
WO2019144680A1 (zh) * 2018-01-23 2019-08-01 网易(杭州)网络有限公司 自动化测试方法及装置、存储介质、电子设备

Also Published As

Publication number Publication date
CN114681923A (zh) 2022-07-01
US11938405B2 (en) 2024-03-26
US11541316B2 (en) 2023-01-03
US20220203242A1 (en) 2022-06-30
US20230079777A1 (en) 2023-03-16
TW202224744A (zh) 2022-07-01

Similar Documents

Publication Publication Date Title
CN105339884B (zh) 用户输入的分类
US20190275431A1 (en) Matchmaking for online gaming with streaming players
JP2021119946A5 (zh)
CN107376341A (zh) 一种用于游戏手柄的数据处理方法、装置及游戏手柄
TWI775258B (zh) 偵測異常裝置操作的方法及電子裝置
KR101501830B1 (ko) 야구경기 간섭에 의한 결과 시뮬레이션 방법 및 그 시스템
CN113779910A (zh) 产品性能分布预测方法及装置、电子设备及存储介质
JP5419017B2 (ja) 遊技装置及び遊技場システム
US11376502B2 (en) Adjudicating fault in a virtual simulation environment
WO2020179299A1 (ja) 情報処理装置及び情報処理方法
CN114728203A (zh) 用于视频流分析的系统和方法
WO2022256883A1 (en) Efficient gaming monitoring using artificial intelligence
Peng RETRACTED: Research on teaching based on tennis-assisted robot image recognition
Zhu et al. Event-based automated refereeing for robot soccer
JP2019067206A (ja) 検出システム、検出方法及び検出プログラム
CN102262456A (zh) 信息输入装置及方法
CN113994378A (zh) 检查装置、检查方法及检查程序、以及学习装置、学习方法及学习程序
TWI543804B (zh) 划拳之方法及裝置
JP2021010488A5 (zh)
US12023594B2 (en) Incentivizing fair gameplay through bot detection penalization within online gaming systems
TWI668043B (zh) 落點預測方法、落點預測系統及遊戲決策方法
Alizadeh et al. Automatic calibration of an air hockey robot
JP2021194013A5 (zh)
JP2021192738A5 (zh)
JP2024031158A (ja) 判定システム、判定方法及びコンピュータープログラム

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent