Scoring members of a set dependent on eliciting preference data amongst subsets selected according to a height-balanced tree
First Claim
1. A method of scoring members of a set relative to one another, wherein the members of the set include first members for which relative preference data has been received from individuals in a group and second members for which relative preference data has not been received from individuals in the group, the first members organized according to a plurality of tree structures, wherein each tree structure corresponds to an individual'"'"'s relative preference data, the method comprising:
- for each individual in the group, performing iterations;
selecting subsets, using a computer, comprised of at least one of the first members and a second member of the set and eliciting from the individual the individual'"'"'s preference between members of the subsets to determine relative preference data between at least the first member and the second member of each selected subsets;
wherein the at least one of the first members for each subset is selected by following a path in the individual'"'"'s corresponding tree structure beginning with a root node and continuing through the tree structure until a leaf node is reached according to the elicited relative preference data from any previous iterations such that in a first iteration the first member is selected as a root node in the individual'"'"'s corresponding tree structure and selecting a second member from the subset and using the relative preference data to determine if the first member or the second member is preferred, if the first member is preferred a left child node of the root node is selected for the next iteration for comparison with a second member and if a second member is preferred a right child node of the root node is selected for the next iteration for comparison with a second member,whereupon the second member becomes one of the first members,height-balancing the individual'"'"'s corresponding tree structure if height-unbalanced, andrepeating the iterative process of selecting, placing, and height-balancing for a new second member;
assigning a score to each member of each individual'"'"'s corresponding tree structure based on the number of times each member was preferred or not preferred in the elicited relative preference data; and
building a group score for each member of the set by combining the score corresponding to each member of all individuals in a group.
10 Assignments
0 Petitions
Accused Products
Abstract
A software voting or prediction system iteratively solicits participant preferences between members of a set, with a binary tree built used to minimize the number of iterations required. As each member of the set is considered, it is pairwise-compared with select members represented by nodes already in the binary tree, with iterations beginning at a root node of the tree and continuing to a leaf node. The newly considered member is placed as a new leaf node, and the tree is height-rebalanced as appropriate. Red-black tree coloring and tree rotation rules are optionally used for this purpose. Yes/no preference tallies are kept for each member of the set throughout the tree-building process and are ultimately used for scoring. Height-rebalancing of the tree helps minimize the number of iterations needed to precisely score each member of the set relative to its alternatives.
-
Citations
12 Claims
-
1. A method of scoring members of a set relative to one another, wherein the members of the set include first members for which relative preference data has been received from individuals in a group and second members for which relative preference data has not been received from individuals in the group, the first members organized according to a plurality of tree structures, wherein each tree structure corresponds to an individual'"'"'s relative preference data, the method comprising:
-
for each individual in the group, performing iterations; selecting subsets, using a computer, comprised of at least one of the first members and a second member of the set and eliciting from the individual the individual'"'"'s preference between members of the subsets to determine relative preference data between at least the first member and the second member of each selected subsets; wherein the at least one of the first members for each subset is selected by following a path in the individual'"'"'s corresponding tree structure beginning with a root node and continuing through the tree structure until a leaf node is reached according to the elicited relative preference data from any previous iterations such that in a first iteration the first member is selected as a root node in the individual'"'"'s corresponding tree structure and selecting a second member from the subset and using the relative preference data to determine if the first member or the second member is preferred, if the first member is preferred a left child node of the root node is selected for the next iteration for comparison with a second member and if a second member is preferred a right child node of the root node is selected for the next iteration for comparison with a second member, whereupon the second member becomes one of the first members, height-balancing the individual'"'"'s corresponding tree structure if height-unbalanced, and repeating the iterative process of selecting, placing, and height-balancing for a new second member; assigning a score to each member of each individual'"'"'s corresponding tree structure based on the number of times each member was preferred or not preferred in the elicited relative preference data; and building a group score for each member of the set by combining the score corresponding to each member of all individuals in a group. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An apparatus, comprising:
- a processor, a memory unit, and instructions stored on non-transitory machine-readable media, the instructions adapted when executed to cause at least one machine to score members of a set relative to one another, wherein the members of the set include first members for which relative preference data has been received from individuals in a group and second members for which relative preference data has not been received from individuals in the group, the first members organized according to a plurality of tree structures, wherein each tree structure corresponds to an individual'"'"'s relative preference data, the instructions adapted when executed to cause the at least one machine to;
for each individual in the group, perform the following iterations; select subsets comprised of at least one of the first members and a second member of the set and elicit from the individual the individual'"'"'s preference between members of the subsets to determine relative preference data between at least the first member and the second member of each selected subset; wherein the at least one of the first members for each subset is selected by following a path in the individual'"'"'s corresponding tree structure beginning with a root node and continuing through the tree structure until a leaf node is reached according to the elicited relative preference data from any previous iterations such that in a first iteration the first member is selected as a root node in the individual'"'"'s corresponding tree structure and selecting a second member from the subset and using the relative preference data to determine if the first member or the second member is preferred, if the first member is preferred a left child node of the root node is selected for the next iteration for comparison with a second member and if a second member is preferred a right child node of the root node is selected for the next iteration for comparison with a second member, whereupon the second member becomes one of the first members height-balance the individual'"'"'s corresponding tree structure if height-unbalanced, and repeat the iterative process of selection, placement, and height balancing for a new second member; assign a score to each member of each individual'"'"'s corresponding tree structure based on the number of times each member was preferred or not preferred in the elicited relative preference data; and building a group score for each member of the set by combining the score corresponding to each member of all individuals in a group. - View Dependent Claims (7, 8, 9)
- a processor, a memory unit, and instructions stored on non-transitory machine-readable media, the instructions adapted when executed to cause at least one machine to score members of a set relative to one another, wherein the members of the set include first members for which relative preference data has been received from individuals in a group and second members for which relative preference data has not been received from individuals in the group, the first members organized according to a plurality of tree structures, wherein each tree structure corresponds to an individual'"'"'s relative preference data, the instructions adapted when executed to cause the at least one machine to;
-
10. An apparatus to score members of a set relative to one another, wherein the members of the set include first members for which relative preference data has been received from individuals in a group and second members for which relative preference data has not been received from individuals in the group, the first members organized according to a plurality of tree structures, wherein each tree structure corresponds to an individual'"'"'s relative preference data, the apparatus comprising a computer, comprising a processor and a memory, adapted to perform, for each individual in the group, the following iterations:
-
selecting subsets comprised of at least one of the first members and a second member of the set and eliciting from the individual the individual'"'"'s preference between members of the subsets to determine relative preference data between at least the first member and the second members of each selected subset; wherein the at least one of the first members for each subset is selected by following a path in the individual'"'"'s corresponding tree structure beginning with a root node and continuing through the tree structure until a leaf node is reached according to the elicited relative preference data from any previous iterations such that in a first iteration the first member is selected as a root node in the individual'"'"'s corresponding tree structure and selecting a second member from the subset and using the relative preference data to determine if the first member or the second member is preferred, if the first member is preferred a left child node of the root node is selected for the next iteration for comparison with a second member and if a second member is preferred a right child node of the root node is selected for the next iteration for comparison with a second member, whereupon the second member becomes one of the first members, height-balancing the individual'"'"'s corresponding tree structure if height-unbalanced, and repeating the iterative process of selection, placement, and height balancing for a new second member; a computer adapted to assign a score to each member of each individual'"'"'s corresponding tree structure based on the number of times each member was preferred or not preferred in the elicited relative preference data; and building a group score for each member of the set by combining the score corresponding to each member of all individuals in group. - View Dependent Claims (11, 12)
-
Specification