N-dimensional locking
First Claim
Patent Images
1. A method comprising:
- dividing a plurality of ride intent objects into candidate sets, wherein;
each ride intent object defines ride preferences of a respective car pool user; and
each candidate set is associated with a respective ride matcher object that specifies a plurality of ride preferences that ride intent objects in the candidate set must include, the plurality of ride preferences forming a subset of less than all the ride preferences of any particular ride intent object in the candidate set;
locking the ride intent objects such that only a ride matcher object associated with a candidate set containing a particular ride intent object can perform matching on the particular ride intent object while the particular ride intent object remains locked, wherein unlocked ride intent objects are available for matching by any ride matcher object, and wherein the same ride preference is specified by at least some of the ride matcher objects;
matching, by each ride matcher object and based on ride preference values, ride intent objects in a respective candidate set to other ride intent objects in the same candidate set;
identifying, based on ride preference value, a plurality of ride preferences in a first ride intent object that match a corresponding plurality of ride preferences in a second ride intent object, wherein ride preferences are determined to match when;
there is an exact match between respective values of a first of at least two ride preferences for the first ride intent object and the second ride intent object; and
respective values of a second of the at least two ride preferences for the first and the second ride intent objects are within a predetermined threshold of similarity;
assigning different weights to corresponding ride preferences in each ride intent object;
calculating a sum of the weights associated with the matching ride preferences;
determining that the first ride intent object matches the second ride intent object when the sum of the weights exceeds a predetermined weight threshold; and
grouping the plurality of ride intent objects into a plurality of ride intent sets based on the matching, wherein each ride intent set is a subset of a respective candidate set that contains the ride intent objects of the ride intent set.
2 Assignments
0 Petitions
Accused Products
Abstract
An apparatus, method and computer-readable storage medium for determining intent object preferences for locking intent objects, and grouping the intent objects into sets based on the intent object preferences for locking. The sets may contain intent objects with matching preference values for the intent object preferences for locking. Each set may be locked such that only a matcher object associated with the set may operate on the set. The locking may be done in memory, or via a database. The matcher associated with a set may determine whether the intent objects in that set match other intent objects in the set. Multiple matchers may operate on their associated sets in parallel.
-
Citations
17 Claims
-
1. A method comprising:
-
dividing a plurality of ride intent objects into candidate sets, wherein; each ride intent object defines ride preferences of a respective car pool user; and each candidate set is associated with a respective ride matcher object that specifies a plurality of ride preferences that ride intent objects in the candidate set must include, the plurality of ride preferences forming a subset of less than all the ride preferences of any particular ride intent object in the candidate set; locking the ride intent objects such that only a ride matcher object associated with a candidate set containing a particular ride intent object can perform matching on the particular ride intent object while the particular ride intent object remains locked, wherein unlocked ride intent objects are available for matching by any ride matcher object, and wherein the same ride preference is specified by at least some of the ride matcher objects; matching, by each ride matcher object and based on ride preference values, ride intent objects in a respective candidate set to other ride intent objects in the same candidate set; identifying, based on ride preference value, a plurality of ride preferences in a first ride intent object that match a corresponding plurality of ride preferences in a second ride intent object, wherein ride preferences are determined to match when; there is an exact match between respective values of a first of at least two ride preferences for the first ride intent object and the second ride intent object; and respective values of a second of the at least two ride preferences for the first and the second ride intent objects are within a predetermined threshold of similarity; assigning different weights to corresponding ride preferences in each ride intent object; calculating a sum of the weights associated with the matching ride preferences; determining that the first ride intent object matches the second ride intent object when the sum of the weights exceeds a predetermined weight threshold; and grouping the plurality of ride intent objects into a plurality of ride intent sets based on the matching, wherein each ride intent set is a subset of a respective candidate set that contains the ride intent objects of the ride intent set. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable medium embodied with computer-executable instructions for causing a computer to execute instructions, the computer instructions comprising:
-
dividing a plurality of ride intent objects into candidate sets, wherein; each ride intent object defines ride preferences of a respective car pool user; and each candidate set is associated with a respective ride matcher object that specifies a plurality of ride preferences that ride intent objects in the candidate set must include, the plurality of ride preferences forming a subset of less than all the ride preferences of any particular ride intent object in the candidate set; locking the ride intent objects such that only a ride matcher object associated with a candidate set containing a particular ride intent object can perform matching on the particular ride intent object while the particular ride intent object remains locked, wherein unlocked ride intent objects are available for matching by any ride matcher object, and wherein the same ride preference is specified by at least some of the ride matcher objects; matching, by each ride matcher object and based on ride preference values, ride intent objects in a respective candidate set to other ride intent objects in the same candidate set; identifying, based on ride preference value, a plurality of ride preferences in a first ride intent object that match a corresponding plurality of ride preferences in a second ride intent object, wherein ride preferences are determined to match when; there is an exact match between respective values of a first of at least two ride preferences for the first ride intent object and the second ride intent object; and respective values of a second of the at least two ride preferences for the first and the second ride intent objects are within a predetermined threshold of similarity; assigning different weights to corresponding ride preferences in each ride intent object; calculating a sum of the weights associated with the matching ride preferences; determining that the first ride intent object matches the second ride intent object when the sum of the weights exceeds a predetermined weight threshold; and grouping the plurality of ride intent objects into a plurality of ride intent sets based on the matching, wherein each ride intent set is a subset of a respective candidate set that contains the ride intent objects of the ride intent set. - View Dependent Claims (9, 10, 11, 12)
-
-
13. An apparatus comprising:
-
a processor configured to; divide a plurality of ride intent objects into candidate sets, wherein; each ride intent object defines ride preferences of a respective car pool user; and each candidate set is associated with a respective ride matcher object that specifies a plurality of ride preferences that ride intent objects in the candidate set must include, the plurality of ride preferences forming a subset of less than all the ride preferences of any particular ride intent object in the candidate set; lock the ride intent objects such that only a ride matcher object associated with a candidate set containing a particular ride intent object can perform matching on the particular ride intent object while the particular ride intent object remains locked, wherein unlocked ride intent objects are available for matching by any ride matcher object, and wherein the same ride preference is specified by at least some of the ride matcher objects; match, by each ride matcher object and based on ride preference values, ride intent objects in a respective candidate set to other ride intent objects in the same candidate set; identify, based on ride preference value, a plurality of ride preferences in a first ride intent object that match a corresponding plurality of ride preferences in a second ride intent object, wherein ride preferences are determined to match when; there is an exact match between respective values of a first of at least two ride preferences for the first ride intent object and the second ride intent object; and respective values of a second of the at least two ride preferences for the first and the second ride intent objects are within a predetermined threshold of similarity; assign different weights to corresponding ride preferences in each ride intent object; calculate a sum of the weights associated with the matching ride preferences; determine that the first ride intent object matches the second ride intent object when the sum of the weights exceeds a predetermined weight threshold; and group the plurality of ride intent objects into a plurality of ride intent sets based on the matching, wherein each ride intent set is a subset of a respective candidate set that contains the ride intent objects of the ride intent set. - View Dependent Claims (14, 15, 16, 17)
-
Specification