Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
FOG-BASED INTERNET OF THINGS (I○T) PLATFORM FOR REAL TIME LOCATING SYSTEM (RTLS)
Document Type and Number:
WIPO Patent Application WO/2018/089408
Kind Code:
A1
Abstract:
A Real-Time Locating System (RTLS) and method for determining real-time spatial coordinates of a user device (UD) and method for acquiring data associated with the user device are disclosed. Moreover, a method for characterizing data associated with the user device is disclosed. Strategic placement of one or more agents and machine learning algorithms are used in acquiring and processing the data to calculate the real-time location of the UD.

Inventors:
SHENG MING-JYE (US)
SHANG SHUCHENG (US)
ZHANG CONG (US)
SHENG CHRISTINE CHIHLING (US)
Application Number:
PCT/US2017/060513
Publication Date:
May 17, 2018
Filing Date:
November 08, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
IOT EYE INC (US)
International Classes:
G01S5/00; G01S5/02; G01S19/00; G01S19/03; G01S19/05; H04W4/02
Foreign References:
US20160029160A12016-01-28
US20110080264A12011-04-07
US20100150122A12010-06-17
US20160302037A12016-10-13
US20110195701A12011-08-11
US20160026837A12016-01-28
US20100097208A12010-04-22
Other References:
See also references of EP 3539307A4
Attorney, Agent or Firm:
MALYAR, Mike et al. (US)
Download PDF:
Claims:
We claim:

1. A system for determining real-time spatial coordinates of a user device {00}, the system comprising:

a com utin architecture having one or more agents optimally located in an area of an environment to thereby map the spatial coordinates of the particular environment and correlate the location of the one or more agents associated with the particular environment, said one or more agents communicatively coupled to a first routing device;

one or more fogs communicatively coupled to the first routing device and configured with a non-transitory computer readable medium having stored thereon instructions that,, upon execution by a central processing engine, cause the central processing engine to execute one or more applications associated with the one or more fogs to determine real-time spatial coordinates of a user device, thereby enablin said on or more fogs to:

(a) process characterization data associated with one o more user devices t thereby perform data mining of the one or mor user devices and assign at least a tag to each of the one or more user devices;

ib) transmit one or more commands towards the one or more agents;

(c) receive f om the one or mor agent data associated! with a specific user device;

fd) normalize the data of the specific user device to thereby determine the realtime spatial coordinates based on the corresponding dat associated with said user device and

(e) transmit one or more commands towards a cloud server communicatively coupled to the fog via a second routing device,

2. The system of claim 1, wherein the user device comprises a wireless digitaitranscelver.

3. The system of claim 1, wherein th fo comprises near user edgedevlce.

4. The system of claim 1, wherein the one or more agents are configured with at least a beacon signal easureri a beacon address scanne a d mult senst sensor.

5. The sys em of claim I, wherein the one or more agents are mobile.

6. The system of claim 1, wherein the one or more age ts are connecte as a star based configuration, a layer star based configuration, a cornered agent configuration,

7. The system of claim 1, wherein the first routing device comprises one of: a USB cable, Wif ί router,

8. The system of claim 1, wherein the second routing device 'comprises one of: a USB cable, WIFI router.

9. The system of claim i» wherein t e first routing device Is connected on a point-to-point .topology.

10. The system of claim 1, wherein the first routing device Is connected on a multi-point topology,

1:1. The system of claim 1» wherein a user device is used as a reference.

12. A method for determining real-time spatial coordinates of a user device, the method comprising;

determining for a particular environment, the optimal: placement of one or more agents to thereby map the spatial coordinates of the particular environment and correlat the location of the one or more agents associated with the particular environment;

processing characterization dst& associated with one or more user devices to thereby perform data mining of the one or more beacons and assign at least a tag to each of the one or more beacons;

transmitting one or more commands towards the one or more agents;

receiving from the one or more agents data associated: with a specific user device; normalizing the data of the s ecific user device to thereby determine the realtime spatial coordinates based on the corresponding data associated with said user device; and

transmitting one or more commands towards t ie cloud server.

13. The method of claim II. wherein machine learning based Real-Time Locating System {RTtS} performs agent placement and zone division functions to determine the optimal placement of the one or more agents.

14. The method of claim 12, wherein agent placement and zone division functions further comprise one of: star based, layer star based and corner based! unctions,

15. The method of claim 13, wherein agent placement and zone division further comprises performing real-time room/aone decision based on Received Signal Strength indication (RSSI) function,

16. The method of claim 11, wherein agent placement and zone division further comprises performing machine learning based procedures,

17. The method of claim ii wherein characterization data include white list data and black list data.

18. The method of claim 11, further comprising acquiring data associated With a user

device, the method comprising:

sensing wireless signal transmitted towards one o more agents, said wireless signal associated with one or more beacons;

processing characterization data associated with the one or more user devices and Identify a respective tag associated with each of said one or more user devices; 'processing one or more commands a fog transmits towards the ne or more agents;

measuring a signs! strength of said wireless signal and associating relative spatial coordinates to the corresponding data assodated with a specific user device whose signai was measured;

transmitting toward the fog the data for the specific user device to thereby determine the real-time spatial coordinates of the specific user device.

19, The method of claim it, further comprising the steps for characterizing data assodated with a user device (UOf, the method comprising,

receiving characterization sync signal data transmitted towards the cloud server; processing characterization data associated with one or more user devices to update the data based on user device security policy;

transmitting toward a fog updated characterisation data sync Signal to thereby determine the real-time spatial coordinates of a specific user device based on the corresponding data of said user device; and

receiving zo e data associated with one or more user devices and archiving the data,

20. The method of claim 13,, wherein characterization data include white list and .blacklist data maintained In the cloud and beacon movement information for battery power management .

Description:
FO©~BASK H KIUSnST OF THIH S (XoT) Pli&TFORM FOR B^AX,

I I * 0C¾ I S SYSTEM (RT3LS)

This application claims the benefit to U.S. Provisi n l Application No, 62/419,346, filed on November 8 f 2016, which application is incorporated herein toy reference as if set forth in its entirety.

FJCBM) OF THE xw QB

The present invention relates generally to the field of Ρΐ¾: οεοίΐ½Γζ¾(ΐο:ί) , and more particularly to System and Methods for Real ime Locating of User Devices (UD) . B&CKGROUMD OF THE XHVFM XOW

The Internet of Things (IoT) is the internetworking of physical devices: and connected devices nam ly, smart devices, buildings, homes, parking meters, light bulbs, cars, and other objects embedded «ith electronics, firmware/software, sensors, actuators and network connectivit that enable these items to collect and exchange data. The IoT allocs objects to be sensed and/or controlled remotely across existing network inf astructure creating opportunities for mo e direct ■Integration of the physical, world into compu -baaed, systems, and resolting in improved efficiency, accuracy and economic benefit. When IoT is augmented with sensors and actuators,, the technolog becomes an instance of the more general, class of cyber-physioai systems, w ic also encompasses technologies such as smart grids, smart homes, intelligent f ansportation and smart cities. Each thing is uniguely identi iable through its embedded computing system but is able to interoperate within the existing Internet infrastructure . SiS«¾RX OF THE τΜΨ ΤΖ

Various embodiments provide a real-time locating system (RTLS) for determining real- ime spa ial coordinates of a user S device COD) and ethod for acquiring data associated with the user device. Moreover, the present embodiments provid a method for characterizing data associated with the 00. Finally, strategic placement of one or mo a agents and machine learning algorithms are need in acqui ing and processing the data to0 calculate the real-time location of the OD.

In one embodiment, a system is provided. The system comprises one or more agents optimally located in an are of an environment to thereby map the spa ial coordinates of the particular environment and correlate the location of the one oS more agents associated with the particular envi onment f said one or more agents communica ively coupled to a first routing device; one or more fogs communicatively coupled to the first routing device and configu ed wi h a non~ ransitory computer readable medium having stored thereon instructions that, upon0 execution by a central processing engine, cause the central processing engine to execute one or more applications associated with the one or mor fogs to determine real-time spatial coordinates of a user device, thereby enabling said one or more fogs toj (a) process characterization data associated with oneS or more user devices to thereby perform data mining of the one or more user devices and assign at least a tag to each of the one o more user devices; (b) transmit one or more commands towards the one or more agents; (c) receive from the one or more agents dat associated with a specific user device; id) normalize0 the data of the specific user device to thereby determine the realtime spatial coordinates based on the corresponding data associated with said user device; and (e> transmit one or more commands towards a cloud server consnunxca veiy coupled to the fog ia a second rooting d vi e.

another em odi ent provides a method for acquiring dat associated with a user device- he method inc udes the steps of: S sensing a wireless signal tr nsmit ed towards one or more agents, said wireless signal associated with one or more beacons; processing characterisation data associated with the one or more u er de ices and identify a respectiv tag associated with each of said one or more user devices;0 processing one or sore commands a fog transmit s towards the one or rore agents; measuring a signal strength of said wireless signal and associating relative spatial coordinates to the corresponding data associated with a specific use device whose signal was measured; transmitting toward the fog the data for3 the specific user device to thereby determine the real-time spatial coordinates of the specific user device.

Ye , another embodiment provides a method for determining real-time spatial coordinates of a user device. The method comprises the steps of determining for a particular environment,0 the optimal placement of one or more agents to thereby ma the spatial coordinates of the particular environment and correlate the iooar ion of the one or more agents associated with the particular environment; processing characterisation data associated with one or more user devices to thereby perform data5 mining of the one or more beacons and assign at least a tag to each of the ore or more beacons; transmitting one or more commands towards the one or more agents receiving from the one or mors agents data associated with a specific user device; normalising the data of the specific user device to thereby0 determine the real-time spatial coordinates based on the corresponding data associated with said user devi e; d transmitting e or more coig¾an.ds towards the cloud server *

.¾ further method provides for characterIKlug data associated with a user device. The method comprises the steps of: receiving characterization sync signal dat transmitted towards the cloud server; processing character! ration, data associated with one or more user devices to update the data based on user device security policy; t ansmitting toward a fog updated character!2 tion- data sp« signal to thereby determine the real-time spatial coordinates of a specific user device based on the co responding data of said oser device; and recei ing one da a assso ated with one or mo e user devices and archiving the data.

BS.XBF BESCMl *XOM OF ifH DSUUBfXllSBS

The teachings of the present invention, can he readily understood .b considering the following detailed description in conjunct ion with the accompanying drawings, in which :

FIG. 1 depicts a high-level block diagram of a system benefiting from embodiments of the present invention;

Pi;; . 2 depicts a high-level block: diagram of an

implementation, according to he sys em of FIG, 1

FIG - 3 depicts a. high-level block diagram of an

implementation according to the a e tern of FIG . 1;

FIG,. 4 depicts a network of fogs from different locations linked together: to the cloud;

FIG, 5 depicts an exemplary Mo ement Factor implementation according to the system, of FIG, 1;

FIG, 6A depicts a Flow Chart of a process for implementin the Trainin Model Optimisa ion lgorithm according to an embodiment o the invention;

Fi G , SB depicts a Flow Chart of a process for implementing the Generate raining Model (Sup ort Vector Model (SV ) ) algorithm according to an embodiment of the invention;

PI . 6C depicts a Flow Chart of a process for implemen ing the Generate Training B d I (Artificial he ral Metwork (& *3) ) algorithm according to an emfoo l«te?vt of the invention;

PIC 6l depicts a Flow Chart of a process for implementing the Training Model Calibration algorithm, according to as embodiment of the invention;

FIG. €E depicts a Flow Chart of a process for Updating the procedure In implementing the Training Model Calibration algorithm according to an embodimen of the i vention;

IG. SB' depicts a Flow chart of a. process for the retrain procedure in implementing the Training odel Calibration algorithm according to an embodiment of the invention;

FIG, 6G depicts a Flow chart, of a. process for realime om/'zone deeiaion in. implementing the Training Model Calibratio algorithm according to an embodiment of the invention;

FIG,. SB depicts a Flow Chart of a process for Received. Signal Strength Indication (RSSI) data collection in implementing the algorithm according to an embodiment of the invention;

FIG, ?A depicts a Star Based A r ngemen of an im lementation accordin to the system of FIG . 1; FIG, IB depicts a Layer Star Based Arr ngement of an im lementation according to the systern of PIG . 1;

IG,. 8 depicts a Corner Based .Arrangement, of n implementa ion according to the syste of FIG. 1;

FIG, 9A depicts a Star Based. Arrangement of an implementation according to the system of FIG, 1;

PI . SB depicts a Layer Star Based Arrangement of an implementatio according to the system of FIG, I;

FIG. 10 depicts Data Collectio for Corner Based Arrangement of an implementation according to the system of FIG. 1;

FIG. IX depicts a Flow Chart of a. process for determining real-time data In implementing the algorithm according to an embodiment of the invention;

FI » 12 depicts a Flow Chart of a process for acquiring data in implement ing the algorithm according to an emb dim n , of the invention; and

FIG, 13 depicts a Flow Chart of a process fo characterising real-time data in implementing the algorithm according to an embodiment of the invention.

To facilitate understanding,. identical reference numerals have heen used to designate elements having substantially the same or similar structure and/or substantially the same or similar nction .

0E3*AXI*EsD OBS RXPTXQti OF ¾HE WU^OT ΣΟ¾ί

Various embodiments provide a system for determining realtime spatial coordinates of a user device (W) and method for acquiring data associated wi h the user device. The disclosed architecture is a Fog network based architecture that uses user devices, e.g., bea ons;, multiple agents and fog nodes to carry put processing for RTTS (Real Time Location Sys em) < For ex m le, below listed are some facct ioa¾ used in achieving the objectives articulated above. ff.se, ,,,,^ CGFMS) aa,,,,a,,, cating. and Tr chi a Systei¾

* la the GPMS, the uses; device is a wireless device such as a Beacon or a Bluetooth device, «hieh periodically transmits I.dentification Code .

* This Identifle tion Code, together with, th measured Radio Signal Strength Indicator (RSSl) by which the ID code is transmitted, is proceased in the Coispmter Processing Center, e.g. * fog.

* By method of Triangxji& ion, and/or ing, if a. fingerprint diagram is available, the location of the UD is de ived,

Accaracy E h nc me t methods of the toeating d Track!ag ¾ystern

* Dae of a specific Agent placement layout with ovm± antennas ,

* Use of mac ne learning models for training model and calibration to adapt to environment changes.

* Us of additional, room/ zone decision logic,

« Ά Reference User Device {ROD! such as a Beacon, is placed in. a know location - he RSSl of the ROD, as pi cked op fey the Detectors, along with, the RO location information , is uaed for calibration of distance and location and used as standard reference , * y ESSI picked up t ereafter ro;r; -my OD, is com ared ith the calibration reference standard, and. is ad usted accordingly when, transla ing it to location,

* Ose of the multi-room decision algorithm to eliminate locating error.

Pee of the Multi-sense as a Locating ^ Tracking and unusuaI.

events Monitoring System

* In. this system, the agent, in addition to being a

transceiver t also detects u usual events of the wearer or

User Device CUD) . Examples of such unusual events are fall detection, negligent supervision care, etc.

The agent, having established connection with the fogs, transmits unusual events as digital, signal to the Computer rocessing Center via the gateway and router. The application software discerns the informa ion for prompting health car actions. In. some embodiments, the computer processing center is distinct and, a stand-alone eiextient of the network. In other embodiments, the com ute processing center resides within the individual fog.

In. the preferred embodiments user device (Old 105-115 periodically transmits its identification code CID) < This ID is processed togethe with the radio signal strength by wrsich the ID code is transmitted * The location of the U ' D is derived by the method of ttiangulation and/or fingerprint diagram , The accuracy of the F.LTS is enhanced, with the use of a specific agent placement equipped uith omni. antennas, Machine learning models a training model and calibration are used to adapt to environment changes augmented by room/tone decision logic.

The illustrative system and method embodiments described herein are not meant to be limiting. It may be readily understood tha certain aspects of the disclosed sys m and methods can be a rang d and combined i a variety of different configurations, all of which are cen emplated he e1n .

Generally speaking, any computing device such as a cellular telephone or smart phone or any computing device having similar functionality y implement the various ersfoodiments described herein. In various embodiments, any Internet enabled device such as personal digi al assistant { FDA) f laptop, desktop, end-user clients, near-user edge devices, electronic bock, tablets and the like capable of accessing the Internet may im lemen the various embodiments described herein. While computing devices ar generally discussed within the context of the description f the ¾.se of any device having similar functionality, is considered to be within the scope of the present embodiments *

Referring now to the figures, PIS. 1 is a simplified block diagram of a tem. 100 f according to aft exemplar embodiment herein described, Beai Time Locating S st 100 is comprised of a set of fixed beacon receivers at known locations and a moving beacon transmitter such as mobile tag or a mobile phone generally referred to herein, as a user device . Moving beacon, transmitters transmit constant wir less signals to the fixed beacon receivers whose locations are known. This constant wireless signals from moving beacons to the ¾.gents (Beacon Receivers) provide a¾ data information such as Identification code, Radio Signal Strength, etc. B combIn i ng the Radio Signal Strength and the known agen (fixed beacon, receiver) locations, and using al ori hms such as triangulation, or machine learning, the location of the moving Bluetooth Beacon can be calculated. Examples of deployment of such a system include; tracking equipment/assets in hospital, tracking shopping cart movement in a mall tracking package mo ement in a warehouse, finding missing children in a shopping mall, tracking work r^ s movements to improve operational efficiency, and the like.

In one embodiment, user device CUD} 105-115 is a wearable and/or attachable device, mobile and/or portable device,, which is tirelessly transmitting sel -generated data as well as code for self-identification . For example, UDs include Beacon, Η1Ρ1Φ, KF!D (Radio- requency identification - uses electromagnetic fields to automatically identify and track tags attached to objects) , Apple watch, fit it^t 4G/SG devices, ITE de ice® and ail wireless digital transceivers, 1JD 105~Ί1ο is generally a mobile tag that transmits identification signal periodicaily and s a result interacts with Agent 120, 12$, 130 via link 150, In addition to being a transceiver, UD 105-115 also detects unusual events of the wearer or user. Examples of such unusual events are fall detection, negligent supervision care, etc. This type of 00 transmits unnsual events as digital signal to the Computer Processing Center (Fog) via the gatewa and router when connection is established with the detectors or agents. The application software discerns the information for prompting health care actions *

In one embodiment, link ISO extends over great distance and is a cable, a USB cable, satellite or fiber optic link, radio waves, a combination of such links or any other suitable communications path. In. varices embodiment ,- link 150 extends oyer a short distance. In one embodiment, link ISO is unlicensed radio frequency where both user devices 105-115 and digital capturing devices or agent 120-130 reside in the same general location. In another embodiment, link ISO is a network connection between geographically distributed systems, in luding network connection ov r th Internet. In other embodimen s, link 150 is wireless, Irs other embodiments, the use of a system having similar functionality is considered to fee within S the scope of the present embodimen s . In various emfoodisnervfcs, link 150 is a ¾fi aye em. In other embodiments, link 150 is Ethernet based communication s stem. In various embodiments, link ISO u orts mobile services wit in an IfE network or portions thereof, those skilled in the art and informed by the0 teachings herein ill ealise that the various embodiments are also applicable to wireless resources associated with other types o wireless networks (e.g., G networks, 3G networks, 2G networks, ?iM¾X, etc.), wireline networks or combinations of wireless and wireline networks. Thus, the network elements,3 Iink , connector , sites and other objects representing mobile services ma identif network elements associated with other types of wireless and wireline networks. In other embodiments, the use of any wireless system having similar functionality is considered to foe it in the scope of the present embodiments..,0 In various embodiments, device 120-130 are detectors or wireless transceivers such as Bluetoo h transceiver, WlFi® transceiver,. G, &G and LTE devices * Devic o agen 120-130 continuously monitor signal strength (RSSI) of user device (Ob) 105-115 in its w¾iteiist, and multi-sense signals vision5 speech, temperature, humidity, etc) from environment, in some embodiments, device or agent 120-130 are fixed. In other embodiments , device or spent 120-130 are mobil , In various embodiments,, any Internet enabled device such as personal digital assistant {PDA) , laptop, desktop, electronic book,0 tablets and the like capable of accessing the Internet is used as device 120-130. In one embodiment, device or agent 1 0~d:30 is a. transducer. In other emb dimen s,, device or agent 120-130 is configured with one or s re t nsceivers arranged, as one lot CInternet o Things] sensor coupled to an ooni antenna receiver,. Device or agents 120-130 are configured with at least a beacon signal measurer, a beacon address scanner, an agent whitslist, an agent blacklist and multi-sense sensor. In some embodiment, an orani antenna is used.

Device or agents 120··· 10 ar associ ted h (Data Base) DB 121, 126 and 131 respectively. DB 121, 126 and 131 store data generated and used by device or agent 120-30, DB 121 , 126 and 131 are used te store data designated as ¾hiteiist data and Blacklist data, ^hiteiist data includes addresses (such as H&C addresses) of OD (user devices) that are considered acceptable and are therefore not filtered out. Blacklist data refers to a list of denied entities, ostracised or unrecognised for access to cloud 170 or fog 140-155 resources.

In various embodiments, Fog 140-155 includes end-user clients, near-user edge devices to carry out a substantial amount of storage (rather than stored pri arily in cloud data centers) t communication (rather than routed over backbone networks},, and control, configuration, measurement and management (rather than controlled primarily by network gateways such as those in the LTE core) > Fog I40-1S5 aggregate measurements from device or agent 120-13.0 to provide real time tracking processing (spatial coordinate estimation, roo /sone deciaion and uaosua1 e ent ).

Fog 140-" 155 serves w pages, as well as other web- related content, such as Java, Flash, XML, and so forth. Fog 140-155 may provide the functionality of receiving and routing messages between networking agent 120-130 and cloud 1 " ? 0 , for xam l , whiteiist data, blacklist data, LTD MAC addresses and the like, Fog 140-iSS may provide AFX functional! tv to send d a directly to native client de ice operating tems, such as 103, ¾ DROXD, we QS, and R! l he Wefo server may also serve web pages including question S and votes via. the .network 150 to user devices 105. blternat ively, the web server may also render question, and votes in native applications on user devices 105-115. In o e embodimen r @ eb se ve a e de u s ion on a native platform's operating system, suc as iOS or MJDROXD., io to appear as embedded advertisements i native applica ions .

In various embodiments, Fog 140-155 is a smart phone, cellular telephone, personal digital assistant {PDA) wireless hotspot or any internet-enabled, device including desktop

IS computer , laptop computer* tablet computer, and the like capable of accessing the Internet may foe used in terms of Fog 1 0-155.

In cations embodiments, Fog 140-155 are configured as a local are network where both agent I2o--d.30 and fog 140-155 reside in the same general, location. In other embodiments, Fog

20 140-155 are linked to agent 120-130 through network connections between geographically distributed systems, including network connection over the I te ne , Fog 140-155 generally includes a central processing unit { CPU } connected by a bus to memory {not shown) and storage. Fog 140-155 may incorporate one or more

25 general-purpose processors and/or one or more special- piirpose processors (e.g., image processor, digital signal processor, vector processor, etc * } . To the extent that foq 140-155 includes more than one processor, such processors could work, separately or in. combina ion . Foq

30 140-15 m y be onfigured to control functions of system 100 based on input received from one or more devices or agents 120-130, or different clients via a user interface, for example.

Each fog 1 0-1SS is typic lly running an operating system S (OS) configured to manage interaction betwean the compu ing de ice and the higher level software r nning on a user interface device as known to an artisan of ordinary skill in the art.

The memory of fog Χ40-Ί55 ma comprise one or more volatile and/or nonvolatile storage components such as0 optical, magnetic, and/or organic storage and fog memory may he integrated in whole or in part with computing fog 1 0-155. Fog 140-155 memory may contain instructions e.g., applications programming interface:, con iguration data} executed by the processor in performing various5 functions of fog 140-155, including any of the functions or methods- described herein. Memory may further include iustruetions executable b fog 140-155 processor to control and/or communicate with other devices on the network. Although depicted and described ith respect to an0 embodiment in which each of the APIs, engines, databases, and tools is stored within memory, it will be appreciated by those skilled in the art that the APIs, engines, -database, and/o tools may be stored in one o more other storage devices external to fog 140-155.

S Peripherals may include a speaker, microphone, and screen, which may comprise one or more devices used for displaying information. The screen may comprise a touchscreen to input commands to fog 140-155. As such, a touchscreen may be configured to sense at least one of a0 position in the movement of a user's finger via capacitive sensing or a surface acoustic wave process among other possibilities. General iy, a touchscreen may be capable of sensinq irme movement in a directloo parallel or perpendicu a to the touchscreen surface of Both, and may also be capable of sensing a level of pressure applied to the touchscreen, surface, A touchscreen comes in. di erent shapes and forms.

Fog 140-155 y include one or mora elements in addition o or instead of those shown. In on embodiment. Fog 1 0-155 eoTsrcunieate with, device or agent 120—130 via wired network (such as USB, Ethernet > In other embodiments, Fog 140™ 155 communicate with device or agent 120-130 via wireless network (such as Bluetooth, ¥iFi#) , Generally, data communication botwoen agent 120-130 and fog 140-155 is TCP/IF based .

Fogs 140-155 are associated with (Data Base) DB 141, 146 and 156 respectively. DB 141;. 146 and 156 store data generated and used by fog 140-155. DB 141, 146 and 156 are used to store data designated as Whltellst data, Blacklist data, Agent Whiteiist, i¾gent Blacklist, Agent hitelist data includes w ite!1st data applied in agent's processing. Blacklist data refers to a list of denied entities, ostracised or unrecognised for access to cloud. 170 or fog 140-155 resources,.

Poutor 135 forwards data packets om device or agent 120- 130 to fog 140-155 and vice versa. In one embodiment, router 135 is a separate device, which connects agent 1 0- 130 to tog- 1 0- 155 network. In other embodimen s, router 135 is software based, and resides on fog 140-155, Similarly, router 160 forwards data packets from fog 140-155 to cloud 170 and vice versa. In one embodiment, router 1.60 is a separate device f which connects f ' og~140~l55 network, to cloud 170 networks. In othe embodiments. router ISO is sof w re based and resides on fog 1 0-185, In soma embodiments cloud 170 and fog 140-155 comsinica e using wired network. such as Ethernet, In. other -embodimen s cloud 170 and fog 1 0-1 commu ic te using wireless network, such a s WiFie) .

Cloud 170 Is an information technology (X ) paradi p a model for enabling ubiquitous access to shared pools of configurable resources (such as fog networks, se vers, storage, applications and services) , which can be rapidly; provisioned. with minimal management effort, often over the Internet * In simple terms, cloud computing is the delivery of fog computing services----servets,- storage, databases (whitelist, black list) networking, software, analytics, and more-over the Internet. Irene embodiment,, cloud 170 is public. In other embod.irs.ents, oiouQ 170 is private. In yet other embodiments, cloud 170 is a hybrid ciouo.

FIG . £ depicts a high-level block diagram of a im iementat ion according ' to the system of FI * 1. Specifically, FI , 2 depicts an embodiment arranged on a point-to-point configuration., As shown, device or agent 120 is connected to fog 140 via connection 205; device or agent 125 is connected to fog 145 via connection 110 and device or agent 1.30 is connected to fog 155 vi connection 215» This point-to-point topology allows communication using USB cable, Ethernet orWiFiih

FIG * . 3 depicts a high---level block diagram of an impleme tation according to the system of FIG, 1. Specifically, FIG. 3 depicts an embodiment arranged on a point-to-point configuration. As shown, fog 140 is connected to cloud 170 via connection 305; fog 145 is connected to cloud 170 via connection 310 and fog 155 is connected to cloud 170 via connection 315, this point-to- point topology allows cenmmnication usi g USB cable, Ethernet or iFi . n this embodiment, cloud 170 is a private cloud-. in another embodiment, cloud 170 is a hybrid cloud-. As S indicated., one site may contain snore than one fog networked and communicating to cloud 170 via a router. Cloud 170 is subdivided into a private cloud allowing point-to-point communication whereas the public portion is configured to allow more than one fogs to share the communication path.

0 fid. 4 depicts a network of fogs from different locations linked together to the cloud, hiteXist management process as explained supra can be extended to track various items or Mbitelist dat in various physical and geographical locations. Fo instance, it could fee in different buildings,3 different neighborhoods or different cities or countries. Bach specific location 405-420 would have its own fog nodes 140-155 but individual fogs and ail are linked together to a remote cloud 170 in. one embodiment or local cloud 170 in another embodi, e:nt, therefore enabling tracking of White! is t i eras0 across individual fog networks -

This extension of whitelist management is important, Moapitais or other healthcare institutions are no longer one building but comprised of a network of buildings in multiple locations. This expands the capabilities of tracking Whitelist5 data as it isoves from location to location.

FIG., 5 depicts an exemplary Movement Factor implementa ion according to the ys em of FIG. X♦ Due to the general nature of the equipment, beacons standing still in a single location are detected by agents and read .by tbe router as0 sporadic movements within a small radius around a center point as illustrated in FIG. 5. As shown in FIG . 5, the data collected fey the movement of the beacon, shows the beacon standing still in four different locations §05-520 in single room.

In order to accurately analyse the exact location from, the varying data points collected by the Beacon Signal Measurer fro a beacon standing still in single location, a small radios can. be statistical ly determined around, a statistically deter ined center point. This radius will be deemed the Movement Factor. All the points lying i ift th Movement Factor ¥.111. be defined •as non-mobile at the center point.

The processes and procedures to determine for a particular environment, the optimal placement of one or more agents to thereby map the spatial coordinates of the particul r environment and correlate the location of the one or more agents •associated with the particular environment are de cribe , below in relation to FlGs. 6A-6« .

FIG. 6A depicts a Flo Chart of a process for i lementing the Training Model O tin .za ion algorithm according to an embodiment of tbe invention, Is. general, there are fou steps for training model and optimi ation. At step 601, the data set is generated. e build data set frois all eight {8} agents log file. Log file includes mac adoress, RSSI and tirae. There are two require ents. First, ail eight (8) or four (4} RSSI avast be at the same time, which means tiave difference must be no more than 0,5 second. Second, one {1} set of data amst have eight {8} or four {4} RSSI for features,, and the kne¾?n loca ion in certain angle tor "one } for iafeel. At step 602, the data is normal iaed. Different featurea range will have negative Impact on. machine learning, the data is n rmalised. Moraiaiioation is achieved by the following two ways:

1. in-Max scaling:

ta pi g each value into {6, 1] 2 » g-score standardi

At step 603i the data is divided. The operation is to divide aLi the data set into thr e parts: training set, testing s v. and cross-validation -set. in on iibodirae f the proportion is like training e i testing set! cross-validation 0,5:0.25:0,25. In other esibodimentSi other proportions are applied.

In step 04 , the training .model, i.s generated, as explained below i reference to FIG. €B ,

hiachi e Learning Based. RTLS has three hinds of agent placement and tone division.

* Star based < agents)

* Layered Star based (4 - 4 agents)

* Corner based

Machine Learning Based. R LS utilises three approaches of m c ine learning including:

• Support Vector Machine iSV }

* Artificial, ^enrai Be work{M }

• k~searest Neighbors ik-Hd) ,

M chine Learning Based ETLS includes the following three

procedures : Data collection

Model training

Real-time classi lo t ion i¾fii¾^¾,,,,|¾,¾¾¾¾M

We wi l descri e agent placement and cone decomposition for three configura ions,

* Star based

* Layer star baaed

» Corner based

FIG - SB depicts a Flow Chart of a process for implementing the Generate Training Model (Support Vector Machine <SVM> algorithm according to an erftbodirsent of the invention * At atop €05, the data is transformed to the fo ma s which the S¾M tool e ds . At. step the best parameters are found using cross-validation set,. At step 607, known parameters are used to train, the model. At ste 60S, the model is s d. At step SOS, a decision is m de whether or not the model, is good enough. If no, step 606 is repeated. If yes , step €10 is e ecuted and the model is us d n r aI.- ime ,

FIG, SC depicts a Flo Chart of process. for implemen ng the Generate Training: Model. (Artif cial Neural network I NN) } algorithm, according to an embodiment of the invention. At ste 611 the dat is transformed to the format, which the AHM tool needs * At step 612, the topology of the neural network, is designed. At step 61.3, an activation function is chosen for cross validation. At step 614,· the model is trained using a trainin set. At step 615, the model and parameters are tested, using the testing set, At step 616, a decision, is made whether or pot th model is good enouqh . If no, s 612 is repeated. If ye , step 617 is executed and the model is used in real-time.

Rather than taking only the closest matching fingerprint for getting the target position several points can he used. The impact of noise is reduced by using several points as the risk of having measurements failing in one position is mitigated by having several. positions » The simplest version of hN fingerprinting is to estimate the target point to foe the average of the K closest points. The algorithm can he further improved on this by c lculating a weighted average based on how close the fingerprint match is fo each of the K nearest neighbors, A good value or K has to be decided experimentally font it ie often chosen to be a xim ely in order of the square root of the number of data points.

1. Compute the distance d between each new measurement and ail known measurements in the training datase -

2. Select the k neighbors within the training dataset with the smallest distances,

3. Compute a weighted average of all known measurements in. training daCassl corresponding to the f -neares neighbors

4. Repeat the previous three steps for all unseen measurements FIG. 6D depicts a Flow Chart of a process for implementing the Training Model Calibration algorith according to an embodiment of the inven ion . The Calibration i auc on depends on f-measure, which is derived f om accuracy, precision and recall. For calibration, on rone decision, we make the following definitions:

* True positive (TP) : Target is in the rone and the model

predicts it is in the cone. False nega ive (FM) : Target is in the gon but the model predicts it isn't in the son ,

False positive (FP) : Target isn't in, the one b t the model predicts it is in the tone.

True negative {TM} : Target isn' in the c n and the model does not predict it is in the tone.

i ÷ >·' ·

F-jneas .e

F «--2*

' Refe ing now to FIG . 6D, at step 618 the Eeal-Time5 Locating Systars. fKLTSJ is tested. At ste a decision is Made whether ox not ½ F" is greater or equal to v HiI . " If yes,: step 620 is executed. If so, step 621 is executed where another decision, is rsade whether or not w f" is greater or equal to ,N RT . " If no, step 622 is executed where0 the procedure is updated. If yes, step 623 is executed where the procedur is retained.

FIG. 6S depicts a Flow Chart of a process for Updating the procedure in implementing the Training Model Calibration algorithm according to an embodiment of theS invention. At step 624, data collection is done over in the s ns that has a low F score. At step 625, bad data is replaced with ne ones, At step 626, the model is trained ■with new data set. At step 2?, the real, time test is repeated. At step 628, a decision, is m de as to whether or not he new model is good enough. If no, s e 624 is repeated. If yes, step 629 is executed where the mode I is us d, 1n ea -1im *

FI . 6F depicts a Flow Chart of process for the retrain procedure in implementing the Training Model Calibration algorithm according to an embodiment of the invention. At step 630, data at zones and angles are recollected;. At ste <&31, a new data set is rebuilt. At step 632, the model. is trained wi h the new data set. At ste 633, the model is tested in. real-time. At step 634, a decision is made a to whether or not the new model is good enough. If no, step 630 is repeated. If yes, step 635 is executed where the model is used, in real-time.

Room Decision Functionβ/ lone Decision uctions

FIG. 6G depicts a Flow Chart of a proces for realtime room/zone decision in implementing the Training Model Calibration algorithm according to an embedxmenc of the invention ,

Average of ESSI In one room; When the average of ESSI measurement of one room is calculated, the beacon is estimated to be located in the room wi h the strongest average ESSI .measurement..

The following steps are performed. At step. 636, Extract all RSSI from real-time measur ments .

o All RSSI scould be collected at the same time. o If we filter the data to feed into train model * we

ust apply the same filter as well

c The measurement will include beacon" s transmission, povier at one (l) meter, say 0. ft It "M* does not match the beacon's transmit power at one CD meter,< say *A1 , " used in building the model, we will adjust the measured RSSI. to adapt our trained model by offsetting the RSSI with the difference between "AO" and . «

¾t s ep 637,, Group ail RSSI together in the cer in forma fo SV , B and k~l respectively, At step 638, perform classification with trained model to generate result of angle or rone. At step 639, post processing: Even after applying filters, RSSI usually have huge fluctuation, so we have poet processing to further avoid fluctuation, of identified rone results,

o If ail the RSSI are bigger than a certain threshold, we will consider the beacon i in the center zone, o We get list of classification in !·--: seconds, then calculate the frequency of different classification, o Then, we conld determino the high probability and. low probability angle or z n . For approach^ we will get two (2} angle or sone from two (2) models, we should. com ine the and finally get " s. " high probability and 2"· ' low probability angle or rone.

FIG 6H depicts a Flow Chart of a process for Received Signal Strength Indication (RSSI) data collectio in implementing the algorithm according to an embodiment of the invention * At atep 640, RSSI measurement is performed b sed on various agent arrangement. During the data collection, we will apply adaptive filter to smoother* the RSSI, which could avoid RSSI radical change. At step 641 , RSSI pre-processing is performed..,: Due to wi eless signal fluctuation, and fading, two steps are needed:

* Rre-proeessing : The measurement will include beacon's transmission power at one CD meter, say A0. " If NA .0 ** ' does not match the beacon's transmit power at one (1) meter, say ¾1," used in building the model, we will adjust the om&surec! RSSI to adap oor trained model by offsetting the RSSJ with the difference between "AO" and "Al . "

at step € 2, BSSI smooth ino is erf rmed based on a ^ n filter or average value filter. Below are ex mples of performance of zone decision functions.

1 < Star based ;

2♦ Layer star based:

Model 1

Overall accuracy: 99,92% Model 2

FIG, 7.A depicts a Star Bas d Ar ng ment of an i p1emeutattors according to the s stem of FIG. J.. Osing eight i 8 j agents 70S with cmni a tenna and divide a round area into w 8 4· 1*' stones 710 based on angle and radius, which m a s each acne is a part of ring with 45 degrees. This is considered to be similar to RSSX in the area which are close to our antenna (which r¾eans heacon is no mo e than lis away from agents) f ve define a center round zone with approximate 1 radius.

FIG. ?S depicts a Layer Star Eased Arrangement of an implementation according to the system of FIG . 1. Osing *v 4 e ·<!" agents wit omni ante and divide a round area into w 4 ÷ I " scaei' 720 baaed on angle and radiu . First, w use four (4) agents 715 and divide round area into four (4i acnes, which S means each zone is a part of ring with ninety {90} degrees.

Second, we use four { } rotated agents 739 and divide roinrd area 725 into four {4) rotated z nes as shown in FIG. 78, These two ways of ons division w i 1 i help each, othe to imp ov the accuracy when the beacon in around borderline. ¾t last we define

10 a center round tone wi h approximate one radius,

FIG - 8 depicts a Corner Baaed Arrangement of an implemen a ion according to the system of FIG. 1, As shown, four |4) agents will be placed in four (A) corners n me iy, 815 , 820, 825 and 830.

15 FIG. B depicts a Star Based Arrangement of an implementat ion according to the s s em of i < IQ . 1 , RSSI data is collected f om all eight (8) agents at every point for more than twenty (20; minutes. Those points are located at eight (8) linen, which are 22,5, 67.5., 112. h, 157.5, 202. S, 247.5, 292.5,

20 337.5 degree. The distance between every two points in the same line is 0.5nu Age ts 80S and points 910 are placed as shown in Fid. 8d. e will measure one Or multiple beacons to collect RSSI data. RSSI from eight {«} amenta ill he the eight (8) features for model 1 training .

25 FIG, 9B depicts a Layer Star Based Arrangement of an implementation according to the system of FIG. 1. RSSI data- is collected from, all four (4) agents at every point for more than twenty (20) minutes. The distance between every two points in the name line la 0,5m.. Agents 915, 325 and points 920, 930

30 are placed as shown in. FIG. S&. We will measure one or multiple beacons to collect RSSI data. RSSI from four (4) agents will foe the tour (4) fea ures for model 2 training. The models fro the e- o layers are than combin d to build trained machine learning model.

FIG, 10 depicts Data Col lectio for Corner Based Arrangement of an implementation according to the system of FIG , I, To collect data in zone 1015, 1020, 1025, 1030 and 1035, data is collected at positions of * 4 points (illustrated as 1030 and 1035:} in evenly distributed in each rectangular rone for 20-30 minutes.

FIG, 11 depicts a Flow Chart of a. process for determining real -time data in implementing the algorithm according to an. embodiment of the Invention,

Various embodimen s operate to provide a flexible tool that can be tuned to achie e the above outlined objectives without sacrificing others.

At ste 1101,· the optimal placement of one or more agents is determined for a particular environment to thereby map the spatial coordinates of the particular environment and correlate the location of the one or more agents associated with the particular environment . Training Model Calibration algori hm is working in th background calibrating parameters for machine learning model to be used in current placement of agents and determine if a n w agent placement is needed to op imize pe formance♦ At step 1105, the receive measurement from agents routine ia executed. Speci ic lly, the signal measurement count la initialised, for exa ple., the felioeing commands are executed; (1) " nitialise signal m ea urement_count !:: 0 in beacon address scanner; {2} Initialise address scanning count: Initialise address scanning count » ·- 0 in beacon signal measurer; the following steps are repeated; {3} Update signa1 measurement count and address scanning count: Beacon address scanner continues to scan beacon addresses for any signals that can bo observed in the agent, and extract beacon addresses scanned t

1} If the observed address is in the Fog Whitelist (query the fog hitelist from agent) , then reset sign l ^ measyreriient_co«nt ™ ; 0» and wake up Beacon signal measurer .

ii) If the obs d address is in the Fog Blacklist (query the fog Blacklist from agent) , then increase signal ^ !¾eaanres ' sent_count by 1

lit) If the observed address is not in the Fog hi eiist or Blackl st, the increase ignsl ^ j¾easuremeri_co¾rn by 1

ivd If no beacon is detected, then increase address scanning count by

v) ii signal measurement conn - signal isessorement tirseout then po^e off Beacon Signal Measurer .

vi] Sleep Mode: If address_scanniag_count

address_seanning__ tirseoot then pat Beacon Address Scanner in sleep mode- Beacon Address Scanner will wake lip after predefined timeout period.

lit step 1 no, the white/black list ma agement func ion is executed. For exarspls, the following no-as-ands are executed.

1} Initialize Fog Whireiist: input of beacon addresses that are intended to be monitored into fog hitelist

2} Initialize Fo Blacklist; initialite null in Fo Blacklist

Repeat periodically the following steps 3-¾:

3)Upd te Fog ¾hit¾l1s and Black!ist Beacon address scanner continue to scan beacon addresses for any signals that can be observed in the agent, and extract beacon addresses scanned: 1} If the o served address is in the Fog iteli (query the fog Whiteiist from agent)■, then add the dd ess to the Agent Whitelist:

ii If the observed address is in the Fog Blacklist (query the fog Blacklist from agent) , then add the address to the Agent Blacklist

iii) if the observed address is not in the Fog Whiteiist or Blacklist, then add the address to the Agent Blacklist .

4) Synchro ' nize Beaeo aigna.1 rseaaurer : Update Agent White! 1st information to the Beacon signal measurer. Beacon signal measure la in general a .hardware./AS1G circuit that can only measure limited number of beacons signal sam les within a speci led interval .

.5} Ear I Beacon Signa1s : Beacon signal measurer periodically measures and sends out beacon signal strength for only those beacons in Agent Whiteiist to the fog node.

¾) Synchxonize Fog Blackl ist ; Update the Agen Blacklist addresses to Fog Blacklist based on security policy of operating environment. ht step 1115, the move factor function is executed. The Move factor function as described above in reference to FIG, 5 and need not he repeated here,. At step 1120; the ower iDanage enf function is executed. Power management includes ow r off Beacon Signal easurer and Beacon Address Scanner during system operations . The main idea is to power off Beacon Signal Measurer when no ohserved beacon is in Fog Whiteiist for certain period of time (signal m as rement timeout) . But Beacon Address Scanner into sleep mode when no beacon is observed, for certain, period of time {address scanning timeout) . At step 1125, the multiple room decision function Is executed. This function is specifically described in. reference to FIGs . ?A~?B, S and 9 - B. At ste 1130, machine lea ning zone ased decision is performed.. The process loops back to step 11 OS, Although, primarily depic ed and described, he e n wit respect to the embodiments described herein, it will be appreciated that the algorithm may be Modified and used in other embodiment ,

FIG. 12 depicts a. Flow Chart of a process for acquiring data in implementing the algorithm according to an embodiment of the invention. At step 1205, the beacon address scanner function (which detects Identi ication code such as Bluetooth, MAC address or 001.0 code) is exec ted. Moving Beacon transmitters transmit constant wireless signals to the fix d Beacon Receivers whose locations are known. This constant wireless signals from moving Beacons to the Agents (Beacon Re cei vers ) provide raw data information such as Iden ifica ion code, Radio signal Strength, etc. By combining the Radio Signal Strengt and the known Agent locations*- and os i ng algorithms such as t iangnlation, the location of the moving Bluetooth Beacon is calculated. At step 1210 * . the w i e/black list management function is execu ed * The agent receives the data from the fog and compiles the white/black list accordingly. At step .1225, if the power off signal is received from the fog, t n step then step 1220 is executed. If not, then step 1.225 is executed. At step 1230, the be&eesn signal i aasmrer function {which accumulates wireless signal sample to calculate Radio signal trength, snob as RSS1) is executed and the measurements obtained are sent to the fog. At step 1220, power is turned off to the beacon signal measurer. At step 1215, if the ^ake-n signal has not teen received, power remains turned off. If the wake-up signal is received, ste 12 5 is executed, Although primarily depicted and described herein with respect to the embodiments described, here n, it will be appreciated that th algorithm may be modified and used in other embodiments ·

FIG, 13 depicts a Flow Chart of a process for characterizing real-time data in implementing the algorithm according to an embodiment of the invention-. At step 1305, the white/black list sync data is received from a fog. At ste 1310, the whb te./b ack list man gemen function: is executed. For - aropl , these coim-sand are executed:

1, Initialise Fog whitelist: Fog whitelist Initialises beacon addresses that are intended to foe monitored in Clond

Whitelist

Initialise Fog blacklis : Fog Blacklist Initialises null in Cloud Blacklist

3» Maintain list based on Beacon seonritv policy: Beacon

security policy continues to monitor changes in Cloud

Whitelist, Cloud blackli t, and Fog blacklist : a) If changes in the Cloud Whitelist {query the Cloud

Whitelist from Fog) , then synchroni e address changes to the Fog Whitelist

b) It change in the Cloud Blacklist {query the Cloud

Blacklist from Fog) , then synchronize address changes to the Fog Blacklist

c) If changes in the Fog Blacklist, then s nchronise address changes to the Clond Blacklis .

A step 131S, the security polic management function is executed * The management of security policy can be based on a predefined clond whitelist which is maintained in a database fable residing in the cloud. his table stores ail. beacon IDs for whitelist, and can be maintained by security staff. Add! lonal rules for security practice are varied fro organisat ons; to organisations:. For instance, these additional rules can be implemented in the cloud whitelist database to mow whi eilst beacon ID to blacklist beacon when certain security S violation is triggered. Fu h rmo e, security events triggering rules can be defined to associate wit the database. At step 1320, the white/black list sync update data is forwarded to the fog. At step 1325, the UP cone information received from the fog is archived, lthough primarily depicted and described0 herein with respect to the embodiments described herein, it will fee appreciated that the algorithm .may be modified arid used in othe embodimen s .

The foregoing description of the em odiments of the invention has been presented fo the purpose ofS illustration; it is not intended, to be exhaustive or to limit the invention to the precise rms- disclosed. Persons skilled in the relevant art can appreciate tha m y rnodificatioos and variations are possible in light of the abo e di o1o u e -0 Some portions of this description describe the embodiments of the invention in terms of algorithms and symbolic representations of operations s information.. These algorithmic descriptions and representa ions are commonly used by those skilled in the data processing arts5 to convey the substance of their work effectively to others skilled, in the art. These operations, while described f nctionally,, computationally, or logical iy, are understood to be implemented by comput r programs or equivalent, electrical circuits, microcode, and the like- Fu thermore,,0 it has also proven convenient at times, to refer to these arrangements of operations as modules < The described operations and t eir associated modules may be embodied in software, firmware, hardware, or any combinations thereof, Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or n combination with other devices. In one embodiment, a software module is im leme ted with a com ter program product comprising a computer readable mediu containing computer program code, whic can be executed by a computer processor for performing any or all of the steps, operations, or processes described.

Embodiments of the invention may also relate to a product that is produced by a computing process described herein. Such a product may comprise information resulting from a computing process f where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data com ination described herein *

Finally, the language used in the specification has been principally selected for readabilit and instructional purposes, and it may not have been selected to delineate O circumscribe the inventive subject matter. It is therefore, intended that the scope of the invention be limited not by this detailed description, but rather b any claims that issue on an application based hereon.

Although various embodiments, which incorporate the teachings of the present invention, have been shown and described in detail, herein, those skilled in the art can readily devise many other varied embodiments that still incorporate these teachings,