Abstract: Demographic data analysis is vital to an individual or organization to understand about opportunities and threats associated with locations before starting a new trade. However accurate computing of demographic data associated with a location is a challenge. In the present disclosure, an area of interest in segmented into a set of square grids. Further, a set of center points associated with the set of square grids are selected based on a distance. Further, the demographic data associated with each selected square grid is computed based on a harmonic average distance, a weight associated with each center point and a demographic variable. Further, the demographic data associated with each center point is summed up to obtain the demographic data associated with a location.
Claims:1. A processor implemented method for grid based computing of demographic data in a location, the method comprising:
receiving, by a one or more hardware processors, a location comprising a point of interest, a radius, a latitude value, a longitude value and a plurality of geographic units, wherein the radius associated with the area of interest is dynamically computed based on the type of trade, wherein each geographic unit is associated with a geographic boundary and a population centroid;
dynamically computing, by the one or more hardware processors, a square area surrounding the point of interest, wherein each side of the square area is equal to the radius associated with the area of interest;
segmenting, by the one or more hardware processors, the square area into a plurality of square grids to obtain a set of square grids, wherein each square grid from the set of square grids is associated with a center point equidistant from the center point associated with an adjacent square grid;
dynamically selecting, by the one or more hardware processors, a set of center points from the set of square grids based on a distance between each center point associated with the square grids from the set of square grids and the point of interest;
computing, by the one or more hardware processors, a weight associated with each center point by utilizing type of trade and a degree of decay associated with each center point from the point of interest;
computing, by the one or more hardware processors, a demographic data associated with each center point from the set of center points by utilizing a harmonic average distance associated with each center point from the population centroid of the corresponding geographic unit, the weight associated with each center point and a geographic variable associated with the corresponding geographic unit; and
computing, by the one or more hardware processors, the demographic data associated with the location by summing up the demographic data associated with each center point from the set of center points.
2. The method as claimed in claim 1, wherein the demographic data comprises a selective population, wherein the selective population comprises household income, gender, percentage of age distribution, income group, educational background, religion and marital status.
3. The method as claimed in claim 1, wherein computing the demographic data associated with each center point from the set of center points by utilizing a harmonic average distance associated with each center point from the population centroid of the corresponding geographic unit, the weight associated with each center point and the geographic variable associated with the corresponding geographic unit further comprising:
computing the harmonic average distance between the population centroid associated with the corresponding geographic unit and each center point from the set of center points associated with the corresponding geographic unit;
computing the geographic variable based on a number of center points associated with the geographic unit and the distance from the population centroid of the corresponding geographic unit to the corresponding center point; and
computing the demographic data associated with each center point from the set of center points by utilizing the harmonic average distance associated with center point, the weight associated with each center point and the geographic variable associated with the corresponding geographic unit.
4. The method as claimed in claim 1, wherein the distance between the center point and the point of interest is one of a) less than the radius associated with the area of interest and b) equal to the radius associated with the area of interest.
5. The method as claimed in claim 1, wherein the degree of decay associated with each square grid from the set of square grids is calculated based on the distance between the center point associated with each square grid and the point of interest.
6. A system for grid based computing of demographic data in a location, the system comprising:
one or more memories comprising programmed instructions and a repository for storing a set of data associated with the location;
one or more hardware processors operatively coupled to the one or more memories, wherein the one or more hardware processors are capable of executing the programmed instructions stored in the one or more memories; and
a demographic data analysis unit, wherein the demographic data analysis unit is configured to:
receive, a location comprising a point of interest, a radius, a latitude value, a longitude value and a plurality of geographic units, wherein the radius associated with the area of interest is dynamically computed based on the type of trade, wherein each geographic unit is associated with a geographic boundary and a population centroid;
dynamically compute, a square area surrounding the point of interest, wherein each side of the square area is equal to the radius associated with the area of interest;
segment, the square area into a plurality of square grids to obtain a set of square grids, wherein each square grid from the set of square grids is associated with a center point equidistant from the center point associated with an adjacent square grid;
dynamically select, a set of center points from the set of square grids based on a distance between each center point associated with the square grids from the set of square grids and the point of interest;
compute, a weight associated with each center point by utilizing type of trade and a degree of decay associated with each center point from the point of interest;
compute, a demographic data associated with each center point from the set of center points by utilizing a harmonic average distance associated with each center point from the population centroid of the corresponding geographic unit, the weight associated with each center point and a geographic variable associated with the corresponding geographic unit; and
compute, the demographic data associated with the location by summing up the demographic data associated with each center point from the set of center points.
7. The system as claimed in claim 6, wherein the demographic data comprises a selective population, wherein the selective population comprises household income, gender, percentage of age distribution, income group, educational background, religion and marital status.
8. The system as claimed in claim 6, wherein the demographic data analysis unit is configured to computing the demographic data associated with each center point from the set of center points by utilizing a harmonic average distance associated with each center point from the population centroid of the corresponding geographic unit, the weight associated with each center point and the geographic variable associated with the corresponding geographic unit by:
computing the harmonic average distance between the population centroid associated with the corresponding geographic unit and each center point from the set of center points associated with the corresponding geographic unit;
computing the geographic variable based on a number of center points associated with the geographic unit and the distance from the population centroid of the corresponding geographic unit to the corresponding center point; and
computing the demographic data associated with each center point from the set of center points by utilizing the harmonic average distance associated with center point, the weight associated with each center point and the geographic variable associated with the corresponding geographic unit.
9. The system as claimed in claim 6, wherein the distance between the center point and the point of interest is one of a) less than the radius associated with the area of interest and b) equal to the radius associated with the area of interest.
10. The system as claimed in claim 6, wherein the degree of decay associated with each square grid from the set of square grids is calculated based on the distance between the center point associated with each square grid and the point of interest.
, Description:FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See Section 10 and Rule 13)
Title of invention:
SYSTEM AND METHOD FOR GRID BASED COMPUTING OF DEMOGRAPHIC DATA ASSOCIATED WITH LOCATIONS
Applicant:
Tata Consultancy Services Limited
A company Incorporated in India under the Companies Act, 1956
Having address:
Nirmal Building, 9th Floor,
Nariman Point, Mumbai 400021,
Maharashtra, India
The following specification particularly describes the invention and the manner in which it is to be performed.
TECHNICAL FIELD
The embodiments herein generally relates, in general, to data analysis and, in particular, to a system and method for grid based computing of demographic data associated with locations.
BACKGROUND
Demographic data analysis is a technique to analyze and understand a demographic data associated with a location. For example, the demographic data includes, distribution of age groups, income levels, educational backgrounds, religion, marital status and the like. The demographic data is vital to an individual or organization to understand about opportunities and threats associated with locations before starting a new trade. For example, the individual or organization may analyze a number of bachelors with middle to higher income group residing in the location before starting a new restaurant. Similarly, the individual or organization may analyze a number of medium size families with at least one non-working member, residing in the location before starting a grocery store and an ice-cream seller may analyze center of gravity of nearby school, where maximum school students may consume ice cream.
Conventional methods for demographic data analysis utilizes “Centroid Inclusion” for demographic data analysis. Here, the demography associated with a smaller geographic unit is considered with full weightage when a centroid associated with the smaller geographic unit with a distance from a location of interest less than or equal to the radius provided by a user. Here, the geographic unis is a statistical unit utilized during statistical data analysis. However there is a challenge in computing the demographic data associated with the smaller geographic location for two reasons. Firstly, inclusion of the geographic area for demographic data analysis occurs, just because the population centroid associated with the geographic unit is under the selected circular area even though a large part of the geographic unit falls outside the selected circular area. Secondly, rejection of the geographic area for demographic data analysis occurs, just because the centroid associated with the geographic unit falls out the selected circular area.
SUMMARY
Embodiments of the present disclosure present technological improvements as solutions to one or more of the above-mentioned technical problems recognized by the inventors in conventional systems. For example, in one embodiment, a method for grid based computing of demographic data associated with locations is provided. The method includes receiving, a location comprising a point of interest, a radius, a latitude value, a longitude value and a plurality of geographic units, wherein the radius associated with the area of interest is dynamically computed based on the type of trade, wherein each geographic unit is associated with a geographic boundary and a population centroid, by the one or more hardware processors. Further, the method includes dynamically computing, a square area surrounding the point of interest, wherein each side of the square area is equal to the radius associated with the area of interest, by the one or more hardware processors. Furthermore, the method includes segmenting, the square area into a plurality of square grids to obtain a set of square grids, wherein each square grid from the set of square grids is associated with a center point equidistant from the center point associated with an adjacent square grid, by the one or more hardware processors. Furthermore, the method includes dynamically selecting, a set of center points from the set of square grids based on a distance between each center point associated with the square grids from the set of square grids and the point of interest, by the one or more hardware processors. Furthermore, the method includes computing, a weight associated with each center point by utilizing type of trade and a degree of decay associated with each center point from the point of interest, by the one or more hardware processors. Furthermore, the method includes computing, a demographic data associated with each center point from the set of center points by utilizing a harmonic average distance associated with each center point from the population centroid of the corresponding geographic unit, the weight associated with each center point and a geographic variable associated with the corresponding geographic unit, by the one or more hardware processors. Furthermore, the method includes computing, the demographic data associated with the location by summing up the demographic data associated with each center point from the set of center points, by the one or more hardware processors.
In another aspect, a system for grid based computing of demographic data associated with locations is provided. The system includes one or more memories comprising programmed instructions and a repository for storing a set of data associated with the location , one or more hardware processors operatively coupled to the one or more memories, wherein the one or more hardware processors are capable of executing the programmed instructions stored in the one or more memories, a demographic data analysis unit, wherein the demographic analysis unit is configured to receive, a location comprising a point of interest, a radius, a latitude value, a longitude value and a plurality of geographic units, wherein the radius associated with the area of interest is dynamically computed based on the type of trade, wherein each geographic unit is associated with a geographic boundary and a population centroid. Further, the demographic data analysis unit is configured to dynamically compute, a square area surrounding the point of interest, wherein each side of the square area is equal to the radius associated with the area of interest. Furthermore the demographic data analysis unit is configured to segment, the square area into a plurality of square grids to obtain a set of square grids, wherein each square grid from the set of square grids is associated with a center point equidistant from the center point associated with an adjacent square grid. Furthermore, the demographic data analysis unit is configured to dynamically select, a set of center points from the set of square grids based on a distance between each center point associated with the square grids from the set of square grids and the point of interest. Furthermore, the demographic data analysis unit is configured to compute, a weight associated with each center point by utilizing type of trade and a degree of decay associated with each center point from the point of interest. Furthermore, the demographic data analysis unit is configured to compute, a demographic data associated with each center point from the set of center points by utilizing a harmonic average distance associated with each center point from the population centroid of the corresponding geographic unit, the weight associated with each center point and a geographic variable associated with the corresponding geographic unit. Finally, the demographic data unit is configured to compute, the demographic data associated with the location by summing up the demographic data associated with each center point from the set of center points.
In yet another aspect, a computer program product comprising a non-transitory computer-readable medium having embodied therein a computer program for system and method for grid based computing of demographic data associated with locations, is provided. The computer readable program, when executed on a computing device, causes the computing device to receive, a location comprising a point of interest, a radius, a latitude value, a longitude value and a plurality of geographic units, wherein the radius associated with the area of interest is dynamically computed based on the type of trade, wherein each geographic unit is associated with a geographic boundary and a population centroid. Further, the computer readable program, when executed on a computing device, causes the computing device to dynamically compute, a square area surrounding the point of interest, wherein each side of the square area is equal to the radius associated with the area of interest. Furthermore, the computer readable program, when executed on a computing device, causes the computing device to segment, the square area into a plurality of square grids to obtain a set of square grids, wherein each square grid from the set of square grids is associated with a center point equidistant from the center point associated with an adjacent square grid. Furthermore, the computer readable program, when executed on a computing device, causes the computing device to dynamically select, a set of center points from the set of square grids based on a distance between each center point associated with the square grids from the set of square grids and the point of interest. Furthermore, the computer readable program, when executed on a computing device, causes the computing device to compute, a weight associated with each center point by utilizing type of trade and a degree of decay associated with each center point from the point of interest. Furthermore, the computer readable program, when executed on a computing device, causes the computing device to compute, a demographic data associated with each center point from the set of center points by utilizing a harmonic average distance associated with each center point from the population centroid of the corresponding geographic unit, the weight associated with each center point and a geographic variable associated with the corresponding geographic unit. Furthermore, the computer readable program, when executed on a computing device, causes the computing device to compute, the demographic data associated with the location by summing up the demographic data associated with each center point from the set of center points.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles:
FIG. 1 illustrates a network environment implementing a system and method for grid based computing of demographic data associated with locations, according to some embodiments of the present disclosure;
FIG. 2 illustrates a block diagram of the system for grid based computing of demographic data associated with locations, according to some embodiments of the present disclosure;
FIG. 3A depicts some example illustration of a point of interest, a plurality of geographical units and a population centroid associated with each geographical unit, according to some embodiments of the present disclosure;
FIG. 3B depicts an example illustration of a square area surrounding the point of interest, according to some embodiments of the present disclosure;
FIG. 3C depicts an example illustration of a plurality of square grids surrounding the point of interest, according to some embodiments of the present disclosure;
FIG. 3D depicts an example illustration of a circular area surrounding the point of interest, according to some embodiments of the present disclosure;
FIG. 4 illustrates a flow diagram for grid based computing of demographic data associated with locations, according to some embodiments of the present disclosure; and
FIG. 5 depicts a flow diagram for computing a demographic data associated with each center point from a set of center points, according to some embodiments of the present disclosure.
It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative systems and devices embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, and the like represent various processes which may be substantially represented in computer readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.
DETAILED DESCRIPTION OF EMBODIMENTS
Exemplary embodiments are described with reference to the accompanying drawings. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. Wherever convenient, the same reference numbers are used throughout the drawings to refer to the same or like parts. While examples and features of disclosed principles are described herein, modifications, adaptations, and other implementations are possible without departing from the spirit and scope of the disclosed embodiments. It is intended that the following detailed description be considered as exemplary only, with the true scope and spirit being indicated by the following claims.
The present subject matter overcomes the limitations of the conventional demographic calculation methods by utilizing a grid based computation of demographic data associated with locations based on a harmonic average, a demographic variable and a decay degree. An implementation of the system and method for grid based computation of demographic data associated with locations is described further in detail with reference to FIGS. 1 through 5.
Referring now to the drawings, and more particularly to FIGS. 1 through 5, where similar reference characters denote corresponding features consistently throughout the figures, there are shown preferred embodiments and these embodiments are described in the context of the following exemplary system and/or method.
FIG. 1 illustrates a network environment 100 implementing a system 102 for grid based computation of demographic data associated with locations, according to an example embodiment of the present subject matter. The system for grid based computation of demographic data associated with locations 102, hereinafter referred to as the system 102, is configured for receiving a location comprising a point of interest, a radius, a latitude value, a longitude value and a plurality of geographic units.
Although the present disclosure is explained considering that the system 102 is implemented on a server, it may be understood that the system 102 may also be implemented in a variety of computing systems, such as a laptop computer, a desktop computer, a notebook, a workstation, a cloud-based computing environment and the like. In one implementation, the system 102 may be implemented in a cloud-based environment. It will be understood that the system 102 may be accessed by multiple users through one or more user devices 106-1, 106-2... 106-N, collectively referred to as user devices 106 hereinafter, or applications residing on the user devices 106. Examples of the user devices 106 may include, but are not limited to, a portable computer, a personal digital assistant, a handheld device, a Smartphone, a Tablet Computer, a workstation and the like. The user devices 106 are communicatively coupled to the system 102 through a network 108.
In an embodiment, the network 108 may be a wireless or a wired network, or a combination thereof. In an example, the network 108 can be implemented as a computer network, as one of the different types of networks, such as virtual private network (VPN), intranet, local area network (LAN), wide area network (WAN), the internet, and such. The network 108 may either be a dedicated network or a shared network, which represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), and Wireless Application Protocol (WAP), to communicate with each other. Further, the network 108 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices. The network devices within the network 108 may interact with the system 102 through communication links.
As discussed above, the system 102 may be implemented in a computing device 104, such as a hand-held device, a laptop or other portable computer, a tablet computer, a mobile phone, a PDA, a smartphone, and a desktop computer. The system 102 may also be implemented in a workstation, a mainframe computer, a server, and a network server. In an embodiment, the system 102 may be coupled to a data repository, for example, a repository 112. The repository 112 may store data processed, received, and generated by the system 102. In an alternate embodiment, the system 102 may include the data repository 112. The components and functionalities of the system 102 are described further in detail with reference to FIG. 2.
FIG. 2 illustrates a block diagram of the system for grid based computation of demographic data, according to some embodiments of the present disclosure. The system for grid based computation of demographic data 200 (hereinafter referred to as system 200) may be an example of the system 102 (FIG. 1). In an example embodiment, the system 200 may be embodied in, or is in direct communication with the system, for example the system 102 (FIG. 1). The system 200 includes or is otherwise in communication with one or more hardware processors such as a processor 202, at least one memory such as a memory 204, an I/O interface 206 and a demographic data analysis unit 250. In an embodiment, the demographic data analysis unit 250 can be implemented as a standalone unit in the system 200 comprising a square area computing module (not shown in FIG. 2), a segmentation module (not shown in FIG. 2), a center point selection module (not shown in FIG. 2) and a demographic data computing module (not shown in FIG. 2). In another embodiment, the demographic data analysis unit 250 can be implemented as a module in the memory 204 comprising the square area computing module (not shown in FIG. 2), the segmentation module (not shown in FIG. 2), the center point selection module (not shown in FIG. 2) and the demographic data computing module (not shown in FIG. 2). The processor 202, memory 204, and the I/O interface 206 may be coupled by a system bus such as a system bus 208 or a similar mechanism.
The I/O interface 206 may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. The interfaces 206 may include a variety of software and hardware interfaces, for example, interfaces for peripheral device(s), such as a keyboard, a mouse, an external memory, a camera device, and a printer. Further, the interfaces 206 may enable the system 102 to communicate with other devices, such as web servers and external databases. The interfaces 206 can facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, local area network (LAN), cable, etc., and wireless networks, such as Wireless LAN (WLAN), cellular, or satellite. For the purpose, the interfaces 206 may include one or more ports for connecting a number of computing systems with one another or to another server computer. The I/O interface 206 may include one or more ports for connecting a number of devices to one another or to another server.
The hardware processor 202 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the hardware processor 202 is configured to fetch and execute computer-readable instructions stored in the memory 204.
The memory 204 may include any computer-readable medium known in the art 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 memories, hard disks, optical disks, and magnetic tapes. In an embodiment, the memory 204 includes a plurality of modules 220 and a repository 240 for storing data processed, received, and generated by one or more of the modules 220 and the demographic analysis unit 250. The modules 220 may include routines, programs, objects, components, data structures, and so on, which perform particular tasks or implement particular abstract data types.
The memory 204 also includes module(s) 220 and a data repository 240. The module(s) 220 include programs or coded instructions that supplement applications or functions performed by the system 200 for grid based computation of demographic data. The modules 220, amongst other things, can include routines, programs, objects, components, and data structures, which perform particular tasks or implement particular abstract data types. The modules 220 may also be used as, signal processor(s), state machine(s), logic circuitries, and/or any other device or component that manipulates signals based on operational instructions. Further, the modules 220 can be used by hardware, by computer-readable instructions executed by a processing unit, or by a combination thereof. The modules 220 can include various sub-modules (not shown). The modules 220 may include computer-readable instructions that supplement applications or functions performed by the system 200 for grid based computation of demographic data associated with locations.
The data repository 240 may include received input data 242, a demographic database 244, a geographic database 246 and other data 248. Further, the other data 248 amongst other things, may serve as a repository for storing data that is processed, received, or generated as a result of the execution of one or more modules in the module(s) 220 and the modules associated with the demographic data analysis unit 250. The repository 240 is further configured to maintain a plurality of parameters associated with the input data stored in the data repository 240.
Although the data repository 240 is shown internal to the system 200 for grid based computation of demographic data associated with locations, it will be noted that, in alternate embodiments, the data repository 240 can also be implemented external to the system 200 for grid based computation of demographic data associated with locations, where the data repository 240 may be stored within a database (not shown in FIG. 2) communicatively coupled to the system 200 for grid based computation of demographic data associated with locations. The data contained within such external database may be periodically updated. For example, new data may be added into the database (not shown in FIG. 2) and/or existing data may be modified and/or non-useful data may be deleted from the database (not shown in FIG. 2). In one example, the data may be stored in an external system, such as a Lightweight Directory Access Protocol (LDAP) directory and a Relational Database Management System (RDBMS). In another embodiment, the data stored in the data repository 240 may be distributed between the compliance system 200 for grid based computation of demographic data associated with locations and the external database.
The demographic data analysis unit 250 of the system 200 for grid based computation of demographic data associated with locations can be configured to receive the location comprising a point of interest, the radius, the latitude value, the longitude value and the plurality of geographic units, wherein the radius associated with the area of interest is dynamically computed based on the type of trade, wherein each geographic unit is associated with a geographic boundary and a population centroid. For example, the radius can be more for hospitals, the radius can be average for convenient stores and the radius can be less for small stores. FIG. 3A depicts some example illustration of the point of interest, the plurality of geographical units and the population centroid associated with each geographical unit, according to some embodiments of the present disclosure. Now referring to FIG. 3A, in an embodiment, a point 302 is the point of interest, a point 304 is the population centroid associated with a first geographic unit, a point 306 is the population centroid associated with a second geographic unit, a point 308 is the population centroid associated with a third geographic unit and a point 310 is the population centroid associated with a fourth geographic unit.
Further, demographic data analysis unit 250 of the system 200 for grid based computation of demographic data associated with locations can be further configured to dynamically compute, a square area surrounding the point of interest, wherein each side of the square area is equal to the radius associated with the area of interest. FIG. 3B depicts an example illustration of the square area surrounding the point of interest, according to some embodiments of the present disclosure. Now referring to FIG. 3B, the square area 312 is computed around the point of interest 302. Here, each side of the square is equal to the radius associated with the area of interest.
Further, demographic data analysis unit 250 of the system 200 for grid based computation of demographic data associated with locations can be configured to segment, the square area into a plurality of square grids to obtain a set of square grids, wherein each square grid from the set of square grids is associated with a center point equidistant from the center point associated with an adjacent square grid. FIG. 3C depicts an example illustration of a plurality of square grids surrounding the point of interest, according to some embodiments of the present disclosure. Now referring to FIG. 3C, the square area 312 is segmented into the plurality of square grids and 314 is a sample square grid.
Further, demographic data analysis unit 250 of the system 200 for grid based computation of demographic data associated with locations can be configured to dynamically select, a set of center points from the set of square grids based on a distance between each center point associated with each square grids from the set of square grids and the point of interest. FIG. 3D depicts an example illustration of a circular area surrounding the point of interest, according to some embodiments of the present disclosure. Now referring to FIG. 3D, the set of center points selected from the set of square grids are bounded inside a circle 316.
Further, demographic data analysis unit 250 of the system 200 for grid based computation of demographic data associated with locations can be configured to compute, a weight associated with each center point by utilizing the demographic data corresponding to each center point, and a degree of decay associated with each center point from the point of interest. Here, the degree of decay is associated with the type of trade. For example, the degree of decay may be small for a grocery store and the degree of decay may be high for a convenient store. Similarly, the degree of decay associated with a bookstore may be very less and the decay rate associated with a hospital may nil until another hospital is closer. Here, the weight associated with each center point P_r is s shown in equation 1. Here, r is the distance from the center of the circle and n is the degree of decay (decay rate) and i is the ith center point and r_i is the distance of ith center point from the point of interest. For brevity of description, the degree of decay and the decay rate can be alternatively used throughout the description. A default value for n is considered as 1 and the value of n can be determined as per the type of trade. Generally, the decay rate is between 0.5 to 2.
P_r = (1/r^n )/(?¦1/(r_i^n )) ………………………………………………. (1)
Further the demographic data analysis unit 250 of the system 200 for grid based computation of demographic data associated with locations can be configured to compute, a demographic data associated with each center point from the set of center points by utilizing a harmonic average distance associated with each center point from the population centroid of the corresponding geographic unit, the weight associated with each center point and a geographic variable associated with the corresponding geographic unit. Here, the set of demographic data comprises a selective population, wherein the selective population includes household income, gender, percentage of age distribution, income group, educational background, religion, and marital status. The harmonic average distance P_h associated with each center point is calculated by utilizing equation 2. Here, d_i is the distance of the ith center point from the population centroid of the corresponding geographic unit. Here, n_p as given in equation 2A is the number of center points in the corresponding geographic unit and 1/d_p is the harmonic average distance of any point from the population centroid of the geographic unit.
P_h=(1/(d_i^n ))/(n_p/d_p ) ………………………………………………… (2).
n_p= A_g/s ……………………………………………………. (2A)
where, A_g is the area associated with the geographic unit and s is the area associated with each square grid. Here, if the center point falls on the population centroid of the corresponding geographic unit, the distance associated with a nearest center point falling out of the square grid area is utilized and half of the distance associated with the nearest point is used for distance calculation. For example, if the distance associated with the nearest center point is d_i^n, then the equation 2 can be replaced by equation 3.
P_h=(2/(d_i^n ))/(n_p/d_p ) ………………………………………………… (3).
Further, the formula to calculate the demographic data associated with each center point from the set of center points is as given in equation 4. Here, P_i is the demographic data associated with the ith center point, P_g is the demographic data associated with the geographic unit g and P is the demographic variable and the demographic variable P is given in equation 5. Here, P_ri is the weight associated with the ith location.
P_i=P_h* P_g ………………………………………………………………… (4)
P= ?¦?P_ri* P_i ?……………………………………………………………… (5)
Further, demographic data analysis unit 250 of the system 200 for grid based computation of demographic data can be configured to compute the demographic data associated with the location by summing up the weighted demographic data associated with each center point from the set of center points.
FIG. 4 illustrates a flow diagram of a method 400 for the grid based computation of demographic data associated with locations, according to some embodiments of the present disclosure. The method 400 may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, functions, etc., that perform particular functions or implement particular abstract data types. The method 400 may also be practiced in a distributed computing environment where functions are performed by remote processing devices that are linked through a communication network. The order in which the method 400 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 400, or an alternative method. Furthermore, the method 400 can be implemented in any suitable hardware, software, firmware, or combination thereof.
At 402, the system 200 receives, by the one or more hardware processors, the location comprising the point of interest, the radius, the latitude value, the longitude value and the plurality of geographic units, wherein the radius associated with the area of interest is dynamically computed based on the type of trade, wherein each geographic unit is associated with a geographic boundary and a population centroid. At 404, the system 200 dynamically computes, by the one or more hardware processors, the square area surrounding the point of interest, wherein each side of the square area is equal to the radius associated with the area of interest. At 406, the system 200 segments, by the one or more hardware processors, the square area into a plurality of square grids to obtain the set of square grids, wherein each square grid from the set of square grids is associated with the center point equidistant from the center point associated with the adjacent square grid. At 408, the system 200 dynamically selects, by the one or more hardware processors, the set of center points from the set of square grids based on the distance between each center point associated with the square grids from the set of square grids and the point of interest, wherein the distance between the center point and the point of interest is one of a) less than the radius associated with the area of interest and b) equal to the radius associated with the area of interest. At 410, the system 200 computes, by the one or more hardware processors, the weight associated with each center point by utilizing the type of trade and the degree of decay associated with each center point from the point of interest, wherein the decay increases with the distance. Here, the degree of decay associated with each square grid from the set of optimal square grids is calculated based on the distance between the center point associated with each square grid and the point of interest. At 412, the system 200 computes, by the one or more hardware processors, the demographic data associated with each center point from the set of center points by utilizing a harmonic average distance associated with each center point from the population centroid of the corresponding geographic unit, the weight associated with each center point and a geographic variable associated with the corresponding geographic unit. At 414, the system 200 computes, by the one or more hardware processors, the demographic data associated with the location by summing up the demographic data associated with each center point from the set of center points.
FIG. 5 depicts a flow diagram for computing the demographic data associated with each center point from the set of center points, according to some embodiments of the present disclosure. At 502, the system 200 computes, the harmonic average distance between the population centroid associated with the corresponding geographic unit and each center point from the set of center points associated with the corresponding geographic unit. At 504, the system 200 computes the geographic variable based on a number of center points associated with the geographic unit and the distance from the population centroid of the corresponding geographic unit to the corresponding center point. At 506, the system 200 computes the demographic data associated with each center point from the set of center points by utilizing the harmonic average distance associated with center point, the weight associated with each center point and the geographic variable associated with the corresponding geographic unit.
The written description describes the subject matter herein to enable any person skilled in the art to make and use the embodiments. The scope of the subject matter embodiments is defined by the claims and may include other modifications that occur to those skilled in the art. Such other modifications are intended to be within the scope of the claims if they have similar elements that do not differ from the literal language of the claims or if they include equivalent elements with insubstantial differences from the literal language of the claims.
Various embodiments of disclosed methods and system for the grid based computation of demographic data associated with locations are able to provide an end-to-end solution for grid based dynamic demographic data computation. Here, since the area of interest is segmented into the set of square grids and the demographic data is computed based on the set of square grids, over estimation and under estimation of the demographic data is avoided. Further, the dynamic computation of the radius associated with the area of interest, dynamic computation of the square area around the area of interest and the computation of weighted demographic data increased the accuracy of the system 200.
It is, however to be understood that the scope of the protection is extended to such a program and in addition to a computer-readable means having a message therein; such computer-readable storage means contain program-code means for implementation of one or more steps of the method, when the program runs on a server or mobile device or any suitable programmable device. The hardware device can be any kind of device which can be programmed including e.g. any kind of computer like a server or a personal computer, or the like, or any combination thereof. The device may also include means which could be e.g. hardware means like e.g. an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a combination of hardware and software means, e.g. an ASIC and an FPGA, or at least one microprocessor and at least one memory with software modules located therein. Thus, the means can include both hardware means and software means. The method embodiments described herein could be implemented in hardware and software. The device may also include software means. Alternatively, the embodiments may be implemented on different hardware devices, e.g. using a plurality of CPUs.
The embodiments herein can comprise hardware and software elements. The embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc. The functions performed by various modules described herein may be implemented in other modules or combinations of other modules. For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments. Also, the words “comprising,” “having,” “containing,” and “including,” and other similar forms are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms “a,” “an,” and “the” include plural references unless the context clearly dictates otherwise.
Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., be non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
It is intended that the disclosure and examples be considered as exemplary only, with a true scope and spirit of disclosed embodiments being indicated by the following claims.
| Section | Controller | Decision Date |
|---|---|---|
| # | Name | Date |
|---|---|---|
| 1 | 201821009413-IntimationOfGrant22-02-2024.pdf | 2024-02-22 |
| 1 | 201821009413-STATEMENT OF UNDERTAKING (FORM 3) [14-03-2018(online)].pdf | 2018-03-14 |
| 2 | 201821009413-PatentCertificate22-02-2024.pdf | 2024-02-22 |
| 2 | 201821009413-REQUEST FOR EXAMINATION (FORM-18) [14-03-2018(online)].pdf | 2018-03-14 |
| 3 | 201821009413-Written submissions and relevant documents [20-02-2024(online)].pdf | 2024-02-20 |
| 3 | 201821009413-FORM 18 [14-03-2018(online)].pdf | 2018-03-14 |
| 4 | 201821009413-FORM 1 [14-03-2018(online)].pdf | 2018-03-14 |
| 4 | 201821009413-Correspondence to notify the Controller [05-02-2024(online)].pdf | 2024-02-05 |
| 5 | 201821009413-FORM-26 [05-02-2024(online)]-1.pdf | 2024-02-05 |
| 5 | 201821009413-FIGURE OF ABSTRACT [14-03-2018(online)].jpg | 2018-03-14 |
| 6 | 201821009413-FORM-26 [05-02-2024(online)].pdf | 2024-02-05 |
| 6 | 201821009413-DRAWINGS [14-03-2018(online)].pdf | 2018-03-14 |
| 7 | 201821009413-US(14)-HearingNotice-(HearingDate-06-02-2024).pdf | 2024-01-15 |
| 7 | 201821009413-COMPLETE SPECIFICATION [14-03-2018(online)].pdf | 2018-03-14 |
| 8 | 201821009413-Proof of Right (MANDATORY) [21-04-2018(online)].pdf | 2018-04-21 |
| 8 | 201821009413-FER.pdf | 2021-10-18 |
| 9 | 201821009413-CLAIMS [20-04-2021(online)].pdf | 2021-04-20 |
| 9 | 201821009413-FORM-26 [26-04-2018(online)].pdf | 2018-04-26 |
| 10 | 201821009413-COMPLETE SPECIFICATION [20-04-2021(online)].pdf | 2021-04-20 |
| 10 | Abstract1.jpg | 2018-08-11 |
| 11 | 201821009413-FER_SER_REPLY [20-04-2021(online)].pdf | 2021-04-20 |
| 11 | 201821009413-ORIGINAL UR 6( 1A) FORM 1-260418.pdf | 2018-08-11 |
| 12 | 201821009413-ORIGINAL UR 6( 1A) FORM 26-040518.pdf | 2018-08-21 |
| 12 | 201821009413-OTHERS [20-04-2021(online)].pdf | 2021-04-20 |
| 13 | 201821009413-ORIGINAL UR 6( 1A) FORM 26-040518.pdf | 2018-08-21 |
| 13 | 201821009413-OTHERS [20-04-2021(online)].pdf | 2021-04-20 |
| 14 | 201821009413-FER_SER_REPLY [20-04-2021(online)].pdf | 2021-04-20 |
| 14 | 201821009413-ORIGINAL UR 6( 1A) FORM 1-260418.pdf | 2018-08-11 |
| 15 | 201821009413-COMPLETE SPECIFICATION [20-04-2021(online)].pdf | 2021-04-20 |
| 15 | Abstract1.jpg | 2018-08-11 |
| 16 | 201821009413-CLAIMS [20-04-2021(online)].pdf | 2021-04-20 |
| 16 | 201821009413-FORM-26 [26-04-2018(online)].pdf | 2018-04-26 |
| 17 | 201821009413-Proof of Right (MANDATORY) [21-04-2018(online)].pdf | 2018-04-21 |
| 17 | 201821009413-FER.pdf | 2021-10-18 |
| 18 | 201821009413-US(14)-HearingNotice-(HearingDate-06-02-2024).pdf | 2024-01-15 |
| 18 | 201821009413-COMPLETE SPECIFICATION [14-03-2018(online)].pdf | 2018-03-14 |
| 19 | 201821009413-FORM-26 [05-02-2024(online)].pdf | 2024-02-05 |
| 19 | 201821009413-DRAWINGS [14-03-2018(online)].pdf | 2018-03-14 |
| 20 | 201821009413-FORM-26 [05-02-2024(online)]-1.pdf | 2024-02-05 |
| 20 | 201821009413-FIGURE OF ABSTRACT [14-03-2018(online)].jpg | 2018-03-14 |
| 21 | 201821009413-FORM 1 [14-03-2018(online)].pdf | 2018-03-14 |
| 21 | 201821009413-Correspondence to notify the Controller [05-02-2024(online)].pdf | 2024-02-05 |
| 22 | 201821009413-Written submissions and relevant documents [20-02-2024(online)].pdf | 2024-02-20 |
| 22 | 201821009413-FORM 18 [14-03-2018(online)].pdf | 2018-03-14 |
| 23 | 201821009413-REQUEST FOR EXAMINATION (FORM-18) [14-03-2018(online)].pdf | 2018-03-14 |
| 23 | 201821009413-PatentCertificate22-02-2024.pdf | 2024-02-22 |
| 24 | 201821009413-STATEMENT OF UNDERTAKING (FORM 3) [14-03-2018(online)].pdf | 2018-03-14 |
| 24 | 201821009413-IntimationOfGrant22-02-2024.pdf | 2024-02-22 |
| 1 | 2020-10-1609-51-28E_23-10-2020.pdf |