Assessing spatial mobility behavior

By evaluating the spatial mobility behavior of user equipment and assigning mobility factors, reconfiguring the device to optimize battery usage status, solving the problems of user equipment's difficulty in charging and equipment damage during work and travel, and improving device life and productivity.

CN112055818BActive Publication Date: 2024-12-27HEWLETT PACKARD DEVELOPMENT COMPANY LP
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN201980028604.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2018-10-09
Filing Date
2019-10-04
Publication Date
2024-12-27
Estimated Expiration
2039-10-04

AI Technical Summary

Technical Problem

During the work and travel of employees, the user's equipment is difficult to charge and insufficient charging time leads to premature deterioration of the battery, which increases equipment damage and operating costs, and affects productivity.

Method used

By evaluating the spatial mobility behavior of user equipment, distribute mobility factors using machine learning techniques, reconfigure user equipment to optimize battery usage status, allocate resources appropriately, and reduce device damage and operating costs.

Benefits of technology

It improves the service life of user equipment, reduces equipment damage and operating costs, and increases the productivity of employees and enterprises.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112055818B_ABST
    Figure CN112055818B_ABST
Patent Text Reader

Abstract

The present subject matter relates to techniques for assigning mobility factors to users based on spatial mobility data. In one example, the technique may include four stages for assigning mobility factors to users. In a first stage, spatial mobility data from a plurality of user devices assigned to a plurality of users may be received. In a second stage, spatial mobility behavior of a set of user devices may be evaluated using machine learning techniques using spatial mobility data of members of the received set of user devices. In a third stage, user devices may be selected for reconfiguration based on the evaluated spatial mobility behavior using machine learning techniques. Finally, at a fourth stage, the selected user devices may be reconfigured.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] Enterprises usually employ many employees to complete various operations of the enterprise. Such employees may travel to various locations to perform operations. Enterprises can provide employees with various resources including user devices to complete their work. User devices can be mobile phones, laptops, or handheld PCs. Further, based on the range of travel, employees can be provided with peripherals such as chargers to allow employees to charge user devices. BRIEF DESCRIPTION OF THE DRAWINGS

[0002] A detailed description is provided with reference to the accompanying drawings, in which:

[0003] Figure 1 illustrates an example of a network environment utilizing a system for assigning mobility factors;

[0004] Figure 2 A system for assigning mobility factors according to one example is illustrated;

[0005] Figure 3 illustrates a detailed schematic diagram of a system for assigning mobility factors according to an example;

[0006] Figure 4 illustrates a method for assigning mobility factors according to one example; and

[0007] Figure 5 A non-transitory computer readable medium according to one example is illustrated. DETAILED DESCRIPTION

[0008] Employees employed in an enterprise may travel for work, so the enterprise can provide employees with various user devices to facilitate the work of employees. Employees may face situations in which the user device may not operate in such a situation. In such a situation, employees may be trapped in the dilemma that the user device may not work. In one example, employees who travel for work may face situations in which the employee may not be able to locate a charging port to charge the user device, or due to time constraints, the employee may not be able to provide enough charging time for the user device. The unavailability of the charging port and the insufficient charging time may cause premature degradation of the battery of the user device. In addition, the continuous use of the user device in the case of insufficient charging also increases the degradation of the battery. Such degradation may cause frequent replacement of the battery pack. In addition, battery degradation may cause downtime of the user device, which may also affect the work and productivity of the employee. In addition, the user devices assigned to employees who travel more are more likely to be damaged due to travel. For example, user devices such as laptops may be damaged during the frequent travel of employees to whom the user device is assigned, and such damage may cause hard disk damage. Further, hard disk damage may cause data loss. As a result, the user device may need to be frequently replaced due to damage. Such damage further increases the operating costs of the enterprise. Businesses may fail to allocate appropriate resources to their employees, which can affect employee productivity as well as the productivity of the business.

[0009] An example of a technology for evaluating the spatial mobility behavior of a user device and reconfiguring the user device based on the evaluated spatial mobility behavior is described. In one example, the spatial mobility behavior may be a travel mode of a user device. In one example, a mobility factor that can indicate the spatial mobility behavior of a user device may be assigned. The technology based on this subject may use machine learning to evaluate the spatial mobility behavior of a user, and assign a mobility factor based on the spatial mobility behavior of the user device. In one example, a user with multiple different types of user devices will have multiple mobility factors for each type of user device assigned to the user. In addition, the technology based on this subject may allow the user device to be reconfigured based on the spatial mobility behavior accessed. The technology based on this subject may use spatial mobility data transmitted by a user device carried by a user. The technology may derive multiple spatial mobility parameters associated with each user device, such as the length of a trip, the frequency of a trip, or how far the user device has traveled. Based on the derived parameters, a machine learning technique may be used to determine the mobility factor of each user device. Once the mobility factor is determined, the user device may be reconfigured based on the mobility factor.

[0010] According to an example, the technology can operate in four stages. In the first stage, spatial mobility data from multiple user devices assigned to multiple users can be received. In the second stage, machine learning techniques can be used to evaluate the spatial mobility behavior of the set of user devices using the received spatial mobility data of members of the set of user devices. In the third stage, machine learning techniques can be used to select user devices for reconfiguration based on the evaluated spatial mobility behavior. Finally, at the fourth stage, the selected user devices can be reconfigured based on the evaluated spatial mobility behavior.

[0011] In the first stage, a data set is created using spatial mobility data of user devices associated with all user devices assigned to the user. In one example, for each user device in the data set, the location information may include spatial mobility data of the user device and a transmission timestamp of the spatial mobility data. For example, the spatial mobility data may be latitude and longitude coordinates. Further, the user device may transmit spatial mobility data at predetermined time intervals, and the transmitted spatial mobility data may be collected within a predetermined time period.

[0012] Once a data set is created, the user devices can be identified for further analysis, and such an identified user device set can be derived from the data set. Therefore, the data set can be screened to filter out users that may not be relevant to the spatial mobility behavior analysis, thereby leaving a user device set. For example, the data set can be screened to exclude users that may not be relevant to the analysis. In order to filter the set, multiple predefined rules can be applied. In one example, the predefined rule for filtering the user device set may include the maximum number of user devices associated with the user. Further, the rule of the predefined number of user devices associated with the user can be applied to exclude the user devices that have not been used associated with the user. Another predefined rule can be the maximum number of user devices of the same type associated with the user. The predefined rule can be applied to prevent redundant analysis of similar user devices. Another predefined rule is the minimum number of spatial mobility data collected within a predetermined time period. The predefined rule can be applied to ensure that a sufficient amount of spatial mobility data can be used for further analysis. Finally, another predefined rule can be that there should be no overlap in the transmission time period of the location information transmitted by the same type of user devices assigned to the same user. The rule can be applied to filter out users who are not relevant to the analysis.

[0013] In the second stage, the set of user devices may be further analyzed to determine mobility factors associated with members of the set of user devices. In one example, based on the spatial mobility data of the members of the set of user devices, multiple parameters may be determined for the members. Further, each of the multiple parameters may be related to the spatial mobility behavior of the user. In one example, the parameter may include a geographic location partition, which includes different sets of areas where the user has traveled more frequently. In other examples, the parameter may be the total distance traveled by the user. Another example of a parameter may be the longest single trip taken by the user. Further, as an example, the parameter may be an area in which the user has traveled in a predetermined time period.

[0014] According to one example, the spatial mobility behavior of members of a set of user devices can be accessed. In one example, the spatial mobility behavior can be evaluated by determining a mobility factor based on the determined parameters of each user device. In one example, machine learning techniques can be applied to evaluate the spatial mobility behavior, and the mobility factor can be determined based on the parameters. In other words, machine learning techniques can be used to classify user devices as mobile or stationary. In addition, user devices can be classified as more mobile than other user devices. In one example, the spatial mobility behavior can be evaluated by forming the number of different cluster sets of user device members and determining the cost associated with each cluster based on the members in the cluster. In one example, the cost can indicate the amount associated with the travel of the user device. Further, the associated cost can be calculated using the parameters of the user device. Once the cost is calculated, the total cost of each location of the cluster can be calculated. Once the total cost is calculated, the cluster set with the lowest total cost can be selected, and the comparison between the clusters in the selected cluster set can indicate the spatial mobility behavior.

[0015] In one example, based on the determined cost, a mobility factor can be assigned to the members in the cluster. As mentioned above, the mobility factor can be an indication of the spatial mobility behavior of the member. For example, a relatively high mobility factor indicates that the user equipment is associated with a user who travels more than other users including user equipment with a lower mobility factor. In the third stage, the user equipment can be selected for reconfiguration based on the assigned mobility factor. In one example, if the assigned mobility factor of the user equipment is higher than a predefined threshold, the user equipment is selected. Once the user equipment is selected, the selected device can be reconfigured to change the operating state based on the spatial mobility behavior or the mobility factor. For example, a user equipment with a high mobility factor can be reconfigured to operate in an operating state in which the user equipment consumes less power.

[0016] The technology based on this theme allows the operating state of the user device to be automatically configured based on the spatial mobility behavior. Since the user device can be reconfigured on the fly, the user device can cater to the user's work according to the user's needs. In addition, the technology of this theme can also allow the user device to be appropriately distributed to the user based on the user's spatial mobility behavior. Further, since the user device is assigned based on the user's spatial mobility behavior, the cost associated with the allocation of resources is reduced. Such allocation of user devices can improve the productivity of users because appropriate user devices that can cater to the user's needs can be provided to the user.

[0017] Figure 1 A network environment 100 utilizing a behavior recognition system 102 is illustrated for assigning mobility factors to multiple users 104, 106, 108, etc. based on machine learning. Although this example illustrates three users, the behavior recognition system 102 can evaluate the spatial mobility behavior of more than three users. Further, multiple user devices 110, 112, ..., 126 can be provided to users 104, 106, and 108. In one example, user devices 110, 112, and 114 can be provided to the first user 104. Similarly, user devices 116, 118, 120, and 122 can be provided to the second user 106. Further, user devices 124 and 126 can be provided to the third user 108. In one example, user devices 110-126 can be portable and can be of different types. For example, user devices 110-126 can be of the same type or of different types. For example, user devices 110-126 can be mobile phones, laptops, or handheld PCs, etc. Further, the user devices 110-126 may have different operating states, such as a first operating mode and a second operating mode. In one example, the first state may be a normal operating mode, and the second state may be a power saving mode, in which the user device is configured to operate the user device in a manner that saves battery. In another example, the user device may be reconfigured to turn on or off a wireless adapter, thereby enabling or disabling a wireless connection of the user device to a wireless network. In addition, the user device may be configured to prevent the user device from connecting to an unsecured wireless network, or may limit the connection of the user device to external peripheral devices.

[0018] According to one example, user devices 110-126 may communicate with behavior recognition system 102 to provide location information of user devices 110-126 to behavior recognition system 102. The location information may include spatial movement data. In one example, the spatial movement data may be geographic coordinates. Further, each user device 110-126 may relay the spatial movement data to behavior recognition system 102 at predetermined intervals together with the date and time of transmission. In another example, user devices 110-126 may transmit spatial movement data when an event occurs. The event may be that user device 110-126 enters a predetermined location. In another example, the event may be that the user device exits from a predetermined location. In either case, user devices 110-126 may relay spatial movement data to behavior recognition system 102.

[0019] According to one example, the network environment 100 may include a spatial movement database 128 in communication with the behavior recognition system 102, which may store spatial movement data of the user devices 110-126 received by the behavior recognition system 102. Although the spatial movement database 128 is shown as being external to the behavior recognition system 102, the spatial movement database 128 may be internal to the behavior recognition engine 102. In one example, the spatial movement data may be populated in the form of an array including an entry for each user device 110-126, details of the user to whom the user device is provided, and the spatial movement data and the date and time of transmission of the spatial movement data. The network environment 100 may also include a parameter database 130, which may store multiple parameters based on the spatial movement data of the user devices 110-126.

[0020] Network environment 100 may include mobility factor database 132, which may store mobility factors assigned to user devices 110-126 of users 104, 106, and 108. In one example, behavior recognition system 102 may determine the mobility factor based on a plurality of parameters stored in parameter database 130.

[0021] According to one example, the behavior recognition system 102 can communicate with the user devices 110-126 and the database through the communication network 134. The communication network 134 can be a wireless network, a wired network, or a combination thereof. The communication network 134 can also be a single network or a group of many such single networks that are interconnected and act as a single large network, such as the Internet or an intranet. The communication network 134 can be used as one of different types of networks, such as an intranet, a local area network (LAN), a wide area network, the Internet, etc. The communication network 134 can be a dedicated network or a shared network, which represents a union of different types of networks that use various protocols to communicate with each other, such as the hypertext transfer protocol (HTTP), the transmission control protocol / Internet protocol (TCP / IP), etc. Further, the communication network 134 can include network devices, such as network switches, hubs, routers, for providing links between the behavior recognition system 102 and the user devices 110-126. The network devices within the communication network 134 can interact with the behavior recognition system 102 and the user devices 110-126 and the databases 128-132 through communication links.

[0022] In operation, the behavior recognition system 102 may receive location information from a plurality of user devices 110-126 at predetermined intervals. In one example, the location information may be spatial movement data of the user devices 110-126. Thereafter, the behavior recognition system 102 may store the spatial movement data in a spatial movement database 128 for further processing. The behavior recognition system 102 may further process the spatial movement data to obtain a plurality of parameters. Further, each of the plurality of parameters indicates a spatial movement behavior of the user devices 110-126. Once the behavior recognition system 102 has generated the plurality of parameters, the behavior recognition system 102 may utilize machine learning techniques to assign mobility factors to users. In one example, the behavior recognition system 102 may form user clusters, and thereafter, the behavior recognition system 102 may assign mobility factors to each cluster. As an example, referring to Figure 2 and Figure 3 The operation of the behavior recognition system 102 is explained in detail.

[0023] Figure 2The behavior recognition system 102 according to one example is illustrated, and the behavior recognition system 102 is used to assign mobility factors to multiple users based on the spatial movement behavior of the users. The behavior recognition system 102 may include, for example, an engine 202. The engine 202 is used as a combination of hardware and programming (e.g., programmable instructions) to use the functions of the engine 202. In the examples described herein, such a combination of hardware and programming can be used in a variety of different ways. For example, the programming for the engine 202 can be a processor-executable instruction stored on a non-temporary machine-readable storage medium, and the hardware for the engine 202 can include a processing resource (e.g., a processor) to execute such instructions. In this example, the machine-readable storage medium stores instructions for deploying the engine 202 when executed by the processing resource. In such an example, the behavior recognition system 102 may include a machine-readable storage medium storing the instructions and a processing resource to execute the instructions, or the machine-readable storage medium may be independent, but accessible by the behavior recognition system 102 and the processing resource. In other examples, the engine 202 can be deployed using electronic circuits.

[0024] The engine 202 may include a data collection engine 204, which may receive location information from each of all members of the plurality of user devices 110-126 assigned to the plurality of users at predetermined intervals. In one example, the location information may include the transmitted spatial movement data of the user devices 110-126 and the transmission timestamp of the spatial movement data. Further, the data collection engine 204 may store the spatial movement data in the spatial movement database 128. The behavior recognition system 102 may also include a parameter determination engine 206, which may receive location information from the plurality of user devices 110-126 ( Figure 1 In one example, the parameters may include, for example, the number of geographic location partitions, the total distance traveled by the user, the longest single trip made by the user, the area and parameters within which the user device traveled within a predetermined time period. Further, the parameters may indicate the spatial movement behavior of the user device. Figure 3 Explain the details of each parameter in detail.

[0025] According to one example, the behavior recognition system 102 may include a behavior recognition engine 208 that can evaluate the spatial mobility behavior of members of the set of user devices. In one example, the behavior recognition engine 208 can assign a mobility factor to each member based on multiple parameters of the user devices, so that the mobility factor indicates the spatial mobility behavior of the member. The behavior recognition engine 208 can use machine learning techniques to determine the mobility factors of the members of the set of user devices. In addition, the behavior recognition engine 208 can also identify user devices from the set for reconfiguration based on the assigned mobility factors. Further, the behavior recognition engine 208 can reconfigure the identified user devices based on the assigned mobility factors. Figure 3 The manner in which the behavior recognition engine 208 reconfigures the identified user device is explained.

[0026] Figure 3 A detailed schematic diagram of a behavior recognition system 102 for assigning a mobility factor according to an example of the present subject matter is illustrated, the schematic diagram showing various components of the behavior recognition system 102. In addition to the engine 202, the behavior recognition system 102 also includes a memory 302 having data 304 and an interface(s) 306. Among other functions, the engine 202 can also retrieve and execute computer-readable instructions stored in the memory 302. The memory 302, which is communicatively coupled to the engine 202, can include non-transitory computer-readable media, including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and / or non-volatile memory, such as read-only memory (ROM), erasable programmable ROM, flash memory, hard disk, optical disk, and magnetic tape.

[0027] In one example, in addition to the data collection engine 204, the parameter determination engine 206, and the behavior recognition engine 208, the engine 202 may also include a user filtering engine 308, a behavior recognition engine 208, and (one or more) other engines 310. The (one or more) other engines 310 may provide functionality that supplements the applications or functions performed by the behavior recognition system 102.

[0028] Further, data 304 includes data generated as a result of functions performed by any of the engines 202. Data 304 may include other data 312. The other data 312 may include data generated and saved by the engines 202 to provide various functions to the behavior recognition system 102.

[0029] As explained above, the behavior recognition system 102 operates in four phases. In the first phase, the behavior recognition system 102 may receive spatial mobility data from a user device assigned to a user. In the second phase, the behavior recognition system 102 may use the spatial mobility data of members of a set of user devices to evaluate the spatial mobility behavior of the set of user devices. In the third phase, a user device may be selected for reconfiguration based on the assigned mobility factor. Finally, in the fourth phase, the selected user device may be reconfigured.

[0030] In one example, in order to evaluate spatial mobility behavior, the data collection engine 204 can collect spatial mobility data of user devices 110-126. The data collection engine 204 can create a data set to store the spatial mobility data that the data collection engine 204 can collect from the user devices 110-126. In one example, the data set can look like a two-dimensional array, and for each user, the two-dimensional array includes individual rows of user devices assigned to the user. Further, for each row, the data set includes additional details in separate columns, such as a user ID associated with the user, a user device type, the geographic coordinates of the user device, and the date and time of transmission of the geographic coordinates. In one example, the data collection engine 204 can associate an identifier with the user device for storing spatial mobility data. The identifier can be used to identify the user device associated with the user. In one example, the identifier can be a representative of the spatial mobility data with an enterprise ID, a user ID, and a user device type in the data set. Further, the identifier can be a combination of two or more of an enterprise ID, a user ID, and a user device type. In one example, the spatial mobility data received over a period of 90 days can be used to create a data set.

[0031] In one example, the data collection engine 204 can store the spatial movement data of the user devices 110-126 in such a way that there is no redundancy in the spatial movement data to prevent miscalculation of user parameters. For example, if the user devices 110-126 transmit spatial movement data with the same geographic coordinates, the data collection engine 204 can compare the immediately preceding spatial movement data with the subsequently received spatial movement data to determine whether the subsequent spatial movement data is redundant in view of the immediately preceding spatial movement data. The data collection engine 204 can do this to prevent the storage of redundant spatial movement data. Once the data set is created, the user filtering engine 308 can access the data set for further analysis of the data set.

[0032] According to an example, the user filtering engine 308 can access the spatial mobility database 128 to access the data set. The user filtering engine 308 can filter a group of whitelist user devices from the data set based on predefined rules for further analysis. In one example, a predetermined rule can be the minimum number of user devices assigned to a user. For example, the user filtering engine 308 can ignore the spatial mobility data of user devices that are associated with a user with more than five user devices. The rule is applied to remove users with additional spatial mobility data associated therewith, which may affect the evaluation of spatial mobility behavior. There may be such a situation, wherein a user can have multiple user devices associated therewith, and such user devices can be given to the user. In such a case, even when the user is not using the user device, the behavior recognition system 102 can also determine the mobility factor of the user. Such a situation can be prevented by limiting the user based on the number of devices associated with the user.

[0033] Another predetermined rule that the user filtering engine 308 can utilize is that there should be no overlap in the spatial mobility data of user devices with similar attributes assigned to a user. In one example, the attribute can be the same type of user device. There may be a situation in which two or more user devices of the same type are provided to the user. In such a case, the user filtering engine 308 can check whether the spatial mobility data of two similar devices are dissimilar. For example, the user filtering engine 308 can check whether there is overlap in the time period in which the user devices of the same type assigned to the user transmit the geographic coordinates. In the case where the user filtering engine 308 determines that there is overlap in the time period, the user filtering engine 308 can filter out all user devices assigned to the user. Another predetermined rule that the user filtering engine 308 can utilize is that there should be an allowed number of spatial mobility data recorded in the data set. In one example, for each user device, the user filtering engine 308 can check whether the number of spatial mobility data transmitted to the behavior recognition system 102 within a predetermined time period of 30 days is at least ten geographic coordinates. The user filtering engine 308 can check whether an allowed number of spatial mobility data is transmitted and stored in the data set to ensure that sufficient data can be used to determine the parameters. In one example, the user filtering engine 308 may retain user devices that have geographical coordinates recorded within the past 90 days.By utilizing the aforementioned rules, the user filtering engine 308 may generate a collection.

[0034] Subsequently, for the members in the set of user devices, the spatial mobility behavior can be evaluated. In one example, the spatial mobility behavior can be evaluated by determining a mobility factor and assigning the mobility factor to the members in the set of user devices. Therefore, in an example, the parameter determination engine 206 can determine multiple parameters for each member in the set. In one example, the parameter determined by the parameter determination engine 206 is an indication of the spatial mobility behavior of the member. Further, as an example, the parameters determined for the member can include the number of geographic location partitions, the total distance traveled by the user device, the area and perimeter of the zone in which the user has traveled within a predetermined time period.

[0035] According to one example, the parameter determination engine 206 can determine the number of geographic location zones for each member in the set. The geographic location zone can be a set of geographic coordinates within a predetermined radius. Further, the geographic location zone depicts the number of different zones in which the user travels. In one example, the number of different zones can indicate how far the user device has traveled. The parameter determination engine 206 can determine the number of geographic location zones by selecting the first geographic coordinate of the member recorded in the set. Thereafter, the parameter determination engine 206 can determine the first geographic location zone of the predetermined radius, the center of the first geographic location zone being at the first geographic coordinate. In one example, the predetermined radius can be 20 miles, 50 miles, or 100 miles, etc. Once the parameter determination engine 206 has determined the geographic location zone, the parameter determination engine 206 can determine whether the next geographic coordinate is located in the geographic location zone. In one example, the parameter determination engine 206 can measure the distance between the first geographic coordinate and the next geographic coordinate. The parameter determination engine 206 can use the Haversine formula to measure the distance.

[0036] In the illustrated example, the parameter determination engine 206 may measure the distance between each subsequent geographic coordinate and the first geographic coordinate to determine whether the subsequent geographic coordinate is within the first geographic location zone. In the event that the parameter determination engine 206 finds that one of the geographic coordinates is greater than a predetermined radius, the parameter determination engine 206 may use the geographic coordinate as a center to form a second geographic location zone and determine a second geographic location zone having a radius equal to the predetermined radius. Thereafter, the parameter determination engine 206 may check whether the subsequent geographic coordinate is within the first geographic location zone and the second geographic location zone. In the event that the parameter determination engine 206 determines that another geographic coordinate is not within the first or second geographic location zone, the parameter determination engine 206 may use the geographic coordinate to form a third geographic location zone. Further, the parameter determination engine 206 may continue to check whether other geographic coordinates are within any of the formed geographic location zones. Once the parameter determination engine 206 has checked all geographic coordinates, the parameter determination engine 206 may record the number of formed geographic location zones and record the number as a first parameter of a member in the set of user devices in the parameter database 130. Further, the parameter determination engine 206 may perform the same activity for all other members until the number of geographic location zones for all members is recorded. Once the parameter determination engine 206 has determined the first parameter, the parameter determination engine 206 may determine other parameters.

[0037] According to one aspect, the parameter determination engine 206 can determine another parameter that can be called a travel summary. In one example, the parameter determination engine 206 can determine the total distance that the member travels when carried by the user. The parameter determination engine 206 can determine the summary by measuring the distance between two chronologically consecutive geographic coordinates and adding the distance to the distance between two chronologically consecutive geographic coordinates previously determined. In one example, the parameter determination engine 206 can determine the distance between the first geographic coordinate and the next chronological geographic coordinate. For example, the parameter determination engine 206 can use the Haversine formula to determine the distance. Thereafter, the parameter determination engine 206 can determine the distance between the second geographic coordinate and the next chronological geographic coordinate. Once the distance is determined, the parameter determination engine 206 can add the distance to the previously determined distance. Further, the parameter determination engine 206 can perform this operation until the parameter determination engine 206 has added the distances between all chronologically consecutive geographic coordinates. Once the parameter determination engine 206 has determined the total distance, the parameter determination engine 206 can record the total distance as a second parameter. The parameter determination engine 206 may determine the total distance for each member and store it in the parameter database 130 .

[0038] According to one example, the parameter determination engine 206 may further determine another parameter as the longest single trip taken by a member of the set of user devices when carried by the user. In one example, the parameter determination engine 206 may determine the longest distance by comparing the distance between two chronologically consecutive geographic coordinates previously determined. The parameter determination engine 206 may then record the longest single trip as another parameter.

[0039] According to one example, the parameter determination engine 206 can determine another parameter as the number of trips exceeding a predetermined length for each member of the user device set. For example, the predetermined length can be 500 miles or 1000 miles. In the illustrated example, the parameter determination engine 206 can compare all measured distances between chronologically consecutive geographic coordinates and determine the number of distances greater than the predetermined length. Once the parameter determination engine 206 has determined the number of trips exceeding the predetermined length, the parameter determination engine 206 can record the number as a parameter for the members of the user device group. The parameter determination engine 206 can perform the same activity for all members of the user device set.

[0040] According to yet another example, the parameter determination engine 206 can determine other parameters as the area and parameters of the area covering the geographical coordinates of the member when carried by the user. In the illustrated example, the parameter determination engine 206 can determine the area including all geographical coordinates recorded for the members of the user device set. The parameter determination engine 206 can use the convex hull technology to determine the area where the geographical coordinates may be located. In one example, the area can be a polygon covering the geographical coordinates. In addition, the parameter determination engine 206 can also determine the perimeter of the determined area. Once the parameter determination engine 206 records the area and perimeter for a user device, the parameter determination engine 206 can store the area and parameters in the parameter database 130 of the user device. The parameter determination engine 206 can then determine the area and distance of all other members.

[0041] In one example, the determined parameters may be processed by the behavior recognition engine 208 to evaluate the spatial mobility behavior. The behavior recognition engine 208 may utilize machine learning techniques to process the determined parameters for evaluating the spatial mobility behavior. In one example, the behavior recognition engine 208 may evaluate the spatial mobility behavior by comparing the spatial mobility behaviors of different members of the set of user devices. In another example, the behavior recognition engine 208 may evaluate the spatial mobility behavior by assigning mobility factors to the members.

[0042] For example, the behavior recognition engine 208 can process the parameter data set to obtain the mobility factor. In one example, the behavior recognition engine 208 can use different machine learning techniques to obtain the parameter data set. For example, the behavior recognition engine 208 can use machine learning techniques, such as k-means clustering techniques to form clusters of users. In order to evaluate spatial mobility, the behavior recognition engine 208 can determine the cost associated with the user. Further, the cost can be determined using parameters of the members of the user device set.

[0043] Although the current example talks about k-means clustering, the parameters can be processed by other machine learning techniques. In one example, the behavior recognition engine 208 can evaluate the spatial mobility behavior in three steps. In the first step, the behavior recognition engine 208 can form different cluster sets, wherein the members of the user device set can be randomly grouped. Thereafter, in the second step, the behavior recognition engine 208 can determine the cost associated with each cluster. Further, the behavior recognition engine 208 can determine the total cost of each cluster set. Once the cost is determined, the behavior recognition engine 208 can determine the cluster set with the lowest cost associated therewith. Once the cluster set with the lowest total cost is determined, the behavior recognition engine 208 can evaluate the spatial mobility behavior of the members of the user device set in each cluster by performing a comparison between the parameter set of a cluster and the parameter set of other clusters. Further, the comparison between the clusters can provide an indication of the spatial mobility behavior of the members of the user device set in each cluster.

[0044] In one example, the behavior recognition engine 208 can start by forming a random cluster of members of the user device set. For example, the behavior recognition engine 208 can iteratively generate a k value representing the number of clusters to be formed. In one example, the value of k can vary from 2 to 10. In other words, the behavior recognition engine 208 can form clusters ranging from 2 to 10. For example, for the value k=2, the behavior recognition engine 208 can form clusters. Further, for the first cluster, the behavior recognition engine 208 can randomly add members of the user device set in one cluster. Thereafter, the behavior recognition engine 208 can group the remaining number of members of the user device set into the second cluster. Once the cluster is formed, the behavior recognition engine 208 can select the next value k=3, and therefore, the behavior recognition engine 208 can form 3 different clusters. In one example, the behavior recognition engine 208 can randomly add multiple members of the user device set in the first cluster. Further, the behavior recognition engine 208 can add a random number of ungrouped members of the user device set to the second cluster, and finally, the behavior recognition engine 208 can add the remaining members of the user device set to the third cluster. The behavior recognition engine 208 may repeat this operation for each value of k until the value of k becomes ten.

[0045] Once the behavior recognition engine 208 has created the clusters, the behavior recognition engine 208 can calculate the cost factor associated with each cluster and the total cost factor of all clusters for each k value. For example, for the value k-3, the behavior recognition engine 208 can calculate the cost factors of the first, second, and third clusters. In one example, the cost factor of the cluster is calculated by calculating the cost factor of each member of the user device set in the cluster based on the parameters determined for the members of the user device set. Therefore, the behavior recognition engine 208 can calculate the cost factors of all members of the user device set in the cluster, and sum the cost factors of the grouped members of the user device set to determine the cost factor of the first cluster. Once the cost factor of each cluster for the k value is determined, the behavior recognition engine 208 can determine the total cost factor of the cluster for each k value. The behavior recognition engine 208 can repeat this operation until the behavior recognition engine 208 determines the cost factor of each cluster for each k value and the total cost of all clusters. Further, the behavior recognition engine 208 can calculate the total cost of the cluster for each k value as long as it performs the analysis, and temporarily stores the total cost in the mobility factor database 132. Once the total cost for all k values ​​is calculated, the behavior recognition engine 208 can determine the k value for which the total cost is the smallest. In one example, the behavior recognition engine 208 can use an elbow technique to determine the k value for which the total cost is the smallest. The behavior recognition engine 208 can determine such a k value by determining the difference between the total cost factors of two consecutive k values. For example, subtract the total cost for values ​​k=2 and k=3, and check whether the difference is below a predefined threshold. In one example, the predefined threshold can be 100. The behavior recognition engine 208 can keep calculating the difference until the difference is below a predetermined threshold. Once the behavior recognition engine 208 determines that the difference for a k value is below the threshold, the system can select the k value for which the cost factor is the smallest as the value of k. In one example, the determined k value is determined to be k Lower In the illustrated example, k Lower is the number of clusters in which the members of the set of user devices are classified in such a way that the total cost associated with the members of the set of user devices is minimized.

[0046] Once k is determined Lower , the behavior recognition engine 208 can assign mobility factors to each cluster. In other words, the mobility factors are assigned to the members of the set of user devices in each cluster. In one example, the behavior recognition engine 208 can assign mobility factors to clusters in two steps. In the first step, the behavior recognition engine 208 can determine the number of user devices corresponding to k. Lower For example, the behavior recognition engine 208 may determine the main mobility parameters for all clusters of k LowerThe present invention relates to a method for determining a mobility parameter for each cluster of a plurality of user devices. In one example, the mobility parameter may be similar to the type of parameter calculated for the members of the set of user devices. Further, the parameters of all members of the set of user devices in each cluster may be used to determine the mobility parameter by averaging the parameters of the members of the set of user devices. Once the behavior recognition engine 208 has determined the mobility parameters for all clusters, the behavior recognition engine 208 may add the mobility parameters for each cluster to obtain a pre-mobility factor for each cluster. In one example, the pre-mobility factor may be an arithmetic value and may indicate the spatial mobility behavior of the members of the set of user devices in the cluster. Once the sum of the mobility parameters is determined, the behavior recognition engine 208 may sort the pre-mobility factors of the clusters to rank the clusters. For example, the behavior recognition engine 208 may arrange the pre-mobility parameters in ascending order. Further, the sorted pre-mobility factors may represent a comparison of the spatial mobility behaviors of the members of the set of user devices in the cluster.

[0047] Once the pre-mobility factors are ranked, the behavior identification engine 208 can assign a mobility factor to each cluster ranked based on the arithmetic value of the pre-mobility factors. In one example, the mobility factor is a value between 1 and K. Lower For example, the cluster with the lowest pre-mobility factor is assigned a mobility factor of 1, and the cluster with the next higher value is assigned a mobility factor of 2. Further, the behavior identification engine 208 assigns mobility factors to the clusters with a value of K. Lower The cluster with the highest pre-mobility factor is selected. In one example, the assigned mobility factor indicates the spatial mobility behavior of the members of the set of user devices in the cluster. For example, a high mobility factor indicates that the members of the set of user devices are mobile, or in other words, the users carrying the members of the set of user devices travel more. On the other hand, a low mobility factor may indicate that the members of the set of user devices are stationary, or in other words, the users carrying the members of the set of user devices travel less. In one example, the mobility factors may be stored in a mobility factor database 132.

[0048] The mobility factors stored in the mobility factor database 132 can be accessed by the behavior recognition engine 208 to trigger reconfiguration in the user equipment connected to the behavior recognition system 102. In one example, the behavior recognition engine 208 can check the user equipment whose mobility factor is higher than a predetermined threshold. Therefore, the behavior recognition engine 208 can send a trigger to those user equipment so that the user equipment can switch between the first operating state and the second operating state. For example, when the user equipment receives the trigger, it can change the state normal mode to the battery saving mode, or vice versa. By doing so, the user equipment can now operate for a longer duration than before, thereby catering to the work of the user during his / her travel. In another instance, the behavior recognition engine 208 can also send a relay to the data service provider to automatically upgrade the user's data plan so that the user has enough Internet data plan and calls to work.

[0049] In another example, the behavior recognition engine 208 can trigger a reconfiguration in the security settings of the user device based on the mobility factor. In one example, the behavior recognition engine 208 can change the security settings of the user device based on the mobility factor. For example, the behavior recognition engine 208 can send a trigger to a user device with a high mobility factor so that the user device can be reconfigured to impose restrictions on the access to the connection port of the user device. In addition, the user device can be reconfigured to prevent the connection of an unsafe network from being connected to the user device, thereby preventing it. Further, the user device can be reconfigured to enhance the network security system, such as a firewall, to prevent any unwanted access to the user device, or to prevent any data leakage that may occur when the user device is connected to an unsafe network. On the other hand, the behavior recognition engine 208 may not send such a reconfiguration trigger to a user device with a lower mobility factor.

[0050] In yet another example, the behavior recognition engine 208 can also trigger a backup of data stored in the user device based on the mobility factor. In one example, the behavior recognition engine 208 can send a trigger to a user device with a high mobility factor to back up data to an online server. Such a data backup can be performed to protect the data in the user device in the event that the user device is lost or stolen.

[0051] In yet another example, the mobility factor may be used to determine a user device that may need to replace peripherals (such as batteries). In addition, the mobility factor may be used to determine whether the user needs additional peripherals. Further, the mobility factor may be used to assign user devices to users so that the assigned user devices can cater to the needs of the users.

[0052] Figure 4A method 400 for providing a solution to a problem according to an example of the present subject matter is illustrated. The method(s) may be described in the general context of computer executable instructions. Typically, computer executable instructions may include routines, programs, objects, components, data structures, processes, engines, functions, etc., which perform specific functions or utilize specific abstract data types. The method 400 may also be practiced in a distributed computing environment in which functions are performed by remote processing devices linked through a communication network. In a distributed computing environment, computer executable instructions may be located in both local and remote computer storage media, including memory storage devices.

[0053] The order in which method 400 is described is not intended to be construed as limiting, and any number of the described method blocks may be combined in any order to utilize method 400 or an alternative method. In addition, individual blocks may be deleted from the method without departing from the spirit and scope of the subject matter described herein. Further, method 400 may be utilized in any suitable hardware, software, firmware, or combination thereof. Method 400 is explained with reference to behavior recognition system 102, however, the method may also be utilized in other systems.

[0054] Referring to method 400, at block 402, spatial mobility data associated with respective user devices assigned to each of a plurality of users may be received. Once the spatial mobility data is received, method 400 moves to the next block.

[0055] At block 404, spatial mobility behavior of a set of user devices from a plurality of user devices may be evaluated. In one example, the spatial mobility behavior may be evaluated by processing spatial mobility data received from members of the set of user devices. Further, machine learning techniques may be used to process the spatial mobility data.

[0056] At block 406, as shown in reference Figure 3 As explained, based on the evaluated spatial mobility behavior, at least one user equipment may be selected for reconfiguration.Once a user equipment is selected, the method 400 moves to the next block.

[0057] Finally, at block 408, the selected user equipment is reconfigured based on the evaluated spatial mobility behavior. Figure 3 The reconfiguration is performed as explained in the description of .

[0058] Figure 5An example network environment 500 is illustrated for assigning mobility factors using a non-transitory computer-readable medium 502 according to an example of the present subject matter. The network environment 500 can be a public network environment or a private network environment. In one example, the network environment 500 includes a processing resource 504 communicatively coupled to the non-transitory computer-readable medium 502 via a communication link 506.

[0059] For example, processing resource 504 can be a processor of a computing system such as behavior recognition system 102. Non-transitory computer-readable medium 502 can be, for example, an internal memory device or an external memory device. In one example, communication link 506 can be a direct communication link, such as a link formed by a memory read / write interface. In another example, communication link 506 can be an indirect communication link, such as a link formed by a network interface. In such a case, processing resource 504 can access non-transitory computer-readable medium 502 through network 508. Network 508 can be a single network or a combination of multiple networks, and various communication protocols can be used.

[0060] The processing resource 504 and the non-transitory computer readable medium 502 may also be communicatively coupled to a data source 510 via a network 508. The data source 510 may include, for example, a database and a computing device. The data source 510 may be used by database administrators and other users to communicate with the processing resource 504.

[0061] In one example, non-transitory computer readable medium 502 includes a set of computer readable and executable instructions, such as data collection engine 204. The set of computer readable instructions (hereinafter referred to as instructions) can be accessed by processing resource 504 through communication link 506 and subsequently executed to perform actions for network service insertion.

[0062] For the purpose of discussion, reference has been made to the previous references Figure 3 The various components introduced in the description of describe the execution of instructions by processing resource 504.

[0063] When executed by the processing resource 504, the data collection engine 204 can obtain location information of multiple user devices assigned to multiple users. Further, the behavior recognition engine 208 can use machine learning techniques to create multiple clusters of user device sets from the multiple user devices. Once the clusters are formed, the behavior recognition engine 208 can evaluate the spatial mobility behavior of the cluster set from the previously created clusters. In one example, the behavior recognition engine 208 can evaluate the spatial mobility behavior of each cluster by processing the location information of the members of the user device set within the cluster. Further, machine learning techniques can be used to process the location information. Once the location information is processed for each cluster, the behavior recognition engine 208 can assign a mobility factor to each cluster. Finally, the behavior recognition engine 208 can select at least one cluster in order to reconfigure the user devices in the cluster. In one example, the behavior recognition engine 208 can select a cluster based on the assigned mobility factors, as shown in reference Figure 3 Once selected, the behavior recognition engine 208 can refer to Figure 3 Reconfigure user devices in a cluster in an explained manner.

[0064] Although aspects of the method and system for solving a problem have been described in language specific to structural features and / or methods, the present invention is not necessarily limited to the specific features or methods described. Rather, the specific features and methods are disclosed as examples for assigning mobility factors.

Claims

1. A method for evaluating spatial movement behavior, comprising: receiving spatial movement data associated with a single user device from among a plurality of user devices assigned to a plurality of users; evaluating spatial mobility behavior of a set of user devices from the plurality of user devices by processing spatial mobility data received from members of the set of user devices using machine learning techniques, wherein the spatial mobility behavior is evaluated by forming a number of different sets of clusters of members of the user devices and determining a cost associated with each cluster based on the members in the clusters; assigning a mobility factor to each cluster based on the determined cost, wherein the mobility factor is a numerical indication of spatial mobility behavior of user equipment within the cluster; Selecting a user equipment from the set of user equipment based on the spatial mobility behavior; and The selected user equipment is reconfigured based on the evaluated spatial mobility behavior. 2 . The method according to claim 1 , further comprising filtering the set of user devices from the plurality of user devices based on a predefined rule.

3. The method according to claim 2 further comprises determining a plurality of parameters for the user equipment in the set of user equipment based on the spatial movement data of the user equipment in the set, wherein the plurality of parameters indicate the spatial movement behavior of the user equipment.

4. The method according to claim 2, wherein the predefined rules include a predefined number of user devices associated with the user, user devices sharing similar attributes, spatial mobility data collected from the user devices within a predetermined time period, overlap of spatial mobility data from user devices sharing similar attributes assigned to the user, and at least one of a combination thereof. 5 . The method of claim 1 , wherein the reconfiguring comprises changing an operating mode of the selected user equipment between a first operating mode and a second operating mode based on the evaluating.

6. The method of claim 1, wherein the evaluating comprises using k-means clustering to create a plurality of clusters of user devices in the set, assigning mobility factors to members of the plurality of clusters, and ranking the plurality of clusters based on the assigned mobility factors.

7. The method of claim 3, wherein the plurality of parameters include the number of geographic location zones, the total distance traveled by the user within a predetermined time period, and the areas and perimeters that a single user device has traveled within a predetermined time period.

8. A behavior recognition system, comprising: a data collection engine for receiving location information from members of a plurality of user devices assigned to a plurality of users at predetermined intervals, wherein the location information includes spatial movement data and a transmission timestamp of the spatial movement data; and a parameter determination engine for determining a plurality of parameters of a set of user devices from the plurality of user devices based on spatial movement data of the members of the set of user devices, wherein the plurality of parameters indicate spatial movement behaviors of the members of the set of user devices; and Behavior recognition engine for: evaluating spatial mobility behavior by forming a number of different sets of clusters of user device members and determining a cost associated with each cluster based on the membership in the clusters; assigning a mobility factor to each cluster based on the determined cost, wherein the mobility factor is a numerical indication of spatial mobility behavior of user equipment within the cluster; At least one user equipment is identified from the set of user equipment for reconfiguration, and the at least one user equipment is reconfigured based on a mobility factor assigned to the at least one user equipment.

9. The behavior recognition system according to claim 8 further comprises a user filtering engine, wherein the user filtering engine is used to filter out the user device set from the multiple user devices based on predefined rules.

10. The behavior recognition system of claim 8, wherein the behavior recognition engine is used to reconfigure the at least one user equipment by changing an operation mode between a first operation mode and a second operation mode based on the assigned mobility factor.

11. A behavior recognition system according to claim 9, wherein the predefined rules include a predefined number of user devices associated with the user, user devices sharing similar attributes, spatial mobility data collected from the user devices within a predetermined time period, overlap of spatial mobility data from user devices sharing similar attributes assigned to the user, and at least one of their combinations.

12. The behavior recognition system according to claim 8, wherein the plurality of parameters include the number of geographic location zones, the total distance traveled by the user, and the areas and perimeters traveled by a single user device within a predetermined time period.

13. The behavior recognition system according to claim 8, wherein the behavior recognition engine creates a plurality of user device clusters in the user device set for assigning mobility factors based on machine learning technology.

14. A non-transitory computer-readable medium comprising computer-readable instructions for providing a ranking to a plurality of users, the computer-readable instructions, when executed by a processing resource, causing the processing resource to: obtaining location information from a plurality of user devices assigned to a plurality of users, wherein the location information includes spatial movement data; evaluating spatial mobility behavior of a set of user devices from the plurality of user devices by processing location information of members of the set of user devices based on a machine learning technique, wherein the spatial mobility behavior is evaluated by forming a number of different sets of clusters of the members of the user devices and determining a cost associated with each cluster based on the members in the clusters; determining and assigning a mobility factor for each cluster based on the determined cost, wherein the assigned mobility factor is a numerical indication of spatial mobility behavior of user equipment within the cluster; and At least one cluster is identified for reconfiguration, and user equipment in the identified at least one cluster is reconfigured based on a mobility factor assigned to the at least one cluster.

15. The non-transitory computer-readable medium of claim 14, wherein the non-transitory computer-readable medium comprises further instructions for filtering the set of user devices from the plurality of user devices based on predefined rules to obtain a set of user devices, wherein the predefined rules comprise at least one of a predefined number of user devices associated with a user, user devices sharing similar attributes, spatial mobility data collected from user devices within a predetermined time period, overlap of spatial mobility data from user devices sharing similar attributes assigned to a user, and a combination thereof.

Citation Information

Patent Citations

  • General setting method and system for mobile equipment

    CN104104729A

  • Information determination in a portable electronic device carried by a user

    KR1020150129285A

  • Method, system and computer program for detecting and monitoring human activity utilizing location data

    US20080125959A1

  • Analyzing and viewing social interactions based on personal electronic devices

    US20170052968A1

  • Rule based mobile device management delegation

    US20170230248A1