Point-in-polygon location tracking via cell partitioning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current object location tracking methods, such as ray casting algorithms, consume significant computing resources when processing complex polygons, leading to processing delays and potential hardware failures when determining if an object's location is within a geographic area.
Innovation Solution
The implementation of a locating technique that partitions a bounding area into cells of varying precision, allowing for efficient determination of whether a location is within a geographic area by classifying cells as entirely or partially within the area, and applying the point-in-polygon algorithm only when necessary, thereby conserving computing resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If ray casting algorithm is used to determine whether a location is within a geographic area, then the determination can be made, but computing resources are consumed significantly and processing delays occur
Solution Approach 1:
The patent segments the geographic area determination process into two stages: first, a quick bounding box check that provides an immediate preliminary result, and second, the more computationally intensive point-in-polygon algorithm that is only executed when the bounding box check indicates the point might be inside the polygon. This segmentation allows most queries to be resolved quickly without invoking the resource-intensive algorithm.
Solution Approach 2:
The patent performs a preliminary bounding box check before executing the full point-in-polygon algorithm. This preliminary action filters out points that are clearly outside the geographic area based on their bounding box coordinates, preventing unnecessary execution of the computationally expensive ray casting algorithm for points that will definitely be outside the polygon.
2Measurement precision
If ray casting algorithm processes complex polygons with many sides, then accurate location determination is achieved, but computing resources are overburdened leading to hardware failures
Solution Approach 1:
The patent applies partial action by using the bounding box check as a sufficient condition for many cases. If the bounding box of a location point does not intersect with the polygon's bounding box, the system immediately determines the point is outside without performing the full point-in-polygon test. This partial approach maintains accuracy for definitive cases while avoiding excessive computation.
Solution Approach 2:
The determination process is divided into a first segmentation (bounding box check) and a second segmentation (point-in-polygon algorithm). The bounding box segmentation handles the majority of cases with minimal computation, while the point-in-polygon segmentation is reserved for edge cases where the bounding box check is inconclusive, thus distributing computational load effectively.
3Measurement precision
If point-in-polygon algorithm is applied to all locations, then accurate geographic area determination is achieved, but processing time increases from minutes to hours or days
Solution Approach 1:
The patent implements a preliminary bounding box filtering step that quickly eliminates points outside the geographic area's bounding box before applying the point-in-polygon algorithm. This preliminary action reduces the number of points requiring full algorithmic processing from potentially millions to a much smaller subset, dramatically reducing total processing time while maintaining accuracy for points that require detailed analysis.
Solution Approach 2:
The system uses partial action by applying the bounding box check as a sufficient filtering mechanism. For points failing the bounding box check, no further processing is performed as the result is already determined. This partial approach avoids the excessive time cost of applying the full point-in-polygon algorithm universally, while maintaining precision where needed.
Data Source
AI summary
A device can receive location data associated with an object. The device can determine a bounding area that encompasses a geographic area and determine a partitioning of the bounding area into a plurality of cells. The device can classify a cell of the plurality of cells as a first type that is entirely within the geographic area or a second type that is partially within the geographic area. The device can determine a rounded value of a latitude and a longitude included in the location data to identify a proximate location. The device can determine whether the proximate location matches a reference location associated with a vertex of the cell and identify the location as within the cell. The device, based on identifying the location as within the cell, can selectively determine whether the location of the object is within the geographic area and perform one or more actions.


